prune: remove a list of bookmarks
Currently prune works with a single bookmark,
the changes in this patch modifies the prune module
to work with a list of bookmarks
Building on this we can take a list of bookmarks as input
and remove all of them in a single go
#!/bin/shcat>>$HGRCPATH<<EOF[web]push_ssl = falseallow_push = *[ui]logtemplate ="{node|short} ({phase}): {desc}\n"[phases]publish=False[experimental]verbose-obsolescence-exchange=falsebundle2-exp=truebundle2-output-capture=True[alias]debugobsolete=debugobsolete -d '0 0'[extensions]hgext.strip=EOFecho"evolve=$(echo$(dirname$TESTDIR))/hgext/evolve.py">>$HGRCPATHmkcommit(){echo"$1">"$1"hgadd"$1"hgci-m"$1"}getid(){hglog--hidden--template'{node}\n'--rev"$1"}setuprepos(){echocreatingtestrepofortestcase$1mkdir$1cd$1echo-pulldesthginitpushdestcdpushdestmkcommitOhgphase--public.cd..echo-mainhgclone-qpushdestmainecho-pushdesthgclone-qmainpulldestecho'cd into `main` and proceed with env setup'}dotest(){# dotest TESTNAME [TARGETNODE]testcase=$1shifttarget="$1"if[$#-gt0];thenshiftfitargetnode=""desccall=""cd$testcaseecho"## Running testcase $testcase"if[-n"$target"];thendesccall="desc("\'"$target"\'")"targetnode="`hg -R main id -qr \"$desccall\"`"echo"# testing echange of \"$target\" ($targetnode)"fiecho"## initial state"echo"# obstore: main"hg-Rmaindebugobsolete|sortecho"# obstore: pushdest"hg-Rpushdestdebugobsolete|sortecho"# obstore: pulldest"hg-Rpulldestdebugobsolete|sortif[-n"$target"];thenecho"## pushing \"$target\""frommaintopushdesthg-Rmainpush-r"$desccall"$@pushdestelseecho"## pushing from main to pushdest"hg-Rmainpushpushdest$@fiecho"## post push state"echo"# obstore: main"hg-Rmaindebugobsolete|sortecho"# obstore: pushdest"hg-Rpushdestdebugobsolete|sortecho"# obstore: pulldest"hg-Rpulldestdebugobsolete|sortif[-n"$target"];thenecho"## pulling \"$targetnode\""frommainintopulldesthg-Rpulldestpull-r$targetnode$@mainelseecho"## pulling from main into pulldest"hg-Rpulldestpullmain$@fiecho"## post pull state"echo"# obstore: main"hg-Rmaindebugobsolete|sortecho"# obstore: pushdest"hg-Rpushdestdebugobsolete|sortecho"# obstore: pulldest"hg-Rpulldestdebugobsolete|sortcd..}