Hex Artifact Content
Not logged in

Artifact fde05dafaad24f49d5b0f62f195f5ccae93b66c5:

File tools/lib/pkgIndex.tcl part of check-in [72dac950c3] - Continued work on the import of branches. Main principle now is to handle the branches vertically. First the trunk, then the branch starting with the first unprocessed changeset, and so forth. Looks more promising than the previous approach. Currently handles just a bit over half of the test projects (11 of 21 in 6 repositories). by aku on 2007-09-26 05:06:18.

0000: 69 66 20 7b 21 5b 70 61 63 6b 61 67 65 20 76 73  if {![package vs
0010: 61 74 69 73 66 69 65 73 20 5b 70 61 63 6b 61 67  atisfies [packag
0020: 65 20 72 65 71 75 69 72 65 20 54 63 6c 5d 20 38  e require Tcl] 8
0030: 2e 34 5d 7d 20 72 65 74 75 72 6e 0a 70 61 63 6b  .4]} return.pack
0040: 61 67 65 20 69 66 6e 65 65 64 65 64 20 76 63 3a  age ifneeded vc:
0050: 3a 72 63 73 3a 3a 70 61 72 73 65 72 20 20 20 20  :rcs::parser    
0060: 20 20 20 20 20 20 20 31 2e 30 20 5b 6c 69 73 74         1.0 [list
0070: 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f   source [file jo
0080: 69 6e 20 24 64 69 72 20 72 63 73 70 61 72 73 65  in $dir rcsparse
0090: 72 2e 74 63 6c 5d 5d 0a 70 61 63 6b 61 67 65 20  r.tcl]].package 
00a0: 69 66 6e 65 65 64 65 64 20 76 63 3a 3a 63 76 73  ifneeded vc::cvs
00b0: 3a 3a 63 6d 64 20 20 20 20 20 20 20 20 20 20 20  ::cmd           
00c0: 20 20 20 31 2e 30 20 5b 6c 69 73 74 20 73 6f 75     1.0 [list sou
00d0: 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24  rce [file join $
00e0: 64 69 72 20 63 76 73 5f 63 6d 64 2e 74 63 6c 5d  dir cvs_cmd.tcl]
00f0: 5d 0a 70 61 63 6b 61 67 65 20 69 66 6e 65 65 64  ].package ifneed
0100: 65 64 20 76 63 3a 3a 63 76 73 3a 3a 77 73 20 20  ed vc::cvs::ws  
0110: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 2e 30               1.0
0120: 20 5b 6c 69 73 74 20 73 6f 75 72 63 65 20 5b 66   [list source [f
0130: 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 63 76  ile join $dir cv
0140: 73 2e 74 63 6c 5d 5d 0a 70 61 63 6b 61 67 65 20  s.tcl]].package 
0150: 69 66 6e 65 65 64 65 64 20 76 63 3a 3a 63 76 73  ifneeded vc::cvs
0160: 3a 3a 77 73 3a 3a 66 69 6c 65 73 20 20 20 20 20  ::ws::files     
0170: 20 20 20 31 2e 30 20 5b 6c 69 73 74 20 73 6f 75     1.0 [list sou
0180: 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24  rce [file join $
0190: 64 69 72 20 63 76 73 5f 66 69 6c 65 73 2e 74 63  dir cvs_files.tc
01a0: 6c 5d 5d 0a 70 61 63 6b 61 67 65 20 69 66 6e 65  l]].package ifne
01b0: 65 64 65 64 20 76 63 3a 3a 63 76 73 3a 3a 77 73  eded vc::cvs::ws
01c0: 3a 3a 74 69 6d 65 6c 69 6e 65 20 20 20 20 20 31  ::timeline     1
01d0: 2e 30 20 5b 6c 69 73 74 20 73 6f 75 72 63 65 20  .0 [list source 
01e0: 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20  [file join $dir 
01f0: 63 76 73 5f 74 69 6d 65 6c 69 6e 65 2e 74 63 6c  cvs_timeline.tcl
0200: 5d 5d 0a 70 61 63 6b 61 67 65 20 69 66 6e 65 65  ]].package ifnee
0210: 64 65 64 20 76 63 3a 3a 63 76 73 3a 3a 77 73 3a  ded vc::cvs::ws:
0220: 3a 63 73 65 74 73 20 20 20 20 20 20 20 20 31 2e  :csets        1.
0230: 30 20 5b 6c 69 73 74 20 73 6f 75 72 63 65 20 5b  0 [list source [
0240: 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 63  file join $dir c
0250: 76 73 5f 63 73 65 74 73 2e 74 63 6c 5d 5d 0a 70  vs_csets.tcl]].p
0260: 61 63 6b 61 67 65 20 69 66 6e 65 65 64 65 64 20  ackage ifneeded 
0270: 76 63 3a 3a 63 76 73 3a 3a 77 73 3a 3a 62 72 61  vc::cvs::ws::bra
0280: 6e 63 68 20 20 20 20 20 20 20 31 2e 30 20 5b 6c  nch       1.0 [l
0290: 69 73 74 20 73 6f 75 72 63 65 20 5b 66 69 6c 65  ist source [file
02a0: 20 6a 6f 69 6e 20 24 64 69 72 20 63 76 73 5f 62   join $dir cvs_b
02b0: 72 61 6e 63 68 2e 74 63 6c 5d 5d 0a 70 61 63 6b  ranch.tcl]].pack
02c0: 61 67 65 20 69 66 6e 65 65 64 65 64 20 76 63 3a  age ifneeded vc:
02d0: 3a 63 76 73 3a 3a 77 73 3a 3a 73 69 67 20 20 20  :cvs::ws::sig   
02e0: 20 20 20 20 20 20 20 31 2e 30 20 5b 6c 69 73 74         1.0 [list
02f0: 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f   source [file jo
0300: 69 6e 20 24 64 69 72 20 63 76 73 5f 73 69 67 2e  in $dir cvs_sig.
0310: 74 63 6c 5d 5d 0a 70 61 63 6b 61 67 65 20 69 66  tcl]].package if
0320: 6e 65 65 64 65 64 20 76 63 3a 3a 66 6f 73 73 69  needed vc::fossi
0330: 6c 3a 3a 63 6d 64 20 20 20 20 20 20 20 20 20 20  l::cmd          
0340: 20 31 2e 30 20 5b 6c 69 73 74 20 73 6f 75 72 63   1.0 [list sourc
0350: 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69  e [file join $di
0360: 72 20 66 6f 73 73 69 6c 5f 63 6d 64 2e 74 63 6c  r fossil_cmd.tcl
0370: 5d 5d 0a 70 61 63 6b 61 67 65 20 69 66 6e 65 65  ]].package ifnee
0380: 64 65 64 20 76 63 3a 3a 66 6f 73 73 69 6c 3a 3a  ded vc::fossil::
0390: 77 73 20 20 20 20 20 20 20 20 20 20 20 20 31 2e  ws            1.
03a0: 30 20 5b 6c 69 73 74 20 73 6f 75 72 63 65 20 5b  0 [list source [
03b0: 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 66  file join $dir f
03c0: 6f 73 73 69 6c 2e 74 63 6c 5d 5d 0a 70 61 63 6b  ossil.tcl]].pack
03d0: 61 67 65 20 69 66 6e 65 65 64 65 64 20 76 63 3a  age ifneeded vc:
03e0: 3a 66 6f 73 73 69 6c 3a 3a 69 6d 70 6f 72 74 3a  :fossil::import:
03f0: 3a 63 76 73 20 20 20 31 2e 30 20 5b 6c 69 73 74  :cvs   1.0 [list
0400: 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f   source [file jo
0410: 69 6e 20 24 64 69 72 20 69 6d 70 6f 72 74 63 76  in $dir importcv
0420: 73 2e 74 63 6c 5d 5d 0a 70 61 63 6b 61 67 65 20  s.tcl]].package 
0430: 69 66 6e 65 65 64 65 64 20 76 63 3a 3a 66 6f 73  ifneeded vc::fos
0440: 73 69 6c 3a 3a 69 6d 70 6f 72 74 3a 3a 73 74 61  sil::import::sta
0450: 74 73 20 31 2e 30 20 5b 6c 69 73 74 20 73 6f 75  ts 1.0 [list sou
0460: 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24  rce [file join $
0470: 64 69 72 20 69 6d 70 6f 72 74 5f 73 74 61 74 69  dir import_stati
0480: 73 74 69 63 73 2e 74 63 6c 5d 5d 0a 70 61 63 6b  stics.tcl]].pack
0490: 61 67 65 20 69 66 6e 65 65 64 65 64 20 76 63 3a  age ifneeded vc:
04a0: 3a 66 6f 73 73 69 6c 3a 3a 69 6d 70 6f 72 74 3a  :fossil::import:
04b0: 3a 6d 61 70 20 20 20 31 2e 30 20 5b 6c 69 73 74  :map   1.0 [list
04c0: 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f   source [file jo
04d0: 69 6e 20 24 64 69 72 20 69 6d 70 6f 72 74 5f 6d  in $dir import_m
04e0: 61 70 2e 74 63 6c 5d 5d 0a 70 61 63 6b 61 67 65  ap.tcl]].package
04f0: 20 69 66 6e 65 65 64 65 64 20 76 63 3a 3a 74 6f   ifneeded vc::to
0500: 6f 6c 73 3a 3a 6c 6f 67 20 20 20 20 20 20 20 20  ols::log        
0510: 20 20 20 20 31 2e 30 20 5b 6c 69 73 74 20 73 6f      1.0 [list so
0520: 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20  urce [file join 
0530: 24 64 69 72 20 6c 6f 67 2e 74 63 6c 5d 5d 0a 70  $dir log.tcl]].p
0540: 61 63 6b 61 67 65 20 69 66 6e 65 65 64 65 64 20  ackage ifneeded 
0550: 76 63 3a 3a 74 6f 6f 6c 73 3a 3a 74 72 6f 75 62  vc::tools::troub
0560: 6c 65 20 20 20 20 20 20 20 20 31 2e 30 20 5b 6c  le        1.0 [l
0570: 69 73 74 20 73 6f 75 72 63 65 20 5b 66 69 6c 65  ist source [file
0580: 20 6a 6f 69 6e 20 24 64 69 72 20 74 72 6f 75 62   join $dir troub
0590: 6c 65 2e 74 63 6c 5d 5d 0a                       le.tcl]].