[package] name = "lndk" version = "0.3.0" edition = "2021" repository = "https://github.com/lndk-org/lndk" [[bin]] name = "lndk-cli" path = "src/cli.rs" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [package.metadata.configure_me] spec = "config_spec.toml" [features] itest = ["dep:bitcoincore-rpc", "dep:corepc-node", "dep:chrono", "dep:ldk-sample"] [dependencies] async-trait = "0.1.66" bitcoin = { version = "0.32.6", features = ["rand"] } clap = { version = "4.4.6", features = ["derive", "string"] } futures = "0.3.26" home = "0.5.5" # lightning = { version = "0.1.3", features = ["_test_utils"] } # Branch port commit https://github.com/lightningdevkit/rust-lightning/commit/928429833507eb98b1f9a3793da4fe4527e11435 # from main branch on top of version 0.1.3, plus offer_amount=0 fix from # https://github.com/lightningdevkit/rust-lightning/pull/4487 (cherry-picked). # TODO: Use main crate when version 0.2.X is deployed. lightning = { git = "https://github.com/vincenzopalazzo/rust-lightning", branch = "2025-06-cherry-pick-exposed-offer-amount-fix", features = ["dnssec"] } rand_chacha = "0.9.0" rand_core = { version = "0.9.3", features = ["os_rng"] } log = "0.4.17" log4rs = { version = "1.2.0", features = ["file_appender"] } rcgen = { version = "0.14.3", features = ["pem", "x509-parser"] } tokio = { version = "1.25.0", features = ["rt", "rt-multi-thread", "signal", "test-util"] } tonic = { version = "0.14.2", features = ["tls-ring", "transport" ] } tonic-prost = "0.14.2" tonic-types = "0.14.2" tonic_lnd = { git = "https://github.com/lndk-org/tonic_lnd", rev="f89f49aadc439b37d65947cc454eecffdc8c35e0", package="lndk-tonic-lnd", features = ["lightningrpc", "routerrpc", "versionrpc"] } hex = "0.4.3" configure_me = "0.4.0" bytes = "1.11.1" time = "0.3.47" rustls-webpki = "0.103.10" tar = "0.4.45" triggered = "0.1.2" prost = "0.14.1" async_fn_traits = "0.1.1" # Integration test dependencies, only enabled with itest feature bitcoincore-rpc = { version = "0.19.0", optional = true } corepc-node = { version = "0.8.0", features = [ "28_0", "download"], optional = true } chrono = { version = "0.4.26", optional = true } ldk-sample = { git = "https://github.com/a-mpch/ldk-sample", branch = "2025-06-use-forked-ldk", optional = true } [dev-dependencies] mockall = "0.13.1" tempfile = "3.5.0" [build-dependencies] configure_me_codegen = "0.4.4" tonic-prost-build = "0.14.2" # The profile that 'cargo dist' will build with [profile.dist] inherits = "release" lto = "thin" # Ensure ldk-sample (and any other transitive dep) uses the same rust-lightning # fork as lndk itself, avoiding duplicate crate versions in the lockfile. [patch."https://github.com/a-mpch/rust-lightning"] lightning = { git = "https://github.com/vincenzopalazzo/rust-lightning", branch = "2025-06-cherry-pick-exposed-offer-amount-fix" } lightning-invoice = { git = "https://github.com/vincenzopalazzo/rust-lightning", branch = "2025-06-cherry-pick-exposed-offer-amount-fix" } lightning-types = { git = "https://github.com/vincenzopalazzo/rust-lightning", branch = "2025-06-cherry-pick-exposed-offer-amount-fix" } lightning-net-tokio = { git = "https://github.com/vincenzopalazzo/rust-lightning", branch = "2025-06-cherry-pick-exposed-offer-amount-fix" } lightning-persister = { git = "https://github.com/vincenzopalazzo/rust-lightning", branch = "2025-06-cherry-pick-exposed-offer-amount-fix" } lightning-background-processor = { git = "https://github.com/vincenzopalazzo/rust-lightning", branch = "2025-06-cherry-pick-exposed-offer-amount-fix" } lightning-rapid-gossip-sync = { git = "https://github.com/vincenzopalazzo/rust-lightning", branch = "2025-06-cherry-pick-exposed-offer-amount-fix" } lightning-block-sync = { git = "https://github.com/vincenzopalazzo/rust-lightning", branch = "2025-06-cherry-pick-exposed-offer-amount-fix" } lightning-dns-resolver = { git = "https://github.com/vincenzopalazzo/rust-lightning", branch = "2025-06-cherry-pick-exposed-offer-amount-fix" } possiblyrandom = { git = "https://github.com/vincenzopalazzo/rust-lightning", branch = "2025-06-cherry-pick-exposed-offer-amount-fix" } [lints.rust.unexpected_cfgs] level = "forbid" # When adding a new cfg attribute, ensure that it is added to this list. check-cfg = [ "cfg(itest)" ]