Mon, 14 Feb 2022 22:16:29 -0800 filemerge: reduce some duplication in `_maketempfiles()`
Martin von Zweigbergk <martinvonz@google.com> [Mon, 14 Feb 2022 22:16:29 -0800] rev 48787
filemerge: reduce some duplication in `_maketempfiles()` The two callers of the local `maketempfrompath()` function used the returned file object in the same way. We can reduce duplication by moving that code into the function. Differential Revision: https://phab.mercurial-scm.org/D12192
Mon, 14 Feb 2022 22:11:50 -0800 filemerge: use leverage `util.readfile()` in `_maketempfiles()`
Martin von Zweigbergk <martinvonz@google.com> [Mon, 14 Feb 2022 22:11:50 -0800] rev 48786
filemerge: use leverage `util.readfile()` in `_maketempfiles()` Differential Revision: https://phab.mercurial-scm.org/D12191
Mon, 14 Feb 2022 22:04:50 -0800 filemerge: move removal of `.orig` extension on temp file close to context
Martin von Zweigbergk <martinvonz@google.com> [Mon, 14 Feb 2022 22:04:50 -0800] rev 48785
filemerge: move removal of `.orig` extension on temp file close to context The place where the `.orig` extension is removed in `_maketempfiles()` doesn't make it clear that it's the backup path, which is why we have a comment in the code explaining it. Let's instead move it out of the function and close to where we get it from `backup.path()`, so that becomes clear. Differential Revision: https://phab.mercurial-scm.org/D12190
Mon, 14 Feb 2022 21:52:18 -0800 filemerge: remove `uselocalpath` argument from `_maketempfiles()`
Martin von Zweigbergk <martinvonz@google.com> [Mon, 14 Feb 2022 21:52:18 -0800] rev 48784
filemerge: remove `uselocalpath` argument from `_maketempfiles()` The `localpath` argument is unused if `uselocalpath` is false, so we can use `None` as a sentinel value for the variable instead and remove extra `uselocalpath` argument. That's not much of a win, but it's a small step towards further improvements. Differential Revision: https://phab.mercurial-scm.org/D12189
Fri, 11 Feb 2022 22:39:53 -0800 filemerge: remove an unnecessary join with absolute path
Martin von Zweigbergk <martinvonz@google.com> [Fri, 11 Feb 2022 22:39:53 -0800] rev 48783
filemerge: remove an unnecessary join with absolute path The `backup` path is now always absolute, so we don't need to join it with the working copy path. Differential Revision: https://phab.mercurial-scm.org/D12188
Fri, 11 Feb 2022 21:39:55 -0800 filemerge: when using in-memory merge, always put backup files in temp dir
Martin von Zweigbergk <martinvonz@google.com> [Fri, 11 Feb 2022 21:39:55 -0800] rev 48782
filemerge: when using in-memory merge, always put backup files in temp dir Before calling a merge tool, we create a backup of the local side of the merge. That file can be put in the working copy or in a temporary directory, depending on the user's config. When we're merging in memory, we don't want to write to the actual, on-disk working copy, so we write the file to the in-memory working copy instead. However, since we don't support external merge tools with in-memory merge, it makes no difference where the file is actually stored (and if we ever do add support for external merge tools, then the file clearly can't live in the in-memory working-copy object anyway). So, since it doesn't matter where the file is stored, we can simplify by always putting them in the system's temp directory. Differential Revision: https://phab.mercurial-scm.org/D12187
Tue, 15 Feb 2022 20:18:57 -0800 filemerge: remove unused `repo` argument from `_maketempfiles()`
Martin von Zweigbergk <martinvonz@google.com> [Tue, 15 Feb 2022 20:18:57 -0800] rev 48781
filemerge: remove unused `repo` argument from `_maketempfiles()` I missed this in D12171. Differential Revision: https://phab.mercurial-scm.org/D12194
Tue, 15 Feb 2022 23:45:30 +0100 upgrade: make dirstate-v2 format variant compatible with share
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 15 Feb 2022 23:45:30 +0100] rev 48780
upgrade: make dirstate-v2 format variant compatible with share This only affects the dirstate and is safe to upgrade in the share. Differential Revision: https://phab.mercurial-scm.org/D12197
Tue, 15 Feb 2022 23:09:07 +0100 upgrade: prepare code (and output) for the idea of upgrading share
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 15 Feb 2022 23:09:07 +0100] rev 48779
upgrade: prepare code (and output) for the idea of upgrading share This would work for a subset of action only. Our first target is dirstate-v2. Differential Revision: https://phab.mercurial-scm.org/D12196
Tue, 15 Feb 2022 13:32:30 -0500 sparse: add timing block for parsing sparse configs
Augie Fackler <augie@google.com> [Tue, 15 Feb 2022 13:32:30 -0500] rev 48778
sparse: add timing block for parsing sparse configs This was showing up in an operation I was doing today, and I'd like to be able to get trace spans for it instead of just profiler samples. Differential Revision: https://phab.mercurial-scm.org/D12186
Tue, 15 Feb 2022 13:32:11 -0500 narrowspec: add timing block for validating narrowspec
Augie Fackler <augie@google.com> [Tue, 15 Feb 2022 13:32:11 -0500] rev 48777
narrowspec: add timing block for validating narrowspec This was showing up in an operation I was doing today, and I'd like to be able to get trace spans for it instead of just profiler samples. Differential Revision: https://phab.mercurial-scm.org/D12185
Fri, 18 Feb 2022 12:55:39 +0100 Added signature for changeset dcec16e799dd stable
Raphaël Gomès <rgomes@octobus.net> [Fri, 18 Feb 2022 12:55:39 +0100] rev 48776
Added signature for changeset dcec16e799dd
Fri, 18 Feb 2022 12:55:20 +0100 Added tag 6.0.3 for changeset dcec16e799dd stable
Raphaël Gomès <rgomes@octobus.net> [Fri, 18 Feb 2022 12:55:20 +0100] rev 48775
Added tag 6.0.3 for changeset dcec16e799dd
Thu, 17 Feb 2022 20:50:04 +0000 status: fix hg status race against file deletion stable 6.0.3
Arseniy Alekseyev <aalekseyev@janestreet.com> [Thu, 17 Feb 2022 20:50:04 +0000] rev 48774
status: fix hg status race against file deletion Differential Revision: https://phab.mercurial-scm.org/D12202
Tue, 15 Feb 2022 20:24:46 -0800 branching: merge with stable
Martin von Zweigbergk <martinvonz@google.com> [Tue, 15 Feb 2022 20:24:46 -0800] rev 48773
branching: merge with stable
Fri, 11 Feb 2022 16:52:48 -0800 filemerge: put temporary files in single temp dir by default
Martin von Zweigbergk <martinvonz@google.com> [Fri, 11 Feb 2022 16:52:48 -0800] rev 48772
filemerge: put temporary files in single temp dir by default The feature introduced in D2888 seems like a pure improvement to me. It makes the names' of temporary file easier to read. Let's have it always enabled. I also removed the config option for the path prefix because it doesn't seem useful. I asked Kyle (the author of the feature) about it and he couldn't think of a reason to keep it. I suspect it was just that we to have a config to turn it on/off while it was experimental, so it might as well be a configurable prefix then. Differential Revision: https://phab.mercurial-scm.org/D12171
Tue, 15 Feb 2022 05:20:46 +0100 dirstate-tracked-key: update the config value to match latest discussion
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 15 Feb 2022 05:20:46 +0100] rev 48771
dirstate-tracked-key: update the config value to match latest discussion Special cases are not special enough, we align the option name on the other. The `version` value is undocumented for now as it can only have a single value. It is supported in the code to properly detect and abort if more value are introduced in the future value. Differential Revision: https://phab.mercurial-scm.org/D12184
Fri, 26 Nov 2021 15:38:04 +0100 rhg: signal when falling back in logs
Raphaël Gomès <rgomes@octobus.net> [Fri, 26 Nov 2021 15:38:04 +0100] rev 48770
rhg: signal when falling back in logs We use the `trace` level for the actual message because it can get really busy. Differential Revision: https://phab.mercurial-scm.org/D11814
Mon, 07 Feb 2022 13:23:58 +0100 revlog: register changelogv2 C implementation in parsers
pacien <pacien.trangirard@pacien.net> [Mon, 07 Feb 2022 13:23:58 +0100] rev 48769
revlog: register changelogv2 C implementation in parsers This allows Python code to make use of the C implementation of the changelogv2 base operations when the C extensions are enabled. The `format_version` values are now shared between the C and Python sides, avoiding an additional translation for the selection of the format version to use. Differential Revision: https://phab.mercurial-scm.org/D12179
Mon, 14 Feb 2022 12:34:02 +0100 revlog: implement changelogv2 packing and unpacking in C
pacien <pacien.trangirard@pacien.net> [Mon, 14 Feb 2022 12:34:02 +0100] rev 48768
revlog: implement changelogv2 packing and unpacking in C This introduces a C implementation of changelogv2 records packing and unpacking operations matching the pure Python counterpart, similarly to what we already have for revlogv1 and revlogv2. This is also necessary to access changelogv2 record fields from future Rust code without going through the Python part, which would annihilate any performance benefit. Differential Revision: https://phab.mercurial-scm.org/D12178
Thu, 10 Feb 2022 16:20:14 +0100 revlog: memset whole record instead of dealing with padding
pacien <pacien.trangirard@pacien.net> [Thu, 10 Feb 2022 16:20:14 +0100] rev 48767
revlog: memset whole record instead of dealing with padding This is less error-prone. Differential Revision: https://phab.mercurial-scm.org/D12177
Fri, 11 Feb 2022 05:37:19 +0100 revlog: do not compute node location by hand in index_invalidate_added
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 11 Feb 2022 05:37:19 +0100] rev 48766
revlog: do not compute node location by hand in index_invalidate_added The node is not guaranteed to be at the same location all the time (e.g: changelog v2), so let's use the official existing API to get that value. Differential Revision: https://phab.mercurial-scm.org/D12176
Fri, 28 Jan 2022 11:54:44 +0100 rank: compute property incrementally
pacien <pacien.trangirard@pacien.net> [Fri, 28 Jan 2022 11:54:44 +0100] rev 48765
rank: compute property incrementally This replaces the naive rank computation with a more efficient incremental method, avoiding computing the whole ancestor set when possible. Differential Revision: https://phab.mercurial-scm.org/D12143
Fri, 28 Jan 2022 11:45:33 +0100 rank: add test with golden values
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 28 Jan 2022 11:45:33 +0100] rev 48764
rank: add test with golden values This adds a regression test for the computation of the rank, using the current values computed with the naive algorithm as the "golden" reference. Differential Revision: https://phab.mercurial-scm.org/D12142
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -24 +24 +50 +100 +300 +1000 +3000 tip