debug: add debugwhyunstable that explains instabilities
This is a port of evolve's feature of listing all unstable changesets in detail
(`hg evolve --list`).
obsolete: move marker flags to obsutil
Evolve extension expects to have obsolete.bumpedfix (imported in
hgext3rd/evolve/evolvecmd.py), so we provide it.
debugupdatecache: also warm rev branch cache
We add basic code to have `debugupdatecache` ensure that the rev branch cache
is fully warmed. This only affects the `debugupdatecache` command, not normal
transaction operation.
debugbundle: do not display detailed part data in --quiet mode
This changeset makes `hg debugbundle` respect --quiet and only display data
about part headers.
tests: clean up two wayward `python` invocations
These are also fallout from the check-code regex rewriting bug.
Differential Revision: https://phab.mercurial-scm.org/D2865
contrib: open a hole in the open().read() ban for open().close()
It turns out open().close() is both fine and something we occasionally
do to verify something can be written. The few cases in the codebase
were getting missed due to a regular expression bug (which I discussed
in my previous change), but since I'm about to fix the bug, I need to
fix the patterns.
Differential Revision: https://phab.mercurial-scm.org/D2864
cleanup: fix some latent open(path).read() et al calls we previously missed
This pattern was banned by check-code way back in
1b4b82063ce2 (may of
2011), but due to a regular expression rewriting bug in check-code
these particular callsites were never detected. Python 3.7 caught the
bug, which then exposed these errors.
Differential Revision: https://phab.mercurial-scm.org/D2863
uncommit: fix unaligned indentation
Differential Revision: https://phab.mercurial-scm.org/D2861