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
hg -q
hg help
hg -q help
echo %% test short command list with verbose option
hg -v help shortlist | sed 's/[(]version [^)]*[)]/(version xxx)/'
hg add -h
echo %% verbose help for add
hg add -hv
echo %% test help option with version option
hg add -h --version | sed 's/[(]version [^)]*[)]/(version xxx)/'
hg add --skjdfks
echo %% test ambiguous command help
hg help ad
echo %% test command without options
hg help verify
hg help diff
hg help status
hg -q help status
hg help foo
hg skjdfks
cat > helpext.py <<EOF
import os
from mercurial import commands
def nohelp(ui, *args, **kwargs):
pass
cmdtable = {
"nohelp": (nohelp, [], "hg nohelp"),
}
commands.norepo += ' nohelp'
EOF
abspath=`pwd`/helpext.py
echo '[extensions]' >> $HGRCPATH
echo "helpext = $abspath" >> $HGRCPATH
echo %% test command with no help text
hg help nohelp
echo %% test that default list of commands omits extension commands
hg help
echo %% test list of commands with command with no help text
hg help helpext
echo %% test a help topic
hg help revs
exit 0