revlog: fix lazyparser.__iter__() to return all revisions (issue2137)
Previously, it only returned revisions that were in the revlog when it
was originally opened; revisions added since then were invisible.
This broke revlog._partialmatch() and therefore repo.lookup().
(Credit to Benoit Boissinot for simplifying my original test script
and for the actual fix.)
#!/bin/sh
hg init
touch a
hg add a
hg commit -m "Added a" -d "1000000 0"
touch main
hg add main
hg commit -m "Added main" -d "1000000 0"
hg checkout 0
echo Main should be gone
ls
touch side1
hg add side1
hg commit -m "Added side1" -d "1000000 0"
touch side2
hg add side2
hg commit -m "Added side2" -d "1000000 0"
hg log
echo Should have two heads, side2 and main
hg heads
echo Should show "a side1 side2"
ls
hg update --debug -C 1
echo Should only show "a main"
ls