You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are some breaking changes maybe affecting the libgit2 bindings:
Breaking changes
Changes to git_config_entry (ABI breaking change) The git_config_entry structure now contains information about the backend_type >and origin_path. The unused payload value has been removed.
git_push_options includes remote push options (ABI breaking change)
The git_push_options structure now contains a value for remote push options.
To Reproduce
Steps to reproduce the behavior:
Open Iceberg in a Pharo 12 image where the underlying Linux OS has only libgit2 1.8 installed.
PharoVM 10.2.0-f4c5e2aa5 built on May 9 2024 09:04:25
Expected development cost
Adding the library name to LGitLibrary>>#unix64LibraryName is trivial. Someone with more knowledge of libgit2 binding internals needs to evaluate if the breaking changes affect the behavior used by Pharo or not, and requires changes in the external object structs
The text was updated successfully, but these errors were encountered:
I've tried the simple change of adding the library version to the known list of versions, and with this change, I'm able to commit changes. But if you try to push directly from Iceberg the image hangs. And in the console, I see double free or corruption (!prev). So, it looks like the changes in git_push_options break something.
I've attempted a fix in pharo-vcs/libgit2-pharo-bindings/pull/85
The changes are proposed for the Pharo12 branch, they will need review by someone with more knowledge in this area. As far as I was able to test the behavior seems correct and now I can push to remote repositories again.
Bug description
Manjaro Linux is distributing libgit2 v1.8 making Iceberg fail with an error of library not found.
This is the relevant release of the library
There are some breaking changes maybe affecting the libgit2 bindings:
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Updated support for libgit2 1.8
Version information:
Expected development cost
Adding the library name to
LGitLibrary>>#unix64LibraryName
is trivial. Someone with more knowledge of libgit2 binding internals needs to evaluate if the breaking changes affect the behavior used by Pharo or not, and requires changes in the external object structsThe text was updated successfully, but these errors were encountered: