Calling revlog.addgroup with an empty changegroup now raises RevlogError.
The empty changegroup can be caused by remote servers dying soon after
findincoming, and further code in pull assumes (correctly) that there are
new changesets.
#!/bin/sh
mkdir t
cd t
hg init
echo This is file a1 > a
hg add a
hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
hg commit -m "commit #1" -d "1000000 0"
rm b
hg update 0
echo This is file b2 > b
hg add b
hg commit -m "commit #2" -d "1000000 0"
cd ..; /bin/rm -rf t
mkdir t
cd t
hg init
echo This is file a1 > a
hg add a
hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
hg commit -m "commit #1" -d "1000000 0"
rm b
hg update 0
echo This is file b2 > b
hg commit -A -m "commit #2" -d "1000000 0"
cd ..; /bin/rm -rf t
mkdir t
cd t
hg init
echo This is file a1 > a
hg add a
hg commit -m "commit #0" -d "1000000 0"
echo This is file b1 > b
hg add b
hg commit -m "commit #1" -d "1000000 0"
rm b
hg remove b
hg update 0
echo This is file b2 > b
hg commit -A -m "commit #2" -d "1000000 0"
cd ..; /bin/rm -rf t