File History

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

History of tools/cvs2fossil/lib/c2f_pcollrev.tcl

Updated the copyright information of all files touched in the new year. file: [643897c9] check-in: [66235f24] user: aku branch: trunk, size: 25548
Removed the now obsolete textrange information from the revision table and updated the file revision code to not store its textrange any longer. file: [264f332a] check-in: [3e76f2a5] user: aku branch: trunk, size: 25543
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: [e6ab3e8b] check-in: [aa04ac9d] user: aku branch: trunk, size: 25677
Changes to cvs2fossil to import tcllib CVS into fossil on Win32    * using [::file] instead of [file] in snit methods to get the core file command * taking care of files that only differ in case in the Attic and the repo on case insensitive FS * passing platform specific file: [1a719814] check-in: [7208c7ac] user: mjanssen branch: trunk, size: 24711
More comments on sql statements. file: [8de61399] check-in: [6809145e] user: aku branch: trunk, size: 24707
Added comments explaining the select statement checking revision/file/project/metadata integrity file: [f56e45ca] check-in: [808fbc47] user: aku branch: trunk, size: 24479
Fluff: Renamed state methods use/reading/writing to usedb/use/extend for clarity. Updated all callers. Extended state module with code to dump the SQL statements it receives to a file for analysis. Extended the 'use' declarations of several passes. file: [5bb47f2e] check-in: [e288af39] user: aku branch: trunk, size: 22021
Added ability to declare indices on tables in the persistent state. Used this to declare indices on critical columns. Slows down the transactions saving changesets, this however is made up when it comes to successor/predecessor retrieval of changesets. file: [e100446c] check-in: [74854a30] user: aku branch: trunk, size: 22053
Bugfix. Handle free-floating branches (their root revision was removed as unnecessary). file: [531ee2ff] check-in: [79c227a9] user: aku branch: trunk, size: 21751
Code cleanup. Removed trailing whitespace across the board. file: [ea94dc16] check-in: [b679ca33] user: aku branch: trunk, size: 21390
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. file: [e9c8eea4] check-in: [96b7bfb8] user: aku branch: trunk, size: 21393
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. file: [9385b6cf] check-in: [95af789e] user: aku branch: trunk, size: 21393
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: [978a2b3f] check-in: [131f0518] user: aku branch: trunk, size: 21023
Opcode synchronization reworked, optype table is master from which the in-memory array is loaded. file: [3d675ee0] check-in: [e45f47ec] user: aku branch: trunk, size: 20877
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. file: [ef1b5512] check-in: [7ab490df] user: aku branch: trunk, size: 20571
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. file: [903f0278] check-in: [7eaa420a] user: aku branch: trunk, size: 20062
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. file: [98fd60f5] check-in: [f888f06f] user: aku branch: trunk, size: 20062
Added code for the loading of pass II data (currently only the smybols) from the state when pass II is skipped. file: [d447e0de] check-in: [c3d51040] user: aku branch: trunk, size: 19744
Added code creating aggregate symbol statistics. This completes pass 2 (CollRev). file: [e14d8add] check-in: [6f8667b0] user: aku branch: trunk, size: 19504
Replaced the ASCII art showing entity links with dia'grams and gif images derived from them. Especially useful when trying to understand the paranoia checks. file: [46bf84e9] check-in: [831e8f36] user: aku branch: trunk, size: 19145
Added another consistency check, and revised the comments to use the more exact terms for the various relationships. file: [0ebb647b] check-in: [70d4a811] user: aku branch: trunk, size: 19349
Fixed one of the cross-reference checks. file: [2f4f8082] check-in: [2e7cbb28] user: aku branch: trunk, size: 18701
Added lots of checks looking for inconsistent references between the various objects, mainly revisions. file: [1a642fd7] check-in: [2434ad3b] user: aku branch: trunk, size: 18679
Changed the coding of trunk symbols. Using NULL makes for difficult comparisons later when doing integrity checks. Each trunk now has a regular unique id as a symbol. Added documentation to the table definitions, about references, constraints, etc. file: [0cf7d28b] check-in: [2c08006d] user: aku branch: trunk, size: 12140
Extended handling of id's for files so that we have them for backreferences from symbols and revisions. Completed persistence of revisions and symbols at file-level and fixed small problem with left-over links to branches. file: [a41e2628] check-in: [adf168e2] user: aku branch: trunk, size: 9837
Due to quickly building memory pressure for large cvs repositories (thousands of revisions and symbol object) we have to save the pertinent information of a file immediately after it has been processed and then clear the memory. Inserted the basic skeleton for this into pass and file objects. file: [38ef86c8] check-in: [3a00ac5a] user: aku branch: trunk, size: 9526
Reworked the whole handling of meta data (author, commit message, plus project/branch information), so that revisions now store only the meta id, everything else is stored centrally. All the relevant pieces (author, cmessage, symbols, projects) now also get numeric ids assigned early instead of when being saved to the state. Project ids are loaded from the state now too. file: [47f6b87c] check-in: [67c24820] user: aku branch: trunk, size: 9140
Extended pass manager to handle the skipped and defered passes coming before and after the actually executed passes. Extended passes I and II to have the required methods. Implemented loading (for skipped passes) as skeletons, implemented discarding (for defered passes) completely. Extended state manager with ability to discard state. file: [7b2a655d] check-in: [ae19c0fc] user: aku branch: trunk, size: 9123
Extended rcs parser to tag errors which are syntax errors in the RCS archive. Extended pass handling to capture trouble and distinguish between internal problems and syntax errors. file: [c79989ff] check-in: [be891232] user: aku branch: trunk, size: 8563
Nicer parser integration into pass II, and sort files for easier filesystem traversal during parsing. file: [daf2ded7] check-in: [ec053168] user: aku branch: trunk, size: 8327
Fleshed out pass II, added skeleton of rcs archive class, started integration of rcs parser. file: [71d77fda] check-in: [8a93ffa9] user: aku branch: trunk, size: 8363
Added pass II (collection of revision and symbols), basic skeleton and state definitions, and integrated into the pass manager. file: [db77055e] check-in: [fdbc01df] user: aku branch: trunk, size: 7745 Added