convert: Using --dest-type svn crashed, if the source repo used tags.
The convert extension requires puttags(self, tags) to return a sequence
for a multi-variable assignment. If puttags implicitly returns None,
the code will break when trying to un-pack None for assignment.
#!/bin/sh
echo % Preparing the subrepository 'sub'
hg init sub
echo sub > sub/sub
hg add -R sub
hg commit -R sub -m "sub import"
echo % Preparing the 'main' repo which depends on the subrepo 'sub'
hg init main
echo main > main/main
echo "sub = ../sub" > main/.hgsub
hg clone sub main/sub | sed 's/ .*sub/ ...sub/g'
hg add -R main
hg commit -R main -m "main import"
echo % Cleaning both repositories, just as a clone -U
hg up -C -R sub null
hg up -C -R main null
rm -rf main/sub
echo % Serving them both using hgweb
printf '[paths]\n/main = main\nsub = sub\n' > webdir.conf
hg serve --webdir-conf webdir.conf -a localhost -p $HGPORT \
-A /dev/null -E /dev/null --pid-file hg.pid -d
cat hg.pid >> $DAEMON_PIDS
echo % Clone main from hgweb
hg clone "http://localhost:$HGPORT/main" cloned | sed 's/ .*sub/ ...sub/g'
echo % Checking cloned repo ids
hg id -R cloned
hg id -R cloned/sub
echo % subrepo debug for 'main' clone
hg debugsub -R cloned
"$TESTDIR/killdaemons.py"
exit 0