Diff
Not logged in

Differences From:

File tools/cvs2fossil/lib/c2f_cyclebreaker.tcl part of check-in [0af7a3c8ac] - 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. by aku on 2007-11-30 06:57:19. [view]

To:

File tools/cvs2fossil/lib/c2f_cyclebreaker.tcl part of check-in [41d41c7b57] - Added progress output to the code loading up the graph to traverse, nodes, and arcs. by aku on 2007-12-02 03:41:33. [view]

@@ -174,9 +174,13 @@
 	}
 
 	set dg [struct::graph dg]
 
+	set n 0
+	set max [llength $changesets]
+
 	foreach cset $changesets {
+	    log progress 2 cyclebreaker $n $max
 	    set tr [$cset timerange]
 	    $dg node insert $cset
 	    $dg node set    $cset timerange $tr
 	    $dg node set    $cset label     "[$cset str]\\n[join [struct::list map $tr {::clock format}] "\\n"]"
@@ -183,8 +187,9 @@
 	    $dg node set    $cset __id__    [$cset id]
 	    $dg node set    $cset shape     [expr {[$cset bysymbol]
 						   ? "ellipse"
 						   : "box"}]
+	    incr n
 	}
 
 	if {$log} {
 	    log write 3 cyclebreaker "Has [nsp [llength $changesets] changeset]"
@@ -193,9 +198,11 @@
 	# 2. Find for all relevant changeset their revisions and their
 	#    dependencies. Map the latter back to changesets and
 	#    construct the corresponding arcs.
 
+	set n 0
 	foreach cset $changesets {
+	    log progress 2 cyclebreaker $n $max
 	    foreach succ [$cset successors] {
 		# Changesets may have dependencies outside of the
 		# chosen set. These are ignored
 		if {![$dg node exists $succ]} continue
@@ -204,8 +211,9 @@
 		    $cset loopcheck
 		    trouble fatal "[$cset str] depends on itself"
 		}
 	    }
+	    incr n
 	}
 
 	if {$log} {
 	    log write 3 cyclebreaker "Has [nsp [llength [$dg arcs]] dependency dependencies]"