-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
upgrade of libgit2 0.27.1 #27241
upgrade of libgit2 0.27.1 #27241
Conversation
I was way too ambitious here: I'm going to need some help with the various patches. |
fbc121c
to
8e3cfe7
Compare
@@ -1,55 +0,0 @@ | |||
From 637f75b2a341df6e308f8a20827dea938a39bd35 Mon Sep 17 00:00:00 2001 | |||
From: Valentin Churavy <v.churavy@gmail.com> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@vchuravy From what I can tell, the zlib issue now appears to now be fixed upstream (libgit2/libgit2#4403). Could you check this?
@@ -1,23 +0,0 @@ | |||
--- CMakeLists.txt 2016-05-26 23:13:48.000000000 -0400 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the only one I'm not sure about. I don't quite understand what this patch is trying to do, and the CMake files have changed considerably (some of this has been moved to src/CMakeLists.txt
).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
windows ssh clones. test a source build or clean from the buildbot, or this may have broken libgit2 linking to libssh2 and working on private repos
@@ -45,6 +45,9 @@ Matches the [`git_time`](https://libgit2.github.com/libgit2/#HEAD/type/git_time) | |||
struct TimeStruct | |||
time::Int64 # time in seconds from epoch | |||
offset::Cint # timezone offset in minutes | |||
@static if LibGit2.VERSION >= v"0.27.0" | |||
sign::Cchar | |||
end |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not just drop the version check?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess theoretically we support multiple libgit2 versions? But yes, we could certainly drop the checks and require 0.27
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since the code divergence is small, I think it's better to be more compatible. Building from-source should always grab the version we have in deps/libgit2.version
, but distributions are probably quite a ways behind.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sounds good to me
It would be good to add this (libgit2/libgit2#4525) as a patch. That PR should fix an issue which currently emits a warning from the LibGit2 test suite. |
I'll try it out, but unfortunately it isn't strictly a compatible change since it changes the header files, and libgit2 doesn't seem to provide a way of querying patches. |
Which warning is it supposed to fix? The only warning which I currently see is julia/stdlib/LibGit2/test/libgit2.jl Lines 1835 to 1836 in 2c5aec9
which this doesn't change. |
@@ -45,6 +45,9 @@ Matches the [`git_time`](https://libgit2.github.com/libgit2/#HEAD/type/git_time) | |||
struct TimeStruct | |||
time::Int64 # time in seconds from epoch | |||
offset::Cint # timezone offset in minutes | |||
@static if LibGit2.VERSION >= v"0.27.0" | |||
sign::Cchar | |||
end |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since the code divergence is small, I think it's better to be more compatible. Building from-source should always grab the version we have in deps/libgit2.version
, but distributions are probably quite a ways behind.
With the iteration order patch it should cause the test you mentioned to no longer be broken if this code is removed. Since this is slightly more involved that I originally expected we can defer this to another PR if you prefer. |
I think that would be better as another PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for doing this. I'm happy that we'll be using their peer reviewed MbedTLS changes even if it is still as a patch.
Broke the buildbots: https://build.julialang.org/#/builders/83/builds/1443 Snippets from log that may be relevant:
(note that the version we built that it should find is 1.8.0) |
This reverts commit 4a303b3. This broke the buildbots as it introduced a dependency upon `libssl.so` again, see discussions: * #27241 (comment) * 4a303b3#commitcomment-29274618
Here's a quick reversion PR to get us back to working nightlies: #27493 |
This reverts commit 4a303b3. This broke the buildbots as it introduced a dependency upon `libssl.so` again, see discussions: * #27241 (comment) * 4a303b3#commitcomment-29274618
* upgrade libgit2 to 0.27.1 * fix for API changes
* upgrade libgit2 to 0.27.1 * fix for API changes
* upgrade libgit2 to 0.27.1 * fix for API changes
* upgrade libgit2 to 0.27.1 * fix for API changes
No description provided.