Actual no_std support
[rust-lightning] / lightning / Cargo.toml
index da9ac51a79f4acfd512c132c034d2e606650e5d8..8bbdfe95a3ebdc138916e435bae85a1f0a3380e7 100644 (file)
@@ -1,6 +1,6 @@
 [package]
 name = "lightning"
-version = "0.0.13"
+version = "0.0.99"
 authors = ["Matt Corallo"]
 license = "MIT OR Apache-2.0"
 repository = "https://github.com/rust-bitcoin/rust-lightning/"
@@ -14,7 +14,7 @@ Still missing tons of error-handling. See GitHub issues for suggested projects i
 allow_wallclock_use = []
 fuzztarget = ["bitcoin/fuzztarget", "regex"]
 # Internal test utilities exposed to other repo crates
-_test_utils = ["hex", "regex"]
+_test_utils = ["hex", "regex", "bitcoin/bitcoinconsensus"]
 # Unlog messages superior at targeted level.
 max_level_off = []
 max_level_error = []
@@ -26,19 +26,31 @@ max_level_debug = []
 unsafe_revoked_tx_signing = []
 unstable = []
 
+no_std = ["hashbrown", "bitcoin/no-std", "core2/alloc"]
+std = ["bitcoin/std"]
+
+default = ["std"]
+
 [dependencies]
-bitcoin = "0.26"
+bitcoin = { version = "0.27", default-features = false, features = ["secp-recovery"] }
+# TODO maybe bitcoin no-std should pull in this feature?
+secp256k1 = { version = "0.20.2", default-features = false, features = ["alloc"] }
 
+hashbrown = { version = "0.11", optional = true }
 hex = { version = "0.3", optional = true }
 regex = { version = "0.1.80", optional = true }
 
-[dev-dependencies.bitcoin]
-version = "0.26"
-features = ["bitcoinconsensus"]
+core2 = { version = "0.3.0", optional = true, default-features = false }
 
 [dev-dependencies]
 hex = "0.3"
 regex = "0.1.80"
+secp256k1 = { version = "0.20.2", default-features = false, features = ["alloc"] }
+
+[dev-dependencies.bitcoin]
+version = "0.27"
+default-features = false
+features = ["bitcoinconsensus", "secp-recovery"]
 
 [package.metadata.docs.rs]
 features = ["allow_wallclock_use"] # When https://github.com/rust-lang/rust/issues/43781 complies with our MSVR, we can add nice banners in the docs for the methods behind this feature-gate.