-
Notifications
You must be signed in to change notification settings - Fork 270
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
Context overhaul tracking issue #538
Comments
I wouldn't be too mad if we just break the API. The change will be obvious and pretty simple (just delete the argument wherever compiler complains). The library is not stable anyway. |
@Kixunil heh, yeah, after attempting this I tend to agree. But it's the sort of thing where I'd give veto power to anybody who insisted that we avoid breaking things :). I think we should make an effort to deprecate things where it's easy/possible. But in cases like |
Ok, I don't think that mirroring the context structure in Rust by hand is going to be feasible. It contains a What I probably can do, though, is patch the C code to provide a (non-synchronized) static pre-initialized signing context. I will investigate this, and see if maybe we want to propose this upstream. |
First two checkboxes should be covered by #539 |
For raw pointers that can never be null Rust provides the `core::ptr::NonNull` type. Our `Secp256k1` type has an inner field that is a non-null pointer; use `NonNull` for it. Fix: #534
Moving discussion from #346 and #529.
On a high level our plan is to:
ffi::secp256k1_context_no_precomp
)std
and using a global static otherwise)_no_rerandomize
variant...Specifically we need to:
rerandomize
functionSecp256k1
struct and all the context traits; move their non-constructor methods to bare functionsKeyPair::negate
then what should the new function name be called?)The text was updated successfully, but these errors were encountered: