Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Aug 2024 13:10:09 +0200] rev 51781
manifest: introduce a `read_delta_parents` method
This new method have a clearer semantic and can be used by code that need this
semantic. This should avoid bugs, allow for more targeted optimisation, and
provide a clearer API. Users will be updated in subsequent changesets.
This is also part of the wider effort to clarify and fix this API. one more
method coming.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Aug 2024 12:14:40 +0200] rev 51780
manifest: use `read_any_fast_delta` for tag rev cache computation
This will have the benefit of using the fast path more often, and being (a bit)
less buggy. See inline comment for details.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Aug 2024 05:37:57 +0200] rev 51779
manifest: use `read_any_fast_delta` during shallow prefetch's
We now have a better function with a clear semantic. This simplify the usage in
the remotefilelog code.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Aug 2024 05:36:53 +0200] rev 51778
manifest: use `read_any_fast_delta` during remotefilelog's repack
We now have a better function with a clear semantic. This simplify the usage in
the remotefilelog code.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Aug 2024 13:42:34 +0200] rev 51777
manifest: use read_any_fast_delta in changectx
The new API is clearer but also more expressive. It allow to detect case where
we did return a full read and populated the associated cache. Saving time!
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Aug 2024 13:40:46 +0200] rev 51776
manifest: allow skipping valid_bases argument to `read_any_fast_delta`
In some case it make sens to just want a delta. So we update the API to support
this.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Aug 2024 05:35:06 +0200] rev 51775
manifest: introduce a `read_any_fast_delta` method
This method is a clearer semantic than `readbase` and `readfast` and will allow
for more accurate optimization and usage. This is part of a wider series
introducing such clearer method.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 05 Aug 2024 10:03:06 +0200] rev 51774
manifest: add many type annotations to the manifest module
This help to clarify the API a bit, this caught various bug in the process and
will help to catch more in the future. This also make large refactoring
significantly simpler.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 05 Aug 2024 10:15:10 +0200] rev 51773
manifest: help pytype to understant `writesubtrees`'s `getnode` type
Since we provide a default, the return of `_lazydirs.get` is cannot be None. We
help pytype to understand that.
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 05 Aug 2024 10:13:31 +0200] rev 51772
manifest: use explicit None checking in `_loaddifflazy`
This helps pytype to understand what is going here with `v2` type.