-
Notifications
You must be signed in to change notification settings - Fork 22
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
regenerate with recent bindgen #11
Conversation
Signed-off-by: David Hotham <[email protected]>
I somehow forgot about the change that actually is breaking, albeit trivially:
|
Thanks, that's interesting. I guess the key question is - what are the advantages of doing this? It's working at the moment so I'm hesitant to change it without good reason. |
Yeah, the differences are pretty small, which cuts both ways: it's not that risky, but it's also not that valuable. The signed char thing is I think unambiguously a bug fix and the others mostly look like improvements, albeit rather small ones. Maybe the main win from this pull request is the knowledge that recent bindgen is still working fine for us - we're not storing up technical debt for when we do want to regenerate eg to upgrade the underlying C library. Of course you get that advantage without actually having to merge ... |
Well, it's encouraging that Please can you add your "for the record" instructions to the docs somewhere, and add that to this PR? Then (as long as |
I agree that there should be no need to bump the version number for There's one trivial example of the I seem to be not well placed to run the I'll add a sentence to the README saying how the autogeneration was done. |
Signed-off-by: David Hotham <[email protected]>
(I had another go at the |
It's a reward for writing good docs 😀 |
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.
LGTM!
Thanks! Merged, released, and now incorporating in |
I was messing around with updating
bindgen
on my own project today, and though I'd see what it currently did to these cassandra bindings.For the record, what I did was:
followed by running the output through
rustfmt
.So here are the results. Take 'em or leave 'em, I don't really mind!
This seems to be sufficiently back-compatible that
cassandra-rs
still compiles without complaint, but I expect that some of the changes in here are somehow technically breaking and so publishing would want a version bump.Main differences, as it seems to me:
cass_int8_t
should always be signedcassandra.h
that you have this is ambiguous depending on build environment becausecass_int8_t
is sometimes mapped tochar
, whose signedness is undefinedffi_util.rs
)Clone
is manually implemented, because reasons)[#link(name = "cassandra")]
any morebuild.rs
const
s for some#define
s