Correct optimization from
3464f5e77f34; add a test.
If there are two (or more) heads that point to the same .hgtags
node, we can safely skip parsing the file in all but the last head.
(In
3464f5e77f34, we were parsing the file in the first head and
skipping all the others.)
log speedup: use only ui.write in changeset_printer.show
- ui.status is not very useful, since this code is never
executed when ui.quiet is true.
- explicitly checking for ui.debug allows a regular hg log to
run without looking at the manifest index
- the calls to ui.note were converted for consistency
log speedup: walkchangerevs: filter the files only if we need them
This speeds up hg log and significantly reduces memory usage (max RSS
goes from ~92MB to ~21MB on the kernel repo), since we no longer store
all the revisions in the cache.