From: Jeffrey Czyz Date: Sat, 9 Jul 2022 01:01:37 +0000 (-0500) Subject: Merge pull request #62 from TheBlueMatt/main X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=commitdiff_plain;h=e0ee4088a951eca37a932b3d50fc7f144658c4d9;hp=e369cf7ef945f51efe613c3a525f7327556210c5;p=ldk-sample Merge pull request #62 from TheBlueMatt/main Update to LDK 0.0.109 --- diff --git a/Cargo.lock b/Cargo.lock index 2226465..492feca 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -195,9 +195,9 @@ checksum = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77" [[package]] name = "itoa" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35" +checksum = "112c678d4050afce233f4f2852bb2eb519230b3cf12f33585275537d7e41578d" [[package]] name = "ldk-tutorial-node" @@ -224,24 +224,24 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.119" +version = "0.2.126" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bf2e165bb3457c8e098ea76f3e3bc9db55f87aa90d52d0e6be741470916aaa4" +checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836" [[package]] name = "lightning" -version = "0.0.108" +version = "0.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d885bf509066af86ae85354c8959028ad6192c22a2657ef8271e94029d30f9d0" +checksum = "740348ba79a57039390b13236e6a3d7fe5f5c1627702178b9c19cd397e45d07e" dependencies = [ "bitcoin", ] [[package]] name = "lightning-background-processor" -version = "0.0.108" +version = "0.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ba6fcb3cef50ae1027a89b40f847b771e831fad843673a350586e29b01b618b" +checksum = "bb6fed7a24f94ff2755bed7443ef637bc5dfb917738374a9669719ccc75aff18" dependencies = [ "bitcoin", "lightning", @@ -250,9 +250,9 @@ dependencies = [ [[package]] name = "lightning-block-sync" -version = "0.0.108" +version = "0.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8f1ed50f41785af19f5cd1225b668e87ef0d59bb84e6f8ef2542933e6082a2c" +checksum = "526e92067f3f034733619fbc38a0082590e0804a38ae9390bf217681a7ac00ac" dependencies = [ "bitcoin", "chunked_transfer", @@ -264,9 +264,9 @@ dependencies = [ [[package]] name = "lightning-invoice" -version = "0.16.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaafc1cebaf9ea8d2a57e60aae9fe6095554b8305714f8452cd8a20a3aa5b7ba" +checksum = "c87c47064c865a3e2f204837279a9a48c5f18ea4db8a56e813921793dc1f3cc5" dependencies = [ "bech32", "bitcoin_hashes", @@ -277,9 +277,9 @@ dependencies = [ [[package]] name = "lightning-net-tokio" -version = "0.0.108" +version = "0.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0170619152c4d6b947d5ed0de427b85691482a293e0cae52d4336a2220a776" +checksum = "1726bdb0d82e53861e89d0d34c0a7a575bf64f874dcf276805fccb847c883728" dependencies = [ "bitcoin", "lightning", @@ -288,9 +288,9 @@ dependencies = [ [[package]] name = "lightning-persister" -version = "0.0.108" +version = "0.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e9f154ee5b60e576973da61379767569e2ad7b61a361d716a7d15f37df7e0bc" +checksum = "3dc72fee1a517de6dce3bf2a5817314e0b2f8c80bf7bb0bc52f7aaa654714292" dependencies = [ "bitcoin", "libc", @@ -300,9 +300,9 @@ dependencies = [ [[package]] name = "lightning-rapid-gossip-sync" -version = "0.0.108" +version = "0.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08b9947e17c7b97bb267bf3fe6bd51493c1b03a104ab81b246ef3f3ac9077ed9" +checksum = "4bf4769cdd6024aef9d6c016afb70ea76ae572e6313216aac72f6a5b4f9f8ecb" dependencies = [ "bitcoin", "lightning", @@ -310,24 +310,24 @@ dependencies = [ [[package]] name = "log" -version = "0.4.14" +version = "0.4.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" +checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" dependencies = [ "cfg-if", ] [[package]] name = "memchr" -version = "2.4.1" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" +checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" [[package]] name = "mio" -version = "0.8.0" +version = "0.7.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba272f85fa0b41fc91872be579b3bbe0f56b792aa361a380eb669469f68dafb2" +checksum = "8067b404fe97c70829f082dec8bcf4f71225d7eaea1d8645349cb76fa06205cc" dependencies = [ "libc", "log", @@ -356,9 +356,9 @@ dependencies = [ [[package]] name = "num-integer" -version = "0.1.44" +version = "0.1.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db" +checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" dependencies = [ "autocfg", "num-traits", @@ -366,9 +366,9 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.14" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290" +checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" dependencies = [ "autocfg", ] @@ -385,9 +385,9 @@ dependencies = [ [[package]] name = "pin-project-lite" -version = "0.2.8" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e280fbe77cc62c91527259e9442153f4688736748d24660126286329742b4c6c" +checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" [[package]] name = "pin-utils" @@ -397,18 +397,18 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "proc-macro2" -version = "1.0.36" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029" +checksum = "dd96a1e8ed2596c337f8eae5f24924ec83f5ad5ab21ea8e455d3566c69fbcaf7" dependencies = [ - "unicode-xid", + "unicode-ident", ] [[package]] name = "quote" -version = "1.0.15" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "864d3e96a899863136fc6e99f3d7cae289dafe43bf2c5ac19b70df7210c0a145" +checksum = "3bcdf212e9776fbcb2d23ab029360416bb1706b1aea2d1a5ba002727cbcab804" dependencies = [ "proc-macro2", ] @@ -452,9 +452,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.9" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f" +checksum = "f3f6f92acf49d1b98f7a81226834412ada05458b7364277387724a237f062695" [[package]] name = "secp256k1" @@ -476,18 +476,18 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.136" +version = "1.0.138" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789" +checksum = "1578c6245786b9d168c5447eeacfb96856573ca56c9d68fdcf394be134882a47" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.136" +version = "1.0.138" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9" +checksum = "023e9b1467aef8a10fb88f25611870ada9800ef7e22afce356bb0d2387b6f27c" dependencies = [ "proc-macro2", "quote", @@ -496,9 +496,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.79" +version = "1.0.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e8d9fa5c3b304765ce1fd9c4c8a3de2c8db365a5b91be52f186efc675681d95" +checksum = "82c2c1fdcd807d1098552c5b9a36e425e42e9fbd7c6a37a8425f390f781f7fa7" dependencies = [ "itoa", "ryu", @@ -507,29 +507,19 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5" - -[[package]] -name = "socket2" -version = "0.4.4" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0" -dependencies = [ - "libc", - "winapi", -] +checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32" [[package]] name = "syn" -version = "1.0.86" +version = "1.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a65b3f4ffa0092e9887669db0eae07941f023991ab58ea44da8fe8e2d511c6b" +checksum = "c50aef8a904de4c23c788f104b7dddc7d6f79c647c7c8ce4cc8f73eb0ca773dd" dependencies = [ "proc-macro2", "quote", - "unicode-xid", + "unicode-ident", ] [[package]] @@ -545,26 +535,26 @@ dependencies = [ [[package]] name = "tokio" -version = "1.17.0" +version = "1.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2af73ac49756f3f7c01172e34a23e5d0216f6c32333757c2c61feb2bbff5a5ee" +checksum = "b9d0183f6f6001549ab68f8c7585093bb732beefbcf6d23a10b9b95c73a1dd49" dependencies = [ + "autocfg", "bytes", "libc", "memchr", "mio", "num_cpus", "pin-project-lite", - "socket2", "tokio-macros", "winapi", ] [[package]] name = "tokio-macros" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b557f72f448c511a979e2564e55d74e6c4432fc96ff4f6241bc6bded342643b7" +checksum = "9724f9a975fb987ef7a3cd9be0350edcbe130698af5b8f7a631e23d42d052484" dependencies = [ "proc-macro2", "quote", @@ -572,10 +562,10 @@ dependencies = [ ] [[package]] -name = "unicode-xid" -version = "0.2.2" +name = "unicode-ident" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" +checksum = "5bd2fe26506023ed7b5e1e315add59d6f584c621d037f9368fea9cfb988f368c" [[package]] name = "wasi" diff --git a/Cargo.toml b/Cargo.toml index ed5ad9c..74ce48b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,13 +8,13 @@ edition = "2018" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -lightning = { version = "0.0.108", features = ["max_level_trace"] } -lightning-block-sync = { version = "0.0.108", features = [ "rpc-client" ] } -lightning-invoice = { version = "0.16" } -lightning-net-tokio = { version = "0.0.108" } -lightning-persister = { version = "0.0.108" } -lightning-background-processor = { version = "0.0.108" } -lightning-rapid-gossip-sync = { version = "0.0.108" } +lightning = { version = "0.0.109", features = ["max_level_trace"] } +lightning-block-sync = { version = "0.0.109", features = [ "rpc-client" ] } +lightning-invoice = { version = "0.17" } +lightning-net-tokio = { version = "0.0.109" } +lightning-persister = { version = "0.0.109" } +lightning-background-processor = { version = "0.0.109" } +lightning-rapid-gossip-sync = { version = "0.0.109" } base64 = "0.13.0" bitcoin = "0.28.1" diff --git a/src/cli.rs b/src/cli.rs index bf2f792..6c0b756 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -1,7 +1,7 @@ use crate::disk; use crate::hex_utils; use crate::{ - ChannelManager, HTLCStatus, InvoicePayer, MillisatAmount, NetworkGraph, NodeAlias, PaymentInfo, + ChannelManager, HTLCStatus, InvoicePayer, MillisatAmount, NetworkGraph, PaymentInfo, PaymentInfoStorage, PeerManager, }; use bitcoin::hashes::sha256::Hash as Sha256; @@ -12,7 +12,7 @@ use lightning::chain::keysinterface::{KeysInterface, KeysManager, Recipient}; use lightning::ln::msgs::NetAddress; use lightning::ln::{PaymentHash, PaymentPreimage}; use lightning::routing::gossip::NodeId; -use lightning::util::config::{ChannelConfig, ChannelHandshakeLimits, UserConfig}; +use lightning::util::config::{ChannelHandshakeConfig, ChannelHandshakeLimits, UserConfig}; use lightning::util::events::EventHandler; use lightning_invoice::payment::PaymentError; use lightning_invoice::{utils, Currency, Invoice}; @@ -477,7 +477,7 @@ fn list_channels(channel_manager: &Arc, network_graph: &Arc, ) -> Result<(), ()> { let config = UserConfig { - peer_channel_config_limits: ChannelHandshakeLimits { + channel_handshake_limits: ChannelHandshakeLimits { // lnd's max to_self_delay is 2016, so we want to be compatible. their_to_self_delay: 2016, ..Default::default() }, - channel_options: ChannelConfig { announced_channel, ..Default::default() }, + channel_handshake_config: ChannelHandshakeConfig { + announced_channel, + ..Default::default() + }, ..Default::default() }; @@ -747,7 +750,7 @@ fn close_channel( fn force_close_channel( channel_id: [u8; 32], counterparty_node_id: PublicKey, channel_manager: Arc, ) { - match channel_manager.force_close_channel(&channel_id, &counterparty_node_id) { + match channel_manager.force_close_broadcasting_latest_txn(&channel_id, &counterparty_node_id) { Ok(()) => println!("EVENT: initiating channel force-close"), Err(e) => println!("ERROR: failed to force-close channel: {:?}", e), } diff --git a/src/disk.rs b/src/disk.rs index fe61418..681d742 100644 --- a/src/disk.rs +++ b/src/disk.rs @@ -88,7 +88,7 @@ pub(crate) fn read_scorer( ) -> ProbabilisticScorer, Arc> { let params = ProbabilisticScoringParameters::default(); if let Ok(file) = File::open(path) { - let args = (params, Arc::clone(&graph), Arc::clone(&logger)); + let args = (params.clone(), Arc::clone(&graph), Arc::clone(&logger)); if let Ok(scorer) = ProbabilisticScorer::read(&mut BufReader::new(file), args) { return scorer; } diff --git a/src/main.rs b/src/main.rs index 202b551..bfe5bff 100644 --- a/src/main.rs +++ b/src/main.rs @@ -116,21 +116,6 @@ type GossipSync = pub(crate) type NetworkGraph = gossip::NetworkGraph>; -struct NodeAlias<'a>(&'a [u8; 32]); - -impl fmt::Display for NodeAlias<'_> { - fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { - let alias = self - .0 - .iter() - .map(|b| *b as char) - .take_while(|c| *c != '\0') - .filter(|c| c.is_ascii_graphic() || *c == ' ') - .collect::(); - write!(f, "{}", alias) - } -} - async fn handle_ldk_events( channel_manager: &Arc, bitcoind_client: &BitcoindClient, network_graph: &NetworkGraph, keys_manager: &KeysManager, @@ -294,7 +279,7 @@ async fn handle_ldk_events( Some(node) => match &node.announcement_info { None => " from unnamed node".to_string(), Some(announcement) => { - format!(" from node {}", NodeAlias(&announcement.alias)) + format!(" from node {}", announcement.alias) } }, } @@ -474,7 +459,7 @@ async fn start_ldk() { // Step 8: Initialize the ChannelManager let mut user_config = UserConfig::default(); - user_config.peer_channel_config_limits.force_announced_channel_preference = false; + user_config.channel_handshake_limits.force_announced_channel_preference = false; let mut restarting_node = true; let (channel_manager_blockhash, channel_manager) = { if let Ok(mut f) = fs::File::open(format!("{}/manager", ldk_data_dir.clone())) {