- Oct 20, 2023
-
-
Pierre-Yves David authored
Theses assert shows we never call delay or divert if the revlog hold file handle on the revlog's file.
-
- Oct 25, 2023
-
-
Pierre-Yves David authored
The invalidation of data that belong to the inner object can and should be delegated to the inner object.
-
- Oct 24, 2023
-
-
Pierre-Yves David authored
I cannot find a case where this is actually useful, so lets triggering strip in the middle of uncommitted transaction.
-
- Oct 19, 2023
-
-
Pierre-Yves David authored
This is the second big piece of API we want to live on the inner object. With this the inner object have freedom it needs to implement things internally. (except for the delayed write feature of the changelog, that will be migrated in coming changesets)
-
Pierre-Yves David authored
Same object as rawtext, but for sidedata.
-
Pierre-Yves David authored
This is one of the current core goal of the inner object: having a "simple" API for some of the core revlog action, like getting a raw text, with the inner object able to do that part internally, on its own.
-
Pierre-Yves David authored
The goal for this inner object is to compute that things we cache, it make more sense to have the inner object handle it directly.
-
Pierre-Yves David authored
This is a necessary step before being able to move more logic around restoring a revision content there. For now, we do a simple patch for the perf extension logic, when the implementation of the inner object changes, we will likely need some evolution of the API. However this is true of many things in the perf extension. So we will see this later.
-
Pierre-Yves David authored
This is a necessary step before being able to move more logic around restoring a revision content there. For now, we do a simple patch for the perf extension logic, when the implementation of the inner object changes, we will likely need some evolution of the API. However this is true of many things in the perf extension. So we will see this later.
-
- Oct 25, 2023
-
-
Pierre-Yves David authored
This will be needed for the next changeset.
-
- Oct 19, 2023
-
-
Pierre-Yves David authored
This is a necessary step before being able to move more logic around restoring a revision content there. For now, we do a simple patch for the perf extension logic, when the implementation of the inner object changes, we will likely need some evolution of the API. However this is true of many things in the perf extension. So we will see this later.
-
- Oct 25, 2023
-
-
Pierre-Yves David authored
This is a necessary step before being able to move more logic around restoring a revision content there. For now, we do a simple patch for the perf extension logic, when the implementation of the inner object changes, we will likely need some evolution of the API. However this is true of many things in the perf extension. So we will see this later.
-
- Oct 23, 2023
-
-
Pierre-Yves David authored
This is another large IO block that we need to move within the inner object if we want's it to be self sufficient.
-
- Oct 24, 2023
-
-
Pierre-Yves David authored
The segmentfile and the attribute need to be synchronized, let's enforce that.
-
- Oct 18, 2023
-
-
Pierre-Yves David authored
revlog with a docket do not use inline revlog and do not need to split them. So we can remove some code handling docket there.
-
- Oct 24, 2023
-
-
Pierre-Yves David authored
See inline documentation for details.
-
- Oct 17, 2023
-
-
Pierre-Yves David authored
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 authored
Apparently, some time ago, the chunk cache moved in the randomaccessfile object.
-
Pierre-Yves David authored
It has no caller anywhere and is probably the remains of some older code.
-
- Oct 13, 2023
-
-
Pierre-Yves David authored
This was planned but overlooked when doing the rest of the migration.
-
Pierre-Yves David authored
-
- Oct 11, 2023
-
-
Pierre-Yves David authored
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.
-
- Oct 14, 2023
-
-
Pierre-Yves David authored
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.
-
- Oct 13, 2023
-
-
Pierre-Yves David authored
They can simply be passed by as censored.
-
Pierre-Yves David authored
This is not great.
-
- Sep 19, 2023
-
-
Pierre-Yves David authored
This is faster and simpler to read.
-
Pierre-Yves David authored
This will be useful with the next changeset that change the defaul output to display the minimum amount of information.
-
Pierre-Yves David authored
Doing quick test on mozilla-unified show we can run up to 2× faster by skipping some of these computation.
-
- Sep 18, 2023
-
-
Pierre-Yves David authored
Currently this mostly controls what we display, but actual computation saving will come soon.
-
Pierre-Yves David authored
This allows for much faster runtime when we are interrested in some revisions only.
-
Pierre-Yves David authored
Moving from a closure to an object's method will help us to extend the command logic.
-
Pierre-Yves David authored
There is a dedicated `mercurial.revlogutils.debug` module were this code fits well.
-
- Oct 12, 2023
-
-
Pierre-Yves David authored
The methods that requires them have documentation, but the context themselves had none. This is now fixed.
-
- Oct 10, 2023
-
-
Pierre-Yves David authored
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 authored
All core code is now getting the setting from the DeltaConfig object.
-
Pierre-Yves David authored
All core code is now getting the setting from the DeltaConfig object.
-
Pierre-Yves David authored
All core code is now getting the setting from the FeatureConfig object.
-
Pierre-Yves David authored
All core code is now getting the setting from the DeltaConfig object.
-
Pierre-Yves David authored
All core code is now getting the setting from the DataConfig object.
-
Pierre-Yves David authored
All core code is now getting the setting from the DataConfig object.
-