]> git.bitcoin.ninja Git - rust-lightning/commitdiff
Re-export bitcoin crate
authorFilip Gospodinov <f@gospodinov.ch>
Fri, 17 May 2024 15:00:44 +0000 (17:00 +0200)
committerFilip Gospodinov <f@gospodinov.ch>
Fri, 17 May 2024 15:00:44 +0000 (17:00 +0200)
For the same reason the `bitcoin` crate is re-exporting
the `secp256k1` crate the `lightning` crate should
re-export the `bitcoin` crate: to ease the burden on
calling code to maintain compatible `bitcoin` versions.

The `lightning` crate makes heavy use of types defined in
(or re-exported by) the `bitcoin` crate. Compilation will
fail if e.g. comparisons or `match` expressions are done with
types from `bitcoin` crate versions with a non-equal minor
version. This forces calling code to depend on a `bitcoin`
crate with a compatible version. This becomes a maintenance
nightmare once two or more crates, that use `bitcoin` types
in their public API, are used in calling code simultaneously.

lightning/src/lib.rs

index be3da45528bad0e0f756c9419b46ba50faade4a9..5274ea0bf309ce2d0709936d496d8a098b561ebc 100644 (file)
@@ -61,7 +61,7 @@ compile_error!("Tests will always fail with cfg=fuzzing");
 
 #[macro_use]
 extern crate alloc;
-extern crate bitcoin;
+pub extern crate bitcoin;
 #[cfg(any(test, feature = "std"))]
 extern crate core;