Pulkit Goyal <7895pulkit@gmail.com> [Wed, 14 Feb 2018 17:06:20 +0530] rev 36224
py3: use pycompat.bytestr instead of str
Differential Revision: https://phab.mercurial-scm.org/D2264
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 14 Feb 2018 17:05:33 +0530] rev 36223
py3: use "%d" to convert integers to bytes
Differential Revision: https://phab.mercurial-scm.org/D2263
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 14 Feb 2018 16:38:15 +0530] rev 36222
py3: add couple of missing b'' in fakemergerecord.py
# skip-blame as we are just adding b'' prefixes
Differential Revision: https://phab.mercurial-scm.org/D2262
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 14 Feb 2018 16:06:54 +0530] rev 36221
py3: add b'' to make sure regex pattern are bytes in hgweb/webutil.py
# skip-blame because we are just adding b'' prefixes
Differential Revision: https://phab.mercurial-scm.org/D2260
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 14 Feb 2018 15:58:11 +0530] rev 36220
py3: add b'' prefixes in test-worker.t
# skip-blame because we are just adding b''
Differential Revision: https://phab.mercurial-scm.org/D2258
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 14 Feb 2018 15:46:57 +0530] rev 36219
py3: add b'' prefixes to make printrevset.py work in test-glog.t
# skip-blame because we are just adding b'' prefixes
Differential Revision: https://phab.mercurial-scm.org/D2257
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 14 Feb 2018 15:43:03 +0530] rev 36218
py3: slice over bytes to prevent getting ascii values
Differential Revision: https://phab.mercurial-scm.org/D2256
Augie Fackler <augie@google.com> [Wed, 14 Feb 2018 00:18:35 -0500] rev 36217
python3: whitelist another 5 passing tests
Differential Revision: https://phab.mercurial-scm.org/D2252
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 23:00:01 -0700] rev 36216
py3: introduce and use pycompat.getargspec
This is getfullargspec on py3, which means we can't use namedtuple
named accessors for all fields (eg keywords from getargspec is varkw
from getfullargspec, with the same meaning). Solves some warning
issues on Python 3.
I didn't clean up httpclient because that's vendored code I think we
should probably discard, and I didn't touch the manpage generator for
now either.
Differential Revision: https://phab.mercurial-scm.org/D2251
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 23:37:58 -0500] rev 36215
merge: coerce nodes to bytes, not str
Differential Revision: https://phab.mercurial-scm.org/D2250
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 19:12:44 -0500] rev 36214
py3: whitelist more passing tests
I had some good success tonight with histedit
tests. test-histedit-fold.t is now low-hanging fruit: it is only
failing because the logic for setting environment variables in hook.py
is slightly busted. Specifically, hook.py line 142 should be making
sure it puts strings in the env dict, not bytes, to avoid b'' goo in
environment variables.
Differential Revision: https://phab.mercurial-scm.org/D2249
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:46:47 -0500] rev 36213
histedit: binascii.unhexlify (aka node.bin) throws new exception type on py3
Lucky for us, the exception type exists on 2.7, so we can include it
in the except block without any extra work.
Differential Revision: https://phab.mercurial-scm.org/D2244
Martin von Zweigbergk <martinvonz@google.com> [Tue, 13 Feb 2018 13:23:18 -0800] rev 36212
treemanifest: add an optimized __nonzero__()
We use bool(manifest) in at least some places:
localrepo.py:1730
hgweb/webcommands.py:524
Since the treemanifest class doesn't define __nonzero__() (before this
patch), bool(manifest) will instead call __len__(), which can be slow
for treemanifests. This patch may make a noticeable difference in the
localrepo case above, but that only happens when committing a merge
and I haven't timed it.
Note that Durham already added a __nonzero__ implementation to
manifestdict in b19291e5d506 (manifest: add __nonzero__ method,
2016-11-03).
Differential Revision: https://phab.mercurial-scm.org/D2232
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:49:06 -0500] rev 36211
tests: port fakemergerecord to python3
Differential Revision: https://phab.mercurial-scm.org/D2248
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:48:47 -0500] rev 36210
tests: add some b-prefixes on local script in test-histedit-arguments
# skip-blame its just more b prefixes and a file in binary mode
Differential Revision: https://phab.mercurial-scm.org/D2247
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:47:55 -0500] rev 36209
tests: add bytes prefixes to test-histedit-fold.t's local extension
# skip-blame b prefixes
Differential Revision: https://phab.mercurial-scm.org/D2246
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:25:05 -0500] rev 36208
histedit: fix silly bug that was unpacking a bytestr before writing it
I have this foggy notion that popbuffer() might have returned a list
in the past, but it doesn't anymore, and this was breaking on Python
3. As a bonus, it's probably a ton faster on Python 2 now.
Differential Revision: https://phab.mercurial-scm.org/D2243
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:13:33 -0500] rev 36207
py3: whitelist another 8 passing tests
Differential Revision: https://phab.mercurial-scm.org/D2242
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 17:25:43 -0500] rev 36206
histedit: modernize write of histedit-last-edit file
Differential Revision: https://phab.mercurial-scm.org/D2241
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 17:25:25 -0500] rev 36205
histedit: convert bool to bytestring manually
Yes, this format has 'True' and 'False' in it. I'm sorry, as it's
almost certainly my fault.
Differential Revision: https://phab.mercurial-scm.org/D2240
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 13:38:38 -0500] rev 36204
narrowcommands: more byteskwargs cleanup
Differential Revision: https://phab.mercurial-scm.org/D2239
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 13:37:43 -0500] rev 36203
narrowmerge: iterate over a copy of dict items so we can mutate the dict
Differential Revision: https://phab.mercurial-scm.org/D2238
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:00:59 -0500] rev 36202
contrib: ban $RANDOM using check-code
Differential Revision: https://phab.mercurial-scm.org/D2237
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 17:58:40 -0500] rev 36201
tests: remove use of bashism $RANDOM to fix test-narrow.t on non-bash shells
This test passed on our workstations, including on Macs, so we never
noticed, but it fails on both the Linux and FreeBSD buildbots. Today I
learned about a bash feature, wherein $RANDOM gives a random int every
time you read it.
check-code rule to follow.
Differential Revision: https://phab.mercurial-scm.org/D2236
Sandu Turcan <idlsoft@gmail.com> [Tue, 13 Feb 2018 14:39:02 -0500] rev 36200
narrow: fix for getting the username when running http server
Differential Revision: https://phab.mercurial-scm.org/D2231
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 12 Feb 2018 16:22:31 -0800] rev 36199
tests: remove code to support Mercurial 4.3
Now that narrow lives in core, we don't need the legacy support.
Differential Revision: https://phab.mercurial-scm.org/D2202
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 12 Feb 2018 16:21:34 -0800] rev 36198
narrowspec: move module into core
Having support for parsing the narrow specification in core is
necessary for moving many other parts of narrow to core.
We do still want to harmonize the narrow spec with the sparse
spec. And the format needs to be documented. But this shouldn't
hold up the code moving to core.
Differential Revision: https://phab.mercurial-scm.org/D2201
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 12 Feb 2018 16:15:34 -0800] rev 36197
hg: move share._getsrcrepo into core
The fact we were calling this from extensions was a sign that it
should live in core.
We were also able to remove some extra attribute aliases from the
share extension.
Differential Revision: https://phab.mercurial-scm.org/D2200
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 12 Feb 2018 15:49:15 -0800] rev 36196
tests: glob over line number
Differential Revision: https://phab.mercurial-scm.org/D2199
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 12 Feb 2018 15:39:47 -0800] rev 36195
tests: remove references to bundle2-exp config option
This option was deleted a while ago. We don't even alias it in
core.
Differential Revision: https://phab.mercurial-scm.org/D2198
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 11:12:36 -0500] rev 36194
py3: whitelist another six passing tests
Differential Revision: https://phab.mercurial-scm.org/D2230
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 10:54:58 -0500] rev 36193
narrowrepo: filter() is a generator on py3, wrap in list()
Was at the top of Python 3 exceptions.
Differential Revision: https://phab.mercurial-scm.org/D2229