Thu, 22 Sep 2022 16:27:17 +0200 tests: remove non-python3 line matching and tests block
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Sep 2022 16:27:17 +0200] rev 49716
tests: remove non-python3 line matching and tests block We don't support Python2 anymore
Mon, 31 Oct 2022 16:50:22 +0400 pywatchman: remove obsolete comments about importing from future
Anton Shestakov <av6@dwimlabs.net> [Mon, 31 Oct 2022 16:50:22 +0400] rev 49715
pywatchman: remove obsolete comments about importing from future See 6000f5b25c9b.
Mon, 31 Oct 2022 16:36:00 +0400 demandimport: remove an obsolete comment about importing from future
Anton Shestakov <av6@dwimlabs.net> [Mon, 31 Oct 2022 16:36:00 +0400] rev 49714
demandimport: remove an obsolete comment about importing from future See 6000f5b25c9b.
Wed, 19 Oct 2022 11:10:54 -0400 mr-template: wrap the instructions inside a comment block
Matt Harbison <matt_harbison@yahoo.com> [Wed, 19 Oct 2022 11:10:54 -0400] rev 49713
mr-template: wrap the instructions inside a comment block At least in preview mode, this hides the text so the user doesn't have to delete it. It's still visible in edit mode, so the user sees it.
Wed, 19 Oct 2022 11:50:40 -0400 revlog: use the user facing filename as the display_id for filelogs
Matt Harbison <matt_harbison@yahoo.com> [Wed, 19 Oct 2022 11:50:40 -0400] rev 49712
revlog: use the user facing filename as the display_id for filelogs I had trouble isolating some LFS blob corruption detected by `hg verify` because the traceback referenced a file, but with the `data/` prefix in the `.hg/store` path, so it couldn't be located with the `file()` revset: ``` Traceback (most recent call last): File "/mnt/d/mercurial/mercurial/revlog.py", line 3209, in verifyintegrity _verify_revision(self, skipflags, state, node) File "/mnt/d/mercurial/hgext/lfs/wrapper.py", line 246, in _verify_revision orig(rl, skipflags, state, node) File "/mnt/d/mercurial/mercurial/revlog.py", line 158, in _verify_revision rl.revision(node) File "/mnt/d/mercurial/mercurial/revlog.py", line 1816, in revision return self._revisiondata(nodeorrev, _df) File "/mnt/d/mercurial/mercurial/revlog.py", line 1870, in _revisiondata self.checkhash(text, node, rev=rev) File "/mnt/d/mercurial/mercurial/revlog.py", line 1996, in checkhash % (self.display_id, pycompat.bytestr(revornode)) mercurial.error.RevlogError: integrity check failed on data/EXE/PPC/shrinksrec.exe:0 ``` (I'm a little surprised it resulted in a stacktrace instead of just a message, but that's a different issue. I'm also not sure how to trigger the simplestore case, since IIUC, it's also a revlog based store.) It's not clear how to handle the changelog and manifest (because the user doesn't interact with them as a file), so those cases are left alone. The other thing that would be nice to improve somehow is to indicate that the ":0" is a revlog revision, not the changeset revision that users are used to. I'm not sure how to handle the "or node" part though.
Wed, 19 Oct 2022 11:24:20 -0400 revlog: drop an unused variable assignment
Matt Harbison <matt_harbison@yahoo.com> [Wed, 19 Oct 2022 11:24:20 -0400] rev 49711
revlog: drop an unused variable assignment It's assigned again 2 lines later.
Thu, 20 Oct 2022 13:12:37 -0400 lfs: improve an exception message for blob corruption detected on transfer
Matt Harbison <matt_harbison@yahoo.com> [Thu, 20 Oct 2022 13:12:37 -0400] rev 49710
lfs: improve an exception message for blob corruption detected on transfer The message about the server crash originated in 0ee0a3f6a990 (after support for serving blobs was added), but was copied from the Facebook repo that forked prior to server side support. Therefore, this message only displayed in their client, so it was safe to assume the server crashed. But that was never the case for vanilla Mercurial, as I saw this in a server log. Also, display the blob reference so that it's easier to figure out where the problem was when a bunch of blobs are transferred at once.
Mon, 24 Oct 2022 17:35:30 +0200 branching: merge stable into default
Raphaël Gomès <rgomes@octobus.net> [Mon, 24 Oct 2022 17:35:30 +0200] rev 49709
branching: merge stable into default
Thu, 02 Mar 2023 15:21:36 +0100 Added signature for changeset 8830004967ad stable
Raphaël Gomès <rgomes@octobus.net> [Thu, 02 Mar 2023 15:21:36 +0100] rev 49708
Added signature for changeset 8830004967ad
Thu, 02 Mar 2023 15:21:23 +0100 Added tag 6.3.3 for changeset 8830004967ad stable
Raphaël Gomès <rgomes@octobus.net> [Thu, 02 Mar 2023 15:21:23 +0100] rev 49707
Added tag 6.3.3 for changeset 8830004967ad
Thu, 02 Mar 2023 15:07:47 +0100 relnotes: add 6.3.3 stable 6.3.3
Raphaël Gomès <rgomes@octobus.net> [Thu, 02 Mar 2023 15:07:47 +0100] rev 49706
relnotes: add 6.3.3
Tue, 28 Feb 2023 16:42:38 -0500 typing: add typehints to mercurial/diffutil.py stable
Matt Harbison <matt_harbison@yahoo.com> [Tue, 28 Feb 2023 16:42:38 -0500] rev 49705
typing: add typehints to mercurial/diffutil.py Lack of typehints here caused the fact that TortoiseHg was passing str instead of bytes as the key in `opts` to be missed, resulting in shelf corruption in cases where `diff.git` is required.
Tue, 28 Feb 2023 18:14:11 -0500 patchbomb: respect the `--git` option stable
Matt Harbison <matt_harbison@yahoo.com> [Tue, 28 Feb 2023 18:14:11 -0500] rev 49704
patchbomb: respect the `--git` option I *think* this is the only diffopt exposed on the command line. TortoiseHg had a similar issue creating diffopts, and this was caught by type hints in the next commit.
Wed, 01 Mar 2023 16:48:09 +0100 rhg: remember the inode of .hg/dirstate stable
Raphaël Gomès <rgomes@octobus.net> [Wed, 01 Mar 2023 16:48:09 +0100] rev 49703
rhg: remember the inode of .hg/dirstate This allows us to detect changes of `.hg/dirstate`, which is either the full dirstate (in dirstate-v1) or the docket file (v2) without relying on data inside the file. It only works on UNIX systems. This fixes a race condition for dirstate-v1 (as demonstrated by the test changes) and adds a confortable layer of sanity for dirstate-v2.
Tue, 28 Feb 2023 17:58:15 +0100 rust-dirstate-v2: don't write dirstate if data file has changed stable
Raphaël Gomès <rgomes@octobus.net> [Tue, 28 Feb 2023 17:58:15 +0100] rev 49702
rust-dirstate-v2: don't write dirstate if data file has changed This fixes the following race: - process A reads the dirstate - process B reads and writes the dirstate - process A writes the dirstate This either resulted in losing what process B had just written or a crash because the `uuid` had changed and we were trying to write to a file that doesn't exist. More explanations inside. This doesn't fix the issue for dirstate-v1, a later patch addresses it.
Mon, 12 Dec 2022 17:08:12 +0100 rust-dirstate: remember the data file uuid dirstate was loaded with stable
Raphaël Gomès <rgomes@octobus.net> [Mon, 12 Dec 2022 17:08:12 +0100] rev 49701
rust-dirstate: remember the data file uuid dirstate was loaded with This will be used in the next patch to fix a race condition.
(0) -30000 -10000 -3000 -1000 -300 -100 -16 +16 +100 +300 +1000 tip