Mon, 26 Jun 2023 14:54:00 +0200 tests: use grep -F instead of obsolescent fgrep stable
Mads Kiilerich <mads@kiilerich.com> [Mon, 26 Jun 2023 14:54:00 +0200] rev 50723
tests: use grep -F instead of obsolescent fgrep Testing on Fedora 38 failed with: fgrep: warning: fgrep is obsolescent; using grep -F The warning comes from https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a9515624709865d480e3142fd959bccd1c9372d1 . For further anecdotal evidence of the change, see https://www.phoronix.com/news/GNU-Grep-3.8-Stop-egrep-fgrep . grep -F is POSIX, but there is a risk that it doesn't work the same on all platforms - especially older Unix versions. It should however always be possible to put a GNU grep in $PATH before running the tests.
Mon, 26 Jun 2023 14:34:58 +0200 tests: use grep -E instead of obsolescent egrep stable
Mads Kiilerich <mads@kiilerich.com> [Mon, 26 Jun 2023 14:34:58 +0200] rev 50722
tests: use grep -E instead of obsolescent egrep Testing on Fedora 38 failed with: egrep: warning: egrep is obsolescent; using grep -E The warning comes from https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a9515624709865d480e3142fd959bccd1c9372d1 . For further anecdotal evidence of the change, see https://www.phoronix.com/news/GNU-Grep-3.8-Stop-egrep-fgrep . This reverses the code check that goes back to e7d3b509af8b. grep -E is POSIX, but there is a risk that it doesn't work the same on all platforms - especially older Unix versions. It should however always be possible to put a GNU grep in $PATH before running the tests.
Mon, 26 Jun 2023 11:15:30 +0100 dirstate: avoid leaking disk space in `hg debugrebuilddirstate` stable
Arseniy Alekseyev <aalekseyev@janestreet.com> [Mon, 26 Jun 2023 11:15:30 +0100] rev 50721
dirstate: avoid leaking disk space in `hg debugrebuilddirstate` Before this MR running `hg debugrebuilddirstate` simply grows the dirstate without bound, never shrinking it, because the unused bytes counter stays low, even though the entirety of the file becomes unused.
Mon, 26 Jun 2023 11:21:43 +0100 dirstate-v2: actually fix the dirstate-v2 upgrade race stable
Arseniy Alekseyev <aalekseyev@janestreet.com> [Mon, 26 Jun 2023 11:21:43 +0100] rev 50720
dirstate-v2: actually fix the dirstate-v2 upgrade race It looks like the previous fix for the dirstate-v2 upgrade race didn't work. The problem is that it only recovers in case the size of the v1 `dirstate` file is smaller than the `v2` one, whereas in real life it's always larger. This commit changes the test to be more realistic, which reveals the crash, and changes the code to fix the crash.
Thu, 22 Jun 2023 14:24:45 +0200 Added signature for changeset bb42988c7e15 stable
Raphaël Gomès <rgomes@octobus.net> [Thu, 22 Jun 2023 14:24:45 +0200] rev 50719
Added signature for changeset bb42988c7e15
Thu, 22 Jun 2023 14:24:21 +0200 Added tag 6.5rc0 for changeset bb42988c7e15 stable
Raphaël Gomès <rgomes@octobus.net> [Thu, 22 Jun 2023 14:24:21 +0200] rev 50718
Added tag 6.5rc0 for changeset bb42988c7e15
Thu, 22 Jun 2023 12:36:49 +0200 relnotes: add 6.5rc0 stable 6.5rc0
Raphaël Gomès <rgomes@octobus.net> [Thu, 22 Jun 2023 12:36:49 +0200] rev 50717
relnotes: add 6.5rc0
Thu, 22 Jun 2023 11:36:37 +0200 branching: merge default into stable for 6.5rc0 stable
Raphaël Gomès <rgomes@octobus.net> [Thu, 22 Jun 2023 11:36:37 +0200] rev 50716
branching: merge default into stable for 6.5rc0
Thu, 22 Jun 2023 11:28:17 +0200 branching: merge stable into default
Raphaël Gomès <rgomes@octobus.net> [Thu, 22 Jun 2023 11:28:17 +0200] rev 50715
branching: merge stable into default
Wed, 21 Jun 2023 14:00:50 -0400 narrow: indicated the default of 'Yes' when confirming auto-remove-includes
Jason R. Coombs <jaraco@jaraco.com> [Wed, 21 Jun 2023 14:00:50 -0400] rev 50714
narrow: indicated the default of 'Yes' when confirming auto-remove-includes
Wed, 21 Jun 2023 15:55:07 +0200 clone-bundles: check we generate a valid specification
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Jun 2023 15:55:07 +0200] rev 50713
clone-bundles: check we generate a valid specification The short bundle-spec are ambiguous and should be expanded to a full one before clone bundle can use it. We fix the issue and add a test actually using the generated manifest for a clone bundle operation.
Wed, 21 Jun 2023 15:53:33 +0200 bundle-spec: add an official method to format a spec into a string
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Jun 2023 15:53:33 +0200] rev 50712
bundle-spec: add an official method to format a spec into a string This will be useful for automatic-clonebundles.
Mon, 19 Jun 2023 18:15:35 +0200 clonebundles: adds a auto-generate.serve-inline option
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Jun 2023 18:15:35 +0200] rev 50711
clonebundles: adds a auto-generate.serve-inline option This new option disable the "external" serving of auto generated bundle in favor of using the new "inline bundle" feature that allow serving such bundle through the mercurial protocol. This is a less efficient, but very easy to setup way to start using clone bundle.
Mon, 19 Jun 2023 18:15:27 +0200 clone-bundle: only add the REQUIRESNI bit for http(s)
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Jun 2023 18:15:27 +0200] rev 50710
clone-bundle: only add the REQUIRESNI bit for http(s) we don't needs it for `peer-bundle-cache://` for example
Tue, 23 May 2023 10:24:57 +0200 stream-clone: add a stream-v3 variant of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 23 May 2023 10:24:57 +0200] rev 50709
stream-clone: add a stream-v3 variant of test-persistent-nodemap.t This will be useful to track and validate future changes to the stream-v3 protocol.
Tue, 23 May 2023 10:18:01 +0200 stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 23 May 2023 10:18:01 +0200] rev 50708
stream-clone: split the stream part out of test-persistent-nodemap.t We want to test multiple variants, so let's make it an independent test. Small adaptations and simplifications are needed in the test output as the tested repository is now shorter.
Tue, 23 May 2023 03:09:46 +0200 stream-clone: explicitly split debug test output for application per version
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 23 May 2023 03:09:46 +0200] rev 50707
stream-clone: explicitly split debug test output for application per version Altering the format may introduce significant changes in output and in order. It is going to be simpler to deal with explicitly different blocks for the output.
Thu, 01 Jun 2023 17:39:22 +0100 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com> [Thu, 01 Jun 2023 17:39:22 +0100] rev 50706
stream-clone: add a v3 version of the protocol This new version is less rigid regarding the extract number of files and number of bytes to be actually transfered, it also lays the groundwork for other improvements. The format stays experimental, but this is an interesting base to build upon.
Thu, 01 Jun 2023 18:20:28 +0100 stream-clone: fix the help for an argument of perf::stream-locked-section
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2023 18:20:28 +0100] rev 50705
stream-clone: fix the help for an argument of perf::stream-locked-section The help for `--stream-version` had a typo and missed a value.
Tue, 20 Jun 2023 02:35:30 +0200 infinitepush: aggressively deprecated infinite push
pierre-yves.david@ens-lyon.org [Tue, 20 Jun 2023 02:35:30 +0200] rev 50704
infinitepush: aggressively deprecated infinite push We add a large warning and an explicit abort. Both can be disable through config, but neither are explicitly documented. If any user exists I really want them to get in touch with the community.
Mon, 19 Jun 2023 16:13:16 +0200 clone-bundle: double check that inline clone bundle does not break local case
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Jun 2023 16:13:16 +0200] rev 50703
clone-bundle: double check that inline clone bundle does not break local case Since there is a large NotImplementedError in the code, I prefer we have a double check here.
Mon, 19 Jun 2023 15:48:03 +0200 clone-bundle: drop the now unused `inlineclonebundles` capabilities
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Jun 2023 15:48:03 +0200] rev 50702
clone-bundle: drop the now unused `inlineclonebundles` capabilities We no longer us the capabilities as a side way to passe argument to the `clonebundle commands`
Mon, 19 Jun 2023 15:49:35 +0200 clonebundles: introduce a new write protocol command
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Jun 2023 15:49:35 +0200] rev 50701
clonebundles: introduce a new write protocol command The old wire command does not take argument so we need a new command. We make that new command take argument to prepare it for the future (like narrow support).
Mon, 19 Jun 2023 11:28:45 +0200 clone-bundles: reorder some test section and add titles
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Jun 2023 11:28:45 +0200] rev 50700
clone-bundles: reorder some test section and add titles This make things clearer around the inline clone bundle tests.
Mon, 19 Jun 2023 11:04:27 +0200 clone-bundle: rename the methods and wireprotole command
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Jun 2023 11:04:27 +0200] rev 50699
clone-bundle: rename the methods and wireprotole command The current naming is very clone centric, since then, the url scheme was moved to a more generic wording to make room for other use-cases (e.g. pull bundles). We apply the same logic to the internal API and, very important prior to the release, to the wire protocol command.
Sun, 18 Jun 2023 00:04:53 +0200 delta-find: remove dead code intended to deal with forced delta reuse
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 18 Jun 2023 00:04:53 +0200] rev 50698
delta-find: remove dead code intended to deal with forced delta reuse Since the case was dealt with sooner (see XXX), we no longer need to deal with it in this part of the code.
Thu, 20 Apr 2023 15:56:58 -0400 library: incorporate demandimport into runpy invocation
Jason R. Coombs <jaraco@jaraco.com> [Thu, 20 Apr 2023 15:56:58 -0400] rev 50697
library: incorporate demandimport into runpy invocation
Mon, 17 Apr 2023 09:38:52 -0400 library: enable runpy invocation on mercurial package
Jason R. Coombs <jaraco@jaraco.com> [Mon, 17 Apr 2023 09:38:52 -0400] rev 50696
library: enable runpy invocation on mercurial package
Mon, 12 Jun 2023 16:51:08 +0200 match: add `filepath:` pattern to match an exact filepath relative to the root
Raphaël Gomès <rgomes@octobus.net> [Mon, 12 Jun 2023 16:51:08 +0200] rev 50695
match: add `filepath:` pattern to match an exact filepath relative to the root It's useful in certain automated workflows to make sure we recurse in directories whose name conflicts with files in other revisions. In addition it makes it possible to avoid building a potentially costly regex, improving performance when the set of files to match explicitly is large. The benchmark below are run in the following configuration : # data-env-vars.name = mozilla-central-2018-08-01-zstd-sparse-revlog # benchmark.name = files # benchmark.variants.rev = tip # benchmark.variants.files = all-list-filepath-sorted # bin-env-vars.hg.flavor = no-rust It also includes timings using the re2 engine (through the `google-re2` module) to show how much can be saved by just using a better regexp engine. Pattern time (seconds) time using re2 ----------------------------------------------------------- just "." 0.4 0.4 list of "filepath:…" 1.3 1.3 list of "path:…" 25.7 3.9 list of patterns 29.7 10.4 As you can see, Without re2, using "filepath:" instead of "path:" is a huge win. With re2, it is still about three times faster to not have to build the regex.
Sun, 18 Jun 2023 00:09:39 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 18 Jun 2023 00:09:39 +0200] rev 50694
branching: merge with stable
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 tip