py3: convert diff opcode name to bytes
Differential Revision: https://phab.mercurial-scm.org/D4968
py3: byteify hgweberror.py
# skip-blame just b'' prefixes
Differential Revision: https://phab.mercurial-scm.org/D4966
py3: encode JSON str to bytes
json.dumps() will emit UTF-8 str on Python 2 and 3. Use sysbytes to
force the .encode('utf-8') on Python 3 and no-op on Python 2.
Differential Revision: https://phab.mercurial-scm.org/D4965
py3: use b'' in test-check-interfaces.py
# skip-blame just b'' prefixes
Differential Revision: https://phab.mercurial-scm.org/D4964
revlog: optimize ancestors() to not check filtered revisions for each
While reviewing the Rust implementation, I noticed iter(ancestors) doesn't
need to check filtering state for each parent revision. And doing that appears
to have some measurable perf win.
$ hg perfancestors -R mercurial
(orig) wall 0.038093 comb 0.040000 user 0.040000 sys 0.000000 (best of 100)
(this) wall 0.024795 comb 0.020000 user 0.020000 sys 0.000000 (best of 117)
phabricator: drop support for the legacy phabricator.auth.token config (BC)
The test for this broke in
dc82ad1b7f77 when statistics started being tracked.
It wasn't noticed because none of the bots have the vcr module installed. It
looks like the custom_patches argument should patch in the custom
httpconnection, and I can't figure out what is going on.
absorb: print '{rev}:' as a prefix to the hash
I don't see a sane way to print the summary to identify the changed commit, but
this at least makes it a bit easier to identify a commit when a group of them
changes.
packaging: fix "make centos{5,6,7}"
Without this change, make centos{5,6,7} fails with error:
cp: cannot stat '<basedir>/rpmbuild/RPMS/*/*': No such file or directory
This change is the exact equivalent of
bc4bbc42899a (which applied to Fedora).
narrow: don't compress the bundle2 when sending 'error:abort'
This is similar to waht getbundle() does and also explicitly specifies that we
should get a compressed bundle2 in normal cases when not sending 'error:abort'.
Differential Revision: https://phab.mercurial-scm.org/D4934
push: add "remote" to 'repository changed while pushing' messages (
issue5971)
Differential Revision: https://phab.mercurial-scm.org/D4933