Sun, 30 May 2021 18:09:29 +0200 revlog: allow to pass an existing docket to `_loadindex()`
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 30 May 2021 18:09:29 +0200] rev 47408
revlog: allow to pass an existing docket to `_loadindex()` This will be when switching undelying files, for examples during censors and strip operation with rvlog-v2. Differential Revision: https://phab.mercurial-scm.org/D10800
Sun, 30 May 2021 18:10:15 +0200 revlog: add a ways to blacklist some revision when searching for a delta
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 30 May 2021 18:10:15 +0200] rev 47407
revlog: add a ways to blacklist some revision when searching for a delta This will be useful to recompute appropriate deltas one the fly during censor/strip operation with revlog-v2. Differential Revision: https://phab.mercurial-scm.org/D10799
Sun, 30 May 2021 18:08:52 +0200 util: add `nb_bytes` argument to `copyfile` to partially copy a file
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 30 May 2021 18:08:52 +0200] rev 47406
util: add `nb_bytes` argument to `copyfile` to partially copy a file When set, this allow to copy only the first `nb_bytes` of a file. This will be useful for censor/strip operation with revlogv2. Differential Revision: https://phab.mercurial-scm.org/D10798
Sun, 30 May 2021 16:20:36 +0200 revlog: move `revisioninfo` in `revlogutils`
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 30 May 2021 16:20:36 +0200] rev 47405
revlog: move `revisioninfo` in `revlogutils` We will need it in other utility module. So lets extract it from `revlog.py`, the module is too large already anyway. Differential Revision: https://phab.mercurial-scm.org/D10797
Sun, 30 May 2021 17:11:49 +0200 revlog: use the `entry` function in bundlerepo
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 30 May 2021 17:11:49 +0200] rev 47404
revlog: use the `entry` function in bundlerepo We can use some of the default value again! Differential Revision: https://phab.mercurial-scm.org/D10796
Sun, 30 May 2021 17:11:21 +0200 revlog: use entry in revlogv0.py
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 30 May 2021 17:11:21 +0200] rev 47403
revlog: use entry in revlogv0.py This make things clearer and we can reply on some of the default value directly. Differential Revision: https://phab.mercurial-scm.org/D10795
Sun, 30 May 2021 17:11:10 +0200 revlog: use the new `entry` function in revlog.py
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 30 May 2021 17:11:10 +0200] rev 47402
revlog: use the new `entry` function in revlog.py This just make the construction of the tuple clearer. Differential Revision: https://phab.mercurial-scm.org/D10794
Sun, 30 May 2021 17:10:56 +0200 revlog: add a function to build index entry tuple
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 30 May 2021 17:10:56 +0200] rev 47401
revlog: add a function to build index entry tuple Keeping index entry as tuple make sense for performance reason, however it does not means we need to manually build that tuple for all piece of python code that are not performance critical. So we add a nice function responsible to build the tuple using argument using explicit keyword argument. Differential Revision: https://phab.mercurial-scm.org/D10793
Sun, 30 May 2021 16:19:36 +0200 revlog: move `offset_type` to `revlogutils`
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 30 May 2021 16:19:36 +0200] rev 47400
revlog: move `offset_type` to `revlogutils` This multiple module are using this so it make sense to move it at the utility level. Differential Revision: https://phab.mercurial-scm.org/D10792
Sat, 22 May 2021 00:06:22 +0200 revlog: move entry documentation alongside new related constants
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 22 May 2021 00:06:22 +0200] rev 47399
revlog: move entry documentation alongside new related constants Accessing individual index-entry element is usually done using integer directly. This is presumably for "performance reasons". However as the index entry gain more and more element it seems useful to get the option to use symbolic constant to access item, for both clarify and versatility. We will probably keep using integer for performance critical path, but less critical code may start using them now that they are declared. Differential Revision: https://phab.mercurial-scm.org/D10791
Fri, 21 May 2021 20:08:11 +0200 censor: drop size limitation on the tombstone
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 May 2021 20:08:11 +0200] rev 47398
censor: drop size limitation on the tombstone This limitation seems to date back from a previous implementation of censors, were the revision were censored" in place. For a long while the implementation actually involved rewriting the revlog before replacing the original data. So it looks like we can safely remove this limitation. The tests suite agrees. Differential Revision: https://phab.mercurial-scm.org/D10790
Sat, 29 May 2021 00:11:56 +0200 revlog: move censoring code in a dedicated module
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 29 May 2021 00:11:56 +0200] rev 47397
revlog: move censoring code in a dedicated module This code is quite specific and we are about to add more of it for revlog-v2 (and other derived version). So we move this code in a dedicated module in `mercurial/revlogutils/`. This looks like a good fit. The diff is huge because I used `hg copy` to create the new file so that we keep the history of the censor code. Differential Revision: https://phab.mercurial-scm.org/D10789
Sat, 29 May 2021 00:11:32 +0200 censor: reduce risk of censor test blowing up output limit
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 29 May 2021 00:11:32 +0200] rev 47396
censor: reduce risk of censor test blowing up output limit The censored file is really big, and we keep using `hg cat` on it, with the assumption that it is censored. However, when it is not censored, the amount of extra line output is huge and quickly saturate the backlog of terminal and CI system. Differential Revision: https://phab.mercurial-scm.org/D10788
Fri, 28 May 2021 23:41:17 +0200 revlog: store sidedata in their own file
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 28 May 2021 23:41:17 +0200] rev 47395
revlog: store sidedata in their own file This makes sidedata manipulation simpler and results in more compact data when traversing either data or sidedata. Differential Revision: https://phab.mercurial-scm.org/D10787
Fri, 28 May 2021 23:41:12 +0200 revlog: fix docket.date_filepath docstring
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 28 May 2021 23:41:12 +0200] rev 47394
revlog: fix docket.date_filepath docstring This was copy-pasted too quickly. Differential Revision: https://phab.mercurial-scm.org/D10786
(0) -30000 -10000 -3000 -1000 -300 -100 -15 +15 +100 +300 +1000 +3000 tip