Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
163 events for the month beginning 2007-11-01
Following month ↑
2007-11-30
| ||
15:21 | Updated helper app to changed state definition (csrevision -> csitem). check-in: fc635d5977 user: aku tags: trunk | |
15:20 | Fixed typo of keyword. check-in: 3db03be62f user: aku tags: trunk | |
06:57 | Easier name for self-referential changesets, loopcheck. Made conditional on option --loopcheck, default off, and avoided if the general checks on changesets report trouble. Reinstated the loop check in the cycle breaker core in simpler form, reusing the new command in the changeset class. check-in: 0af7a3c8ac user: aku tags: trunk | |
06:50 | Moved the integrity checks for split fragments into separate command. Reworked breaking of internal dependencies to contrain the length of the pending list. That part of the system is still a memory hog, especially for large changesets. Added notes about this and the successor retrieval being a bottleneck. check-in: c14e8f84cd user: aku tags: trunk | |
04:27 | Fixed bug in new changeset code, tagged and untagged item lists went out of sync. check-in: facb4a8721 user: aku tags: trunk | |
03:57 | Replaced the checks for self-referential changesets in the cycle breaker with a scheme in the changeset class doing checks when splitting a changeset, which is also called by the general changeset integrity code, after each pass. Extended log output at high verbosity levels. Thorough checking of the fragments a changeset is to be split into. check-in: b42cff97e3 user: aku tags: trunk | |
2007-11-29
| ||
09:16 | Renamed state table 'csrevision' to 'csitem' to reflect the new internals of changesets. Updated all places where it is used. check-in: 80b1e8936f user: aku tags: trunk | |
09:15 | Fix bad variable name. check-in: 4859304926 user: aku tags: trunk | |
09:14 | Updated commentary regarding cycles at this point, items instead of comments, etc. check-in: af5904e6b7 user: aku tags: trunk | |
09:13 | Extended checks for looped changesets. check-in: 960645443b user: aku tags: trunk | |
07:58 | Renamed changeset method to describe modified results, and updated the one invoker check-in: 61829b076b user: aku tags: trunk | |
07:55 | Renamed changeset method to describe modified results, and updated the one invoker. Modified the sorting of time ranges. Now by max, min as tiebreaker, and object name as last tiebreaker. check-in: 04d76a9e79 user: aku tags: trunk | |
07:50 | Added missing state declarations. check-in: 2c9c26815f user: aku tags: trunk | |
07:49 | Added mising state declarations. check-in: 31d0fe7dd7 user: aku tags: trunk | |
07:47 | More realignment of variable names with their content, in pass 5. check-in: 27f093d23c user: aku tags: trunk | |
07:41 | Simplified some code dealing with the item -> changeset map, using the changed semantics (1:n -> 1:1). check-in: 39e19c0cf3 user: aku tags: trunk | |
07:36 | Brought the variable names into alignment with the semantics, now again naming what is stored in them. check-in: deab4d035b user: aku tags: trunk | |
07:24 | Reworked the in-memory databases of changesets. Objects now hold items, not only revisions. Tags, and branches are new possibilities. Lists of ids go to the type-dependent retrieval command. List of tagged items (type/id pairs) come back, and are in the API. The 1:n map revisions to changesets is now an 1:1-map tagged items to changeset. check-in: 0fcfbf7828 user: aku tags: trunk | |
07:02 | Implemented time ranges and dependency retrieval for the tag and branch based changesets. check-in: b1666f8ff4 user: aku tags: trunk | |
06:58 | Moved the existing successor/predecessor code from main class to the proper singleton. Fixed config of main class, isn't simple dispatch any longer. Simplified calculation of the readable representation of changesets and removed code which has become superfluous. check-in: 70d2283564 user: aku tags: trunk | |
06:47 | Added equivalent checks for the tag and branch based changesets. check-in: 4b15fa348d user: aku tags: trunk | |
06:40 | Shuffled and updated the existing checks of revision changesets. check-in: de10b2301e user: aku tags: trunk | |
06:31 | Started to adapt the integrity module. Renamed Check to CheckRev, and added analoguous commands for Tags and Branches. Added placeholders for the new integrity commands, updated main changeset integrity command. check-in: 7c28fe1312 user: aku tags: trunk | |
06:23 | Updated the code printing the changeset statistics to know about change to the changeset types. check-in: 8e3012423b user: aku tags: trunk | |
06:21 | Brought knowledge of the new types to the state definition, changed the creation of the initial changesets to use tags and branches. check-in: 215d2f1ad9 user: aku tags: trunk | |
06:10 | Integrate the new singletons with the main class, route the relevant places to them. check-in: c74fe3de3f user: aku tags: trunk | |
05:58 | This commit starts a series of incremental changes not quite completely overhauling the handling of changesets, i.e. of project-level revisions. Actually this series of changes already started with [8ce7ffff21] as the bug it fixes was found when the first parts of the overhaul tripped the new integrity conditions for the modified changesets. Background: In the last few days I repeatedly ran against the wall of an assertion in pass 9, last of the cycle breakers, with the revision changesets coming in out of order when the symbols were added to the dependency graph. While walking to the office, and later re-reading the relevant parts of cvs2svn again I had several insights. Trigger was the realization that giving the tag changesets successor dependencies was wrong. Tags describe a state, they have no successors. This caused the re-read, and I recognized that my handling of the symbol changesets was completely wrong, that with using revisions as their data. It should have been the tags and branches. From there their actual dependencies (versus my reuse of revision dependencies) fell out naturally. I have decided to commit my rewrite of the internals incrementally to make it easier to follow them, despite leaving the sourcebase in an unusable state during the series. One big commit would be much more difficult to understand. The... check-in: 27b15b7095 user: aku tags: trunk | |
00:37 | Fix the merge conflict detection. check-in: ba9af9aced user: drh tags: trunk | |
2007-11-28
| ||
14:31 | Remove a stray character that snuck unto the rebuild.c source file. check-in: f088412c49 user: drh tags: trunk | |
08:35 | Bugfix in FilterSym pass. Grafting branches operated on the tags table :( check-in: 8ce7ffff21 user: aku tags: trunk | |
05:39 | Added convenience method for assertions and used it in place of the existing if/trouble internal constructions. Changed API of 'log write' so that we can defer substituation of the message to when the write actually happen, and converted all places which would be hit by double-substitution. The remaining 'log write' calls will be converted incrementally. check-in: 47d52d1efd user: aku tags: trunk | |
2007-11-27
| ||
09:07 | Modified to break all backward symbols, not only branches, removed the other custom circle breaking code, should not be needed any longer (See comments for proof). check-in: 6b520e7d97 user: aku tags: trunk | |
09:05 | Bugfix: Sort pending nodes fully deterministic, and moved to separate helper command. Tweaked log output. check-in: 3e18606b5c user: aku tags: trunk | |
09:04 | Updated to extended changeset string, and added tabular formatting. Further tweaked output, putting timestamp adjust messages on the same line as the changeset itself. check-in: 1c39e57637 user: aku tags: trunk | |
09:03 | Changesets, extended human readable representation, and tweaking of log output. check-in: 911d56a8c8 user: aku tags: trunk | |
08:59 | Bugfix in the generation of the initial symbol changesets. Keep entries apart per line-of-development. check-in: 2e07cd7164 user: aku tags: trunk | |
05:08 | Bugfixes when generating revision changesets. (1) The dependencies for a revision are a list, not single. (2) Use pseudo-dependencies to separate revisions of the same file from each other if they have no direct dependencies in the state. check-in: 678765068d user: aku tags: trunk | |
04:26 | Continued work on the integrity checks for changesets. Moved callers out of transactions. Two checks are already tripping on bad changesets made by InitCSets (pass 5). check-in: 8c6488ded2 user: aku tags: trunk | |
03:30 | Fix a bug in the unified diff generator. check-in: 7e9e5fea77 user: drh tags: trunk | |
02:37 | Outline for more integrity checks, focusing on the changesets. check-in: bf83201c7f user: aku tags: trunk | |
2007-11-26
| ||
16:40 | • Changes to a wiki page → Obsolete EVENT table information. Run "fossil rebuild" on the repository. artifact: 5d03e5e7b8 user: drh | |
01:33 | Begin porting the CVSTrac ticket reporting code over to fossil. The new code is not yet connected into the system. The port is incomplete. check-in: 62f37c9722 user: drh tags: trunk | |
2007-11-25
| ||
21:11 | Add ticket configuration editing capability. check-in: 5f3ddcc1b8 user: drh tags: trunk | |
17:13 | Changes to the diff algorithm to put bounds on run-time for very large files with many differences. (This came up on the previous check-in when you try to diff the two versions of sqlite3.c.) check-in: 4c22ae52fd user: drh tags: trunk | |
16:13 | Update SQLite to the latest build from CVS. Add in the FTS3 extension, though it is not yet being used. Additional work toward tickets. check-in: f394d84560 user: drh tags: trunk | |
07:54 | Code cleanup. Removed trailing whitespace across the board. check-in: b679ca3356 user: aku tags: trunk | |
07:44 | Another helper, textual, write changeset data to stdout. check-in: 1ea319fb67 user: aku tags: trunk | |
07:41 | Tweaked log output of the topological sorter (revisions) to be tabular (aligned columns), added information (time ranges). check-in: bcc630d3f5 user: aku tags: trunk | |
07:39 | Changesets: Added accessor for to retrieve number of changesets known, and dropped the "trunk root -> NTDB root" dependency, is problematic. check-in: 96167b2a48 user: aku tags: trunk | |
07:37 | Fixed log output for pass 10, and added missing command. check-in: 63052cb60a user: aku tags: trunk | |
07:35 | Extended cycle breaker with debug facility allowing the user to watch the neighbourhood of specific changesets during the traversal. Extended label information, highlighting of the nodes of interest. Tweaked log output a bit. check-in: 97b4405ecf user: aku tags: trunk | |
07:32 | State log output, moved to slightly higher verbosity level to allow them to be suppressed. check-in: 00e041dd22 user: aku tags: trunk | |
07:31 | Dot export extended, allow graph to define label color for highlighting. check-in: eb43120ac1 user: aku tags: trunk | |
07:30 | Filerevtree helper. Added missing requirements, and dialed the verbosity down. check-in: 124fef5b1c user: aku tags: trunk | |
03:05 | Moved more parts taken over by the top. sort passes out the breaker passes, and renumbered them. check-in: d743f04bd2 user: aku tags: trunk | |
03:00 | Moved the parts taken over by the top. sort passes out the breaker passes, and renumbered them (comments). check-in: b6b7ff79cc user: aku tags: trunk | |
02:59 | Investigation of changeset order differences between running passes 1 to 6 and pass 6 alone show why the topological sort passes are separate in cvs2svn. The breaking of cycles can change the order of things due to different timeranges and dependencies of the broken changesets. Created two new passes for the sorting. The break passes 7 and 8 are now passes 8 and 9, and the new sort passes are 7 and 10. check-in: 66c85b4db4 user: aku tags: trunk | |
02:54 | Tweaked log output of filtering pass a bit. check-in: b41127b9d8 user: aku tags: trunk | |
02:53 | Tweaked human readable representation of changesets to include their type. check-in: 0868adf92a user: aku tags: trunk | |
02:52 | Bugfix in pass manager, handling of open-ended pass specifications. check-in: 9668b16455 user: aku tags: trunk | |
02:51 | Tweaks of the log output, and reworked internals to expose not only breaking of cycles, but of paths as well. check-in: 54e9b0a143 user: aku tags: trunk | |
2007-11-24
| ||
23:59 | More work on ticketing. This is a non-working incremental check-in. check-in: a5e4e1ba96 user: drh tags: trunk | |
21:28 | Progress toward ticket editing. This is an incremental check-in. check-in: d913179b82 user: drh tags: trunk | |
19:33 | Progress toward getting ticketing working. We can enter a new ticket and display it. Cannot yet edit a ticket. check-in: fb358ca492 user: drh tags: trunk | |
14:06 | Documentation updates. check-in: 6680679c2e user: drh tags: trunk | |
13:18 | • Changes to a wiki page → Obsolete EVENT table information. Run "fossil rebuild" on the repository. artifact: 3ea8888f45 user: drh | |
05:31 | Created convenience methods to create the human readable repesentation of a changeset and lists of such, and made liberal use of them. check-in: 87cf609021 user: aku tags: trunk | |
04:40 | Bugfix in changeset class. Documented and fixed the SQL statements pulling the successor and predecessor information out of the state. It mishandled the Trunk <-> NTDB transitions. check-in: 184c56327e user: aku tags: trunk | |
04:34 | Bugfix in changeset class. Forgot to update the map from revisions to containing changesets when breaking the internal dependencies of the initial changesets. This affected only the first fragment as all the revisions put into separate fragments where still pointing to the original changeset. This lead to bogus links at the level of changesets, the changeset was seemingly still referencing itself. check-in: 17ec2d682c user: aku tags: trunk | |
04:29 | Bugfix in the changeset class. The index from revisions to containing changesets is not 1:1, but 1:n. While only one revision changeset is possible there can also be zero or more symbol changesets. check-in: 8c9030e3e8 user: aku tags: trunk | |
04:19 | Tweaked log output a bit. Bugfixes: Forgot to propagate the border information into SplitRevisions, and a varname typo. check-in: 6d63634309 user: aku tags: trunk | |
04:15 | Added a number of assertions and must-not-happens with associated log output. Plus some small tweaks, and notes. check-in: eabaea870a user: aku tags: trunk | |
03:59 | Added missing node attributes in the Replace command. check-in: a99d5798f6 user: aku tags: trunk | |
03:56 | Updated passes 6 and 8 for to the changtes in the cycle breaker API (changed signature of save callback). check-in: 7ed2f29d7a user: aku tags: trunk | |
02:45 | The autosync setting understands values like "on", "off", "true", and "false" in addition to 0 and 1. Updates to the documentation. check-in: f9f7cf5684 user: drh tags: trunk | |
01:14 | • Changes to a wiki page → Obsolete EVENT table information. Run "fossil rebuild" on the repository. artifact: 786d5bbca3 user: drh | |
00:10 | • Changes to a wiki page → Obsolete EVENT table information. Run "fossil rebuild" on the repository. artifact: fa6d55f604 user: drh | |
00:10 | • Changes to a wiki page → Obsolete EVENT table information. Run "fossil rebuild" on the repository. artifact: 7b2f5fd0e0 user: drh | |
2007-11-23
| ||
23:06 | Fix a bug in the default header. check-in: 13732d495d user: drh tags: trunk | |
22:09 | New default header and footer and CSS. Add the ability to edit the footer. check-in: 34af72801d user: drh tags: trunk | |
12:55 | Fix a redundancy in the text output of the usage comment on the tag command. check-in: b346a7cf7d user: drh tags: trunk | |
12:49 | Remove obsolete file containing sample ticket configuration script. check-in: 6311ce2ec1 user: drh tags: trunk | |
05:43 | Modified cycle breaker API. Hook for processed nodes now takes the graph as new first argument. Extended API, exposed method for dumping the current state of the graph, including ability to dump a sub graph. check-in: 5f5620fbd2 user: aku tags: trunk | |
05:41 | Extended the dot graph exporter to allow the export of a subgraph specified through a set of nodes. Default is the export of the whole graph, as before. check-in: 86f3319041 user: aku tags: trunk | |
05:38 | Added two more debugging helper applications. One to extract and show a file revision tree, the other to display a dot file generated by the importer during cycle breaking passes. check-in: 64d0019e0f user: aku tags: trunk | |
2007-11-22
| ||
22:55 | Add the %w and %W formatting options for internal printf usage. Use these formatting characters to render wiki. Fix additional problems of unterminated wiki on webpage rendering by using %w. (There are probably more problems yet to be discovered and fixed.) check-in: 2859293737 user: drh tags: trunk | |
22:14 | Make sure HTML tags in wiki are terminated in the diff screen too. check-in: d6ad7aa034 user: drh tags: trunk | |
22:02 | Fix the rendering of comments with unclosed block HTML markup in the vinfo page. check-in: 3afcc4388c user: drh tags: trunk | |
07:24 | Added two helper applications which peek into a conversion state and generate graphs from it. Both helpers look at the tree of symbols and show it in toto (symbol tree), or restrict themselves to the branches, aka lines of development (lodtree). check-in: b8c3542172 user: aku tags: trunk | |
07:22 | Reworked the dot export internals a bit to be more general regarding labeling and attribute writing. Updated the cycle breaker to define proper labels. check-in: f284847134 user: aku tags: trunk | |
07:21 | Tweaked the log output for the statistics a bit. check-in: 2630e50610 user: aku tags: trunk | |
06:03 | Fixed the calculation of possible parents for a detached NTDB. Has to be trunk. The symbols were skipped before, causing them to have no parents at all later on, forcing an abort after CollateSymbols. Added some high verbosity log commands for debugging of this area. check-in: 930ec162ce user: aku tags: trunk | |
04:56 | Fixed bug in the initialization of mybranchcode for changesets. check-in: 47e271a448 user: aku tags: trunk | |
04:21 | Continued work on pass 8. Completed the handling of backward branches, file level analysis and splitting them. Extended changesets with the necessary methods to the predecessor data and proper per-revision maps. check-in: e50f9ed55e user: aku tags: trunk | |
03:47 | Continued work on pass 8. Renamed 'retrograde' to 'Backward Branch', should be easier to understand, and completed the predicate testing if a branch changeset is backward or not. check-in: 4f1b60dd16 user: aku tags: trunk | |
03:33 | Continued work on pass 8, added outline for handling of retrograde branches, extended changesets with predicate allowing us to find the branch changesets. check-in: 4866889e88 user: aku tags: trunk | |
03:21 | Extended changeset class with in-memory database mapping from changeset ids to the proper object, and extended the objects with position information and associated accessors. Extended pass 8 to load the commit order computed in pass 6, this is stored in the new position slot of changesets, and an inverted index mapping from position to changeset at that position. check-in: de4cff4142 user: aku tags: trunk | |
03:11 | Modified the API for the construction of changesets a bit, now allowing their construction with the correct id, instead of correcting it later. Updated pass 5 to use this, and fixed bug where the id counter for changesets was left uninitialized, allowing the improper generation of duplicate ids. check-in: 65be27aa69 user: aku tags: trunk | |
03:03 | Reworked the cycle breaker internals, moving the code handling the replacement of a changset (= node) with its fragments into a separate command. Extended the API, exposing the replacement operation, for use by passes. Added debugging code showing the set of consumable nodes for each iteration. check-in: ad7d5c2d10 user: aku tags: trunk | |
02:58 | Moved the functionality for splitting a changeset based on the sets of revisions for the fragments to be into a separate command, and into the changeset class, for use outside of changeset links. check-in: 59207428e2 user: aku tags: trunk | |
01:53 | Fix some compiler warnings. Comment changes on non-functioning code in tkt.c. check-in: 2a707334c9 user: drh tags: trunk | |
2007-11-21
| ||
16:03 | Fix a bug in the unified diff generator. check-in: 4db464a748 user: drh tags: trunk | |
13:52 | Append the pathname to the login cookie name so that separate cookies are used for each server. check-in: d2b4469934 user: drh tags: trunk | |
12:21 | Attach login cookies to the root path of the server, so that multiple servers can coexist on the same site. check-in: 68a202e101 user: drh tags: trunk | |
04:44 | Fixed typo in cycle breaker logging. Extended pass 8, wrote the outline with all the relevant custom callbacks. check-in: 1f60018119 user: aku tags: trunk | |
04:36 | Cycle breaker, API change. The changesets are now communicated via a retrieval callback instead of directly. Updated passes 6 and 7. This allowed us to move the start/done graph exports into the cyclebreaker as well. Changeset selection in pass 8 now in separate command too for this. check-in: 2a0ec504c5 user: aku tags: trunk | |
04:11 | Cycle breaker, API extension. Added a hook to process the graph between setup and regular consummation. This will be used by pass 8. check-in: 1e177a4c91 user: aku tags: trunk | |
04:05 | Cycle breaker, API change. Routing the core cycle breaking through a callback so that users can choose their own algorithms. Updated passes 6 and 7. Moven changesets selection in pass 7 to separate command. check-in: 2cf0462b82 user: aku tags: trunk | |
03:46 | API change cycle breaker. The save callback command is now specified through a separate configuration command. Moved callback invokation to helper command. Updated pass 6. Moved changeset selection to helper command. check-in: d58423cdc4 user: aku tags: trunk | |
03:19 | Try again to get the Login/Logout menu name correct. check-in: f0a9e3b523 user: drh tags: trunk | |
03:17 | Get the name of the Login/Logout menu option right. check-in: bd667b1940 user: drh tags: trunk | |
03:01 | Render the header of every page using subscript. Add a setup page that for editing that subscript. check-in: 555911dff5 user: drh tags: trunk | |
2007-11-20
| ||
23:54 | Add the SbS_Render() interface for rendering HTML with embedded subscript. check-in: e29abeff80 user: drh tags: trunk | |
06:59 | Added the ability to export the changeset graphs processed by the passes 6 to 8 using GraphViz's dot-format. This is activated by using the switch '--dots'. Bugfixes in the cycle breaker. First corrected variable names, I forgot to use the standard 'myXXX' format for the typevariables. Second, fixed a bug uncovered by looking at the exported graphs, which caused the system to loose arcs, possibly breaking cycles without actually breaking them, leaving them in the dependencies. check-in: 7f15be9078 user: aku tags: trunk | |
2007-11-18
| ||
20:48 | Add a more advanced commit-hook mechanism that allows us to specify multiple procedures in a particular order prior to commit. Continuing work toward getting tickets going. check-in: d5e7891b07 user: drh tags: trunk | |
2007-11-17
| ||
17:48 | Continuing work on the infrastructure for tickets. check-in: 8c96ed62f5 user: drh tags: trunk | |
04:39 | Added an option "--batch" with which the user can disable the feedback display standard to interactive use. check-in: 4e7dd05fc6 user: aku tags: trunk | |
00:29 | Merge aku's CVS import changes into the main line. Fix a small bug in diff.c. check-in: 38b967dcf5 user: drh tags: trunk | |
2007-11-16
| ||
20:42 | Rework the merge algorithm. It now only works for text files. But, it no longer gets confused by line endings (\r\n versus \n) and it reports conflicts. check-in: 36b96b8616 user: drh tags: trunk | |
08:32 | Added convenience command to the state package when the sql returns a single row. Added more statistics about revisions, tags, branches, symbols, changesets to various passes. check-in: 96b7bfb834 user: aku tags: trunk | |
06:55 | Moved out-of-place state declarations to the proper phase (setup, not run). check-in: ce7fb48e8c user: aku tags: trunk | |
06:53 | Added skeleton of pass 8, the final pass for the breaking of dependency cycles. This pass will handle the remaining cycles crossing revision and symbol changesets. check-in: e7c805f137 user: aku tags: trunk | |
06:51 | Bugfix. Destroy graph object after use. check-in: 7b3928681e user: aku tags: trunk | |
04:17 | Completed pass 7, breaking dependency cycles over symbol changesets. Moved the bulk of the cycle breaker code into its own class as it was common to the passes 6 and 7, and updated the two passes accordingly. Added code to load the changeset counter from the state to start properly. check-in: 770a9b576a user: aku tags: trunk | |
03:59 | Bugfix. When setting up or extended the changeset graph a changeset's successor may lay outside of the set of changesets under consideration, i.e. without a node in the graph. Ignore these. This did not (or only rarely) happen before the bugfix to the successor computation of changesets in project::rev (list instead of single). check-in: de64c94f54 user: aku tags: trunk | |
03:54 | Bugfix. When I introduced the 'revisionbranchchildren' table to pass 2 I forgot to update pass 4 as well. Added code to drop the excluded revisons from this table as well, as either parent of branches, or branch child of some other revision. check-in: 2516f4a56d user: aku tags: trunk | |
03:52 | Bugfix. In pass 5, loading the changesets used the type codes instead of the type names. Modified the SQL selecting the data to return the proper names. check-in: 341d96be21 user: aku tags: trunk | |
03:17 | Bug fixes in the Myers diff algorithm. check-in: f1b55da0ac user: drh tags: trunk | |
2007-11-15
| ||
21:49 | Enhanced text diff subroutine uses Myers enhancements to Wagners minimum edit distance algorithm. White space at the end of lines is ignored. check-in: 57b2735ebd user: drh tags: trunk | |
07:17 | Added skeleton files for pass 7, the breaking of dependency cycles over symbol-based changesets. check-in: 258366a37a user: aku tags: trunk | |
2007-11-14
| ||
05:26 | Added note regarding 'RevisionTopologicalSortPass', which is not a separate pass for us, but part of pass 6, breaking cycles over revision changesets. check-in: f631d438b4 user: aku tags: trunk | |
05:11 | Completed pass 6, wrote the code performing the breaking of cycles. Done by analysing each triple of changesets in the cycle at the file dependency level to see which revisions can be sorted apart. Added some additional utility routines. Extended the changeset class with the accessors required by the cycle breaker. check-in: 94c39d6375 user: aku tags: trunk | |
05:08 | Fixed handling of project objects when persisting them. Fill the project map. This is needed if the pass is not skipped. For the skip case we already initialize the project map when 'load'ing from the state. check-in: 67600f777b user: aku tags: trunk | |
2007-11-13
| ||
07:22 | Continued work on pass 6. Completed creation of changeset graph (nodes, dependencies), started on topological iteration and breaking cycles. Basic iteration is complete, fiding a cycle ditto. Not yet done is to actually break a found cycle. Extended the changeset class with the necessary accessor methods (getting cset type, successors, time range). Note: Looking at my code it may be that my decision to save the cset order caused this pass to subsume the RevisionTopologicalSortPass of cvs2svn. Check again when I am done. Note 2: The test case (tcl repository, tcl project) had no cycles. check-in: 85bd219d0b user: aku tags: trunk | |
05:09 | Reworked the in-memory storage of changesets in pass 5 and supporting classes, and added loading of changesets from the persistent state for when the pass is skipped. check-in: 24c0b662de user: aku tags: trunk | |
2007-11-11
| ||
00:08 | Started on pass 6, breaking cycles between revision based changesets. Added skeleton files. check-in: 2a01d50430 user: aku tags: trunk | |
2007-11-10
| ||
23:44 | Rewrote the algorithm for breaking internal dependencies to my liking. The complex part handling multiple splits has moved from the pass code to the changeset class itself, reusing the state computed for the first split. The state is a bit more complex to allow for its incremental update after a break has been done. Factored major pieces into separate procedures to keep the highlevel code readable. Added lots of official log output to help debugging in case of trouble. check-in: 08ebab80cd user: aku tags: trunk | |
20:40 | Oops. pass 5 is not complete. Missed the breaking of internal dependencies, this is done in this pass already. Extended pass _2_ and file revisions with code to save the branchchildren (possible dependencies), and pass 5 and changesets with the proper algorithm. From cvs2svn, works, do not truly like it, as it throws away and recomputes a lot of state after each split of a cset. Could update and reuse the state to perform all splits in one go. Will try that next, for now we have a working form in the code base. check-in: 95af789e1f user: aku tags: trunk | |
07:46 | Completed pass 5, computing the initial set of changesets. Defined persistent structure and filled out the long-existing placeholder class (project::rev). check-in: 5f7acef887 user: aku tags: trunk | |
05:34 | Started on pass 5, computing the initial approximate set of project level revisions, aka 'ChangeSets'. Skeleton of the pass added. check-in: 54d1e3537e user: aku tags: trunk | |
2007-11-09
| ||
06:42 | Added note about why we omit cvs2svn's sorting passes. check-in: 959192d4b7 user: aku tags: trunk | |
06:28 | Moved the paranoid integrity checks of pass 2 into a separate package for use by other passes, and changed pass 4 to also run these checks, albeit in a (slightly) relaxed form. See the comments at the point of call for the reason. This completes pass 4. check-in: 131f051880 user: aku tags: trunk | |
2007-11-08
| ||
16:14 | Add the --detail flag to the merge command. check-in: 50ff86afd0 user: drh tags: trunk | |
2007-11-07
| ||
22:22 | Improvements to the merge algorithm so that it works better for common changes. Still more work needed. check-in: ac6bb3ce06 user: drh tags: trunk | |
07:46 | Opcode synchronization reworked, optype table is master from which the in-memory array is loaded. check-in: e45f47ec4a user: aku tags: trunk | |
06:22 | Pass 4 nearly completed. Rewrite symbol mutation, completed adjustment of symbol parents, added symbol refinement (noop or not flags). Now only missing piece is replication of the pass 2 paranoia checks. Note: Checks in the adjustment of parents are a bottleneck. May need indices, or something we can do in memory. check-in: 37734390ca user: aku tags: trunk | |
06:19 | Extended pass 2, save branch positions, needed for pass 4, and added optype table to have the revision opcodes available in the state as well. check-in: 7ab490df24 user: aku tags: trunk | |
2007-11-06
| ||
08:05 | Continued work on pass 4. Now propagating the project level information about prefered parents down to the file level tags. Same for the file level branches is not yet done. check-in: 3a530ef947 user: aku tags: trunk | |
07:14 | Continued work on pass 4. Added code bringing the file level symbol data into compliance with the project level symbol types, converting tags to branches and vice versa. check-in: ffafc0bd65 user: aku tags: trunk | |
06:47 | Continued work on pass 4. Implemented the deletion of excluded symbols and all parts referencing them. The complex part is the regrafting of NTDB revisions should a NTDB branch be excluded. This is like 'GraftNTDB2Trunk' in 'file' when excluding everything but the trunk. check-in: 69bf6ab99b user: aku tags: trunk | |
04:57 | Started on pass 4, 'FilterSymbols'. Skeleton. check-in: 11e5d7ce42 user: aku tags: trunk | |
04:55 | Extended comment. check-in: d314894b9a user: aku tags: trunk | |
04:53 | Fix in pass 3, do not compute prefered parents for the excluded symbols. Exclude them from the final check as well due to this. check-in: 4c8a5a44af user: aku tags: trunk | |
04:39 | Completed pass 3, CollateSymbols. Added code determining for each symbol the prefered parent from all possible parents. This is the symbol with the lowest id among the set with the maximum number of occurences as a parent. check-in: efc78b7a42 user: aku tags: trunk | |
2007-11-05
| ||
09:04 | Extended options processing to handle --exclude, --force-tag, and --force-branch options. Extended project::sym class with in-memkory databases to hold the option information and replaced the 'UserConfig' placeholder with the actual code using the new databases to determine symbol types based on user-requests. Extended the pass itself with code performing various checks on the results of type determination, partially paranoia, partially to find genuine bad requests (excluding symbols with unexcluded blockers, making a symbol with commits on it a tag, ...). NYI: Computation of the prefered parent for all symbols. check-in: 7eaa420a23 user: aku tags: trunk | |
02:42 | Added the "e" capability for viewing ticket submitter email addresses. Additional tinkering toward the design of tickets. This check-in is only thinly tested. check-in: 929d28e358 user: drh tags: trunk | |
2007-11-03
| ||
04:39 | Add support for built-in variables in subscript. check-in: a67fbd784d user: drh tags: trunk | |
04:23 | Add basic math operators to subscript. check-in: 92f6081d11 user: drh tags: trunk | |
04:01 | Subscript interpreter is now running. check-in: 8ef26c5e72 user: drh tags: trunk | |
2007-11-02
| ||
06:06 | Continued work on pass 3, added code to determine the type of symbols based on the tag-, branch-, and commit-counts. Hook for handling data coming from the option processoris present (UserConfig), but only as a placeholder. check-in: f888f06fe3 user: aku tags: trunk | |
04:29 | Skeleton for pass 3 added, collating the symbols. check-in: 6d4eb24738 user: aku tags: trunk | |
04:26 | Added code for the loading of pass II data (currently only the smybols) from the state when pass II is skipped. check-in: c3d5104084 user: aku tags: trunk | |
04:24 | Fixed typos. check-in: 77904c1f51 user: aku tags: trunk | |