Replies: 4 comments 1 reply
-
Yes, it's hard for me to imagine how we could do this without an ABI change. But it's also hard for me to imagine how we do this without an API change, so I'm much less concerned about the ABI changes in comparison. I think that one initial step that would be helpful for me is to understand the status of SHA-256 support in git itself. We're at the stage where we're "[introducing] the the objectFormat extension (without compatObjectFormat)". Is that roughly accurate? I should be thinking about this with the ultimate goal being that |
Beta Was this translation helpful? Give feedback.
-
It should probably be mentioned bit more clearly in readme/docs that there currently isn't support for sha256. For me it was not a problem to migrate my repository back to sha1 losing my commit history, but for someone else that might be. And at least the downstream project I'm using did not report that the failures were caused by this, so debugging and figuring out the dependencies to here took some time. |
Beta Was this translation helpful? Give feedback.
-
@jimboolio If you build libgit2 with |
Beta Was this translation helpful? Give feedback.
-
But, I agree, the state of SHA256 support should be mentioned more prominently. 😁 |
Beta Was this translation helpful? Give feedback.
-
I'm looking into adding SHA-256 repository support for libgit2. I have a branch with some starting points.
One thing that's become very obvious to me is that in all likelihood, this is going to be an ABI-breaking change, since in many cases (e.g., the index) we allow users to pass in arbitrary files from the system without a repository attached. Git generally doesn't mark its objects with the hash algorithm, so when we're parsing formats we have no way of knowing what the hash algorithm is without being told.
I assume this isn't a problem, but since I have several days to work on this project and it's possible a PR will come in during that time, I expect it's a thing y'all will want to be aware of.
Beta Was this translation helpful? Give feedback.
All reactions