@@ -116,10 +116,12 @@
116 116 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# new data.
117 117 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
state run {
118 118 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
DELETE FROM cssuccessor WHERE cid = $myid;
119 119 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
120 120 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
set loop 0
121 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # TODO: Check other uses of cs_sucessors.
122 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ # TODO: Consider merging cs_sucessor's SELECT with the INSERT here.
121 123 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
foreach nid [$mytypeobj cs_successors $myitems] {
122 124 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
state run {
123 125 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
INSERT INTO cssuccessor (cid, nid)
124 126 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
VALUES ($myid,$nid)
125 127 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
@@ -323,10 +325,11 @@
323 325 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
324 326 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
325 327 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
proc Getrevisioninfo {revisions} {
326 328 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
set theset ('[join $revisions {','}]')
327 329 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
set revisions {}
330 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #foreachrow
328 331 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
foreach {frid path fname revnr rop} [state run [subst -nocommands -nobackslashes {
329 332 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
SELECT U.uuid, F.visible, F.name, R.rev, R.op
330 333 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM revision R, revuuid U, file F
331 334 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE R.rid IN $theset -- All specified revisions
332 335 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND U.rid = R.rid -- get fossil uuid of revision
@@ -581,10 +584,11 @@
581 584 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# the order given to them by the sort passes. Both the
582 585 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# filtering by project and sorting make use of 'project::rev
583 586 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# rev' impossible.
584 587 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
585 588 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
set res {}
589 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #foreachrow
586 590 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
foreach {cid cdate} [state run {
587 591 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
SELECT C.cid, T.date
588 592 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM changeset C, cstimestamp T
589 593 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE C.type = 0 -- limit to revision changesets
590 594 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND C.pid = $projectid -- limit to changesets in project
@@ -595,27 +599,30 @@
595 599 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
596 600 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return $res
597 601 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
598 602 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
599 603 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
typemethod getcstypes {} {
600 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- foreach {tid name} [state run {
604 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state foreachrow {
601 605 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
SELECT tid, name FROM cstype;
602 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }] { set mycstype($name) $tid }
606 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ } { set mycstype($name) $tid }
603 607 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
return
604 608 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
605 609 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
606 610 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
typemethod load {repository} {
607 611 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
set n 0
608 612 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
log write 2 csets {Loading the changesets}
609 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- foreach {id pid cstype srcid} [state run {
610 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- SELECT C.cid, C.pid, CS.name, C.src
613 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state foreachrow {
614 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ SELECT C.cid AS id,
615 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ C.pid AS xpid,
616 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ CS.name AS cstype,
617 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ C.src AS srcid
611 618 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM changeset C, cstype CS
612 619 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE C.type = CS.tid
613 620 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
ORDER BY C.cid
614 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }] {
621 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ } {
615 622 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
log progress 2 csets $n {}
616 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- set r [$type %AUTO% [$repository projectof $pid] $cstype $srcid [state run {
623 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ set r [$type %AUTO% [$repository projectof $xpid] $cstype $srcid [state run {
617 624 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
SELECT C.iid
618 625 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM csitem C
619 626 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE C.cid = $id
620 627 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
ORDER BY C.pos
621 628 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}] $id]
@@ -892,10 +899,11 @@
892 899 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
893 900 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
array set delta {}
894 901 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
array set stamp {}
895 902 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
896 903 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
set theset ('[join $revisions {','}]')
904 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #foreachrow
897 905 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
foreach {rid time} [state run [subst -nocommands -nobackslashes {
898 906 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
SELECT R.rid, R.date
899 907 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM revision R
900 908 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE R.rid IN $theset
901 909 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}]] {
@@ -1162,39 +1170,39 @@
1162 1170 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# revisions we start from. Sensible as we are looking for
1163 1171 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# changeset internal dependencies.
1164 1172 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1165 1173 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
array set dep {}
1166 1174 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1167 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- foreach {rid child} [state run [subst -nocommands -nobackslashes {
1175 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state foreachrow [subst -nocommands -nobackslashes {
1168 1176 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-- (1) Primary child
1169 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- SELECT R.rid, R.child
1177 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ SELECT R.rid AS xrid, R.child AS xchild
1170 1178 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM revision R
1171 1179 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE R.rid IN $theset -- Restrict to revisions of interest
1172 1180 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND R.child IS NOT NULL -- Has primary child
1173 1181 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND R.child IN $theset -- Which is also of interest
1174 1182 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
UNION
1175 1183 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-- (2) Secondary (branch) children
1176 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- SELECT R.rid, B.brid
1184 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ SELECT R.rid AS xrid, B.brid AS xchild
1177 1185 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM revision R, revisionbranchchildren B
1178 1186 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE R.rid IN $theset -- Restrict to revisions of interest
1179 1187 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND R.rid = B.rid -- Select subset of branch children
1180 1188 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND B.brid IN $theset -- Which is also of interest
1181 1189 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
UNION
1182 1190 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-- (4) Child of trunk root successor of last NTDB on trunk.
1183 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- SELECT R.rid, RA.child
1191 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ SELECT R.rid AS xrid, RA.child AS xchild
1184 1192 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM revision R, revision RA
1185 1193 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE R.rid IN $theset -- Restrict to revisions of interest
1186 1194 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND R.isdefault -- Restrict to NTDB
1187 1195 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND R.dbchild IS NOT NULL -- and last NTDB belonging to trunk
1188 1196 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND RA.rid = R.dbchild -- Go directly to trunk root
1189 1197 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND RA.child IS NOT NULL -- Has primary child.
1190 1198 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND RA.child IN $theset -- Which is also of interest
1191 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }]] {
1199 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }] {
1192 1200 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# Consider moving this to the integrity module.
1193 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- integrity assert {$rid != $child} {Revision $rid depends on itself.}
1194 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- lappend dependencies($rid) $child
1195 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- set dep($rid,$child) .
1201 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ integrity assert {$xrid != $xchild} {Revision $xrid depends on itself.}
1202 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ lappend dependencies($xrid) $xchild
1203 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ set dep($xrid,$xchild) .
1196 1204 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1197 1205 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1198 1206 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# The sql statements above looks only for direct dependencies
1199 1207 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# between revision in the changeset. However due to the
1200 1208 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# vagaries of meta data it is possible for two revisions of
@@ -1220,15 +1228,15 @@
1220 1228 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
log write 14 csets {internal [array size dep]}
1221 1229 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
log write 14 csets {collected [array size dependencies]}
1222 1230 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
log write 14 csets pseudo-internalsuccessors
1223 1231 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1224 1232 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
array set fids {}
1225 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- foreach {rid fid} [state run [subst -nocommands -nobackslashes {
1226 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- SELECT R.rid, R.fid
1233 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ state foreachrow [subst -nocommands -nobackslashes {
1234 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ SELECT R.rid AS xrid, R.fid AS xfid
1227 1235 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM revision R
1228 1236 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE R.rid IN $theset
1229 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- }]] { lappend fids($fid) $rid }
1237 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ }] { lappend fids($xfid) $xrid }
1230 1238 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1231 1239 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
set groups {}
1232 1240 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
foreach {fid rids} [array get fids] {
1233 1241 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
if {[llength $rids] < 2} continue
1234 1242 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
foreach a $rids {
@@ -1318,10 +1326,11 @@
1318 1326 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# '1.2' revision) is a successor, if it exists.
1319 1327 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1320 1328 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# Note that the branches spawned from the revisions, and the
1321 1329 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# tags associated with them are successors as well.
1322 1330 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1331 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #foreachrow
1323 1332 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
foreach {rid child} [state run [subst -nocommands -nobackslashes {
1324 1333 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-- (1) Primary child
1325 1334 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
SELECT R.rid, R.child
1326 1335 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM revision R
1327 1336 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE R.rid IN $theset -- Restrict to revisions of interest
@@ -1344,18 +1353,20 @@
1344 1353 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}]] {
1345 1354 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# Consider moving this to the integrity module.
1346 1355 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
integrity assert {$rid != $child} {Revision $rid depends on itself.}
1347 1356 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
lappend dependencies([list rev $rid]) [list rev $child]
1348 1357 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1358 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #foreachrow
1349 1359 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
foreach {rid child} [state run [subst -nocommands -nobackslashes {
1350 1360 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
SELECT R.rid, T.tid
1351 1361 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM revision R, tag T
1352 1362 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE R.rid IN $theset -- Restrict to revisions of interest
1353 1363 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND T.rev = R.rid -- Select tags attached to them
1354 1364 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}]] {
1355 1365 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
lappend dependencies([list rev $rid]) [list sym::tag $child]
1356 1366 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1367 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #foreachrow
1357 1368 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
foreach {rid child} [state run [subst -nocommands -nobackslashes {
1358 1369 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
SELECT R.rid, B.bid
1359 1370 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM revision R, branch B
1360 1371 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE R.rid IN $theset -- Restrict to revisions of interest
1361 1372 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND B.root = R.rid -- Select branches attached to them
@@ -1570,27 +1581,30 @@
1570 1581 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# The first revision committed on a branch, and all branches
1571 1582 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# and tags which have it as their prefered parent are the
1572 1583 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
# successors of a branch.
1573 1584 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
1574 1585 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
set theset ('[join $branches {','}]')
1586 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #foreachrow
1575 1587 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
foreach {bid child} [state run [subst -nocommands -nobackslashes {
1576 1588 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
SELECT B.bid, R.rid
1577 1589 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM branch B, revision R
1578 1590 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE B.bid IN $theset -- Restrict to branches of interest
1579 1591 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND B.first = R.rid -- Get first revision on the branch
1580 1592 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}]] {
1581 1593 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
lappend dependencies([list sym::branch $bid]) [list rev $child]
1582 1594 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1595 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #foreachrow
1583 1596 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
foreach {bid child} [state run [subst -nocommands -nobackslashes {
1584 1597 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
SELECT B.bid, BX.bid
1585 1598 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM branch B, preferedparent P, branch BX
1586 1599 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE B.bid IN $theset -- Restrict to branches of interest
1587 1600 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND B.sid = P.pid -- Get subordinate branches via the
1588 1601 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND BX.sid = P.sid -- prefered parents of their symbols
1589 1602 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}]] {
1590 1603 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
lappend dependencies([list sym::branch $bid]) [list sym::branch $child]
1591 1604 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
}
1605 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ #foreachrow
1592 1606 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
foreach {bid child} [state run [subst -nocommands -nobackslashes {
1593 1607 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
SELECT B.bid, T.tid
1594 1608 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
FROM branch B, preferedparent P, tag T
1595 1609 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
WHERE B.bid IN $theset -- Restrict to branches of interest
1596 1610 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
AND B.sid = P.pid -- Get subordinate tags via the
1597 1611 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!