From b51a46b943e893de04cf668376128a793aa03e90 Mon Sep 17 00:00:00 2001 From: ardocrat Date: Thu, 4 Jun 2026 18:06:32 +0300 Subject: [PATCH] build: update node and wallet to latest versions --- Cargo.lock | 1 + node | 2 +- src/node/node.rs | 2 +- src/wallet/types.rs | 2 +- src/wallet/wallet.rs | 19 +++++++++---------- wallet | 2 +- 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index cc9a9eb..daeae6c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4275,6 +4275,7 @@ dependencies = [ "easy-jsonrpc-mw", "futures 0.3.31", "grin_api", + "grin_chain", "grin_core", "grin_keychain", "grin_util", diff --git a/node b/node index f3796fa..386ac1e 160000 --- a/node +++ b/node @@ -1 +1 @@ -Subproject commit f3796fa27bc908817a53759c22cb406270dd6a29 +Subproject commit 386ac1ed5c37d44853c63e294242b16ebc12e963 diff --git a/src/node/node.rs b/src/node/node.rs index b2f6c05..14fa1e2 100644 --- a/src/node/node.rs +++ b/src/node/node.rs @@ -682,7 +682,7 @@ fn start_node_server() -> Result { // Start integrated node server. let api_chan: &'static mut (oneshot::Sender<()>, oneshot::Receiver<()>) = Box::leak(Box::new(oneshot::channel::<()>())); - let server_result = Server::new(server_config, None, api_chan); + let server_result = Server::new(server_config, None, None, api_chan); server_result } diff --git a/src/wallet/types.rs b/src/wallet/types.rs index 0e3b188..4c3ecd3 100644 --- a/src/wallet/types.rs +++ b/src/wallet/types.rs @@ -122,7 +122,7 @@ pub type WalletInstance = Arc< Box< dyn WalletInst< 'static, - DefaultLCProvider<'static, HTTPNodeClient, ExtKeychain>, + DefaultLCProvider, HTTPNodeClient, ExtKeychain, >, diff --git a/src/wallet/wallet.rs b/src/wallet/wallet.rs index 2cb2cba..a4b9b6c 100644 --- a/src/wallet/wallet.rs +++ b/src/wallet/wallet.rs @@ -35,7 +35,7 @@ use grin_wallet_api::Owner; use grin_wallet_controller::command::parse_slatepack; use grin_wallet_controller::controller; use grin_wallet_controller::controller::ForeignAPIHandlerV2; -use grin_wallet_impls::{DefaultLCProvider, DefaultWalletImpl, HTTPNodeClient, LMDBBackend}; +use grin_wallet_impls::{DefaultLCProvider, DefaultWalletImpl, HTTPNodeClient}; use grin_wallet_libwallet::api_impl::owner::{ cancel_tx, init_send_tx, retrieve_summary_info, retrieve_txs, verify_payment_proof, }; @@ -206,8 +206,8 @@ impl Wallet { ) .map_err(|_| Error::IO("Seed file creation error".to_string()))?; let node_client = Self::create_node_client(&config)?; - let mut wallet: LMDBBackend<'static, HTTPNodeClient, ExtKeychain> = - match LMDBBackend::new(path.to_str().unwrap(), node_client) { + let mut wallet: WalletBackend = + match WalletBackend::new(path.to_str().unwrap(), node_client) { Err(_) => { return Err(Error::Lifecycle("DB creation error".to_string()).into()); } @@ -311,12 +311,12 @@ impl Wallet { node_client: C, ) -> Result>>>, Error> where - DefaultWalletImpl<'static, C>: WalletInst<'static, L, C, K>, + DefaultWalletImpl: WalletInst<'static, L, C, K>, L: WalletLCProvider<'static, C, K>, C: NodeClient + 'static, K: Keychain + 'static, { - let mut wallet = Box::new(DefaultWalletImpl::<'static, C>::new(node_client).unwrap()) + let mut wallet = Box::new(DefaultWalletImpl::::new(node_client).unwrap()) as Box>; let lc = wallet.lc_provider()?; lc.set_top_level_directory(config.get_data_path().as_str())?; @@ -666,7 +666,7 @@ impl Wallet { let parent_key_id = w.parent_key_id(); // Retrieve txs from database. let txs: Vec = w - .tx_log_iter() + .tx_log_iter()? .filter(|tx_entry| tx_entry.parent_key_id == parent_key_id) // Filter transactions to not show txs without slate (usually unspent outputs). .filter(|tx| { @@ -708,7 +708,7 @@ impl Wallet { let w = lc.wallet_inst()?; let parent_key_id = w.parent_key_id(); // Retrieve txs from database. - w.tx_log_iter() + w.tx_log_iter()? .filter(|tx_entry| tx_entry.parent_key_id == parent_key_id) .filter(|tx_entry| { if tx_entry.tx_type == TxLogEntryType::TxSent @@ -1026,7 +1026,7 @@ impl Wallet { estimate_only: Some(true), ..Default::default() }; - let res = init_send_tx(&mut **w, self.keychain_mask().as_ref(), args, false); + let res = init_send_tx(w, self.keychain_mask().as_ref(), args, false); match res { Ok(slate) => Ok(slate.fee_fields.fee()), Err(e) => match e { @@ -1490,7 +1490,7 @@ impl Wallet { let w = lc.wallet_inst()?; // Find wallet transaction to update or create. let txs = w - .tx_log_iter() + .tx_log_iter()? .filter(|entry| { if let Some(excess) = entry.kernel_excess { return excess == proof.excess; @@ -1873,7 +1873,6 @@ async fn handle_task(w: &Wallet, t: WalletTask) { WalletTask::Send(a, r) => { w.send_creating.store(true, Ordering::Relaxed); if let Ok(s) = w.send(*a, r.clone()) { - error!("send amount: {}", s.amount); sync_wallet_data(&w, false); let tx = w.retrieve_tx_by_id(None, Some(s.id)); if let Some(tx) = tx { diff --git a/wallet b/wallet index 065825b..8847ee5 160000 --- a/wallet +++ b/wallet @@ -1 +1 @@ -Subproject commit 065825b8e6d74dfec6346a524ceecab7d24bfede +Subproject commit 8847ee51578301ea7e525eecfb2df50cd75d7cbb