repo.status: also compare flags for files in the lookup list.
We might be able to do something smarter about this in dirstate.status
for files in normallookup state, but that would require some extra
care to keep backwards compatibility.
keyword: remove "identify" and "remove" from nokwcommands
These two commands care about the list of modified files returned
by repo.status and we may need to do a full content comparison to
populate that list.
test-glog: pass the list of files to commit
test-glog uses debugsetparents instead of update+merge to create
some funky DAGs, and so the dirstate contents won't be consistent
with the checked out revision.
Passing an explicit list of files to commit reduces a bit the
dependency on the dirstate.
Using a non-deprecated rawcommit might be better here.
Infer a --repository argument from command arguments when reasonable.
In particular: if invoked without -R from a CWD not inside a repo, having been
passed one or more file paths as command arguments, where the nearest enclosing
repo of all of those paths is the same, quietly infer a -R option for that repo.
Otherwise abort with an error message as before.
hgweb: separate protocol calls from interface calls (
issue996)
The protocol functions are already pretty careful about not raising
exceptions to the caller, and have their own error handling. We can formalize
this a little bit to make it clearer (before, the exception handlers for
a limited number of exceptions coming from the interface bits would blow up
because some variables aren't instantiated for the protocol calls).
Speed up hg grep by avoiding useless manifest parsing
In the kernel repo (tip =
2b89f7111b96), a "hg grep mpm MAINTAINERS" goes
from ~165s to 0.7s. This could get even a bit faster if we broke out of
the loop after the first match, but I'm not sure how that would interact
with the --follow code.
This is obviously an extreme example, but other cases should also benefit
from this patch.
cmdutil.walkchangerevs: use '-1:0' instead ot 'tip:0'
This avoids a possibly expensive tag lookup.