Differences From:
File
tools/cvs2fossil/lib/c2f_pbreakscycle.tcl
part of check-in
[7f15be9078]
- 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.
by
aku on
2007-11-20 06:59:03.
[view]
To:
File
tools/cvs2fossil/lib/c2f_pbreakscycle.tcl
part of check-in
[2cf0462b82]
- 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.
by
aku on
2007-11-21 04:05:53.
[view]
@@ -61,17 +61,18 @@
typemethod run {} {
# Pass manager interface. Executed to perform the
# functionality of the pass.
- set changesets [struct::list filter [project::rev all] [myproc IsBySymbol]]
+ set changesets [Changesets]
cyclebreaker dot break-sym-start $changesets
+
+ cyclebreaker breakcmd {::vc::fossil::import::cvs::cyclebreaker break}
state transaction {
cyclebreaker run break-sym $changesets
}
- set changesets [struct::list filter [project::rev all] [myproc IsBySymbol]]
- cyclebreaker dot break-sym-done $changesets
+ cyclebreaker dot break-sym-done [Changesets]
repository printcsetstatistics
return
}
@@ -84,8 +85,12 @@
}
# # ## ### ##### ######## #############
## Internal methods
+
+ proc Changesets {} {
+ return [struct::list filter [project::rev all] [myproc IsBySymbol]]
+ }
proc IsBySymbol {cset} { $cset bysymbol }
# # ## ### ##### ######## #############