-
Notifications
You must be signed in to change notification settings - Fork 416
Update libgit2 submodule. #503
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
Conversation
8d9c278
to
9e32ec1
Compare
I guess I'll have to get a VM with Windows up and running tomorrow to figure out why the Windows build fails. |
8bd0a30
to
1989b93
Compare
1989b93
to
aaa5045
Compare
The change from The libgit2 pull request which introduced this change mentions the ergonomic downsides for C++ that results from using an As the usage of raw flag values is hidden behind methods in the Rust API, the numeric casts don't affect users of git2-rs unless they are using raw values directly. |
Everything looks great to me here thanks! For the |
I tried to do that (by using |
Sorry for the delayed response, but could you gist what the errors look like in that case? |
This is the output I get when I set the
The tests that fail all seem to be generated as such, with just the enum name changed: #[inline(never)]
#[allow(non_snake_case)]
fn sign_git_stash_apply_flags() {
extern {
#[allow(non_snake_case)]
fn __test_signed_git_stash_apply_flags() -> u32;
}
unsafe {
same(((!(0 as git_stash_apply_flags)) < (0 as git_stash_apply_flags)) as u32,
__test_signed_git_stash_apply_flags(), "git_stash_apply_flags signed");
}
} I don't understand what information the systests are generated from, but that a test that covers signedness fails when the type is set to unsigned at least makes some sense based on the name alone. (If it makes sense to someone who understands the tests more deeply is unclear to me.) |
Ah ok no worries! I think that the definitions may be a bit odd at the C layer, but that's ok. Let's go ahead with this and we can improve it later if necessary! |
This updates the libgit2 submodule to latest master.
As several public struct members as well as some functions' parameters/return values have changed fundamental types (e.g from
git_off_t
which is anint64_t
togit_object_size_t
which is anuint64_t
) I bumped the minor versions of both libgit2-sys and git2-rs (meaning it's equivalent to a major version bump for 0.x versions). As I'm not familiar with the version increment policy, let me know if that's wrong.