Wed, 05 Jan 2022 17:53:03 +0100 Added tag 6.0.1 for changeset 799fdf4cca80 stable
Raphaël Gomès <rgomes@octobus.net> [Wed, 05 Jan 2022 17:53:03 +0100] rev 48350
Added tag 6.0.1 for changeset 799fdf4cca80
Fri, 26 Nov 2021 14:29:05 +0100 docs: update Rust readme with a mention of `rhg` stable 6.0.1
Raphaël Gomès <rgomes@octobus.net> [Fri, 26 Nov 2021 14:29:05 +0100] rev 48349
docs: update Rust readme with a mention of `rhg` Differential Revision: https://phab.mercurial-scm.org/D11811
Fri, 26 Nov 2021 12:21:03 +0100 docs: fix typos and wording for the persistent-nodemap feature stable
Raphaël Gomès <rgomes@octobus.net> [Fri, 26 Nov 2021 12:21:03 +0100] rev 48348
docs: fix typos and wording for the persistent-nodemap feature Differential Revision: https://phab.mercurial-scm.org/D11810
Fri, 26 Nov 2021 12:17:51 +0100 docs: add missing dirstate-v2 documentation stable
Raphaël Gomès <rgomes@octobus.net> [Fri, 26 Nov 2021 12:17:51 +0100] rev 48347
docs: add missing dirstate-v2 documentation A user trying out the dirstate-v2 feature without the Rust extensions is currently faced with an error message suggesting this help section, which does not exist. Differential Revision: https://phab.mercurial-scm.org/D11809
Fri, 26 Nov 2021 14:28:27 +0100 docs: add documentation about Rust stable
Raphaël Gomès <rgomes@octobus.net> [Fri, 26 Nov 2021 14:28:27 +0100] rev 48346
docs: add documentation about Rust This makes the features more discoverable for users. Differential Revision: https://phab.mercurial-scm.org/D11808
Mon, 03 Jan 2022 10:43:17 +0100 heptapod-ci: make Windows jobs manual again stable
Raphaël Gomès <rgomes@octobus.net> [Mon, 03 Jan 2022 10:43:17 +0100] rev 48345
heptapod-ci: make Windows jobs manual again The dance continues, we make the Windows tests optional once again since we don't have Windows runners available anymore. We're working on getting new ones in a more stable fashion, hopefully soon. Differential Revision: https://phab.mercurial-scm.org/D11957
Wed, 25 Aug 2021 17:14:47 +0200 tests: allow for variation in zstd output as seen on s390x and powerpc stable
Julien Cristau <jcristau@debian.org> [Wed, 25 Aug 2021 17:14:47 +0200] rev 48344
tests: allow for variation in zstd output as seen on s390x and powerpc
Mon, 29 Nov 2021 12:27:33 +0000 sparse: lock the store when updating requirements config stable
Arseniy Alekseyev <aalekseyev@janestreet.com> [Mon, 29 Nov 2021 12:27:33 +0000] rev 48343
sparse: lock the store when updating requirements config Differential Revision: https://phab.mercurial-scm.org/D11817
Tue, 16 Nov 2021 17:35:57 +0000 sparse: demonstrate a bug when used with safe-share stable
Arseniy Alekseyev <aalekseyev@janestreet.com> [Tue, 16 Nov 2021 17:35:57 +0000] rev 48342
sparse: demonstrate a bug when used with safe-share sparse: lock the store when updating requirements config Differential Revision: https://phab.mercurial-scm.org/D11766
Mon, 13 Dec 2021 00:18:31 -0500 hghave: fix the check for suid on platforms lacking support stable
Matt Harbison <matt_harbison@yahoo.com> [Mon, 13 Dec 2021 00:18:31 -0500] rev 48341
hghave: fix the check for suid on platforms lacking support The mac tests were raising an AttributeError without the default arg. Differential Revision: https://phab.mercurial-scm.org/D11906
Sun, 12 Dec 2021 19:36:11 -0500 upgrade: byteify a few error messages stable
Matt Harbison <matt_harbison@yahoo.com> [Sun, 12 Dec 2021 19:36:11 -0500] rev 48340
upgrade: byteify a few error messages These were flagged by pytype (which is currently disabled on this file due to another failure). Differential Revision: https://phab.mercurial-scm.org/D11905
Mon, 06 Dec 2021 10:08:04 +0100 dirstate-v2: fix upgrade on an empty repository stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 06 Dec 2021 10:08:04 +0100] rev 48339
dirstate-v2: fix upgrade on an empty repository This used to crash as the dirstate file does not exist in this case. Differential Revision: https://phab.mercurial-scm.org/D11866
Mon, 06 Dec 2021 10:52:40 +0100 dirstate-v2: test upgrade without rust too stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 06 Dec 2021 10:52:40 +0100] rev 48338
dirstate-v2: test upgrade without rust too There is no reason to gate this anymore. Differential Revision: https://phab.mercurial-scm.org/D11865
Tue, 07 Dec 2021 10:03:00 +0100 upgrade: don't use `dd status=none` in the test stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 07 Dec 2021 10:03:00 +0100] rev 48337
upgrade: don't use `dd status=none` in the test This breaks on Windows, so lets use `>2 /dev/null` like in the other tests. Differential Revision: https://phab.mercurial-scm.org/D11873
Mon, 06 Dec 2021 10:23:51 +0100 test-upgrade: narrow the `debugformat` call when upgrading to dirstate-v2 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 06 Dec 2021 10:23:51 +0100] rev 48336
test-upgrade: narrow the `debugformat` call when upgrading to dirstate-v2 This will make the test less noisy when new requirement are added. Differential Revision: https://phab.mercurial-scm.org/D11864
Thu, 25 Nov 2021 18:26:50 +0100 downgrade: don't assume existence of nodemap files when downgrading stable
Raphaël Gomès <rgomes@octobus.net> [Thu, 25 Nov 2021 18:26:50 +0100] rev 48335
downgrade: don't assume existence of nodemap files when downgrading Persistent nodemap files might not exist on a fresh repository, so ignore the potential missing file errors. Differential Revision: https://phab.mercurial-scm.org/D11806
Tue, 07 Dec 2021 15:01:30 +0100 fsmonitor: fix criteria for nonnormalset computation stable
Raphaël Gomès <rgomes@octobus.net> [Tue, 07 Dec 2021 15:01:30 +0100] rev 48334
fsmonitor: fix criteria for nonnormalset computation ... oops. Differential Revision: https://phab.mercurial-scm.org/D11875
Mon, 06 Dec 2021 11:10:59 +0100 fsmonitor: incorporate fixes for Python 3.10 (issue6612) stable
Raphaël Gomès <rgomes@octobus.net> [Mon, 06 Dec 2021 11:10:59 +0100] rev 48333
fsmonitor: incorporate fixes for Python 3.10 (issue6612) Differential Revision: https://phab.mercurial-scm.org/D11862
Sun, 28 Nov 2021 11:27:08 +0100 tests: fix test-fix on NetBSD stable
Thomas Klausner <wiz@gatalith.at> [Sun, 28 Nov 2021 11:27:08 +0100] rev 48332
tests: fix test-fix on NetBSD Differential Revision: https://phab.mercurial-scm.org/D11816
Tue, 23 Nov 2021 15:35:31 +0530 Added signature for changeset 5d08b289e2e5 stable
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 23 Nov 2021 15:35:31 +0530] rev 48331
Added signature for changeset 5d08b289e2e5
Tue, 23 Nov 2021 15:35:21 +0530 Added tag 6.0 for changeset 5d08b289e2e5 stable
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 23 Nov 2021 15:35:21 +0530] rev 48330
Added tag 6.0 for changeset 5d08b289e2e5
Wed, 17 Nov 2021 13:47:25 +0100 packaging: make rpm relocatable stable 6.0
Mathias De Mare <mathias.de_mare@nokia.com> [Wed, 17 Nov 2021 13:47:25 +0100] rev 48329
packaging: make rpm relocatable This makes it possible to install multiple Mercurial rpms on the same machine in different locations. Differential Revision: https://phab.mercurial-scm.org/D11768
Wed, 17 Nov 2021 13:28:22 +0100 dockerrpm: always use current user and group stable
Mathias De Mare <mathias.de_mare@nokia.com> [Wed, 17 Nov 2021 13:28:22 +0100] rev 48328
dockerrpm: always use current user and group Using uid 1000 and gid 1000 works by default in some cases, but 'id -u' and 'id -g' should work in all cases. Differential Revision: https://phab.mercurial-scm.org/D11767
Thu, 18 Nov 2021 12:31:37 +0100 cext: fix Python 3.11 compatibility - Py_SIZE is not an lvalue (issue6610) stable
Mads Kiilerich <mads@kiilerich.com> [Thu, 18 Nov 2021 12:31:37 +0100] rev 48327
cext: fix Python 3.11 compatibility - Py_SIZE is not an lvalue (issue6610) Py_SIZE was made a static inline function during Python 3.10 development, as described on https://vstinner.github.io/c-api-opaque-structures.html . e92ca942ddca updated the Mercurial code base accordingly, but somehow missed a couple of cases introduced long time ago in a8c948ee3668. The Python change was dropped for 3.10, but is coming back again in 3.11 .
Tue, 16 Nov 2021 16:38:37 +0100 heptapod-ci: re-introduce Windows CI stable
Raphaël Gomès <rgomes@octobus.net> [Tue, 16 Nov 2021 16:38:37 +0100] rev 48326
heptapod-ci: re-introduce Windows CI We have Windows runners for now, and we're trying to find more, so let's share the joy of flaky tests with everyone. Differential Revision: https://phab.mercurial-scm.org/D11765
Mon, 15 Nov 2021 19:53:01 -0800 cext: define S_IFLNK on Python 2.7 and Windows stable
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 15 Nov 2021 19:53:01 -0800] rev 48325
cext: define S_IFLNK on Python 2.7 and Windows Before this change, building on Python 2.7 on Windows fails due to S_IFLNK being undefined. This regression was introduced by a32a96079e2d / D11518. It worked on Python 3 because its pyport.h (which is included via Python.h) contains effectively the same code as added by this changeset. Differential Revision: https://phab.mercurial-scm.org/D11763
Mon, 15 Nov 2021 12:03:28 +0100 tests: dd status=noxfer is not portable (issue6523) stable
Thomas Klausner <wiz@gatalith.at> [Mon, 15 Nov 2021 12:03:28 +0100] rev 48324
tests: dd status=noxfer is not portable (issue6523) Differential Revision: https://phab.mercurial-scm.org/D11754
Mon, 15 Nov 2021 00:15:21 +0100 tests: use more portable mkdir -p instead of --parents (issue6591) stable
Thomas Klausner <wiz@gatalith.at> [Mon, 15 Nov 2021 00:15:21 +0100] rev 48323
tests: use more portable mkdir -p instead of --parents (issue6591) Differential Revision: https://phab.mercurial-scm.org/D11755
Mon, 15 Nov 2021 00:08:02 +0100 tests: fix test-censor by improving regexp (issue6585) stable
Thomas Klausner <wiz@gatalith.at> [Mon, 15 Nov 2021 00:08:02 +0100] rev 48322
tests: fix test-censor by improving regexp (issue6585) Differential Revision: https://phab.mercurial-scm.org/D11753
Wed, 10 Nov 2021 11:43:22 +0100 internals: typo pass on the dirstate-v2 help file stable
Raphaël Gomès <rgomes@octobus.net> [Wed, 10 Nov 2021 11:43:22 +0100] rev 48321
internals: typo pass on the dirstate-v2 help file Differential Revision: https://phab.mercurial-scm.org/D11747
Wed, 10 Nov 2021 11:42:13 +0100 dirstate-v2: fix confusion between requirement and format config variable stable
Raphaël Gomès <rgomes@octobus.net> [Wed, 10 Nov 2021 11:42:13 +0100] rev 48320
dirstate-v2: fix confusion between requirement and format config variable None of those outputs failed on the CI because dirstate-v2 is not fully tested yet. This also updates the documentation. Differential Revision: https://phab.mercurial-scm.org/D11746
Wed, 10 Nov 2021 10:58:13 +0100 internals: correct dirstate-v2 format variable in the documentation stable
Raphaël Gomès <rgomes@octobus.net> [Wed, 10 Nov 2021 10:58:13 +0100] rev 48319
internals: correct dirstate-v2 format variable in the documentation Differential Revision: https://phab.mercurial-scm.org/D11745
Wed, 10 Nov 2021 10:50:54 +0100 hghave: update dirstate-v2 format config option stable
Raphaël Gomès <rgomes@octobus.net> [Wed, 10 Nov 2021 10:50:54 +0100] rev 48318
hghave: update dirstate-v2 format config option It wasn't kept in sync with the new change in format name. Differential Revision: https://phab.mercurial-scm.org/D11744
Tue, 09 Nov 2021 22:06:40 +0530 Added signature for changeset a44bb185f6bd stable
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 09 Nov 2021 22:06:40 +0530] rev 48317
Added signature for changeset a44bb185f6bd
Tue, 09 Nov 2021 22:06:26 +0530 Added tag 6.0rc0 for changeset a44bb185f6bd stable
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 09 Nov 2021 22:06:26 +0530] rev 48316
Added tag 6.0rc0 for changeset a44bb185f6bd
Tue, 09 Nov 2021 21:56:04 +0530 merge with default stable 6.0rc0
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 09 Nov 2021 21:56:04 +0530] rev 48315
merge with default
Tue, 09 Nov 2021 02:19:43 +0100 tests: accept alternative privileged port allocation failure stable
pacien <pacien.trangirard@pacien.net> [Tue, 09 Nov 2021 02:19:43 +0100] rev 48314
tests: accept alternative privileged port allocation failure This registers an additional failure message on failed privileged port allocation, equally funcionally valid but previously not handled and causing the test to fail when run in the NixOS sandbox. Differential Revision: https://phab.mercurial-scm.org/D11741
Tue, 09 Nov 2021 02:16:43 +0100 tests: allow the true command to be provided by coreutils stable
pacien <pacien.trangirard@pacien.net> [Tue, 09 Nov 2021 02:16:43 +0100] rev 48313
tests: allow the true command to be provided by coreutils The `true` command is sometimes provided as a symbolic link to the `coreutils` single binary. This is the case on NixOS, on which the test was failing because the symbolic link fully resolves to the latter name, equally valid but not previously accepted by the test's golden output. Differential Revision: https://phab.mercurial-scm.org/D11740
Tue, 09 Nov 2021 02:08:18 +0100 tests: add guard check for suid support stable
pacien <pacien.trangirard@pacien.net> [Tue, 09 Nov 2021 02:08:18 +0100] rev 48312
tests: add guard check for suid support This adds a check for setuid and setgid support and guards a part of a test requiring this particular filesystem feature. Such feature is notably missing in the Nix/NixOS build sandbox and was causing the whole test to fail for the mercurial package. Differential Revision: https://phab.mercurial-scm.org/D11739
Tue, 26 Oct 2021 19:47:30 +0100 rhg: more efficient `HgPath::join`
Arseniy Alekseyev <aalekseyev@janestreet.com> [Tue, 26 Oct 2021 19:47:30 +0100] rev 48311
rhg: more efficient `HgPath::join` This commit makes `HgPath::join` slightly more efficient by avoiding one copy. It also avoids a particularly inefficient (quadratic) use of `HgPath::join` by using a new mutating function `HgPathBuf::push` instead. The name for `HgPathBuf::push` is chosen by analogy to `PathBuf::push`. Differential Revision: https://phab.mercurial-scm.org/D11721
Tue, 09 Nov 2021 15:25:38 +0100 relnotes: update 6.0 with the last changes for the release
Raphaël Gomès <rgomes@octobus.net> [Tue, 09 Nov 2021 15:25:38 +0100] rev 48310
relnotes: update 6.0 with the last changes for the release Differential Revision: https://phab.mercurial-scm.org/D11742
Tue, 09 Nov 2021 15:43:29 +0100 rhg: Fix `rhg status` file content comparison
Simon Sapin <simon.sapin@octobus.net> [Tue, 09 Nov 2021 15:43:29 +0100] rev 48309
rhg: Fix `rhg status` file content comparison This is only used when a file’s metadata make its status ambiguous, which depends on timing of previous command executions. Differential Revision: https://phab.mercurial-scm.org/D11743
Wed, 27 Oct 2021 19:37:46 +0100 rhg: make it possible to opt out of `rhg cat`
Arseniy Alekseyev <aalekseyev@janestreet.com> [Wed, 27 Oct 2021 19:37:46 +0100] rev 48308
rhg: make it possible to opt out of `rhg cat` The reason an opt-out is needed is that there are still behavior differences between `rhg cat` and `hg cat`: - it does not interpret relative paths correctly - it does not interpret patterns correctly, e.g. 're:foobar$' would be interpreted as a verbatim filename - it does not implement the correct semantics of relpath matcher: if given a directory, `hg` concatenates all files in this directory, while `rhg` simply complains Differential Revision: https://phab.mercurial-scm.org/D11723
Tue, 09 Nov 2021 02:00:25 +0100 tests: run the whole hg-core/path_auditor test in a clean temp dir stable
pacien <pacien.trangirard@pacien.net> [Tue, 09 Nov 2021 02:00:25 +0100] rev 48307
tests: run the whole hg-core/path_auditor test in a clean temp dir This makes the whole test happen in a clean temporary directory in `$TMPDIR/$random`, and simplifies the test a bit by eliminating unnecessarily dynamic path elements computations. Before this patch, the first part of the test was happening in `/tmp` itself. This allowed coincidentally named files placed in that directory to impact the outcome of the test. Additionally, this made the second part of the test fail on systems on which `$TMPDIR != /tmp`, because the inspected directory was different from the one in which the mock files were being written. This fully fixes the issue only partially solved in db2bc9e667a1. Differential Revision: https://phab.mercurial-scm.org/D11738
Wed, 20 Oct 2021 10:25:51 +0200 fsmonitor: fix traceback after removal of nonnormalset (issue6600)
Raphaël Gomès <rgomes@octobus.net> [Wed, 20 Oct 2021 10:25:51 +0200] rev 48306
fsmonitor: fix traceback after removal of nonnormalset (issue6600) This basically does the same thing it used to do, but in the only place it's needed. Differential Revision: https://phab.mercurial-scm.org/D11707
Wed, 20 Oct 2021 10:26:39 +0200 fsmonitor: fix traceback about bytes and str incompatibility
Raphaël Gomès <rgomes@octobus.net> [Wed, 20 Oct 2021 10:26:39 +0200] rev 48305
fsmonitor: fix traceback about bytes and str incompatibility This didn't work anymore in Python 3, switching to a `repr` based reporting does Differential Revision: https://phab.mercurial-scm.org/D11708
Wed, 27 Oct 2021 15:18:52 +0200 backout: backed out changeset 67d14d4e036c
Raphaël Gomès <rgomes@octobus.net> [Wed, 27 Oct 2021 15:18:52 +0200] rev 48304
backout: backed out changeset 67d14d4e036c Same as the previous patch, this breaks the Windows CI for some yet unknown reason. Differential Revision: https://phab.mercurial-scm.org/D11727
Wed, 27 Oct 2021 12:07:58 +0200 backout: backed out changeset f78d8b8c46d7
Raphaël Gomès <rgomes@octobus.net> [Wed, 27 Oct 2021 12:07:58 +0200] rev 48303
backout: backed out changeset f78d8b8c46d7 This and the following backout exist because the original patches break the Windows CI for some yet unknown reason. Differential Revision: https://phab.mercurial-scm.org/D11726
Thu, 04 Nov 2021 12:35:05 +0100 relnotes: clear next release notes
Raphaël Gomès <rgomes@octobus.net> [Thu, 04 Nov 2021 12:35:05 +0100] rev 48302
relnotes: clear next release notes Differential Revision: https://phab.mercurial-scm.org/D11737
Thu, 04 Nov 2021 12:34:51 +0100 relnotes: add 6.0 release notes
Raphaël Gomès <rgomes@octobus.net> [Thu, 04 Nov 2021 12:34:51 +0100] rev 48301
relnotes: add 6.0 release notes Differential Revision: https://phab.mercurial-scm.org/D11736
Thu, 04 Nov 2021 09:55:37 +0100 relnotes: fix wrong command name in 5.9 relnotes stable
Raphaël Gomès <rgomes@octobus.net> [Thu, 04 Nov 2021 09:55:37 +0100] rev 48300
relnotes: fix wrong command name in 5.9 relnotes Differential Revision: https://phab.mercurial-scm.org/D11735
Wed, 03 Nov 2021 14:11:11 -0700 pyoxidizer: use in-memory resources on non-Windows platforms
Kyle Lippincott <spectral@google.com> [Wed, 03 Nov 2021 14:11:11 -0700] rev 48299
pyoxidizer: use in-memory resources on non-Windows platforms In-memory resources were disabled for macOS in 7bc1beed, and for all platforms in c900d962. Unfortunately this made it so that we were no longer producing standalone binaries on these platforms, and would have to ship the .py and .pyc files alongside the pyoxidized binary. These changes are no longer necessary after f6b04591, which disabled pep517 and solved the issue we were encountering. Differential Revision: https://phab.mercurial-scm.org/D11734
Wed, 03 Nov 2021 12:35:57 +0100 compat: don't rely on cpython-specific builtins manipulation
Raphaël Gomès <rgomes@octobus.net> [Wed, 03 Nov 2021 12:35:57 +0100] rev 48298
compat: don't rely on cpython-specific builtins manipulation Pierre Augier signaled on the mailing list that this fails on Pypy and pointed out the correct solution. Differential Revision: https://phab.mercurial-scm.org/D11732
Wed, 03 Nov 2021 17:06:01 +0100 rust-format: update rustfmt version
Raphaël Gomès <rgomes@octobus.net> [Wed, 03 Nov 2021 17:06:01 +0100] rev 48297
rust-format: update rustfmt version This hasn't been updated in a while, and since we're updating the MSRV to 1.48.0, we might as well do this. Differential Revision: https://phab.mercurial-scm.org/D11733
Wed, 25 Aug 2021 17:53:19 +0200 rust: update the minimum version of Rust
Raphaël Gomès <rgomes@octobus.net> [Wed, 25 Aug 2021 17:53:19 +0200] rev 48296
rust: update the minimum version of Rust Debian Bullseye has just been released, and it carries `rustc 1.48.0`. This actually implies a regression that we can't really do anything about in `rhg`. See https://github.com/rust-lang/rust/issues/88825. In short, closed (or bad) standard file descriptors are reopened silently with no way of telling by the Rust runtime before `main` is executed. This means that closed fds are not forwarded to the subprocess we run in case of fallback. This is a bit sad, but probably not something worth worrying too much about. Differential Revision: https://phab.mercurial-scm.org/D11341
Wed, 20 Oct 2021 00:57:02 +0200 dirstate-v2: freeze the on-disk format
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 20 Oct 2021 00:57:02 +0200] rev 48295
dirstate-v2: freeze the on-disk format It seems the format as reached a good balance. With a core of new capabilities that motivated it initially and enough new feature and room for future improvement to be a clear progress we can set a milestone for. Having the format frozen will help the feature to get real life testing, outside of the test suite. The feature itself stay experimental but the config gains a new name to avoid people enable non-frozen version by default. If too many bugs are reported during the RC we might move the format back to experimental and drop its support in future version (in favor of a new one) Differential Revision: https://phab.mercurial-scm.org/D11709
Mon, 01 Nov 2021 14:59:07 -0400 merge: with stable
Augie Fackler <augie@google.com> [Mon, 01 Nov 2021 14:59:07 -0400] rev 48294
merge: with stable
Fri, 22 Oct 2021 09:45:35 +0200 windows: use raw string in test log paths
Raphaël Gomès <rgomes@octobus.net> [Fri, 22 Oct 2021 09:45:35 +0200] rev 48293
windows: use raw string in test log paths Otherwise the backslashes will work as escapes on Windows and break everything. Differential Revision: https://phab.mercurial-scm.org/D11725
Fri, 29 Oct 2021 14:40:46 +0200 pull: make the new argument a keyword argument
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 29 Oct 2021 14:40:46 +0200] rev 48292
pull: make the new argument a keyword argument As per feedback from Dan Villiom Podlaski Christiansen in https://phab.mercurial-scm.org/D11674#179866 Differential Revision: https://phab.mercurial-scm.org/D11730
Thu, 28 Oct 2021 17:44:58 +0200 dirstate: make sure that status does not overlook the fallback flags
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 28 Oct 2021 17:44:58 +0200] rev 48291
dirstate: make sure that status does not overlook the fallback flags Without this extra checks, file with fallback flags change as the only change would be overlooked. In the future we might store proper data in the dirstate and do less lookup. However, for now this will do to make sure that 6.0 is forward compatible with later version. Differential Revision: https://phab.mercurial-scm.org/D11729
Thu, 28 Oct 2021 17:26:03 +0200 dirstate: use a single closure for get_flags
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 28 Oct 2021 17:26:03 +0200] rev 48290
dirstate: use a single closure for get_flags The previous code was overlooking fallback when neither symlink not exec was supported. The number of "variants" is getting too high, so I am consolidating this in a single closure that should be easier to maintains. This also ensure that fallback flags are always taken into account. (they are not user code yet, but small experimentation shown that the feature was working as intended.) A a small side effect we need to check for symlink support more lazily and this show up in the test in a couple of places. Differential Revision: https://phab.mercurial-scm.org/D11728
Tue, 26 Oct 2021 10:23:14 -0400 merge: with stable
Augie Fackler <augie@google.com> [Tue, 26 Oct 2021 10:23:14 -0400] rev 48289
merge: with stable
Sat, 23 Oct 2021 17:13:57 -0400 typing: add more type hints to the errors module
Matt Harbison <matt_harbison@yahoo.com> [Sat, 23 Oct 2021 17:13:57 -0400] rev 48288
typing: add more type hints to the errors module These were found by looking for `Any` types in the generated `*.pyi` file after running the tests. There are some more complicated types that I'm not sure of, and am leaving untyped. I also can't figure out how to get `self.hint` to be anything other than `Any` in most classes. Differential Revision: https://phab.mercurial-scm.org/D11719
Sat, 23 Oct 2021 16:04:05 -0400 typing: add a few assertions to revlog.py to help pytype
Matt Harbison <matt_harbison@yahoo.com> [Sat, 23 Oct 2021 16:04:05 -0400] rev 48287
typing: add a few assertions to revlog.py to help pytype I've seen this before, but this was seen as potentially `None` with pytype 2021.10.18. Differential Revision: https://phab.mercurial-scm.org/D11718
Thu, 21 Oct 2021 09:22:06 +0200 dirstate: group return logic and clarify each function in flagfunc
Raphaël Gomès <rgomes@octobus.net> [Thu, 21 Oct 2021 09:22:06 +0200] rev 48286
dirstate: group return logic and clarify each function in flagfunc As suggested by spectral during review of my fix of the missing return, this makes it more obvious that all cases are covered and improves readability of the functions with new names and a small docstring. Differential Revision: https://phab.mercurial-scm.org/D11715
Wed, 20 Oct 2021 18:40:03 +0200 dirstate: add missing return on platforms without exec or symlink
Raphaël Gomès <rgomes@octobus.net> [Wed, 20 Oct 2021 18:40:03 +0200] rev 48285
dirstate: add missing return on platforms without exec or symlink Differential Revision: https://phab.mercurial-scm.org/D11713
Wed, 20 Oct 2021 18:25:49 +0200 parsers: don't ask about symlinks on platforms that don't support them
Raphaël Gomès <rgomes@octobus.net> [Wed, 20 Oct 2021 18:25:49 +0200] rev 48284
parsers: don't ask about symlinks on platforms that don't support them Otherwise the compiler gets quite sad. Differential Revision: https://phab.mercurial-scm.org/D11712
Wed, 20 Oct 2021 18:05:16 +0200 parsers: don't ask about the exec bit on platforms that don't have it
Raphaël Gomès <rgomes@octobus.net> [Wed, 20 Oct 2021 18:05:16 +0200] rev 48283
parsers: don't ask about the exec bit on platforms that don't have it Otherwise the compiler gets quite sad. Differential Revision: https://phab.mercurial-scm.org/D11711
Tue, 19 Oct 2021 18:06:07 -0700 tests: fix test-convert-git to work w/ "git pull" requiring strategy
Kyle Lippincott <spectral@google.com> [Tue, 19 Oct 2021 18:06:07 -0700] rev 48282
tests: fix test-convert-git to work w/ "git pull" requiring strategy A recent change to git (031e2f7ae195) made it an error to not specify a strategy (`--rebase`, `--no-rebase`, `--ff-only`), instead of just the warning it was previously. As far as I can tell, `--no-rebase` is the behavior we were getting before, and the only one that makes the test work. Differential Revision: https://phab.mercurial-scm.org/D11714
Thu, 21 Oct 2021 17:25:41 +0200 branching: merge stable into default
Raphaël Gomès <rgomes@octobus.net> [Thu, 21 Oct 2021 17:25:41 +0200] rev 48281
branching: merge stable into default
Thu, 21 Oct 2021 11:21:21 +0200 hg: remove reserved identifiers
David Demelier <markand@malikania.fr> [Thu, 21 Oct 2021 11:21:21 +0200] rev 48280
hg: remove reserved identifiers Per 7.1.3 paragraph, from C draft: All identifiers that begin with an underscore and either an uppercase letter or another underscore are always reserved for any use.
Mon, 18 Oct 2021 16:24:00 -0700 pyoxidizer: update README.md with several small fixes
Kyle Lippincott <spectral@google.com> [Mon, 18 Oct 2021 16:24:00 -0700] rev 48279
pyoxidizer: update README.md with several small fixes Currently, pyoxidizer.bzl does not mention the git commit that should be checked out, so these instructions are a bit difficult to follow right now (impossible, technically), so I removed the instruction to `git checkout <Git commit>` and the admonition to use a specific version of PyOxidizer. I don't even know if the project currently builds with the "0.7.0-pre" version that was previously recommended. As fallout from that change to not "pin" to a specific PyOxidizer, I had to update the Python version to use when running the tests. While here, I added a recommendation to use `--release`, as the primary reason for this project is performance, and it may have been leaving some on the table to not have that there. Differential Revision: https://phab.mercurial-scm.org/D11698
Mon, 18 Oct 2021 16:18:41 -0700 pyoxidizer: disable using in-memory resources
Kyle Lippincott <spectral@google.com> [Mon, 18 Oct 2021 16:18:41 -0700] rev 48278
pyoxidizer: disable using in-memory resources It's possible that the errors are due to using an incompatible version of PyOxidizer; unfortunately the README.md file in this directory says to fetch a copy of PyOxidizer matching the commit in this pyoxidizer.bzl file, and yet the pyoxidizer.bzl file does not actually have a commit mentioned in it. By disabling in-memory modules, this appears to work on all platforms using the current head version of PyOxidizer, so let's disable them for now. Sample error (during `pyoxidizer build`): ``` error[PYOXIDIZER_PYTHON_EXECUTABLE]: adding PythonExtensionModule<name=hgext.fsmonitor.pywatchman.bser> Caused by: extension module hgext.fsmonitor.pywatchman.bser cannot be loaded from memory but memory loading required --> ./pyoxidizer.bzl:140:5 | 140 | exe.add_python_resources(exe.pip_install(["--verbose", ROOT])) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ add_python_resources() error: adding PythonExtensionModule<name=hgext.fsmonitor.pywatchman.bser> Caused by: extension module hgext.fsmonitor.pywatchman.bser cannot be loaded from memory but memory loading required ``` Differential Revision: https://phab.mercurial-scm.org/D11697
Wed, 20 Oct 2021 00:21:41 +0200 dirstate-v2: reorder flag to group related one together
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 20 Oct 2021 00:21:41 +0200] rev 48277
dirstate-v2: reorder flag to group related one together Since the format is not frozen yet, it seems like the right moment to do it. Differential Revision: https://phab.mercurial-scm.org/D11704
Tue, 19 Oct 2021 20:14:17 +0200 dirstate-v2: read the fallback value in Rust
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Oct 2021 20:14:17 +0200] rev 48276
dirstate-v2: read the fallback value in Rust This was overlooked in a previous commit. Differential Revision: https://phab.mercurial-scm.org/D11695
Tue, 19 Oct 2021 18:18:05 +0200 dirstate-v2: adjust the meaning of directory flags
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Oct 2021 18:18:05 +0200] rev 48275
dirstate-v2: adjust the meaning of directory flags Tracking directory "explicitly" give use the opportunity to distinct between entry that are untracked because they are part of the directory structure and entry that are ignored/unknown files on the files system. The help is adjusted to the new semantic and the code now comply to it for both read and write. Differential Revision: https://phab.mercurial-scm.org/D11694
Wed, 13 Oct 2021 15:58:14 +0200 dirstate-v2: actually use sub-second mtime precision
Simon Sapin <simon.sapin@octobus.net> [Wed, 13 Oct 2021 15:58:14 +0200] rev 48274
dirstate-v2: actually use sub-second mtime precision Instead of zero, set the nanoseconds field to its correct value whenever possible and preserve it across serialization+parsing. Differential Revision: https://phab.mercurial-scm.org/D11702
Thu, 14 Oct 2021 13:54:39 +0200 dirstate: ignore sub-second component when either is zero in mtime
Simon Sapin <simon.sapin@octobus.net> [Thu, 14 Oct 2021 13:54:39 +0200] rev 48273
dirstate: ignore sub-second component when either is zero in mtime When comparing mtimes for equality. Some APIs simply return zero when more precision is not available. When comparing values from different sources, if only one is truncated in that way, doing a simple comparison would cause many false negatives. Differential Revision: https://phab.mercurial-scm.org/D11701
Tue, 19 Oct 2021 22:04:14 +0200 dirstate-v2: add a new MTIME_SECOND_AMBIGUOUS flags
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Oct 2021 22:04:14 +0200] rev 48272
dirstate-v2: add a new MTIME_SECOND_AMBIGUOUS flags This flag will let us use more `mtime` value in the future. For now we have a minimal handling of the flag at read time, but we will never put ourself in a situation where we will needs to writes it. See the flag documentation for details. Differential Revision: https://phab.mercurial-scm.org/D11700
Mon, 18 Oct 2021 11:23:07 +0200 dirstate: store mtimes with nanosecond precision in memory
Simon Sapin <simon.sapin@octobus.net> [Mon, 18 Oct 2021 11:23:07 +0200] rev 48271
dirstate: store mtimes with nanosecond precision in memory Keep integer seconds since the Unix epoch, together with integer nanoseconds in the `0 <= n < 1e9` range. For now, nanoseconds are still always zero. This commit is about data structure changes. Differential Revision: https://phab.mercurial-scm.org/D11684
Tue, 19 Oct 2021 21:03:13 +0200 rust: remove now-unused DirstateEntry::clear_ambiguous_mtime method
Simon Sapin <simon.sapin@octobus.net> [Tue, 19 Oct 2021 21:03:13 +0200] rev 48270
rust: remove now-unused DirstateEntry::clear_ambiguous_mtime method Differential Revision: https://phab.mercurial-scm.org/D11696
Tue, 19 Oct 2021 22:14:48 +0200 dirstate: align Rust function name to `need_delay`
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Oct 2021 22:14:48 +0200] rev 48269
dirstate: align Rust function name to `need_delay` The rest of the code use this name. It is not a great name, but it is better to stay consistent. Differential Revision: https://phab.mercurial-scm.org/D11699
Mon, 18 Oct 2021 19:02:40 +0200 dirstate: rename a `very_likely_equal` method to `likely_equal`
Simon Sapin <simon.sapin@octobus.net> [Mon, 18 Oct 2021 19:02:40 +0200] rev 48268
dirstate: rename a `very_likely_equal` method to `likely_equal` No need to oversell it. Differential Revision: https://phab.mercurial-scm.org/D11691
Tue, 19 Oct 2021 19:03:39 +0200 backout: backed out changeset 2f2107c01dee
Raphaël Gomès <rgomes@octobus.net> [Tue, 19 Oct 2021 19:03:39 +0200] rev 48267
backout: backed out changeset 2f2107c01dee After discussion on the original phab patch, we've decided to wait until Python 2 support is dropped to do this since the behavior differs for relatively obscure reasons. Differential Revision: https://phab.mercurial-scm.org/D11692
Tue, 19 Oct 2021 19:04:11 +0200 backout: backed out changeset 6edc8800dbc3
Raphaël Gomès <rgomes@octobus.net> [Tue, 19 Oct 2021 19:04:11 +0200] rev 48266
backout: backed out changeset 6edc8800dbc3 Same as the previous changeset. Differential Revision: https://phab.mercurial-scm.org/D11693
Mon, 18 Oct 2021 10:56:54 +0200 dirstate-v2: preserve the fallback values on disk
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 18 Oct 2021 10:56:54 +0200] rev 48265
dirstate-v2: preserve the fallback values on disk When the fallback values are set, they are now read and written to disk. See format documentation for details. Differential Revision: https://phab.mercurial-scm.org/D11688
Mon, 18 Oct 2021 20:02:05 +0200 dirstate: make DirstateItem constructor accept fallback value
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 18 Oct 2021 20:02:05 +0200] rev 48264
dirstate: make DirstateItem constructor accept fallback value This could arguably goes in the previous changeset, but I wanted to keep that previous changeset small to focus more on the user code and the documentation. Differential Revision: https://phab.mercurial-scm.org/D11687
Mon, 18 Oct 2021 20:02:15 +0200 dirstate: add a concept of "fallback" flags to dirstate item
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 18 Oct 2021 20:02:15 +0200] rev 48263
dirstate: add a concept of "fallback" flags to dirstate item The concept is defined and "used" by the flag code, but it is neither persisted nor set anywhere yet. We currently focus on defining the semantic of the attribute. More to come in the next changesets Check the inline documentation for details. Differential Revision: https://phab.mercurial-scm.org/D11686
Fri, 15 Oct 2021 16:33:19 +0200 dirstate-v2: adds two flag to track the presence of some unrecorded files
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 15 Oct 2021 16:33:19 +0200] rev 48262
dirstate-v2: adds two flag to track the presence of some unrecorded files Right now, we don't record ignored or unknown files in the dirstate. However the structure would allow it. So we introduce two flags that can be used to clarify whether all unknown/ignored children are recorded or not. This will allow for more information to be stored in the future if this end up being relevant. Differential Revision: https://phab.mercurial-scm.org/D11682
Fri, 15 Oct 2021 16:12:00 +0200 dirstate-v2: adds a flag to mark a file as modified
Simon Sapin <simon.sapin@octobus.net> [Fri, 15 Oct 2021 16:12:00 +0200] rev 48261
dirstate-v2: adds a flag to mark a file as modified Right now, a files with a file system state that requires a lookup (same size, different mtime) will requires a lookup. If the result of that lookup is a modified files, it will remains ambiguous, requiring a lookup on the next status run too. To fix this, we introduce a dedicated flag in the new format. Such flag will allow to record such file as "known modified" avoiding an extra lookup later. As None of the associate code currently exist in the status code, we do the minimal implementation: if we read a dirstate entry with this flag set, we make it as "ambiguous" so that the next status code has to look it up. The same as it would have to without this flag existing anyway. Differential Revision: https://phab.mercurial-scm.org/D11681
Tue, 19 Oct 2021 10:52:13 +0100 rhg: simplify split_metadata
Arseniy Alekseyev <aalekseyev@janestreet.com> [Tue, 19 Oct 2021 10:52:13 +0100] rev 48260
rhg: simplify split_metadata It turns out that it's possible to implement `FilelogEntry.into_data` on top of `split`, as proposed by @spectral. Differential Revision: https://phab.mercurial-scm.org/D11689
Fri, 27 Aug 2021 14:40:09 +0200 pyoxidizer: default to a meaningless release instead of hardcoding 5.8
Raphaël Gomès <rgomes@octobus.net> [Fri, 27 Aug 2021 14:40:09 +0200] rev 48259
pyoxidizer: default to a meaningless release instead of hardcoding 5.8 This way we don't advertise the wrong version, or if we do it's really obvious. To be honest, I'm not even sure that `VERSION` should be optional, but I also have never used the packaging tools so far, this is simply something I saw. Differential Revision: https://phab.mercurial-scm.org/D11360
Thu, 14 Oct 2021 10:58:39 -0700 copy: recommend `--at-rev .` if target was added in parent commit
Martin von Zweigbergk <martinvonz@google.com> [Thu, 14 Oct 2021 10:58:39 -0700] rev 48258
copy: recommend `--at-rev .` if target was added in parent commit If the target file was added in the working copy parent, it's much more likely that the user meant to use `--at-rev .` (to record the copy/rename in the that commit) than `--force` (to replace the just-added file by another file). Differential Revision: https://phab.mercurial-scm.org/D11667
Mon, 18 Oct 2021 10:14:44 +0200 fix: appease pyflakes and make unused variables more obvious
Raphaël Gomès <rgomes@octobus.net> [Mon, 18 Oct 2021 10:14:44 +0200] rev 48257
fix: appease pyflakes and make unused variables more obvious pyflakes is complaining that `baserevs` is redefined by the list comprehension, and while this lint can be valuable, it's not actually a problem here. Differential Revision: https://phab.mercurial-scm.org/D11683
Fri, 15 Oct 2021 04:41:24 +0200 bookmarks: add a `ignore` variant of the bookmark mode
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 15 Oct 2021 04:41:24 +0200] rev 48256
bookmarks: add a `ignore` variant of the bookmark mode This new mode allow to disable bookmark exchange with some path (or all path). Differential Revision: https://phab.mercurial-scm.org/D11677
Fri, 15 Oct 2021 04:25:58 +0200 bookmarks: add support for `mirror` mode to `incoming`
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 15 Oct 2021 04:25:58 +0200] rev 48255
bookmarks: add support for `mirror` mode to `incoming` This is more consistent. Differential Revision: https://phab.mercurial-scm.org/D11676
(0) -30000 -10000 -3000 -1000 -300 -100 -96 +96 +100 +300 +1000 +3000 tip