rust-bitcoin / rust-secp256k1

Rust language bindings for Bitcoin secp256k1 library.
Creative Commons Zero v1.0 Universal
336 stars 252 forks source link

`secp256k1`: Remove `secp256k1_sys` types from the public API #655

Open tcharding opened 9 months ago

tcharding commented 9 months ago

If we want to be able to stabalize this crate and release a v1.0 we either have to stabalize secp256k1_sys or remove all the ffi types from the public API.

Since the secp256k1_sys crate may never stabalize we should proactively wrap/hide/remove the secp256k1_sys types from the public API.

apoelstra commented 9 months ago

Yeah, I guess you're correct.

I wonder if we should still export secp256k1-sys itself. Maybe under a new name that is clearly marked _unstable?

Kixunil commented 8 months ago

Clearly marked _unstable is good, I've seen most, if not all, crates to also put it behind a feature flag.