Fossil

File History
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History of tools/cvs2fossil/lib/pkgIndex.tcl

2008-03-05
03:42
Split the current import pass into three, for files, changesets, and finalization (fossil rebuild). file: [b810fde7] check-in: [31b15fcf] user: aku branch: trunk, size: 4908
2008-02-16
06:43
Created a memory tracking subsystem to investigate memory consumption of the system in general, and pass InitCsets in particular. getmemory series is a postprocessor pulling the data out of the log and into a tables gnuplot is able to handle. file: [73c4287b] check-in: [8287044e] user: aku branch: trunk, size: 4671
2008-02-04
06:01
Added classes to track the state of a workspace, and of the whole revision import. file: [8e64440f] check-in: [d011e0b0] user: aku branch: trunk, size: 4568
2008-02-03
00:04
Extended the collection of revisions for a file with a separate blob store to manage the text ranges of revisions and their dependencies separate from the revisions. This will be used later (upcoming) to properly expand a file even if revisions were removed as irrelevant during the collection and filter passes. file: [a73808ac] check-in: [aa04ac9d] user: aku branch: trunk, size: 4346
2007-12-07
08:55
Removed two unused classes. file: [bb5f385c] check-in: [97e0e9dd] user: aku branch: trunk, size: 4233
2007-12-05
07:57
Created new pass for the import of files and changesets. Uses the new file method and fossil accessor class to handle the file import. Changeset -> manifest conversion is _not_ covered yet. file: [fde79c66] check-in: [d9fc75e5] user: aku branch: trunk, size: 4455
07:52
Added helper class managing access to fossil repositories. Already has a basic method to import and delta-compress a series of files. Used 'test' commands of fossil to get the necessary low-level access. file: [c5fb9bac] check-in: [b6bf21e2] user: aku branch: trunk, size: 4344
07:50
Put the graph traversal core of the cycle breaker core into a separate class, for use in other parts of the system. TODO: Rewrite the cycle breaker core in terms of this class. file: [0a082ba7] check-in: [e7013137] user: aku branch: trunk, size: 4234
2007-12-02
20:04
The performance was still not satisfying, even with faster recomputing of successors. Doing it multiple times (Building the graph in each breaker and sort passes) eats time. Caching in memory blows the memory. Chosen solution: Cache this information in the database.    Created a new pass 'CsetDeps' which is run between 'InitCsets' and 'BreakRevCsetCycles' (i.e. changeset creation and first breaker pass). It computes the changeset dependencies from the file-level dependencies once and saves the result in the state, in the new table 'cssuccessor'. Now the breaker and sort passes can get the information quickly, with virtually no effort. The dependencies are recomputed incrementally when a changeset is split by one of the breaker passes, for its fragments and its predecessors.    The loop check is now trivial, and integrated into the successor computation, with the heavy lifting for the detailed analysis and reporting moved down into the type-dependent SQL queries. The relevant new method is 'loops'. Now that the loop check is incremental the pass based checks have been removed from the integrity module, and the option '--loopcheck' has been eliminated. For paranoia the graph setup and modification code got its loop check reinstated as an assert, redusing the changeset report code.    Renumbered the breaker and sort passes. A number of places, like graph setup and traversal, loading of changesets, etc. got feedback indicators to show their progress.    The selection of revision and symbol changesets for the associated breaker passes was a bit on the slow side. We now keep changeset lists sorted by type (during loading or general construction) and access them directly. file: [bba80efc] check-in: [00bf8c19] user: aku branch: trunk, size: 4124
2007-11-25
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. file: [d37efe5d] check-in: [66c85b4d] user: aku branch: trunk, size: 4011
2007-11-20
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. file: [48c25458] check-in: [7f15be90] user: aku branch: trunk, size: 3785
2007-11-16
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. file: [326b42f7] check-in: [e7c805f1] user: aku branch: trunk, size: 3682
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. file: [e9e0ed3b] check-in: [770a9b57] user: aku branch: trunk, size: 3566
2007-11-15
07:17
Added skeleton files for pass 7, the breaking of dependency cycles over symbol-based changesets. file: [f2f4cb7b] check-in: [258366a3] user: aku branch: trunk, size: 3450
2007-11-14
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. file: [a937f1cd] check-in: [94c39d63] user: aku branch: trunk, size: 3334
2007-11-11
00:08
Started on pass 6, breaking cycles between revision based changesets. Added skeleton files. file: [dbfdadaf] check-in: [2a01d504] user: aku branch: trunk, size: 3222
2007-11-10
05:34
Started on pass 5, computing the initial approximate set of project level revisions, aka 'ChangeSets'. Skeleton of the pass added. file: [183f520c] check-in: [54d1e353] user: aku branch: trunk, size: 3054
2007-11-09
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. file: [9cd7a5dc] check-in: [131f0518] user: aku branch: trunk, size: 2942
2007-11-06
04:57
Started on pass 4, 'FilterSymbols'. Skeleton. file: [d11a0332] check-in: [11e5d7ce] user: aku branch: trunk, size: 2831
2007-11-02
04:29
Skeleton for pass 3 added, collating the symbols. file: [1cffea0d] check-in: [6d4eb247] user: aku branch: trunk, size: 2719
2007-10-21
04:42
Created a separate common class for the id databases used by the repository, and updated the repository code to use it. file: [94c8694e] check-in: [99e165d5] user: aku branch: trunk, size: 2609
2007-10-10
03:28
Added a lot of skeleton files for the revision and symbol data structures, for both project and file level. file: [4291c23a] check-in: [84de38d7] user: aku branch: trunk, size: 2510
2007-10-06
18:43
Fleshed out pass II, added skeleton of rcs archive class, started integration of rcs parser. file: [94d43620] check-in: [8a93ffa9] user: aku branch: trunk, size: 1626
18:28
Bringing back in the old parser for rcs archives. file: [96ca91f4] check-in: [860f533e] user: aku branch: trunk, size: 1522
03:56
Added pass II (collection of revision and symbols), basic skeleton and state definitions, and integrated into the pass manager. file: [da1f72a6] check-in: [fdbc01df] user: aku branch: trunk, size: 1417
2007-10-05
05:33
Added the basic parts of the state manager and integrated it with option processor and pass manager. file: [f6ad9cb7] check-in: [eb656de7] user: aku branch: trunk, size: 1299
2007-10-04
04:34
Continued work on pass I. Filled in the repository management, and basic implementation of project objects. Missing are persistence and the foundation for that (cache database). file: [e327e448] check-in: [52f22540] user: aku branch: trunk, size: 1195
2007-10-03
04:18
Added stub for repository management, added most of pass I, collecting archives in the repository. file: [2c710991] check-in: [47740cc1] user: aku branch: trunk, size: 989
2007-10-02
06:48
Added the pass management, integrated with application and option processor. file: [d90ebe99] check-in: [59115153] user: aku branch: trunk, size: 744
05:33
Re-added the user feedback and error reporting utilities, with modifications, and completed the handling of the informational options. file: [6725ddc0] check-in: [d57b7b4a] user: aku branch: trunk, size: 647
03:05
Third attempt at getting a cvs importer which can handle branches. Using cvs2svn code and design notes as a guide. file: [5b7b4433] check-in: [2a98ac44] user: aku branch: trunk, size: 459 Added