Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 Oct 2023 06:02:33 +0200] rev 51086
revlog: create a iteration of a _InnerRevlog object within the revlog
The goal of this object is to isolate a sub-API that can be implemented by a
compiled object (e.g. Rust). So the boundary of this object will be arbitrary
depending of what can we easily implemented in the Compiled code.
For now, we start simple, and move the code that manage the IO objects in the
inner object. More will come in the coming changesets.
Note: the object definition could live in the different module to thin the
`revlog.py` file, however there are other better candidate for extraction first
and I have enought patch stacked on top of the this one for the split in this
patch not to be worth it. So I leave this to future me.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 Oct 2023 05:17:02 +0200] rev 51085
revlog: drop the unused `_chunkcache` attribute
Apparently, some time ago, the chunk cache moved in the randomaccessfile object.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 Oct 2023 04:54:22 +0200] rev 51084
revlog: drop the unused `_sidedatareadfp` method
It has no caller anywhere and is probably the remains of some older code.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 13 Oct 2023 16:11:04 +0200] rev 51083
revlog: also migrates `revlog.upperboundcomp` to ConfigClass
This was planned but overlooked when doing the rest of the migration.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 13 Oct 2023 16:03:26 +0200] rev 51082
revlog: small doc to the `files` method
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 11 Oct 2023 02:19:00 +0200] rev 51081
revlog: remove the `_indexfp` method
The method is only used two time and we want to move that code to a lower level
object. So we simply inline the method to simplify further refactoring.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 14 Oct 2023 03:24:13 +0200] rev 51080
revlog: avoid opening and closing the file for each cloned revision
The previous code was flushing files after each new revision, slowing things
down.
For exemple, with this change, the evolve repository can run
`hg debugupgraderepo --run --optimize re-delta-parent` in about 3.4s instead of
4.5 seconds.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 13 Oct 2023 23:21:46 +0200] rev 51079
censor: accept censored revision during upgrade
They can simply be passed by as censored.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 13 Oct 2023 22:40:10 +0200] rev 51078
censor: show that censored revision prevent repository upgrade
This is not great.
Arseniy Alekseyev <aalekseyev@janestreet.com> [Thu, 12 Oct 2023 17:41:06 +0100] rev 51077
stream-clone: fix a crash when a repo with an empty revlog is cloned
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Sep 2023 03:15:12 +0200] rev 51076
debug-delta-chain: print less data by default
This is faster and simpler to read.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Sep 2023 03:00:44 +0200] rev 51075
debugdeltachain: add a parameter to display all info
This will be useful with the next changeset that change the defaul output to display the minimum amount of information.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Sep 2023 02:20:49 +0200] rev 51074
debug-delta-chain: actually skip unrequested computation
Doing quick test on mozilla-unified show we can run up to 2× faster by skipping
some of these computation.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Sep 2023 01:53:03 +0200] rev 51073
debug-delta-chain: add options to control what we compute
Currently this mostly controls what we display, but actual computation saving
will come soon.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Sep 2023 01:24:10 +0200] rev 51072
debug-delta-chaing: add a parameter to select revision to look at
This allows for much faster runtime when we are interrested in some revisions only.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 18 Sep 2023 23:37:06 +0200] rev 51071
delta-chain: extract some debugdeltachain logic is object
Moving from a closure to an object's method will help us to extend the command
logic.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 18 Sep 2023 23:26:00 +0200] rev 51070
delta-chain: move the debugdeltachain command in revlogutils
There is a dedicated `mercurial.revlogutils.debug` module were this code fits
well.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 12 Oct 2023 09:04:12 +0200] rev 51069
dirstate: document the `changing_*` context manager
The methods that requires them have documentation, but the context themselves
had none. This is now fixed.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 10:47:46 +0200] rev 51068
revlog: deprecate the compatibility config property
Now that core is no longer use them, we can deprecated them.
Let us aim at removing them in the next version.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 12:03:02 +0200] rev 51067
revlog: remove legacy usage of `_lazydeltabase`
All core code is now getting the setting from the DeltaConfig object.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 11:36:55 +0200] rev 51066
revlog: remove legacy usage of `_lazydelta`
All core code is now getting the setting from the DeltaConfig object.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 11:36:34 +0200] rev 51065
revlog: remove legacy usage of `canonical_parent_order`
All core code is now getting the setting from the FeatureConfig object.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 11:36:23 +0200] rev 51064
revlog: remove legacy usage of `_compute_rank`
All core code is now getting the setting from the DeltaConfig object.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 11:33:33 +0200] rev 51063
revlog: remove legacy usage of `_srmingapsize`
All core code is now getting the setting from the DataConfig object.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 11:30:07 +0200] rev 51062
revlog: remove legacy usage of `_srdensitythreshold`
All core code is now getting the setting from the DataConfig object.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 11:29:19 +0200] rev 51061
revlog: remove legacy usage of `hassidedata`
All core code is now getting the setting from the FeatureConfig object.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 11:27:39 +0200] rev 51060
revlog: remove legacy usage of `_sparserevlog`
All core code is now getting the setting from the DeltaConfig object.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 11:24:37 +0200] rev 51059
revlog: remove legacy usage of `_withsparseread`
All core code is now getting the setting from the DeltaConfig object.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 11:16:07 +0200] rev 51058
revlog: remove legacy usage of `_maxdeltachainspan`
All core code is now getting the setting from the DeltaConfig object.
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 11:13:24 +0200] rev 51057
revlog: remove legacy usage of `_compengineopts`
All core code is now getting the setting from the FeatureConfig object.