Tue, 10 Oct 2023 10:02:29 +0200 revlog: skip opener option to pass chunk_cache_size value
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 10:02:29 +0200] rev 51032
revlog: skip opener option to pass chunk_cache_size value We can directly set the option in the config object now.
Tue, 10 Oct 2023 10:02:21 +0200 revlog: create the revlog object at the repository level
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 10:02:21 +0200] rev 51031
revlog: create the revlog object at the repository level There is currently no value set in it, but we will be able to start centralise config parsing at the repository level.
Tue, 10 Oct 2023 10:02:13 +0200 revlog: overwrite revlog config through copy of the config object
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 10:02:13 +0200] rev 51030
revlog: overwrite revlog config through copy of the config object The new objects allow for this kind of blanket approach that make things cleaner. If we have more cases, it would probably deserve a context manager, but since we only have two usage, I don't think it is worth it.
Tue, 10 Oct 2023 10:02:05 +0200 revlog: move configuration attribute into dedicated object
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 10:02:05 +0200] rev 51029
revlog: move configuration attribute into dedicated object First this make things clearer as the number of configuration attributes has grown out of control, so gathering them make things clearer. Second, this will make future sharing them at different level simpler. Third it will allow us to make initialisation and temporary override simpler soon.
Tue, 10 Oct 2023 10:01:57 +0200 manifestrevlog: flag some inconsistency in bundle/union repo inheritance
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Oct 2023 10:01:57 +0200] rev 51028
manifestrevlog: flag some inconsistency in bundle/union repo inheritance This "work" but still, this is weird, let us point it out.
Sat, 30 Sep 2023 02:02:36 +0200 randomaccessfile: drop explicit passing of file description
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 30 Sep 2023 02:02:36 +0200] rev 51027
randomaccessfile: drop explicit passing of file description The goal of this object is to manage IO, we still have to open the file if necessary, but this is all internal now.
Tue, 26 Sep 2023 02:54:50 +0200 revlog: drop more file description passing between private function
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 26 Sep 2023 02:54:50 +0200] rev 51026
revlog: drop more file description passing between private function They are no longer used as we are covered by the `reading` context
Tue, 26 Sep 2023 02:49:18 +0200 revlog: use a `reading` context in `_enforceinlinesize`
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 26 Sep 2023 02:49:18 +0200] rev 51025
revlog: use a `reading` context in `_enforceinlinesize` We are about to enforce reading context on various operation, so we make sure top level method are in the right context. In the future we might move the responsibility of opening the revlog for reading higher in the call chain but lets limit the disruption for now.
Tue, 26 Sep 2023 00:55:49 +0200 revlog: drop the df argument to `sidedata`
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 26 Sep 2023 00:55:49 +0200] rev 51024
revlog: drop the df argument to `sidedata` The intend of this argument is better filled by the `revlog.reading` or `revlog._writing` context. So we drop it to leave rooms for further cleanup and improvements.
Tue, 26 Sep 2023 00:54:46 +0200 revlog: drop the df argument to `rawdata`
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 26 Sep 2023 00:54:46 +0200] rev 51023
revlog: drop the df argument to `rawdata` The intend of this argument is better filled by the `revlog.reading` or `revlog._writing` context. So we drop it to leave rooms for further cleanup and improvements.
Mon, 25 Sep 2023 22:52:01 +0200 revlog: drop the df argument to `revision`
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 22:52:01 +0200] rev 51022
revlog: drop the df argument to `revision` The intend of this argument is better filled by the `revlog.reading` or `revlog._writing` context. So we drop it to leave rooms for further cleanup and improvements.
Tue, 26 Sep 2023 01:05:02 +0200 interfaces: drop the `raw` parameters on ifiledata interface
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 26 Sep 2023 01:05:02 +0200] rev 51021
interfaces: drop the `raw` parameters on ifiledata interface In practice it was not implemented since forever. The `rawdata` method fit that purpose. The interface checking does not detect that because it seems to confuse the `_df` argument for the `raw` one. Dropping that `_df` argument in a descendant changesets revealed the issue.
Mon, 25 Sep 2023 22:51:57 +0200 delta-computer: stop explicitly taking file handle
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 22:51:57 +0200] rev 51020
delta-computer: stop explicitly taking file handle The revlog has all the logic for opening and caching such handles, so no need to duplicate it here. In addition, this let the revlog handle that logic by itself which is better.
Mon, 25 Sep 2023 16:47:55 +0200 censors: simply use `revlog.reading` to keep things open dring rewrite
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 16:47:55 +0200] rev 51019
censors: simply use `revlog.reading` to keep things open dring rewrite We have a dedicated context now, we can simply use it. In practice, we cannot "simply" use it, as `finddeltainfo` still requires the file pointer to be passed explicitly. We will keep the old context manager open for a small bit until we get rid of it in a future changeset.
Mon, 25 Sep 2023 17:18:40 +0200 stream-clone: use `revlog.reading` in `revlog.get_streams`
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 17:18:40 +0200] rev 51018
stream-clone: use `revlog.reading` in `revlog.get_streams` We can get the same result while using more standard method, so we do.
Mon, 25 Sep 2023 16:57:53 +0200 debug-revlog: keep the revlog open for the analysis duration
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 16:57:53 +0200] rev 51017
debug-revlog: keep the revlog open for the analysis duration This is more explicit. No performance differences were observed.
Mon, 25 Sep 2023 16:36:17 +0200 repo-upgrade: keep the revlog open while cloning
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 16:36:17 +0200] rev 51016
repo-upgrade: keep the revlog open while cloning This is more explicit. No performance differences were observed.
Mon, 25 Sep 2023 12:37:52 +0200 verify: keep the revlog open for reading while verifying it
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 12:37:52 +0200] rev 51015
verify: keep the revlog open for reading while verifying it This is more explicit. No performances difference were observed.
Mon, 25 Sep 2023 12:32:42 +0200 convert: use `changelogrevision` to fetch changeset data instead of read
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 12:32:42 +0200] rev 51014
convert: use `changelogrevision` to fetch changeset data instead of read This `changelogrevision` is a higher level function that will remain simple to use as we refactor the revlog.
Mon, 25 Sep 2023 12:14:38 +0200 revlog: adapt the `reading` check for `unionrepo`
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 12:14:38 +0200] rev 51013
revlog: adapt the `reading` check for `unionrepo` We cannot just rely on the length check for the `unionrepo` as the local revlog might be empty while the other revlog contains data. In addition, we need to also open the second revlog for reading when needed.
Mon, 25 Sep 2023 12:13:38 +0200 revlog: adapt the `reading` check for `bundlerepo`
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 12:13:38 +0200] rev 51012
revlog: adapt the `reading` check for `bundlerepo` We cannot just rely on the length check for the `bundlerepo` as the local revlog might be empty with all data in the bundle.
Mon, 25 Sep 2023 12:07:25 +0200 revlog: make `reading` not crash on empty repository
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 12:07:25 +0200] rev 51011
revlog: make `reading` not crash on empty repository If the revlog is empty, the file might not exist and the open will fails. This is not great, but that details or this is now contained in the revlog itself.
Mon, 25 Sep 2023 11:59:38 +0200 changelog: make the `_delayopener` a real proxy
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 11:59:38 +0200] rev 51010
changelog: make the `_delayopener` a real proxy We use the same approach as the `_divertopener`. This make it possible to use other methods of the vfs and not just the `__call__` API.
Mon, 25 Sep 2023 11:23:38 +0200 perf: ensure all readlog's reading is done within a `reading` context
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 11:23:38 +0200] rev 51009
perf: ensure all readlog's reading is done within a `reading` context We are about to enforce this at the revlog level, so we update the perf code in advance.
Mon, 25 Sep 2023 11:13:44 +0200 perf: change the way we approach revlog reading
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 25 Sep 2023 11:13:44 +0200] rev 51008
perf: change the way we approach revlog reading If the `reading` context manager is available, we should use it over explicit file handle management. This will help us to make file handle management a matter more internal to the revlog.
Tue, 19 Sep 2023 23:14:36 +0200 revlog: document the `rev` method
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Sep 2023 23:14:36 +0200] rev 51007
revlog: document the `rev` method A small docstring does not hurt.
Tue, 19 Sep 2023 23:14:01 +0200 revlog: document the `clearcaches` method
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Sep 2023 23:14:01 +0200] rev 51006
revlog: document the `clearcaches` method A small docstring does not hurt.
Tue, 19 Sep 2023 23:13:16 +0200 revlog: document the `update_caches` method
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Sep 2023 23:13:16 +0200] rev 51005
revlog: document the `update_caches` method A small docstring does not hurt.
Tue, 19 Sep 2023 23:10:05 +0200 revlog: make the `candelta` method private
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Sep 2023 23:10:05 +0200] rev 51004
revlog: make the `candelta` method private It is only used internally, so lets make it clear.
Tue, 19 Sep 2023 23:09:29 +0200 revlog: document the `get_streams` method
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 19 Sep 2023 23:09:29 +0200] rev 51003
revlog: document the `get_streams` method A small docstring does not hurt.
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 tip