Tue, 13 Feb 2018 23:00:01 -0700 py3: introduce and use pycompat.getargspec
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 23:00:01 -0700] rev 36178
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
Tue, 13 Feb 2018 23:37:58 -0500 merge: coerce nodes to bytes, not str
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 23:37:58 -0500] rev 36177
merge: coerce nodes to bytes, not str Differential Revision: https://phab.mercurial-scm.org/D2250
Tue, 13 Feb 2018 19:12:44 -0500 py3: whitelist more passing tests
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 19:12:44 -0500] rev 36176
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
Tue, 13 Feb 2018 18:46:47 -0500 histedit: binascii.unhexlify (aka node.bin) throws new exception type on py3
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:46:47 -0500] rev 36175
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
Tue, 13 Feb 2018 13:23:18 -0800 treemanifest: add an optimized __nonzero__()
Martin von Zweigbergk <martinvonz@google.com> [Tue, 13 Feb 2018 13:23:18 -0800] rev 36174
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
Tue, 13 Feb 2018 18:49:06 -0500 tests: port fakemergerecord to python3
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:49:06 -0500] rev 36173
tests: port fakemergerecord to python3 Differential Revision: https://phab.mercurial-scm.org/D2248
Tue, 13 Feb 2018 18:48:47 -0500 tests: add some b-prefixes on local script in test-histedit-arguments
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:48:47 -0500] rev 36172
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
Tue, 13 Feb 2018 18:47:55 -0500 tests: add bytes prefixes to test-histedit-fold.t's local extension
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:47:55 -0500] rev 36171
tests: add bytes prefixes to test-histedit-fold.t's local extension # skip-blame b prefixes Differential Revision: https://phab.mercurial-scm.org/D2246
Tue, 13 Feb 2018 18:25:05 -0500 histedit: fix silly bug that was unpacking a bytestr before writing it
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:25:05 -0500] rev 36170
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
Tue, 13 Feb 2018 18:13:33 -0500 py3: whitelist another 8 passing tests
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:13:33 -0500] rev 36169
py3: whitelist another 8 passing tests Differential Revision: https://phab.mercurial-scm.org/D2242
Tue, 13 Feb 2018 17:25:43 -0500 histedit: modernize write of histedit-last-edit file
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 17:25:43 -0500] rev 36168
histedit: modernize write of histedit-last-edit file Differential Revision: https://phab.mercurial-scm.org/D2241
Tue, 13 Feb 2018 17:25:25 -0500 histedit: convert bool to bytestring manually
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 17:25:25 -0500] rev 36167
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
Tue, 13 Feb 2018 13:38:38 -0500 narrowcommands: more byteskwargs cleanup
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 13:38:38 -0500] rev 36166
narrowcommands: more byteskwargs cleanup Differential Revision: https://phab.mercurial-scm.org/D2239
Tue, 13 Feb 2018 13:37:43 -0500 narrowmerge: iterate over a copy of dict items so we can mutate the dict
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 13:37:43 -0500] rev 36165
narrowmerge: iterate over a copy of dict items so we can mutate the dict Differential Revision: https://phab.mercurial-scm.org/D2238
Tue, 13 Feb 2018 18:00:59 -0500 contrib: ban $RANDOM using check-code
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 18:00:59 -0500] rev 36164
contrib: ban $RANDOM using check-code Differential Revision: https://phab.mercurial-scm.org/D2237
Tue, 13 Feb 2018 17:58:40 -0500 tests: remove use of bashism $RANDOM to fix test-narrow.t on non-bash shells
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 17:58:40 -0500] rev 36163
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
Tue, 13 Feb 2018 14:39:02 -0500 narrow: fix for getting the username when running http server
Sandu Turcan <idlsoft@gmail.com> [Tue, 13 Feb 2018 14:39:02 -0500] rev 36162
narrow: fix for getting the username when running http server Differential Revision: https://phab.mercurial-scm.org/D2231
Mon, 12 Feb 2018 16:22:31 -0800 tests: remove code to support Mercurial 4.3
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 12 Feb 2018 16:22:31 -0800] rev 36161
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
Mon, 12 Feb 2018 16:21:34 -0800 narrowspec: move module into core
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 12 Feb 2018 16:21:34 -0800] rev 36160
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
Mon, 12 Feb 2018 16:15:34 -0800 hg: move share._getsrcrepo into core
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 12 Feb 2018 16:15:34 -0800] rev 36159
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
Mon, 12 Feb 2018 15:49:15 -0800 tests: glob over line number
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 12 Feb 2018 15:49:15 -0800] rev 36158
tests: glob over line number Differential Revision: https://phab.mercurial-scm.org/D2199
Mon, 12 Feb 2018 15:39:47 -0800 tests: remove references to bundle2-exp config option
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 12 Feb 2018 15:39:47 -0800] rev 36157
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
Tue, 13 Feb 2018 11:12:36 -0500 py3: whitelist another six passing tests
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 11:12:36 -0500] rev 36156
py3: whitelist another six passing tests Differential Revision: https://phab.mercurial-scm.org/D2230
Tue, 13 Feb 2018 10:54:58 -0500 narrowrepo: filter() is a generator on py3, wrap in list()
Augie Fackler <augie@google.com> [Tue, 13 Feb 2018 10:54:58 -0500] rev 36155
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
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -24 +24 +50 +100 +300 +1000 +3000 +10000 tip