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
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
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
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
Augie Fackler <augie@google.com> [Mon, 01 Nov 2021 14:59:07 -0400] rev 48294
merge: with stable
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
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
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
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
Kyle Lippincott <spectral@google.com> [Fri, 30 Apr 2021 16:00:40 -0700] rev 48289
tests: allow Google's internal builds of clang-format to be used
These builds do not actually include any Google-specific formatting changes; the
only reason they don't include the LLVM version number is due to a decision to
elide the version number from *all* LLVM/clang projects.
For most builds of clang-format, even "unofficial" ones, the LLVM version will
be displayed; example:
```
clang-format version 14.0.0 (https://github.com/llvm/llvm-project.git
1830ec94ac022ae0b6d6876fc2251e6b91e5931e)
```
The Google-internal build looks like this:
```
clang-format version google3-trunk (
1830ec94ac022ae0b6d6876fc2251e6b91e5931e)
```
Differential Revision: https://phab.mercurial-scm.org/D10538