Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
86 commits
Select commit Hold shift + click to select a range
ca4d4c3
Reject oversized splice-out amounts
tnull Jun 10, 2026
10ac933
Prevent late cancellable runtime tasks during shutdown
tnull Jun 10, 2026
0713f6d
Move `liquidity.rs` to `liquidity/mod.rs` module directory
Camillarhi Mar 30, 2026
07dbde9
Move LSPS1 client logic into `liquidity/client/lsps1.rs`
Camillarhi Apr 16, 2026
7890b78
Move LSPS1 client event handling into `liquidity/client/lsps1.rs`
Camillarhi Apr 29, 2026
cab8892
Move LSPS2 client logic into `liquidity/client/lsps2.rs`
Camillarhi Apr 16, 2026
1f02b86
Move LSPS2 client event handling into `liquidity/client/lsps2.rs`
Camillarhi Apr 29, 2026
aa2cbfb
Move LSPS2 service logic into `liquidity/service/lsps2.rs`
Camillarhi Apr 16, 2026
96ba539
Move LSPS2 service event handling into `liquidity/service/lsps2.rs`
Camillarhi Apr 29, 2026
988ba66
Refactor liquidity source to support multiple LSP nodes
Camillarhi Apr 29, 2026
5191217
Collapse NodeCustomMessageHandler enum into a struct
Camillarhi May 7, 2026
5e5aa6b
Merge pull request #928 from tnull/2026-06-runtime-cancellable-shutdown
tnull Jun 11, 2026
cef4531
Merge pull request #927 from tnull/2026-06-fix-splice-out-capacity-units
tnull Jun 11, 2026
ef413be
Document pre-1.0 compatibility guarantees
tnull Jun 11, 2026
65f774d
Monitor v0.7.0 serialization downgrade compatibility
tnull Jun 11, 2026
a3a7606
Mention Postgres support in README
tnull Jun 11, 2026
010b483
Merge pull request #931 from tnull/2026-06-compat-guarantees-downgrad…
tnull Jun 11, 2026
926c18a
Merge pull request #792 from Camillarhi/multi-lsp-support
tnull Jun 12, 2026
2769def
Reuse Electrum client for transaction sync
tnull Jun 12, 2026
1c89247
Merge pull request #938 from tnull/2026-06-fix-488-electrum-client-reuse
tankyleo Jun 13, 2026
df8bf27
Update vss-client to 0.6
benthecarman Jun 11, 2026
5933155
Extract build_vss_store test helper
benthecarman Apr 14, 2026
2c8b658
Refactor list_all_keys into reusable list_keys
benthecarman Apr 14, 2026
38b65b2
Extract BOLT11 send helper
benthecarman Jun 12, 2026
d3faf8e
Expose BOLT11 underpayment sends
benthecarman Jun 12, 2026
9ab2106
Reject overflowing unified receive amounts
benthecarman Jun 12, 2026
187056b
Avoid Bolt11 claim amount underflow
benthecarman Jun 12, 2026
4a449fc
Deduplicate registered chain txids
benthecarman Jun 12, 2026
5ad916c
Merge pull request #940 from benthecarman/over-underflows
tnull Jun 16, 2026
1f371c5
Replace deprecated active_tasks_count with num_alive_tasks
enigbe Jun 17, 2026
860cd5c
Merge pull request #941 from enigbe/2026-06-replace-deprecated-active…
tnull Jun 17, 2026
5429331
Add PaginatedKVStore support to VssStore
benthecarman Apr 14, 2026
fb7738f
Merge pull request #864 from benthecarman/paginated-vss
tnull Jun 18, 2026
4fa33ed
Run `cargo +nightly fmt` on main
tnull Jun 18, 2026
4b1326e
Merge pull request #942 from tnull/2026-06-cargo-fmt
tnull Jun 18, 2026
5744459
Expose per-channel features in ChannelDetails
enigbe Mar 23, 2026
8048359
Add ReserveType to ChannelDetails
enigbe Mar 23, 2026
fee7a73
Expose feature helper APIs through FFI
enigbe Apr 22, 2026
c7e001b
Merge pull request #841 from enigbe/2026-03-channel-reserve-type-expo…
tnull Jun 23, 2026
4aac5e8
Merge pull request #939 from benthecarman/underpay-htlc
tnull Jun 24, 2026
5907738
Fix 0.6.2 compatibility test shutdown
tnull Jun 24, 2026
8dd06bf
Merge pull request #947 from tnull/2026-06-fix-062-compat-shutdown
tnull Jun 24, 2026
7fa8d0f
Extract shared setup helpers in Python binding tests
heyolaniran Jun 15, 2026
b318ccd
Add spontaneous payment Python binding test
heyolaniran Jun 15, 2026
8a54260
Merge pull request #923 from heyolaniran/feat/python_binding_test
tnull Jun 24, 2026
6560dff
Keep insert-or-update cache unchanged on persist failure
benthecarman Jun 15, 2026
e3793b8
Keep update cache unchanged on persist failure
benthecarman Jun 15, 2026
531d52d
Keep removed objects cached on persist failure
benthecarman Jun 15, 2026
0d2d71a
Cover insert cache behavior on persist failure
benthecarman Jun 15, 2026
2288ab5
Require PaginatedKVStore for all stores
benthecarman Jun 18, 2026
83f71f0
Add 60 minute timeout to CI jobs
benthecarman Jun 5, 2026
c2ee8b0
Split CI between self-hosted and GitHub runners
benthecarman Jun 5, 2026
678732d
Bump BDK wallet dependencies
tnull Jun 12, 2026
b384487
Use BDK mempool wallet events
tnull Jun 12, 2026
8ddfee3
Merge pull request #943 from benthecarman/paginated
tnull Jun 25, 2026
f509489
Track reorged on-chain payments as pending
tnull Jun 11, 2026
7d9afb3
Group pending payment storage constants
tnull Jun 11, 2026
65ee795
Keep pending payment details internal
tnull Jun 11, 2026
c82c2e5
Preserve anchor reserve during RBF
tnull Jun 15, 2026
aab4bff
Merge pull request #933 from benthecarman/data-store-insert-or-update
tnull Jun 26, 2026
558ec82
Fix DataStore failing store pagination
tnull Jun 26, 2026
c66676c
Merge pull request #952 from tnull/2026-06-fix-datastore-rebase-conflict
tnull Jun 26, 2026
2bcd421
Implement `MigratableKVStore` for sqlite
benthecarman Jun 23, 2026
3fa778c
Implement `MigratableKVStore` for postgres
benthecarman Jun 23, 2026
43078aa
Refactor VSS key extraction
benthecarman Jun 23, 2026
18fa93a
Implement `MigratableKVStore` for VSS
benthecarman Jun 23, 2026
43b122b
Implement `MigratableKVStore` for InMemoryStore
benthecarman Jun 23, 2026
ad4a3a8
Merge pull request #937 from tnull/2026-06-fix-770-payment-store-foll…
tnull Jun 26, 2026
93797a2
Classify on-chain payments with a durable transaction type
jkczyz Jun 23, 2026
79fd087
Track channel-open and splice payments through wallet sync
jkczyz Jun 23, 2026
c8bc878
Derive on-chain payment fields in a single place
jkczyz Jun 26, 2026
c34473d
Add bump_channel_funding_fee to fee-bump a pending splice
jkczyz Jun 23, 2026
9f98db5
Test funding-payment tracking through wallet sync
jkczyz Jun 23, 2026
e541265
Report the confirmed splice candidate's fee, not the last broadcast's
jkczyz Jun 23, 2026
5135534
Cover splice-out classification and funding-payment reorg
jkczyz Jun 23, 2026
54eb085
Honor the funding template's RBF minimum feerate when splicing
jkczyz Jun 24, 2026
f9a64a0
Refactor the splice funding-feerate helpers into fee_estimator.rs
jkczyz Jun 24, 2026
5d21bd7
Wait for funding classification before syncing in splice tests
jkczyz Jun 26, 2026
42276a1
Add end-to-end KV store migration test
benthecarman Jun 25, 2026
3b296f2
Merge pull request #888 from jkczyz/2026-04-splicing-payment-using-tx…
tnull Jun 29, 2026
e3e7960
Merge pull request #922 from benthecarman/ci-timeouts
tnull Jun 29, 2026
c7cb7ef
Merge pull request #945 from benthecarman/migrate-dbs
tnull Jun 29, 2026
d0ed6a3
Abort on first-startup chain tip fetch failure
tnull Apr 21, 2026
72d2414
Add bitcoind wallet rescan height
tnull Jun 26, 2026
101c827
Add forced wallet full scans
tnull Jun 26, 2026
f2e44fd
Merge pull request #884 from tnull/2026-04-abort-on-first-startup-tip…
tnull Jun 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/audit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ on:

jobs:
audit:
timeout-minutes: 60
permissions:
issues: write
checks: write
Expand Down
12 changes: 7 additions & 5 deletions .github/workflows/benchmarks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,25 +8,27 @@ concurrency:

jobs:
benchmark:
runs-on: ubuntu-latest
timeout-minutes: 60
runs-on: self-hosted
env:
TOOLCHAIN: stable
steps:
- name: Checkout source code
uses: actions/checkout@v6
uses: actions/checkout@v4
- name: Install Rust toolchain
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile=minimal --default-toolchain stable
rustup override set stable
- name: Set Rust override
run: rustup override set stable
- name: Enable caching for bitcoind
id: cache-bitcoind
uses: actions/cache@v5
uses: actions/cache@v4
with:
path: bin/bitcoind-${{ runner.os }}-${{ runner.arch }}
key: bitcoind-29.0-${{ runner.os }}-${{ runner.arch }}
- name: Enable caching for electrs
id: cache-electrs
uses: actions/cache@v5
uses: actions/cache@v4
with:
path: bin/electrs-${{ runner.os }}-${{ runner.arch }}
key: electrs-${{ runner.os }}-${{ runner.arch }}
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/cln-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ concurrency:

jobs:
check-cln:
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- name: Checkout repository
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/cron-weekly-rustfmt.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ on:
jobs:
format:
name: Nightly rustfmt
runs-on: ubuntu-24.04
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@nightly
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/eclair-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ concurrency:

jobs:
check-eclair:
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- name: Checkout repository
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/hrn-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@ concurrency:

jobs:
build-and-test:
runs-on: ubuntu-latest
timeout-minutes: 60
runs-on: self-hosted

steps:
- name: Checkout source code
Expand Down Expand Up @@ -42,4 +43,4 @@ jobs:
- name: Run HRN Integration Tests
run: |
RUSTFLAGS="--cfg no_download --cfg hrn_tests $RUSTFLAGS" cargo test --test integration_tests_hrn
RUSTFLAGS="--cfg no_download --cfg hrn_tests $RUSTFLAGS" cargo test --test integration_tests_hrn --features uniffi
RUSTFLAGS="--cfg no_download --cfg hrn_tests $RUSTFLAGS" cargo test --test integration_tests_hrn --features uniffi
1 change: 1 addition & 0 deletions .github/workflows/kotlin.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ concurrency:

jobs:
check-kotlin:
timeout-minutes: 60
runs-on: ubuntu-latest

env:
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/lnd-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ concurrency:

jobs:
check-lnd:
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- name: Checkout repository
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ concurrency:

jobs:
check-python:
timeout-minutes: 60
runs-on: ubuntu-latest

env:
Expand Down
26 changes: 15 additions & 11 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,11 @@ concurrency:

jobs:
build:
timeout-minutes: 60
strategy:
matrix:
platform: [
ubuntu-latest,
self-hosted,
macos-latest,
windows-latest,
]
Expand All @@ -24,7 +25,7 @@ jobs:
- toolchain: stable
check-fmt: true
build-uniffi: true
platform: ubuntu-latest
platform: self-hosted
- toolchain: stable
platform: macos-latest
- toolchain: stable
Expand All @@ -34,7 +35,7 @@ jobs:
runs-on: ${{ matrix.platform }}
steps:
- name: Checkout source code
uses: actions/checkout@v6
uses: actions/checkout@v4
- name: Install Rust ${{ matrix.toolchain }} toolchain
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile=minimal --default-toolchain ${{ matrix.toolchain }}
Expand All @@ -50,13 +51,13 @@ jobs:
run: echo "RUSTFLAGS=-D warnings" >> "$GITHUB_ENV"
- name: Enable caching for bitcoind
id: cache-bitcoind
uses: actions/cache@v5
uses: actions/cache@v4
with:
path: bin/bitcoind-${{ runner.os }}-${{ runner.arch }}
key: bitcoind-29.0-${{ runner.os }}-${{ runner.arch }}
- name: Enable caching for electrs
id: cache-electrs
uses: actions/cache@v5
uses: actions/cache@v4
with:
path: bin/electrs-${{ runner.os }}-${{ runner.arch }}
key: electrs-${{ runner.os }}-${{ runner.arch }}
Expand Down Expand Up @@ -92,26 +93,29 @@ jobs:

linting:
name: Linting
runs-on: ubuntu-latest
timeout-minutes: 60
runs-on: self-hosted
steps:
- name: Checkout source code
uses: actions/checkout@v6
- name: Install Rust and clippy
uses: actions/checkout@v4
- name: Install Rust stable toolchain
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile=minimal --default-toolchain stable
rustup component add clippy
- name: Add clippy component
run: rustup component add clippy
- name: Ban `unwrap` in library code
run: |
cargo clippy --lib --verbose --color always -- -A warnings -D clippy::unwrap_used -A clippy::tabs_in_doc_comments
cargo clippy --lib --features uniffi --verbose --color always -- -A warnings -D clippy::unwrap_used -A clippy::tabs_in_doc_comments

doc:
name: Documentation
runs-on: ubuntu-latest
timeout-minutes: 60
runs-on: self-hosted
env:
RUSTDOCFLAGS: -Dwarnings
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@nightly
- uses: dtolnay/install@cargo-docs-rs
- run: cargo docs-rs
1 change: 1 addition & 0 deletions .github/workflows/semver.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ on: [push, pull_request]

jobs:
semver-checks:
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- name: Checkout source code
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/swift.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ concurrency:

jobs:
check-swift:
timeout-minutes: 60
runs-on: macos-latest

steps:
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/vss-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ concurrency:

jobs:
build-and-test:
timeout-minutes: 60
runs-on: ubuntu-latest

services:
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/vss-no-auth-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ concurrency:

jobs:
build-and-test:
timeout-minutes: 60
runs-on: ubuntu-latest

services:
Expand Down
19 changes: 19 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,25 @@
## Compatibility Notes
- Pending JIT-channel payments created before upgrading may fail after upgrade because the
prior LSPS2 fee-limit state stored in `PaymentKind::Bolt11Jit` is not migrated.
- Users of the VSS storage backend must upgrade their VSS server to at least version
`v0.1.0-alpha.0` before upgrading LDK Node.

## Feature and API updates
- The Bitcoin Core RPC and REST chain-source builder methods now accept an optional
`wallet_rescan_from_height` argument. Passing a height lets fresh wallets rescan from a known
birthday block instead of checkpointing at the current tip, which is useful when restoring a
wallet on a pruned node where the full history is unavailable but the wallet birthday height is
known. Existing wallets are not rewound, and future heights fail the build. Passing `Some(0)`
rescans from genesis; passing `None` keeps the default current-tip checkpoint behavior. (#884)
- `EsploraSyncConfig` and `ElectrumSyncConfig` now support `force_wallet_full_scan`. When set,
the on-chain wallet keeps using BDK `full_scan` instead of incremental sync until a full scan
succeeds, allowing restored wallets to rediscover funds sent to previously-unknown addresses.

## Bug Fixes and Improvements
- Building a fresh node against a Bitcoin Core RPC or REST chain source that fails to return the
current chain tip now aborts with a new `BuildError::ChainTipFetchFailed` variant instead of
silently pinning the wallet birthday to genesis, which would have forced a full-history rescan
once the chain source became reachable again. (#884)

# 0.7.0 - Dec. 3, 2025
This seventh minor release introduces numerous new features, bug fixes, and API improvements. In particular, it adds support for channel Splicing, Async Payments, as well as sourcing chain data from a Bitcoin Core REST backend.
Expand Down
11 changes: 6 additions & 5 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -54,10 +54,10 @@ lightning-liquidity = { git = "https://github.com/lightningdevkit/rust-lightning
lightning-macros = { git = "https://github.com/lightningdevkit/rust-lightning", rev = "3dfcc4cca1866c5e5d4d4eaf3b82e09584e2ce5c" }
lightning-dns-resolver = { git = "https://github.com/lightningdevkit/rust-lightning", rev = "3dfcc4cca1866c5e5d4d4eaf3b82e09584e2ce5c" }

bdk_chain = { version = "0.23.0", default-features = false, features = ["std"] }
bdk_esplora = { version = "0.22.0", default-features = false, features = ["async-https-rustls", "tokio"]}
bdk_chain = { version = "0.23.3", default-features = false, features = ["std"] }
bdk_esplora = { version = "0.22.2", default-features = false, features = ["async-https-rustls", "tokio"]}
bdk_electrum = { version = "0.24.0", default-features = false, features = ["use-rustls-ring"]}
bdk_wallet = { version = "2.3.0", default-features = false, features = ["std", "keys-bip39"]}
bdk_wallet = { version = "3.1.0", default-features = false, features = ["std", "keys-bip39"]}

bitreq = { version = "0.3", default-features = false, features = ["async-https", "json-using-serde"] }
rustls = { version = "0.23", default-features = false }
Expand All @@ -69,7 +69,7 @@ bip21 = { version = "0.5", features = ["std"], default-features = false }
base64 = { version = "0.22.1", default-features = false, features = ["std"] }
getrandom = { version = "0.3", default-features = false }
chrono = { version = "0.4", default-features = false, features = ["clock"] }
tokio = { version = "1.37", default-features = false, features = [ "rt-multi-thread", "time", "sync", "macros", "net" ] }
tokio = { version = "1.39", default-features = false, features = [ "rt-multi-thread", "time", "sync", "macros", "net" ] }
esplora-client = { version = "0.12", default-features = false, features = ["tokio", "async-https-rustls"] }
electrum-client = { version = "0.25", default-features = false, features = ["proxy", "use-rustls-ring"] }
libc = "0.2"
Expand All @@ -82,7 +82,7 @@ async-trait = { version = "0.1", default-features = false }
tokio-postgres = { version = "0.7", default-features = false, features = ["runtime"], optional = true }
native-tls = { version = "0.2", default-features = false, optional = true }
postgres-native-tls = { version = "0.5", default-features = false, features = ["runtime"], optional = true }
vss-client = { package = "vss-client-ng", version = "0.5" }
vss-client = { package = "vss-client-ng", version = "0.6" }
prost = { version = "0.11.6", default-features = false}
#bitcoin-payment-instructions = { version = "0.6" }
bitcoin-payment-instructions = { git = "https://github.com/tnull/bitcoin-payment-instructions", rev = "ff09ce9401afa448549a8f101172700bcd14d7bb" }
Expand All @@ -92,6 +92,7 @@ winapi = { version = "0.3", features = ["winbase"] }

[dev-dependencies]
lightning = { git = "https://github.com/lightningdevkit/rust-lightning", rev = "3dfcc4cca1866c5e5d4d4eaf3b82e09584e2ce5c", features = ["std", "_test_utils"] }
lightning-persister = { git = "https://github.com/lightningdevkit/rust-lightning", rev = "3dfcc4cca1866c5e5d4d4eaf3b82e09584e2ce5c", features = ["tokio"] }
rand = { version = "0.9.2", default-features = false, features = ["std", "thread_rng", "os_rng"] }
proptest = "1.0.0"
regex = "1.5.6"
Expand Down
7 changes: 6 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,14 @@ LDK Node currently comes with a decidedly opinionated set of design choices:

- On-chain data is handled by the integrated [BDK][bdk] wallet.
- Chain data may currently be sourced from the Bitcoin Core RPC interface, or from an [Electrum][electrum] or [Esplora][esplora] server.
- Wallet and channel state may be persisted to an [SQLite][sqlite] database, to file system, or to a custom back-end to be implemented by the user.
- Wallet and channel state may be persisted to an [SQLite][sqlite] or [PostgreSQL][postgresql] database, to file system, or to a custom back-end to be implemented by the user.
- Gossip data may be sourced via Lightning's peer-to-peer network or the [Rapid Gossip Sync](https://docs.rs/lightning-rapid-gossip-sync/*/lightning_rapid_gossip_sync/) protocol.
- Entropy for the Lightning and on-chain wallets may be sourced from raw bytes or a [BIP39](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki) mnemonic. In addition, LDK Node offers the means to generate and persist the entropy bytes to disk.

## Compatibility

LDK Node does not provide a stable public API until v1.0. Persisted node state is backwards compatible: newer releases are guaranteed to load state written by older releases. Downgrades are not supported, so state written by a newer release may not load with an older release.

## Language Support
LDK Node itself is written in [Rust][rust] and may therefore be natively added as a library dependency to any `std` Rust program. However, beyond its Rust API it also offers language bindings for [Swift][swift], [Kotlin][kotlin], and [Python][python] based on the [UniFFI](https://github.com/mozilla/uniffi-rs/).

Expand All @@ -81,6 +85,7 @@ The Minimum Supported Rust Version (MSRV) is currently 1.85.0.
[electrum]: https://github.com/spesmilo/electrum-protocol
[esplora]: https://github.com/Blockstream/esplora
[sqlite]: https://sqlite.org/
[postgresql]: https://www.postgresql.org/
[rust]: https://www.rust-lang.org/
[swift]: https://www.swift.org/
[kotlin]: https://kotlinlang.org/
Expand Down
15 changes: 8 additions & 7 deletions bindings/ldk_node.udl
Original file line number Diff line number Diff line change
Expand Up @@ -38,13 +38,12 @@ interface Builder {
constructor(Config config);
void set_chain_source_esplora(string server_url, EsploraSyncConfig? config);
void set_chain_source_electrum(string server_url, ElectrumSyncConfig? config);
void set_chain_source_bitcoind_rpc(string rpc_host, u16 rpc_port, string rpc_user, string rpc_password);
void set_chain_source_bitcoind_rest(string rest_host, u16 rest_port, string rpc_host, u16 rpc_port, string rpc_user, string rpc_password);
void set_chain_source_bitcoind_rpc(string rpc_host, u16 rpc_port, string rpc_user, string rpc_password, u32? wallet_rescan_from_height);
void set_chain_source_bitcoind_rest(string rest_host, u16 rest_port, string rpc_host, u16 rpc_port, string rpc_user, string rpc_password, u32? wallet_rescan_from_height);
void set_gossip_source_p2p();
void set_gossip_source_rgs(string rgs_server_url);
void set_pathfinding_scores_source(string url);
void set_liquidity_source_lsps1(PublicKey node_id, SocketAddress address, string? token);
void set_liquidity_source_lsps2(PublicKey node_id, SocketAddress address, string? token);
void add_liquidity_source(PublicKey node_id, SocketAddress address, string? token, boolean trust_peer_0conf);
void set_storage_dir_path(string storage_dir_path);
void set_filesystem_logger(string? log_file_path, LogLevel? max_log_level);
void set_log_facade_logger();
Expand All @@ -60,7 +59,6 @@ interface Builder {
void set_node_alias(string node_alias);
[Throws=BuildError]
void set_async_payments_role(AsyncPaymentsRole? role);
void set_wallet_recovery_mode();
[Throws=BuildError]
Node build(NodeEntropy node_entropy);
[Throws=BuildError]
Expand Down Expand Up @@ -99,7 +97,7 @@ interface Node {
SpontaneousPayment spontaneous_payment();
OnchainPayment onchain_payment();
UnifiedPayment unified_payment();
LSPS1Liquidity lsps1_liquidity();
Liquidity liquidity();
[Throws=NodeError]
void lnurl_auth(string lnurl);
[Throws=NodeError]
Expand All @@ -125,6 +123,8 @@ interface Node {
[Throws=NodeError]
void splice_out([ByRef]UserChannelId user_channel_id, PublicKey counterparty_node_id, [ByRef]Address address, u64 splice_amount_sats);
[Throws=NodeError]
void bump_channel_funding_fee([ByRef]UserChannelId user_channel_id, PublicKey counterparty_node_id);
[Throws=NodeError]
void close_channel([ByRef]UserChannelId user_channel_id, PublicKey counterparty_node_id);
[Throws=NodeError]
void force_close_channel([ByRef]UserChannelId user_channel_id, PublicKey counterparty_node_id, string? reason);
Expand Down Expand Up @@ -167,7 +167,7 @@ interface FeeRate {

typedef interface UnifiedPayment;

typedef interface LSPS1Liquidity;
typedef interface Liquidity;

[Error]
enum NodeError {
Expand Down Expand Up @@ -275,6 +275,7 @@ dictionary LSPS1OrderStatus {
LSPS1OrderParams order_params;
LSPS1PaymentInfo payment_options;
LSPS1ChannelInfo? channel_state;
PublicKey counterparty_node_id;
};

[Remote]
Expand Down
Loading