Fossil SCM

Outline for more integrity checks, focusing on the changesets.

aku 2007-11-27 02:37 trunk
Commit bf83201c7f41c492f5c4aa75166eed3ee8ab7dad
--- tools/cvs2fossil/lib/c2f_integrity.tcl
+++ tools/cvs2fossil/lib/c2f_integrity.tcl
@@ -42,10 +42,11 @@
4242
return
4343
}
4444
4545
typemethod changesets {} {
4646
set n 0
47
+ RevisionCSetLinkage
4748
RevisionChangesets
4849
SymbolChangesets
4950
return
5051
}
5152
@@ -287,10 +288,20 @@
287288
AND R.fid = F.fid
288289
;
289290
}
290291
return
291292
}
293
+
294
+ proc RevisionCSetLinkage {} {
295
+ }
296
+
297
+ proc RevisionChangesets {} {
298
+ }
299
+
300
+ proc SymbolChangesets {} {
301
+ }
302
+
292303
293304
proc Check {header label sql} {
294305
upvar 1 n n
295306
set ok 1
296307
foreach {fname revnr} [state run $sql] {
297308
--- tools/cvs2fossil/lib/c2f_integrity.tcl
+++ tools/cvs2fossil/lib/c2f_integrity.tcl
@@ -42,10 +42,11 @@
42 return
43 }
44
45 typemethod changesets {} {
46 set n 0
 
47 RevisionChangesets
48 SymbolChangesets
49 return
50 }
51
@@ -287,10 +288,20 @@
287 AND R.fid = F.fid
288 ;
289 }
290 return
291 }
 
 
 
 
 
 
 
 
 
 
292
293 proc Check {header label sql} {
294 upvar 1 n n
295 set ok 1
296 foreach {fname revnr} [state run $sql] {
297
--- tools/cvs2fossil/lib/c2f_integrity.tcl
+++ tools/cvs2fossil/lib/c2f_integrity.tcl
@@ -42,10 +42,11 @@
42 return
43 }
44
45 typemethod changesets {} {
46 set n 0
47 RevisionCSetLinkage
48 RevisionChangesets
49 SymbolChangesets
50 return
51 }
52
@@ -287,10 +288,20 @@
288 AND R.fid = F.fid
289 ;
290 }
291 return
292 }
293
294 proc RevisionCSetLinkage {} {
295 }
296
297 proc RevisionChangesets {} {
298 }
299
300 proc SymbolChangesets {} {
301 }
302
303
304 proc Check {header label sql} {
305 upvar 1 n n
306 set ok 1
307 foreach {fname revnr} [state run $sql] {
308
--- tools/cvs2fossil/lib/c2f_pbreakacycle.tcl
+++ tools/cvs2fossil/lib/c2f_pbreakacycle.tcl
@@ -27,10 +27,11 @@
2727
package require vc::tools::log ; # User feedback.
2828
package require vc::tools::trouble ; # Error reporting.
2929
package require vc::fossil::import::cvs::repository ; # Repository management.
3030
package require vc::fossil::import::cvs::cyclebreaker ; # Breaking dependency cycles.
3131
package require vc::fossil::import::cvs::state ; # State storage.
32
+package require vc::fossil::import::cvs::integrity ; # State integrity checks.
3233
package require vc::fossil::import::cvs::project::rev ; # Project level changesets
3334
3435
# # ## ### ##### ######## ############# #####################
3536
## Register the pass with the management
3637
@@ -75,13 +76,14 @@
7576
cyclebreaker breakcmd [myproc BreakCycle]
7677
7778
state transaction {
7879
LoadCommitOrder
7980
cyclebreaker run break-all [myproc Changesets]
81
+
82
+ repository printcsetstatistics
83
+ integrity changesets
8084
}
81
-
82
- repository printcsetstatistics
8385
return
8486
}
8587
8688
typemethod discard {} {
8789
# Pass manager interface. Executed for all passes after the
@@ -511,10 +513,11 @@
511513
namespace export breakacycle
512514
namespace eval breakacycle {
513515
namespace import ::vc::fossil::import::cvs::cyclebreaker
514516
namespace import ::vc::fossil::import::cvs::repository
515517
namespace import ::vc::fossil::import::cvs::state
518
+ namespace import ::vc::fossil::import::cvs::integrity
516519
namespace eval project {
517520
namespace import ::vc::fossil::import::cvs::project::rev
518521
}
519522
namespace import ::vc::tools::misc::*
520523
namespace import ::vc::tools::trouble
521524
--- tools/cvs2fossil/lib/c2f_pbreakacycle.tcl
+++ tools/cvs2fossil/lib/c2f_pbreakacycle.tcl
@@ -27,10 +27,11 @@
27 package require vc::tools::log ; # User feedback.
28 package require vc::tools::trouble ; # Error reporting.
29 package require vc::fossil::import::cvs::repository ; # Repository management.
30 package require vc::fossil::import::cvs::cyclebreaker ; # Breaking dependency cycles.
31 package require vc::fossil::import::cvs::state ; # State storage.
 
32 package require vc::fossil::import::cvs::project::rev ; # Project level changesets
33
34 # # ## ### ##### ######## ############# #####################
35 ## Register the pass with the management
36
@@ -75,13 +76,14 @@
75 cyclebreaker breakcmd [myproc BreakCycle]
76
77 state transaction {
78 LoadCommitOrder
79 cyclebreaker run break-all [myproc Changesets]
 
 
 
80 }
81
82 repository printcsetstatistics
83 return
84 }
85
86 typemethod discard {} {
87 # Pass manager interface. Executed for all passes after the
@@ -511,10 +513,11 @@
511 namespace export breakacycle
512 namespace eval breakacycle {
513 namespace import ::vc::fossil::import::cvs::cyclebreaker
514 namespace import ::vc::fossil::import::cvs::repository
515 namespace import ::vc::fossil::import::cvs::state
 
516 namespace eval project {
517 namespace import ::vc::fossil::import::cvs::project::rev
518 }
519 namespace import ::vc::tools::misc::*
520 namespace import ::vc::tools::trouble
521
--- tools/cvs2fossil/lib/c2f_pbreakacycle.tcl
+++ tools/cvs2fossil/lib/c2f_pbreakacycle.tcl
@@ -27,10 +27,11 @@
27 package require vc::tools::log ; # User feedback.
28 package require vc::tools::trouble ; # Error reporting.
29 package require vc::fossil::import::cvs::repository ; # Repository management.
30 package require vc::fossil::import::cvs::cyclebreaker ; # Breaking dependency cycles.
31 package require vc::fossil::import::cvs::state ; # State storage.
32 package require vc::fossil::import::cvs::integrity ; # State integrity checks.
33 package require vc::fossil::import::cvs::project::rev ; # Project level changesets
34
35 # # ## ### ##### ######## ############# #####################
36 ## Register the pass with the management
37
@@ -75,13 +76,14 @@
76 cyclebreaker breakcmd [myproc BreakCycle]
77
78 state transaction {
79 LoadCommitOrder
80 cyclebreaker run break-all [myproc Changesets]
81
82 repository printcsetstatistics
83 integrity changesets
84 }
 
 
85 return
86 }
87
88 typemethod discard {} {
89 # Pass manager interface. Executed for all passes after the
@@ -511,10 +513,11 @@
513 namespace export breakacycle
514 namespace eval breakacycle {
515 namespace import ::vc::fossil::import::cvs::cyclebreaker
516 namespace import ::vc::fossil::import::cvs::repository
517 namespace import ::vc::fossil::import::cvs::state
518 namespace import ::vc::fossil::import::cvs::integrity
519 namespace eval project {
520 namespace import ::vc::fossil::import::cvs::project::rev
521 }
522 namespace import ::vc::tools::misc::*
523 namespace import ::vc::tools::trouble
524
--- tools/cvs2fossil/lib/c2f_pbreakrcycle.tcl
+++ tools/cvs2fossil/lib/c2f_pbreakrcycle.tcl
@@ -23,10 +23,11 @@
2323
package require struct::list ; # Higher order list operations.
2424
package require vc::tools::log ; # User feedback.
2525
package require vc::fossil::import::cvs::repository ; # Repository management.
2626
package require vc::fossil::import::cvs::cyclebreaker ; # Breaking dependency cycles.
2727
package require vc::fossil::import::cvs::state ; # State storage.
28
+package require vc::fossil::import::cvs::integrity ; # State integrity checks.
2829
package require vc::fossil::import::cvs::project::rev ; # Project level changesets
2930
3031
# # ## ### ##### ######## ############# #####################
3132
## Register the pass with the management
3233
@@ -65,13 +66,14 @@
6566
6667
cyclebreaker breakcmd {::vc::fossil::import::cvs::cyclebreaker break}
6768
6869
state transaction {
6970
cyclebreaker run break-rev [myproc Changesets]
70
- }
7171
72
- repository printcsetstatistics
72
+ repository printcsetstatistics
73
+ integrity changesets
74
+ }
7375
return
7476
}
7577
7678
typemethod discard {} {
7779
# Pass manager interface. Executed for all passes after the
@@ -103,10 +105,11 @@
103105
namespace export breakrcycle
104106
namespace eval breakrcycle {
105107
namespace import ::vc::fossil::import::cvs::cyclebreaker
106108
namespace import ::vc::fossil::import::cvs::repository
107109
namespace import ::vc::fossil::import::cvs::state
110
+ namespace import ::vc::fossil::import::cvs::integrity
108111
namespace eval project {
109112
namespace import ::vc::fossil::import::cvs::project::rev
110113
}
111114
namespace import ::vc::tools::log
112115
log register breakrcycle
113116
--- tools/cvs2fossil/lib/c2f_pbreakrcycle.tcl
+++ tools/cvs2fossil/lib/c2f_pbreakrcycle.tcl
@@ -23,10 +23,11 @@
23 package require struct::list ; # Higher order list operations.
24 package require vc::tools::log ; # User feedback.
25 package require vc::fossil::import::cvs::repository ; # Repository management.
26 package require vc::fossil::import::cvs::cyclebreaker ; # Breaking dependency cycles.
27 package require vc::fossil::import::cvs::state ; # State storage.
 
28 package require vc::fossil::import::cvs::project::rev ; # Project level changesets
29
30 # # ## ### ##### ######## ############# #####################
31 ## Register the pass with the management
32
@@ -65,13 +66,14 @@
65
66 cyclebreaker breakcmd {::vc::fossil::import::cvs::cyclebreaker break}
67
68 state transaction {
69 cyclebreaker run break-rev [myproc Changesets]
70 }
71
72 repository printcsetstatistics
 
 
73 return
74 }
75
76 typemethod discard {} {
77 # Pass manager interface. Executed for all passes after the
@@ -103,10 +105,11 @@
103 namespace export breakrcycle
104 namespace eval breakrcycle {
105 namespace import ::vc::fossil::import::cvs::cyclebreaker
106 namespace import ::vc::fossil::import::cvs::repository
107 namespace import ::vc::fossil::import::cvs::state
 
108 namespace eval project {
109 namespace import ::vc::fossil::import::cvs::project::rev
110 }
111 namespace import ::vc::tools::log
112 log register breakrcycle
113
--- tools/cvs2fossil/lib/c2f_pbreakrcycle.tcl
+++ tools/cvs2fossil/lib/c2f_pbreakrcycle.tcl
@@ -23,10 +23,11 @@
23 package require struct::list ; # Higher order list operations.
24 package require vc::tools::log ; # User feedback.
25 package require vc::fossil::import::cvs::repository ; # Repository management.
26 package require vc::fossil::import::cvs::cyclebreaker ; # Breaking dependency cycles.
27 package require vc::fossil::import::cvs::state ; # State storage.
28 package require vc::fossil::import::cvs::integrity ; # State integrity checks.
29 package require vc::fossil::import::cvs::project::rev ; # Project level changesets
30
31 # # ## ### ##### ######## ############# #####################
32 ## Register the pass with the management
33
@@ -65,13 +66,14 @@
66
67 cyclebreaker breakcmd {::vc::fossil::import::cvs::cyclebreaker break}
68
69 state transaction {
70 cyclebreaker run break-rev [myproc Changesets]
 
71
72 repository printcsetstatistics
73 integrity changesets
74 }
75 return
76 }
77
78 typemethod discard {} {
79 # Pass manager interface. Executed for all passes after the
@@ -103,10 +105,11 @@
105 namespace export breakrcycle
106 namespace eval breakrcycle {
107 namespace import ::vc::fossil::import::cvs::cyclebreaker
108 namespace import ::vc::fossil::import::cvs::repository
109 namespace import ::vc::fossil::import::cvs::state
110 namespace import ::vc::fossil::import::cvs::integrity
111 namespace eval project {
112 namespace import ::vc::fossil::import::cvs::project::rev
113 }
114 namespace import ::vc::tools::log
115 log register breakrcycle
116
--- tools/cvs2fossil/lib/c2f_pbreakscycle.tcl
+++ tools/cvs2fossil/lib/c2f_pbreakscycle.tcl
@@ -22,10 +22,11 @@
2222
package require snit ; # OO system.
2323
package require struct::list ; # Higher order list operations.
2424
package require vc::fossil::import::cvs::cyclebreaker ; # Breaking dependency cycles.
2525
package require vc::fossil::import::cvs::repository ; # Repository management.
2626
package require vc::fossil::import::cvs::state ; # State storage.
27
+package require vc::fossil::import::cvs::integrity ; # State integrity checks.
2728
package require vc::fossil::import::cvs::project::rev ; # Project level changesets
2829
2930
# # ## ### ##### ######## ############# #####################
3031
## Register the pass with the management
3132
@@ -64,13 +65,14 @@
6465
6566
cyclebreaker breakcmd {::vc::fossil::import::cvs::cyclebreaker break}
6667
6768
state transaction {
6869
cyclebreaker run break-sym [myproc Changesets]
69
- }
7070
71
- repository printcsetstatistics
71
+ repository printcsetstatistics
72
+ integrity changesets
73
+ }
7274
return
7375
}
7476
7577
typemethod discard {} {
7678
# Pass manager interface. Executed for all passes after the
@@ -102,10 +104,11 @@
102104
namespace export breakscycle
103105
namespace eval breakscycle {
104106
namespace import ::vc::fossil::import::cvs::cyclebreaker
105107
namespace import ::vc::fossil::import::cvs::repository
106108
namespace import ::vc::fossil::import::cvs::state
109
+ namespace import ::vc::fossil::import::cvs::integrity
107110
namespace eval project {
108111
namespace import ::vc::fossil::import::cvs::project::rev
109112
}
110113
}
111114
}
112115
--- tools/cvs2fossil/lib/c2f_pbreakscycle.tcl
+++ tools/cvs2fossil/lib/c2f_pbreakscycle.tcl
@@ -22,10 +22,11 @@
22 package require snit ; # OO system.
23 package require struct::list ; # Higher order list operations.
24 package require vc::fossil::import::cvs::cyclebreaker ; # Breaking dependency cycles.
25 package require vc::fossil::import::cvs::repository ; # Repository management.
26 package require vc::fossil::import::cvs::state ; # State storage.
 
27 package require vc::fossil::import::cvs::project::rev ; # Project level changesets
28
29 # # ## ### ##### ######## ############# #####################
30 ## Register the pass with the management
31
@@ -64,13 +65,14 @@
64
65 cyclebreaker breakcmd {::vc::fossil::import::cvs::cyclebreaker break}
66
67 state transaction {
68 cyclebreaker run break-sym [myproc Changesets]
69 }
70
71 repository printcsetstatistics
 
 
72 return
73 }
74
75 typemethod discard {} {
76 # Pass manager interface. Executed for all passes after the
@@ -102,10 +104,11 @@
102 namespace export breakscycle
103 namespace eval breakscycle {
104 namespace import ::vc::fossil::import::cvs::cyclebreaker
105 namespace import ::vc::fossil::import::cvs::repository
106 namespace import ::vc::fossil::import::cvs::state
 
107 namespace eval project {
108 namespace import ::vc::fossil::import::cvs::project::rev
109 }
110 }
111 }
112
--- tools/cvs2fossil/lib/c2f_pbreakscycle.tcl
+++ tools/cvs2fossil/lib/c2f_pbreakscycle.tcl
@@ -22,10 +22,11 @@
22 package require snit ; # OO system.
23 package require struct::list ; # Higher order list operations.
24 package require vc::fossil::import::cvs::cyclebreaker ; # Breaking dependency cycles.
25 package require vc::fossil::import::cvs::repository ; # Repository management.
26 package require vc::fossil::import::cvs::state ; # State storage.
27 package require vc::fossil::import::cvs::integrity ; # State integrity checks.
28 package require vc::fossil::import::cvs::project::rev ; # Project level changesets
29
30 # # ## ### ##### ######## ############# #####################
31 ## Register the pass with the management
32
@@ -64,13 +65,14 @@
65
66 cyclebreaker breakcmd {::vc::fossil::import::cvs::cyclebreaker break}
67
68 state transaction {
69 cyclebreaker run break-sym [myproc Changesets]
 
70
71 repository printcsetstatistics
72 integrity changesets
73 }
74 return
75 }
76
77 typemethod discard {} {
78 # Pass manager interface. Executed for all passes after the
@@ -102,10 +104,11 @@
104 namespace export breakscycle
105 namespace eval breakscycle {
106 namespace import ::vc::fossil::import::cvs::cyclebreaker
107 namespace import ::vc::fossil::import::cvs::repository
108 namespace import ::vc::fossil::import::cvs::state
109 namespace import ::vc::fossil::import::cvs::integrity
110 namespace eval project {
111 namespace import ::vc::fossil::import::cvs::project::rev
112 }
113 }
114 }
115
--- tools/cvs2fossil/lib/c2f_pinitcsets.tcl
+++ tools/cvs2fossil/lib/c2f_pinitcsets.tcl
@@ -21,10 +21,11 @@
2121
package require snit ; # OO system.
2222
package require vc::tools::misc ; # Text formatting.
2323
package require vc::tools::log ; # User feedback.
2424
package require vc::fossil::import::cvs::repository ; # Repository management.
2525
package require vc::fossil::import::cvs::state ; # State storage.
26
+package require vc::fossil::import::cvs::integrity ; # State integrity checks.
2627
package require vc::fossil::import::cvs::project::sym ; # Project level symbols
2728
package require vc::fossil::import::cvs::project::rev ; # Project level changesets
2829
2930
# # ## ### ##### ######## ############# #####################
3031
## Register the pass with the management
@@ -133,10 +134,11 @@
133134
BreakInternalDependencies ; # Split the csets based on internal conflicts.
134135
CreateSymbolChangesets ; # Create csets for tags and branches.
135136
PersistTheChangesets
136137
137138
repository printcsetstatistics
139
+ integrity changesets
138140
}
139141
return
140142
}
141143
142144
typemethod discard {} {
@@ -334,10 +336,11 @@
334336
namespace eval ::vc::fossil::import::cvs::pass {
335337
namespace export initcsets
336338
namespace eval initcsets {
337339
namespace import ::vc::fossil::import::cvs::repository
338340
namespace import ::vc::fossil::import::cvs::state
341
+ namespace import ::vc::fossil::import::cvs::integrity
339342
namespace eval project {
340343
namespace import ::vc::fossil::import::cvs::project::rev
341344
}
342345
namespace import ::vc::tools::misc::*
343346
namespace import ::vc::tools::log
344347
--- tools/cvs2fossil/lib/c2f_pinitcsets.tcl
+++ tools/cvs2fossil/lib/c2f_pinitcsets.tcl
@@ -21,10 +21,11 @@
21 package require snit ; # OO system.
22 package require vc::tools::misc ; # Text formatting.
23 package require vc::tools::log ; # User feedback.
24 package require vc::fossil::import::cvs::repository ; # Repository management.
25 package require vc::fossil::import::cvs::state ; # State storage.
 
26 package require vc::fossil::import::cvs::project::sym ; # Project level symbols
27 package require vc::fossil::import::cvs::project::rev ; # Project level changesets
28
29 # # ## ### ##### ######## ############# #####################
30 ## Register the pass with the management
@@ -133,10 +134,11 @@
133 BreakInternalDependencies ; # Split the csets based on internal conflicts.
134 CreateSymbolChangesets ; # Create csets for tags and branches.
135 PersistTheChangesets
136
137 repository printcsetstatistics
 
138 }
139 return
140 }
141
142 typemethod discard {} {
@@ -334,10 +336,11 @@
334 namespace eval ::vc::fossil::import::cvs::pass {
335 namespace export initcsets
336 namespace eval initcsets {
337 namespace import ::vc::fossil::import::cvs::repository
338 namespace import ::vc::fossil::import::cvs::state
 
339 namespace eval project {
340 namespace import ::vc::fossil::import::cvs::project::rev
341 }
342 namespace import ::vc::tools::misc::*
343 namespace import ::vc::tools::log
344
--- tools/cvs2fossil/lib/c2f_pinitcsets.tcl
+++ tools/cvs2fossil/lib/c2f_pinitcsets.tcl
@@ -21,10 +21,11 @@
21 package require snit ; # OO system.
22 package require vc::tools::misc ; # Text formatting.
23 package require vc::tools::log ; # User feedback.
24 package require vc::fossil::import::cvs::repository ; # Repository management.
25 package require vc::fossil::import::cvs::state ; # State storage.
26 package require vc::fossil::import::cvs::integrity ; # State integrity checks.
27 package require vc::fossil::import::cvs::project::sym ; # Project level symbols
28 package require vc::fossil::import::cvs::project::rev ; # Project level changesets
29
30 # # ## ### ##### ######## ############# #####################
31 ## Register the pass with the management
@@ -133,10 +134,11 @@
134 BreakInternalDependencies ; # Split the csets based on internal conflicts.
135 CreateSymbolChangesets ; # Create csets for tags and branches.
136 PersistTheChangesets
137
138 repository printcsetstatistics
139 integrity changesets
140 }
141 return
142 }
143
144 typemethod discard {} {
@@ -334,10 +336,11 @@
336 namespace eval ::vc::fossil::import::cvs::pass {
337 namespace export initcsets
338 namespace eval initcsets {
339 namespace import ::vc::fossil::import::cvs::repository
340 namespace import ::vc::fossil::import::cvs::state
341 namespace import ::vc::fossil::import::cvs::integrity
342 namespace eval project {
343 namespace import ::vc::fossil::import::cvs::project::rev
344 }
345 namespace import ::vc::tools::misc::*
346 namespace import ::vc::tools::log
347

Keyboard Shortcuts

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