Anton Shestakov <av6@dwimlabs.net> [Mon, 31 Jan 2022 18:05:36 +0300] rev 48709
obsolete: don't import from .node twice
See d55b71393907.
Differential Revision: https://phab.mercurial-scm.org/D12121
Anton Shestakov <av6@dwimlabs.net> [Mon, 31 Jan 2022 18:04:11 +0300] rev 48708
dagop: don't import nullrev from .node twice
See 59fa3890d40a.
Differential Revision: https://phab.mercurial-scm.org/D12120
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 27 Jan 2022 22:24:11 +0100] rev 48707
stream-clone: allow to change persistent-nodemap format during stream clone
Persistent nodemap affect the store format. However it is fairly isolated and
fast to generate locally. So not making it a fixed part of the stream clone is
useful.
This allow clients without persistent-nodemap support (default for client
without Rust enabled, or simply older client). So it make it possible to enable
persistent nodemap on client, where it can provide a massive boost. without too
much consequence.
To do so, we stop using it in the advertisement requirements for streaming and
let the client add/remove the necessary file depending of its configuration.
We still send the files as it seems like a small save to not regenerate them.
In addition, the way we match them will overlap with the changelog-v2/revlog-v2
so we can't simply skip the associated patterns.
Differential Revision: https://phab.mercurial-scm.org/D12096
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 27 Jan 2022 15:22:09 +0100] rev 48706
stream-clone: add 5000 changesets to test-clone-stream-format
This make sure the changelog is not inlined. We needs this to test coming
behavior change around persistent-nodemap.
Differential Revision: https://phab.mercurial-scm.org/D12095
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 27 Jan 2022 15:22:04 +0100] rev 48705
debugbuilddag: add a flag to allow running it from a non-empty repository
Allow that by default seems "dangerous", but having a flag to make it possible
will be useful to help building some repository incrementally. The newly introduced support is basic, but already useful.
Differential Revision: https://phab.mercurial-scm.org/D12094
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 27 Jan 2022 17:04:40 +0100] rev 48704
persistent-nodemap: properly delete all nodemap files on downgrade
Previously, we were only deleting the docket fileā¦
Differential Revision: https://phab.mercurial-scm.org/D12093
Anton Shestakov <av6@dwimlabs.net> [Sat, 15 Jan 2022 09:08:41 +0300] rev 48703
destutil: if wdp is obsolete, update to the closest non-obsolete ancestor
As the original comments suggest, using prune as a model here was an existing
idea, and now this patch implements it.
I think it would be even better to do what solveobswdp() from evolve does (in
short, it allows to update to a successor of the closest ancestor even if that
ancestor is obsolete), but that is outside of this series' scope.
Differential Revision: https://phab.mercurial-scm.org/D12099