Thu, 19 Apr 2018 07:57:06 +0200 debugdeltachain: r.start and r.length can be retrieved outside the loop
Paul Morelle <paul.morelle@octobus.net> [Thu, 19 Apr 2018 07:57:06 +0200] rev 38148
debugdeltachain: r.start and r.length can be retrieved outside the loop
Fri, 04 May 2018 15:00:55 +0200 revlog: in _getcandidaterevs, shorten revlog._generaldelta to gdelta
Paul Morelle <paul.morelle@octobus.net> [Fri, 04 May 2018 15:00:55 +0200] rev 38147
revlog: in _getcandidaterevs, shorten revlog._generaldelta to gdelta
Sat, 19 May 2018 14:24:36 -0400 pathencode: remove unused variable
Augie Fackler <augie@google.com> [Sat, 19 May 2018 14:24:36 -0400] rev 38146
pathencode: remove unused variable Caught by Yuya during review of 92ac9cf78dba. Differential Revision: https://phab.mercurial-scm.org/D3618
Sun, 20 May 2018 18:41:24 +0530 py3: add r'' prefixes to fix kwargs handling in hgext/sparse.py
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 20 May 2018 18:41:24 +0530] rev 38145
py3: add r'' prefixes to fix kwargs handling in hgext/sparse.py This fixes two of sparse tests which were failing on Python 3. # skip-blame because just r'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3634
Sun, 20 May 2018 17:39:09 +0530 py3: use bytes in tests/printenv.py
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 20 May 2018 17:39:09 +0530] rev 38144
py3: use bytes in tests/printenv.py This patch add b'' prefixes and adds some .encode() calls to convert str to bytes on Python 3. Differential Revision: https://phab.mercurial-scm.org/D3633
Sun, 20 May 2018 17:37:07 +0530 py3: use stringutil.pprint() to prevent b'' prefixes in output
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 20 May 2018 17:37:07 +0530] rev 38143
py3: use stringutil.pprint() to prevent b'' prefixes in output This patch uses stringutil.pprint to print a list with bytes in it to prevent the b'' prefixes in the output. Differential Revision: https://phab.mercurial-scm.org/D3632
Sun, 20 May 2018 17:35:57 +0530 py3: use pycompat.fsencode to convert path to bytes
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 20 May 2018 17:35:57 +0530] rev 38142
py3: use pycompat.fsencode to convert path to bytes Differential Revision: https://phab.mercurial-scm.org/D3631
Sun, 20 May 2018 17:34:53 +0530 py3: add b'' prefixes in tests/test-ssh.t and tests/test-ssh-bundle1.t
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 20 May 2018 17:34:53 +0530] rev 38141
py3: add b'' prefixes in tests/test-ssh.t and tests/test-ssh-bundle1.t # skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3630
Sun, 20 May 2018 17:33:18 +0530 py3: add b'' prefixes in contrib/hg-ssh
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 20 May 2018 17:33:18 +0530] rev 38140
py3: add b'' prefixes in contrib/hg-ssh # skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3629
Fri, 18 May 2018 16:28:45 +0530 state: write the version number in plain text on top of state files
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 18 May 2018 16:28:45 +0530] rev 38139
state: write the version number in plain text on top of state files We will soon be using CBOR format to write the data in state files. But we should not write the version number of the state files in CBOR format and we should rather write it in plain text because in future we can change the format of state files and we should be able to parse the version number of state file without requiring to understand a certain format. This will help us in making sure we have a good compatibility story with other versions of state files. Differential Revision: https://phab.mercurial-scm.org/D3579
Fri, 18 May 2018 16:34:19 +0530 state: set canonical=True to write deterministically
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 18 May 2018 16:34:19 +0530] rev 38138
state: set canonical=True to write deterministically Passing canonical=True to cbor.dump() will help in writing the data deterministically. This will sort all the sets and dicts before writing to the file. Thanks indygreg for recommending to use it. Differential Revision: https://phab.mercurial-scm.org/D3578
Wed, 28 Mar 2018 16:31:16 +0530 state: don't have a dict like interface for cmdstate class
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 28 Mar 2018 16:31:16 +0530] rev 38137
state: don't have a dict like interface for cmdstate class This patch changes the cmdstate class to stop having a dict like interface and delete the __nonzero__ function. After this patch, the save fuction takes a dict to store the data and read function returns a dict of the data stored. Differential Revision: https://phab.mercurial-scm.org/D3572
Wed, 21 Feb 2018 17:20:22 +0530 state: import the file to write state files from evolve extension
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 21 Feb 2018 17:20:22 +0530] rev 38136
state: import the file to write state files from evolve extension The current way of writing state files is very obscure with each state file having it's own format to store state files. There is no centralized way to write state files in a good format. Moreover the current state files are not extensible, you cannot add more data to store in state files in reliable ways. To solve the problem, I wrote my own serialization and deserialization format, looked into existing formats like Protobuf, MessagePack, JSON but CBOR looks very promising and is suggested by people in the community. The current interface to store state files is to directly write data in files when things abort. Using the class imported by this commit, we can create objects which has a dict like interface and can store data on the object and store it on the file when things abort. The evolve extension is using the state file for `evolve`, `grab` commands and using it for resolution of orphaness, phase-divergence and content-divergence. The file is moved from changeset e4ac2e2c2086f977afa35e23a62f849e9305a225 of the evolve extension which is also tagged as 7.3.0. The following changes are made to the file while moving to core: * import util from current directory as this file in mercurial/ now * make cmdstate class extend object * removed mutable default value for opts in cmdstate.__init__ * some doc changes to replace out of core things with in-core ones evolve extension can be found at https://bitbucket.org/marmoute/mutable-history Differential Revision: https://phab.mercurial-scm.org/D2591
Mon, 14 May 2018 13:05:14 +0200 revlog: suggest other parent when a parent was refused for a delta (issue5481)
Paul Morelle <paul.morelle@octobus.net> [Mon, 14 May 2018 13:05:14 +0200] rev 38135
revlog: suggest other parent when a parent was refused for a delta (issue5481) Without aggressivemergedeltas, ensure that when we decline the closest parent (by revision number), the other parent is examined too.
Mon, 14 May 2018 22:02:44 -0400 status: add default of --terse=u to tweakdefaults (BC)
Augie Fackler <augie@google.com> [Mon, 14 May 2018 22:02:44 -0400] rev 38134
status: add default of --terse=u to tweakdefaults (BC) This is in line with both Git and Subversion, and strikes me as a more humane behavior. Test output changes are expected once you read test-status.t, and I feel like we've still got adequate coverage on things. Differential Revision: https://phab.mercurial-scm.org/D3628
Mon, 14 May 2018 22:01:27 -0400 status: add a config knob for setting default of --terse
Augie Fackler <augie@google.com> [Mon, 14 May 2018 22:01:27 -0400] rev 38133
status: add a config knob for setting default of --terse I want --terse=u basically 100% of the time, but there's not a good way to do that before this patch. I'm very unhappy with how the default value for --terse looks rigt now, but it does *work*. The alternative would be to define an "optional string" flag type using fancyopts.customopt and then use that, leaving the default as None. Does anyone have a strong preference for that, or a better idea? Differential Revision: https://phab.mercurial-scm.org/D3627
Sat, 19 May 2018 16:50:30 -0400 tests: port inline extensions in test-obsolete.t to Python 3
Augie Fackler <augie@google.com> [Sat, 19 May 2018 16:50:30 -0400] rev 38132
tests: port inline extensions in test-obsolete.t to Python 3 Still some lingering failure in here, but it's much better. Differential Revision: https://phab.mercurial-scm.org/D3626
Sat, 19 May 2018 16:22:15 -0400 py3: consolidate down some (case ...) entries
Augie Fackler <augie@google.com> [Sat, 19 May 2018 16:22:15 -0400] rev 38131
py3: consolidate down some (case ...) entries Differential Revision: https://phab.mercurial-scm.org/D3625
Sat, 19 May 2018 16:21:53 -0400 py3: re-sort test whitelist
Augie Fackler <augie@google.com> [Sat, 19 May 2018 16:21:53 -0400] rev 38130
py3: re-sort test whitelist Differential Revision: https://phab.mercurial-scm.org/D3624
Sat, 19 May 2018 16:02:39 -0400 tests: fix test-subrepo-paths.t on Python 3
Augie Fackler <augie@google.com> [Sat, 19 May 2018 16:02:39 -0400] rev 38129
tests: fix test-subrepo-paths.t on Python 3 The Python 3 group reference error message is a little more helpful, so we'll allow the extra output. I tried matching this with an (re) line, but decided it wasn't worth the effort. Differential Revision: https://phab.mercurial-scm.org/D3623
Sat, 19 May 2018 15:53:31 -0400 tests: fix test-parseindex2 on Python 3
Augie Fackler <augie@google.com> [Sat, 19 May 2018 15:53:31 -0400] rev 38128
tests: fix test-parseindex2 on Python 3 parsers.versionerrortext is a sysstr, but it's only ever used in this test on the Python side, so I'm okay to just handle it like this. Differential Revision: https://phab.mercurial-scm.org/D3622
Sat, 19 May 2018 15:47:32 -0400 tests: use [(] instead of \( to avoid warning on py3
Augie Fackler <augie@google.com> [Sat, 19 May 2018 15:47:32 -0400] rev 38127
tests: use [(] instead of \( to avoid warning on py3 From a recent test run of mine: run-tests.py:1633: DeprecationWarning: invalid escape sequence '\(' This lets us encode the expectation without the badness. Differential Revision: https://phab.mercurial-scm.org/D3621
Sat, 19 May 2018 15:15:51 -0400 tests: fix test-patch.t on pickier /bin/sh implementations
Augie Fackler <augie@google.com> [Sat, 19 May 2018 15:15:51 -0400] rev 38126
tests: fix test-patch.t on pickier /bin/sh implementations FreeBSD sh(1) doesn't accept -d, so we weren't testing what we expected there. Let's just use a simple Python script instead. Differential Revision: https://phab.mercurial-scm.org/D3620
Sat, 19 May 2018 15:14:56 -0400 patch: add debug message to show external patch tool invocation
Augie Fackler <augie@google.com> [Sat, 19 May 2018 15:14:56 -0400] rev 38125
patch: add debug message to show external patch tool invocation Differential Revision: https://phab.mercurial-scm.org/D3619
Sat, 19 May 2018 20:04:54 +0530 py3: add 13 new passing tests to whitelist
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 20:04:54 +0530] rev 38124
py3: add 13 new passing tests to whitelist Differential Revision: https://phab.mercurial-scm.org/D3615
Sat, 19 May 2018 18:59:21 +0530 py3: check for None before comparing with integers
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:59:21 +0530] rev 38123
py3: check for None before comparing with integers Comparing None and integers on Python 3 is not allowed and raise error. Differential Revision: https://phab.mercurial-scm.org/D3614
Sat, 19 May 2018 18:58:35 +0530 py3: use `except error as e` instead of `except error, e`
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:58:35 +0530] rev 38122
py3: use `except error as e` instead of `except error, e` The latter throws SyntaxError on Python 3. Differential Revision: https://phab.mercurial-scm.org/D3613
Sat, 19 May 2018 18:56:00 +0530 py3: use pycompat.fsencode() to convert tempfile name to bytes
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:56:00 +0530] rev 38121
py3: use pycompat.fsencode() to convert tempfile name to bytes Differential Revision: https://phab.mercurial-scm.org/D3612
Sat, 19 May 2018 18:55:30 +0530 py3: add b'' prefixes in tests/test-parseindex.t
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:55:30 +0530] rev 38120
py3: add b'' prefixes in tests/test-parseindex.t # skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3611
Sat, 19 May 2018 18:52:56 +0530 py3: fix .write() calls in few tests
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:52:56 +0530] rev 38119
py3: fix .write() calls in few tests This patch adds b'' prefixes to make sure we write bytes and add `and None` in the end to suppress the output by .write() calls. Differential Revision: https://phab.mercurial-scm.org/D3610
Sat, 19 May 2018 18:51:14 +0530 py3: bytestr() bytes to get bytechar while iterating on it
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:51:14 +0530] rev 38118
py3: bytestr() bytes to get bytechar while iterating on it Iterating on bytes give you ascii values instead of bytechr so we need to wrap the bytes in pycompat.bytestr() to get bytechr while iterating. Differential Revision: https://phab.mercurial-scm.org/D3609
Sat, 19 May 2018 18:49:07 +0530 py3: slice over bytes to prevent getting the ascii values
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:49:07 +0530] rev 38117
py3: slice over bytes to prevent getting the ascii values Differential Revision: https://phab.mercurial-scm.org/D3608
Sat, 19 May 2018 18:48:26 +0530 py3: use utils.stringutil.forcebytestr to convert error to bytes
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:48:26 +0530] rev 38116
py3: use utils.stringutil.forcebytestr to convert error to bytes Differential Revision: https://phab.mercurial-scm.org/D3607
Sat, 19 May 2018 18:47:20 +0530 py3: make sure we open files in bytes mode
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:47:20 +0530] rev 38115
py3: make sure we open files in bytes mode we internally deal with bytes and should read files in bytes mode. Differential Revision: https://phab.mercurial-scm.org/D3606
Sat, 19 May 2018 18:45:53 +0530 py3: add b'' prefix in test/test-fileset.t
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:45:53 +0530] rev 38114
py3: add b'' prefix in test/test-fileset.t # skip-blame because just a b'' prefix Differential Revision: https://phab.mercurial-scm.org/D3605
Sat, 19 May 2018 18:43:13 +0530 py3: suppress the output from .write() calls in few tests
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:43:13 +0530] rev 38113
py3: suppress the output from .write() calls in few tests Differential Revision: https://phab.mercurial-scm.org/D3604
Sat, 19 May 2018 18:42:18 +0530 py3: use print as a function in tests/test-parseindex.t
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:42:18 +0530] rev 38112
py3: use print as a function in tests/test-parseindex.t Differential Revision: https://phab.mercurial-scm.org/D3603
Sat, 19 May 2018 18:41:02 +0530 py3: use print as a function in tests/test-pull.t
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:41:02 +0530] rev 38111
py3: use print as a function in tests/test-pull.t Differential Revision: https://phab.mercurial-scm.org/D3602
Sat, 19 May 2018 18:33:36 +0530 py3: add b'' prefixes in tests/test-rebuildstate.t
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:33:36 +0530] rev 38110
py3: add b'' prefixes in tests/test-rebuildstate.t # skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3601
Sat, 19 May 2018 18:32:57 +0530 py3: add b'' prefixes in tests/test-progress.t
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:32:57 +0530] rev 38109
py3: add b'' prefixes in tests/test-progress.t # skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3600
Sat, 19 May 2018 18:32:24 +0530 py3: add b'' prefixes in tests/test-profile.t
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:32:24 +0530] rev 38108
py3: add b'' prefixes in tests/test-profile.t # skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3599
Sat, 19 May 2018 18:31:15 +0530 py3: add b'' prefixes in tests/test-pager.t
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:31:15 +0530] rev 38107
py3: add b'' prefixes in tests/test-pager.t # skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3598
Sat, 19 May 2018 18:30:20 +0530 py3: add b'' prefixes in tests/test-hgrc.t
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:30:20 +0530] rev 38106
py3: add b'' prefixes in tests/test-hgrc.t # skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3597
Sat, 19 May 2018 18:28:52 +0530 py3: add b'' prefixes in tests/test-extensions-afterloaded.t
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:28:52 +0530] rev 38105
py3: add b'' prefixes in tests/test-extensions-afterloaded.t # skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3596
Sat, 19 May 2018 18:27:57 +0530 py3: add b'' prefixes in tests/test-custom-filters.t
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:27:57 +0530] rev 38104
py3: add b'' prefixes in tests/test-custom-filters.t # skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3595
Sat, 19 May 2018 18:26:38 +0530 py3: add b'' prefixes in tests/test-bugzilla.t
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:26:38 +0530] rev 38103
py3: add b'' prefixes in tests/test-bugzilla.t # skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3594
Sat, 19 May 2018 18:25:18 +0530 py3: fix kwargs handling in hgext/split.py
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:25:18 +0530] rev 38102
py3: fix kwargs handling in hgext/split.py Differential Revision: https://phab.mercurial-scm.org/D3593
Sat, 19 May 2018 18:24:36 +0530 py3: add b'' prefixes in hgext/convert/subversion.py
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:24:36 +0530] rev 38101
py3: add b'' prefixes in hgext/convert/subversion.py Litrerals starting with triple quotes or prepended with r'' do not get prepended by b'' by the transformer. # skip-blame because just adding b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3592
Sat, 19 May 2018 18:23:03 +0530 py3: use '%d' for integers in hgext/infinitepush/__init__.py
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:23:03 +0530] rev 38100
py3: use '%d' for integers in hgext/infinitepush/__init__.py Differential Revision: https://phab.mercurial-scm.org/D3591
Sat, 19 May 2018 18:21:21 +0530 py3: make sure we pass str to date.strftime()
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 18:21:21 +0530] rev 38099
py3: make sure we pass str to date.strftime() Differential Revision: https://phab.mercurial-scm.org/D3590
Sat, 19 May 2018 21:47:59 +0530 py3: use pycompat.bytestr() to convert str into bytes
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 21:47:59 +0530] rev 38098
py3: use pycompat.bytestr() to convert str into bytes the keys of opts are str here, so we have to convert it to bytes before passing into error.Abort() Differential Revision: https://phab.mercurial-scm.org/D3617
Sat, 19 May 2018 21:46:54 +0530 py3: fix kwargs handling in hgext/rebase.py
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 21:46:54 +0530] rev 38097
py3: fix kwargs handling in hgext/rebase.py We add r'' prefixes to prevent the transformer adding b'' prefixes. # skip-blame because just r'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3616
Wed, 04 Apr 2018 20:18:28 +0900 hgweb: wrap {entries}* of tags with mappinggenerator
Yuya Nishihara <yuya@tcha.org> [Wed, 04 Apr 2018 20:18:28 +0900] rev 38096
hgweb: wrap {entries}* of tags with mappinggenerator They were functions returning a generator of mappings. The laziness is handled by the mappinggenerator class.
Wed, 04 Apr 2018 20:14:19 +0900 hgweb: wrap {fentries} and {dentries} of manifest with mappinggenerator
Yuya Nishihara <yuya@tcha.org> [Wed, 04 Apr 2018 20:14:19 +0900] rev 38095
hgweb: wrap {fentries} and {dentries} of manifest with mappinggenerator They were functions returning a generator of mappings.
Wed, 04 Apr 2018 20:11:20 +0900 hgweb: wrap {entries}* of changelog with mappinglist
Yuya Nishihara <yuya@tcha.org> [Wed, 04 Apr 2018 20:11:20 +0900] rev 38094
hgweb: wrap {entries}* of changelog with mappinglist They were lists of mappings.
Wed, 04 Apr 2018 00:24:09 +0900 hgweb: wrap {lines} of filerevision with mappinggenerator
Yuya Nishihara <yuya@tcha.org> [Wed, 04 Apr 2018 00:24:09 +0900] rev 38093
hgweb: wrap {lines} of filerevision with mappinggenerator No bare generator of mappings should be put in a template mapping.
Wed, 04 Apr 2018 00:21:52 +0900 hgweb: drop unused argument 'tmpl' from webutil.diffstat()
Yuya Nishihara <yuya@tcha.org> [Wed, 04 Apr 2018 00:21:52 +0900] rev 38092
hgweb: drop unused argument 'tmpl' from webutil.diffstat()
Wed, 04 Apr 2018 00:20:47 +0900 hgweb: use template context to render {diffstat}
Yuya Nishihara <yuya@tcha.org> [Wed, 04 Apr 2018 00:20:47 +0900] rev 38091
hgweb: use template context to render {diffstat} This is a preferred way to process nested templates.
Wed, 04 Apr 2018 00:19:37 +0900 hgweb: wrap {diffstat} with mappedgenerator
Yuya Nishihara <yuya@tcha.org> [Wed, 04 Apr 2018 00:19:37 +0900] rev 38090
hgweb: wrap {diffstat} with mappedgenerator This can't be a mappinggenerator since the associated templates are switched per item. We already have webutil.diffstatgen(). That's why the generator function is named as _diffstattmplgen().
Fri, 18 May 2018 20:43:01 -0400 pathencode: improve error messages slightly
Augie Fackler <augie@google.com> [Fri, 18 May 2018 20:43:01 -0400] rev 38089
pathencode: improve error messages slightly Both of these are conditions we should never hit, so we can afford to be more verbose to make debugging less baffling. Differential Revision: https://phab.mercurial-scm.org/D3589
Fri, 18 May 2018 20:42:31 -0400 pathencode: hashlib.sha1() takes bytes not str on Python 3
Augie Fackler <augie@google.com> [Fri, 18 May 2018 20:42:31 -0400] rev 38088
pathencode: hashlib.sha1() takes bytes not str on Python 3 Differential Revision: https://phab.mercurial-scm.org/D3588
Fri, 18 May 2018 20:42:04 -0400 pathencode: fix importing hashlib on Python 3
Augie Fackler <augie@google.com> [Fri, 18 May 2018 20:42:04 -0400] rev 38087
pathencode: fix importing hashlib on Python 3 I'm curious why PyImport_Import is returning NULL, but PyImport_ImportModule bypasses some of the regular import path, probably including demandimport, which I suspect is the issue here. Differential Revision: https://phab.mercurial-scm.org/D3587
Fri, 18 May 2018 20:11:24 -0400 context: fix %-formatting on Python 3
Augie Fackler <augie@google.com> [Fri, 18 May 2018 20:11:24 -0400] rev 38086
context: fix %-formatting on Python 3 changeid could be an int or a bytestr, so use our pycompat wrapper. Differential Revision: https://phab.mercurial-scm.org/D3585
Fri, 18 May 2018 19:54:50 -0400 patch: fix import-time syntax error in test-check-module-imports.t
Augie Fackler <augie@google.com> [Fri, 18 May 2018 19:54:50 -0400] rev 38085
patch: fix import-time syntax error in test-check-module-imports.t This is more correct, though we were getting lucky in practice with our rewriter saving us. # skip-blame just a b prefix Differential Revision: https://phab.mercurial-scm.org/D3584
Fri, 18 May 2018 19:52:35 -0400 py3: whitelist two more passing tests observed by buildbot
Augie Fackler <augie@google.com> [Fri, 18 May 2018 19:52:35 -0400] rev 38084
py3: whitelist two more passing tests observed by buildbot Differential Revision: https://phab.mercurial-scm.org/D3583
Sat, 19 May 2018 00:23:36 +0530 py3: use stringutil.pprint() to format a list to print
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 00:23:36 +0530] rev 38083
py3: use stringutil.pprint() to format a list to print Differential Revision: https://phab.mercurial-scm.org/D3582
Sat, 19 May 2018 00:21:59 +0530 py3: fix kwargs handling in qgurad in hgext/mq.py
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 00:21:59 +0530] rev 38082
py3: fix kwargs handling in qgurad in hgext/mq.py # skip-blame because just r'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3581
Sat, 19 May 2018 00:19:56 +0530 py3: use .startswith() instead of bytes[0]
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 19 May 2018 00:19:56 +0530] rev 38081
py3: use .startswith() instead of bytes[0] bytes[0] returns the ascii value of character at 0 index. Differential Revision: https://phab.mercurial-scm.org/D3580
Thu, 17 May 2018 23:11:24 -0700 crecord: fallback to text mode if diffs are too big for curses mode
Kyle Lippincott <spectral@google.com> [Thu, 17 May 2018 23:11:24 -0700] rev 38080
crecord: fallback to text mode if diffs are too big for curses mode crecord uses curses.newpad to create a region that we can then scroll around in by moving the main 'screen' as a veiwport into the (probably larger than the actual screen) pad. Internally, at least in ncurses, pads are implemented using windows, which have their dimensions limited to a certain size. Depending on compilation options for ncurses, this size might be pretty small: (signed) short, or it might be larger ((signed) int). crecord wants to have enough room to have all of the contents of the main area of the chunkselector in the pad; this means that the full size with everything expanded must be less than these (undocumented, afaict) limits. It's not easy to write tests for this because the limits are platform- and installation- dependent and undocumented / unqueryable, as far as I can tell. Differential Revision: https://phab.mercurial-scm.org/D3577
Thu, 17 May 2018 15:33:28 -0700 narrow: filter copies in core
Martin von Zweigbergk <martinvonz@google.com> [Thu, 17 May 2018 15:33:28 -0700] rev 38079
narrow: filter copies in core Differential Revision: https://phab.mercurial-scm.org/D3576
Thu, 17 May 2018 15:25:52 -0700 narrow: filter set of files to check for case-folding to core
Martin von Zweigbergk <martinvonz@google.com> [Thu, 17 May 2018 15:25:52 -0700] rev 38078
narrow: filter set of files to check for case-folding to core Differential Revision: https://phab.mercurial-scm.org/D3575
Thu, 17 May 2018 15:12:48 -0700 narrow: filter merge actions in core
Martin von Zweigbergk <martinvonz@google.com> [Thu, 17 May 2018 15:12:48 -0700] rev 38077
narrow: filter merge actions in core Part of the ongoing effort to move narrow into core. Differential Revision: https://phab.mercurial-scm.org/D3574
Thu, 17 May 2018 12:23:38 -0700 hgweb: extract code for emitting multiple changelist records
Gregory Szorc <gregory.szorc@gmail.com> [Thu, 17 May 2018 12:23:38 -0700] rev 38076
hgweb: extract code for emitting multiple changelist records changelistentry() exists so extensions can easily monkeypatch the function to add additional metadata. In at least one case at Mozilla, we have an extension doing this where performance would greatly benefit if we were able to "batch fetch" metadata for all revisions that will eventually have their data set. By extracting the logic for "obtain records for N revisions" into a standalone function, we make it possible for a monkeypatched function to more efficiently bulk fetch data for N revisions. Differential Revision: https://phab.mercurial-scm.org/D3573
Wed, 16 May 2018 22:44:27 -0400 phabricator: register config settings
Matt Harbison <matt_harbison@yahoo.com> [Wed, 16 May 2018 22:44:27 -0400] rev 38075
phabricator: register config settings I didn't bother registering the deprecated phabricator.auth.*, and I'm not sure if the two flagged as 'developer config' should be moved to [devel] (or why there's a distinction between `repophid` and `callsign`).
Wed, 16 May 2018 14:11:41 -0600 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org> [Wed, 16 May 2018 14:11:41 -0600] rev 38074
filemerge: support specifying a python function to custom merge-tools Eliminates the need to specify a python executable, which may not exist on system. Additionally launching script inprocess aids portability on systems that can't execute python via the shell. Example usage "merge-tools.myTool.executable=python:c:\myTool.py:mergefn" where myTool.py contains a function: "def mergefn(ui, repo, args, **kwargs):" where args is list of args passed to merge tool. (by default, expanded: $local $base $other) Invoking the specified python function was done by exposing and invoking (hook._pythonhook -> hook.pythonhook)
Sun, 13 May 2018 11:09:53 +0900 test-http-branchmap: fix stdio mode on Windows
Yuya Nishihara <yuya@tcha.org> [Sun, 13 May 2018 11:09:53 +0900] rev 38073
test-http-branchmap: fix stdio mode on Windows
Sun, 13 May 2018 11:08:35 +0900 test-http-branchmap: fix encoding test to wrap the server stream
Yuya Nishihara <yuya@tcha.org> [Sun, 13 May 2018 11:08:35 +0900] rev 38072
test-http-branchmap: fix encoding test to wrap the server stream Wrapping sys.std* streams has no effect since 39d13b8c101d, "py3: bulk replace sys.stdin/out/err by util's."
Thu, 17 May 2018 21:55:00 +0900 test-merge-tools: create repo directory to free $TESTTMP for temporary files
Yuya Nishihara <yuya@tcha.org> [Thu, 17 May 2018 21:55:00 +0900] rev 38071
test-merge-tools: create repo directory to free $TESTTMP for temporary files
Sat, 12 May 2018 23:44:08 +0200 notify: add option to include function names in the diff output
Joerg Sonnenberger <joerg@bec.de> [Sat, 12 May 2018 23:44:08 +0200] rev 38070
notify: add option to include function names in the diff output This is a localized version of diff.showfunc. Differential Revision: https://phab.mercurial-scm.org/D3553
Wed, 16 May 2018 10:34:31 -0700 tests: update py3 test since json fields are now sorted
Martin von Zweigbergk <martinvonz@google.com> [Wed, 16 May 2018 10:34:31 -0700] rev 38069
tests: update py3 test since json fields are now sorted The fields have been sorted since 814151cd8c4a (logcmdutil: rewrite jsonchangeset printer to be backed by jsonformatter, 2018-04-13), and the test case has thus been failing since that commit. Differential Revision: https://phab.mercurial-scm.org/D3570
Wed, 16 May 2018 15:48:12 -0700 tests: test-parseindex.t works just fine with chg
Kyle Lippincott <spectral@google.com> [Wed, 16 May 2018 15:48:12 -0700] rev 38068
tests: test-parseindex.t works just fine with chg In 538e850ae737 I annotated tests that failed with chg with "#require no-chg", but did not investigate why the tests were failing. This test was failing for unrelated reasons (I forgot to rebuild hg) and so should not be marked as no-chg. Test Plan: make local pushd contrib/chg make clean; make popd cd tests for f in '' --with-chg=../contrib/chg/chg; do ./run-tests.py --local $f test-parseindex.t done Differential Revision: https://phab.mercurial-scm.org/D3571
Fri, 27 Apr 2018 21:55:02 +0530 py3: convert the report to bytes
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 27 Apr 2018 21:55:02 +0530] rev 38067
py3: convert the report to bytes Differential Revision: https://phab.mercurial-scm.org/D3569
Fri, 11 May 2018 10:36:28 -0700 json: reject unicode on py2 as well
Martin von Zweigbergk <martinvonz@google.com> [Fri, 11 May 2018 10:36:28 -0700] rev 38066
json: reject unicode on py2 as well This makes it consistent with the behavior on py3. Differential Revision: https://phab.mercurial-scm.org/D3536
Wed, 16 May 2018 20:22:23 +0900 dispatch: mask negative exit code recorded in blackbox log
Yuya Nishihara <yuya@tcha.org> [Wed, 16 May 2018 20:22:23 +0900] rev 38065
dispatch: mask negative exit code recorded in blackbox log That's what we do for the exit code delivered to the environment.
Wed, 16 May 2018 20:17:50 +0900 dispatch: fix exit code of unhandled exception recorded in blackbox log
Yuya Nishihara <yuya@tcha.org> [Wed, 16 May 2018 20:17:50 +0900] rev 38064
dispatch: fix exit code of unhandled exception recorded in blackbox log Spotted by Martin von Zweigbergk. We might want to change the exit code to -1 (i.e. 255) because 1 means non-abort error in hg, but that's another issue.
Tue, 15 May 2018 11:52:43 -0700 tests: mark tests that fail when using chg as #require no-chg
Kyle Lippincott <spectral@google.com> [Tue, 15 May 2018 11:52:43 -0700] rev 38063
tests: mark tests that fail when using chg as #require no-chg As far as I can tell, most of these failures are due to using $HGPORT, which it seems chg might be using itself? I don't know enough to debug these failures to fix them properly. Differential Revision: https://phab.mercurial-scm.org/D3562
Fri, 27 Apr 2018 21:54:37 +0530 py3: use pycompat.bytestr() instead of str() in extensions.py
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 27 Apr 2018 21:54:37 +0530] rev 38062
py3: use pycompat.bytestr() instead of str() in extensions.py Differential Revision: https://phab.mercurial-scm.org/D3568
Wed, 16 May 2018 07:58:02 +0530 py3: use pycompat.bytestr() on bytes before %r-ing it
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 16 May 2018 07:58:02 +0530] rev 38061
py3: use pycompat.bytestr() on bytes before %r-ing it Differential Revision: https://phab.mercurial-scm.org/D3567
Thu, 15 Feb 2018 17:15:21 +0530 py3: add b'' prefixes in tests/test-extension.t
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 15 Feb 2018 17:15:21 +0530] rev 38060
py3: add b'' prefixes in tests/test-extension.t # skip-blame because just b'' prefixes Differential Revision: https://phab.mercurial-scm.org/D3564
Fri, 27 Apr 2018 20:55:10 +0530 py3: suppress the value returned by .write() calls
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 27 Apr 2018 20:55:10 +0530] rev 38059
py3: suppress the value returned by .write() calls These return values are not present on Python 2. Differential Revision: https://phab.mercurial-scm.org/D3563
Tue, 15 May 2018 09:57:58 -0700 tests: test failure reporting in blackbox code
Martin von Zweigbergk <martinvonz@google.com> [Tue, 15 May 2018 09:57:58 -0700] rev 38058
tests: test failure reporting in blackbox code Differential Revision: https://phab.mercurial-scm.org/D3560
Mon, 14 May 2018 12:53:13 +0200 export: add -B option to select a bookmark
David Demelier <markand@malikania.fr> [Mon, 14 May 2018 12:53:13 +0200] rev 38057
export: add -B option to select a bookmark Just like `hg email -B`, `hg strip -B`, supports -B in export to select a list of changesets reachable from a bookmark.
Sat, 12 May 2018 18:05:50 -0700 packaging: move most packaging targets to own Makefile
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 12 May 2018 18:05:50 -0700] rev 38056
packaging: move most packaging targets to own Makefile Since we're putting everything packaging under one roof, let's define the make targets related to packaging there as well. I didn't move the "osx" target because it is non-trivial. Some targets did change slightly as part of the move. But it was mostly around path normalization. Differential Revision: https://phab.mercurial-scm.org/D3552
Sat, 12 May 2018 12:27:51 -0700 packaging: make packaging scripts less reliant on pwd
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 12 May 2018 12:27:51 -0700] rev 38055
packaging: make packaging scripts less reliant on pwd The scripts currently assume they are executed from the repo root. This feels like an arbitrary restriction. Let's fix that. Differential Revision: https://phab.mercurial-scm.org/D3551
Sat, 12 May 2018 10:57:04 -0700 packaging: move contrib/macosx to contrib/packaging/
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 12 May 2018 10:57:04 -0700] rev 38054
packaging: move contrib/macosx to contrib/packaging/ And update various references throughout the code. Differential Revision: https://phab.mercurial-scm.org/D3550
Sat, 12 May 2018 10:50:30 -0700 packaging: move linux-wheel-centos5-blacklist to contrib/packaging/
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 12 May 2018 10:50:30 -0700] rev 38053
packaging: move linux-wheel-centos5-blacklist to contrib/packaging/ Differential Revision: https://phab.mercurial-scm.org/D3549
(0) -30000 -10000 -3000 -1000 -300 -100 -96 +96 +100 +300 +1000 +3000 +10000 tip