Fossil SCM

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.

aku 2007-11-22 03:11 trunk
Commit 65be27aa69956266ba1f92fa2fef3e59a1b92060
--- tools/cvs2fossil/lib/c2f_pinitcsets.tcl
+++ tools/cvs2fossil/lib/c2f_pinitcsets.tcl
@@ -114,15 +114,15 @@
114114
set r [project::rev %AUTO% [repository projectof $pid] $cstype $srcid [state run {
115115
SELECT C.rid
116116
FROM csrevision C
117117
WHERE C.cid = $id
118118
ORDER BY C.pos
119
- }]]
120
- $r setid $id
119
+ }] $id]
121120
}
122121
123122
project::rev getcstypes
123
+ project::rev loadcounter
124124
return
125125
}
126126
127127
typemethod run {} {
128128
# Pass manager interface. Executed to perform the
129129
--- tools/cvs2fossil/lib/c2f_pinitcsets.tcl
+++ tools/cvs2fossil/lib/c2f_pinitcsets.tcl
@@ -114,15 +114,15 @@
114 set r [project::rev %AUTO% [repository projectof $pid] $cstype $srcid [state run {
115 SELECT C.rid
116 FROM csrevision C
117 WHERE C.cid = $id
118 ORDER BY C.pos
119 }]]
120 $r setid $id
121 }
122
123 project::rev getcstypes
 
124 return
125 }
126
127 typemethod run {} {
128 # Pass manager interface. Executed to perform the
129
--- tools/cvs2fossil/lib/c2f_pinitcsets.tcl
+++ tools/cvs2fossil/lib/c2f_pinitcsets.tcl
@@ -114,15 +114,15 @@
114 set r [project::rev %AUTO% [repository projectof $pid] $cstype $srcid [state run {
115 SELECT C.rid
116 FROM csrevision C
117 WHERE C.cid = $id
118 ORDER BY C.pos
119 }] $id]
 
120 }
121
122 project::rev getcstypes
123 project::rev loadcounter
124 return
125 }
126
127 typemethod run {} {
128 # Pass manager interface. Executed to perform the
129
--- tools/cvs2fossil/lib/c2f_prev.tcl
+++ tools/cvs2fossil/lib/c2f_prev.tcl
@@ -28,12 +28,17 @@
2828
2929
snit::type ::vc::fossil::import::cvs::project::rev {
3030
# # ## ### ##### ######## #############
3131
## Public API
3232
33
- constructor {project cstype srcid revisions} {
34
- set myid [incr mycounter]
33
+ constructor {project cstype srcid revisions {theid {}}} {
34
+ if {$theid ne ""} {
35
+ set myid $theid
36
+ } else {
37
+ set myid [incr mycounter]
38
+ }
39
+
3540
set myproject $project
3641
set mytype $cstype
3742
set mysrcid $srcid
3843
set myrevisions $revisions
3944
@@ -46,12 +51,10 @@
4651
4752
method id {} { return $myid }
4853
method revisions {} { return $myrevisions }
4954
method data {} { return [list $myproject $mytype $mysrcid] }
5055
51
- method setid {id} { set myid $id ; return }
52
-
5356
method bysymbol {} { return [expr {$mytype eq "sym"}] }
5457
method byrevision {} { return [expr {$mytype eq "rev"}] }
5558
5659
method successors {} {
5760
# NOTE / FUTURE: Possible bottleneck.
5861
--- tools/cvs2fossil/lib/c2f_prev.tcl
+++ tools/cvs2fossil/lib/c2f_prev.tcl
@@ -28,12 +28,17 @@
28
29 snit::type ::vc::fossil::import::cvs::project::rev {
30 # # ## ### ##### ######## #############
31 ## Public API
32
33 constructor {project cstype srcid revisions} {
34 set myid [incr mycounter]
 
 
 
 
 
35 set myproject $project
36 set mytype $cstype
37 set mysrcid $srcid
38 set myrevisions $revisions
39
@@ -46,12 +51,10 @@
46
47 method id {} { return $myid }
48 method revisions {} { return $myrevisions }
49 method data {} { return [list $myproject $mytype $mysrcid] }
50
51 method setid {id} { set myid $id ; return }
52
53 method bysymbol {} { return [expr {$mytype eq "sym"}] }
54 method byrevision {} { return [expr {$mytype eq "rev"}] }
55
56 method successors {} {
57 # NOTE / FUTURE: Possible bottleneck.
58
--- tools/cvs2fossil/lib/c2f_prev.tcl
+++ tools/cvs2fossil/lib/c2f_prev.tcl
@@ -28,12 +28,17 @@
28
29 snit::type ::vc::fossil::import::cvs::project::rev {
30 # # ## ### ##### ######## #############
31 ## Public API
32
33 constructor {project cstype srcid revisions {theid {}}} {
34 if {$theid ne ""} {
35 set myid $theid
36 } else {
37 set myid [incr mycounter]
38 }
39
40 set myproject $project
41 set mytype $cstype
42 set mysrcid $srcid
43 set myrevisions $revisions
44
@@ -46,12 +51,10 @@
51
52 method id {} { return $myid }
53 method revisions {} { return $myrevisions }
54 method data {} { return [list $myproject $mytype $mysrcid] }
55
 
 
56 method bysymbol {} { return [expr {$mytype eq "sym"}] }
57 method byrevision {} { return [expr {$mytype eq "rev"}] }
58
59 method successors {} {
60 # NOTE / FUTURE: Possible bottleneck.
61

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button