tests: port test-context.py to Python 3
This is a weird "minimally invasive" port. I think there's room to do
better here, but I'm also not sure how often we'll touch this code...
Differential Revision: https://phab.mercurial-scm.org/D3509
scmutil: fix __repr__ of status tuple
We should probably start giving some thought to migrating the status
tuple to attrs, but not now.
Differential Revision: https://phab.mercurial-scm.org/D3508
update: print warning about hidden changeset after update
When an attempt to update to a hidden changeset fails because the
working copy is dirty, you may get a message like this:
updating to a hidden changeset
343f6de32686
(hidden revision '
343f6de32686' was rewritten as:
4ab941244072)
abort: conflicting changes
(commit or update --clean to discard changes)
It's easy to miss the real error here. This patch moves the warning
about the hidden changeset to after the update has happened. It
changes the verb tense accordingly (and drops the "a" that I think it
sounds better without). Of course, this means that the commit isn't
actually hidden anymore when the message is printed. I think that's
fine.
Differential Revision: https://phab.mercurial-scm.org/D3479
py3: whitelist three passing cvs convert tests
Differential Revision: https://phab.mercurial-scm.org/D3490
cvsps: convert encoding name to sysstr
Differential Revision: https://phab.mercurial-scm.org/D3489
tweakdefaults: remove "bisect" from commands.status.skipstates
If you forget to clear bisect state after you're done bisecting (as
I've done twice in the last week or so), the next time you run `hg
bisect --good/--bad`, it's going to tell you "The first bad revision
is:" etc. It's probably not obvious to new users what's going on, and
having the verbose output about an ongoing bisection will probably
help them, so let's turn it back on by default.
Differential Revision: https://phab.mercurial-scm.org/D3516
hgweb: wrap {instabilities} by hybridlist()
This is a list of simple values, which can be a hybrid list.
hgweb: wrap {whyunstable} with mappinggenerator
This is also a generator of mappings, which needs a wrapper.