Skip to content

Commit 0071c38

Browse files
authored
Merge pull request #133 from valentinewallace/2024-04-0.0.123
Update to LDK 0.0.123
2 parents e6dd91c + c394d2f commit 0071c38

File tree

6 files changed

+140
-76
lines changed

6 files changed

+140
-76
lines changed

Cargo.lock

Lines changed: 14 additions & 15 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ edition = "2018"
88
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
99

1010
[dependencies]
11-
lightning = { version = "0.0.121", features = ["max_level_trace"] }
12-
lightning-block-sync = { version = "0.0.121", features = [ "rpc-client", "tokio" ] }
13-
lightning-invoice = { version = "0.29.0" }
14-
lightning-net-tokio = { version = "0.0.121" }
15-
lightning-persister = { version = "0.0.121" }
16-
lightning-background-processor = { version = "0.0.121", features = [ "futures" ] }
17-
lightning-rapid-gossip-sync = { version = "0.0.121" }
11+
lightning = { version = "0.0.123", features = ["max_level_trace"] }
12+
lightning-block-sync = { version = "0.0.123", features = [ "rpc-client", "tokio" ] }
13+
lightning-invoice = { version = "0.31.0" }
14+
lightning-net-tokio = { version = "0.0.123" }
15+
lightning-persister = { version = "0.0.123" }
16+
lightning-background-processor = { version = "0.0.123", features = [ "futures" ] }
17+
lightning-rapid-gossip-sync = { version = "0.0.123" }
1818

1919
base64 = "0.13.0"
2020
bitcoin = "0.30.2"

src/bitcoind_client.rs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ use bitcoin::{Network, OutPoint, TxOut, WPubkeyHash};
1818
use lightning::chain::chaininterface::{BroadcasterInterface, ConfirmationTarget, FeeEstimator};
1919
use lightning::events::bump_transaction::{Utxo, WalletSource};
2020
use lightning::log_error;
21+
use lightning::sign::ChangeDestinationSource;
2122
use lightning::util::logger::Logger;
2223
use lightning_block_sync::http::HttpEndpoint;
2324
use lightning_block_sync::rpc::RpcClient;
@@ -317,6 +318,14 @@ impl BroadcasterInterface for BitcoindClient {
317318
}
318319
}
319320

321+
impl ChangeDestinationSource for BitcoindClient {
322+
fn get_change_destination_script(&self) -> Result<ScriptBuf, ()> {
323+
tokio::task::block_in_place(move || {
324+
Ok(self.handle.block_on(async move { self.get_new_address().await.script_pubkey() }))
325+
})
326+
}
327+
}
328+
320329
impl WalletSource for BitcoindClient {
321330
fn list_confirmed_utxos(&self) -> Result<Vec<Utxo>, ()> {
322331
let utxos = tokio::task::block_in_place(move || {

src/cli.rs

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -286,7 +286,7 @@ pub(crate) fn poll_for_user_input(
286286
);
287287
},
288288
"getoffer" => {
289-
let offer_builder = channel_manager.create_offer_builder(String::new());
289+
let offer_builder = channel_manager.create_offer_builder();
290290
if let Err(e) = offer_builder {
291291
println!("ERROR: Failed to initiate offer building: {:?}", e);
292292
continue;
@@ -603,14 +603,14 @@ fn node_info(channel_manager: &Arc<ChannelManager>, peer_manager: &Arc<PeerManag
603603
println!("\t\t num_usable_channels: {}", chans.iter().filter(|c| c.is_usable).count());
604604
let local_balance_msat = chans.iter().map(|c| c.balance_msat).sum::<u64>();
605605
println!("\t\t local_balance_msat: {}", local_balance_msat);
606-
println!("\t\t num_peers: {}", peer_manager.get_peer_node_ids().len());
606+
println!("\t\t num_peers: {}", peer_manager.list_peers().len());
607607
println!("\t}},");
608608
}
609609

610610
fn list_peers(peer_manager: Arc<PeerManager>) {
611611
println!("\t{{");
612-
for (pubkey, _) in peer_manager.get_peer_node_ids() {
613-
println!("\t\t pubkey: {}", pubkey);
612+
for peer_details in peer_manager.list_peers() {
613+
println!("\t\t pubkey: {}", peer_details.counterparty_node_id);
614614
}
615615
println!("\t}},");
616616
}
@@ -701,8 +701,8 @@ fn list_payments(
701701
pub(crate) async fn connect_peer_if_necessary(
702702
pubkey: PublicKey, peer_addr: SocketAddr, peer_manager: Arc<PeerManager>,
703703
) -> Result<(), ()> {
704-
for (node_pubkey, _) in peer_manager.get_peer_node_ids() {
705-
if node_pubkey == pubkey {
704+
for peer_details in peer_manager.list_peers() {
705+
if peer_details.counterparty_node_id == pubkey {
706706
return Ok(());
707707
}
708708
}
@@ -725,7 +725,7 @@ pub(crate) async fn do_connect_peer(
725725
_ = &mut connection_closed_future => return Err(()),
726726
_ = tokio::time::sleep(Duration::from_millis(10)) => {},
727727
};
728-
if peer_manager.get_peer_node_ids().iter().find(|(id, _)| *id == pubkey).is_some() {
728+
if peer_manager.peer_by_node_id(&pubkey).is_some() {
729729
return Ok(());
730730
}
731731
}
@@ -747,8 +747,7 @@ fn do_disconnect_peer(
747747
}
748748

749749
//check the pubkey matches a valid connected peer
750-
let peers = peer_manager.get_peer_node_ids();
751-
if !peers.iter().any(|(pk, _)| &pubkey == pk) {
750+
if peer_manager.peer_by_node_id(&pubkey).is_none() {
752751
println!("Error: Could not find peer {}", pubkey);
753752
return Err(());
754753
}

0 commit comments

Comments
 (0)