These helpers carry the information and computers needed to rewrite sidedata
when generating/applying patches. We will be making use of them soon.
Details
- Reviewers
indygreg marmoute - Group Reviewers
hg-reviewers - Commits
- rHG45f0d5297698: changegroupv4: add sidedata helpers
Diff Detail
- Repository
- rHG Mercurial
- Branch
- default
- Lint
No Linters Available - Unit
No Unit Test Coverage
Event Timeline
You should document the new argument in the existing docstring of the various function you updated. This would help to understand what this is about.
mercurial/changegroup.py | ||
---|---|---|
998–999 | A better thing would be for the strip case to properly setup the bundle call to make sure the sidedata are removed. The current code seems okay for now, but adding a clear comment about how we should do that ideally would be great. | |
mercurial/utils/storageutil.py | ||
516 | This will need some doc about what is the semantic of this function. |
mercurial/changegroup.py | ||
---|---|---|
998–999 | But we don't want to remove the sidedata, we want to leave them there. When restoring a strip bundle, we want the sidedata to be the same as before, so we might as well not drop them only to re-generate them. |
mercurial/changegroup.py | ||
---|---|---|
998–999 | My point is that we should (eventually) have the proper way to declare the wanted sidedata when we generate a bundle, and the higher level strip code will set this properly before genering the backup bundle. |
Out of curiosity, why not put this into changegroupv3 (since it's still experimental)? Should it no longer be marked experimental? It's one of several things keeping LFS experimental.
My feeling is that they are enough usage of cg3 in the wild (lfs, narrow) that making a new cg3 iteration incompatible with the previous one would break some people. However you probably have a better image of those people than I do.
Honestly I don't. I'm totally fine with starting v4, I just don't want v3 to be forever experimental if everyone starts focusing on v4.
A better thing would be for the strip case to properly setup the bundle call to make sure the sidedata are removed.
The current code seems okay for now, but adding a clear comment about how we should do that ideally would be great.