Mon, 01 Feb 2021 00:02:00 +0530 upgrade: implement partial upgrade for upgrading persistent-nodemap
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 01 Feb 2021 00:02:00 +0530] rev 46472
upgrade: implement partial upgrade for upgrading persistent-nodemap Upgrading repositories to use persistent nodemap should be fast and easy as it requires only two things: 1) Updating the requirements 2) Writing a persistent-nodemap on disk For both of the steps above, we don't need to edit existing revlogs. This patch makes upgrade only do the above mentioned two steps if we are only upgarding to use persistent-nodemap feature. Since `nodemap.persist_nodemap()` assumes that there exists a nodemap file for the given revlog if we are trying to call it, this patch adds `force` argument to create a file if does not exist which is true in our upgrade case. The test changes demonstrate that we no longer write nodemap files for manifest after upgrade which I think is desirable. Differential Revision: https://phab.mercurial-scm.org/D9936
Mon, 01 Feb 2021 00:10:27 +0530 tests: unquiet a test to show changes in next patch
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 01 Feb 2021 00:10:27 +0530] rev 46471
tests: unquiet a test to show changes in next patch Differential Revision: https://phab.mercurial-scm.org/D9935
Sun, 31 Jan 2021 23:40:57 +0530 nodemap: fix a typo in error message
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 31 Jan 2021 23:40:57 +0530] rev 46470
nodemap: fix a typo in error message Differential Revision: https://phab.mercurial-scm.org/D9934
Sun, 31 Jan 2021 23:38:31 +0530 revlog: refactor logic to compute nodemap file in separate function
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 31 Jan 2021 23:38:31 +0530] rev 46469
revlog: refactor logic to compute nodemap file in separate function I will like to use it one more place. Differential Revision: https://phab.mercurial-scm.org/D9933
Sun, 31 Jan 2021 23:34:59 +0530 nodemap: make `_persist_nodemap` a public function
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 31 Jan 2021 23:34:59 +0530] rev 46468
nodemap: make `_persist_nodemap` a public function I will like to have a utility function using which we can directly write out nodemap for a repository without going through the recloning process. This function seems like the one containing important pieces for that. Let's make it public. Differential Revision: https://phab.mercurial-scm.org/D9932
Sun, 31 Jan 2021 23:13:08 +0530 engine: 'if not, else' -> 'if, else'
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 31 Jan 2021 23:13:08 +0530] rev 46467
engine: 'if not, else' -> 'if, else' I personally feel that ``` if x: pass else: pass ``` is easier to read and edit than ``` if not x: pass else: pass ``` Next patches will add one more if-else clause. Differential Revision: https://phab.mercurial-scm.org/D9931
Mon, 25 Jan 2021 14:23:47 +0530 debugcommands: s/stdin/stdout in debugnodemap help
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 25 Jan 2021 14:23:47 +0530] rev 46466
debugcommands: s/stdin/stdout in debugnodemap help Differential Revision: https://phab.mercurial-scm.org/D9930
Fri, 29 Jan 2021 15:51:00 -0800 errors: use InputError in uncommit extension
Martin von Zweigbergk <martinvonz@google.com> [Fri, 29 Jan 2021 15:51:00 -0800] rev 46465
errors: use InputError in uncommit extension Differential Revision: https://phab.mercurial-scm.org/D9911
Thu, 04 Feb 2021 16:59:46 -0500 largefiles: properly pass kwargs into url.open stable
Jordi Gutiérrez Hermoso <jordigh@octave.org> [Thu, 04 Feb 2021 16:59:46 -0500] rev 46464
largefiles: properly pass kwargs into url.open The url.open function has acquired a lot of kwargs over the years. When running `hg import http://example.com/hg/diff/1`, since at least a708e1e4d7a8 in March, 2018, the calling sites for url.open try to pass a `sendaccept` parameter that largefiles' override doesn't accept. Currently that stack traces something like this: Traceback (most recent call last): File "/tmp/hgtests.sv744r5t/install/bin/hg", line 59, in <module> dispatch.run() File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/dispatch.py", line 143, in run status = dispatch(req) File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/dispatch.py", line 245, in dispatch status = _rundispatch(req) File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/dispatch.py", line 289, in _rundispatch ret = _runcatch(req) or 0 File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/dispatch.py", line 465, in _runcatch return _callcatch(ui, _runcatchfunc) File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/dispatch.py", line 475, in _callcatch return scmutil.callcatch(ui, func) File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/scmutil.py", line 155, in callcatch return func() File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/dispatch.py", line 455, in _runcatchfunc return _dispatch(req) File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/dispatch.py", line 1259, in _dispatch lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/dispatch.py", line 913, in runcommand ret = _runcommand(ui, options, cmd, d) File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/dispatch.py", line 1270, in _runcommand return cmdfunc() File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/dispatch.py", line 1256, in <lambda> d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/util.py", line 1867, in check return func(*args, **kwargs) File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/commands.py", line 4184, in import_ patchfile = hg.openpath(ui, patchurl, sendaccept=False) File "/tmp/hgtests.sv744r5t/install/lib/python/mercurial/hg.py", line 181, in openpath return url.open(ui, path, sendaccept=sendaccept) TypeError: openlargefile() got an unexpected keyword argument 'sendaccept' So, just accept and pass along any kwargs of the overridden function.
Mon, 01 Feb 2021 11:41:10 +0100 rhg: add support for share-safe
Simon Sapin <simon.sapin@octobus.net> [Mon, 01 Feb 2021 11:41:10 +0100] rev 46463
rhg: add support for share-safe Differential Revision: https://phab.mercurial-scm.org/D9942
(0) -30000 -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 tip