From 527642e053052eae68a03de002d9deff3c10bf8f Mon Sep 17 00:00:00 2001 From: Omer Yacine Date: Thu, 25 Jul 2024 21:35:13 +0200 Subject: [PATCH 1/2] make src/mm2.rs the root lib of mm2_main instead of lib.rs. Seems like lib.rs isn't that popular and mm2 favored. Having lib.rs there forced us to write #[path = 'file/path.rs'] directive for every module we define, even the trivial ones that didn't need no #[path]. This commit fixes this by setting mm2.rs as the root lib for mm2_main. --- mm2src/coins/Cargo.toml | 1 - mm2src/common/common.rs | 2 + mm2src/mm2_bin_lib/src/lib.rs | 2 +- mm2src/mm2_bin_lib/src/mm2_bin.rs | 2 +- mm2src/mm2_bin_lib/src/mm2_native_lib.rs | 6 +-- mm2src/mm2_bin_lib/src/mm2_wasm_lib.rs | 6 +-- mm2src/mm2_main/Cargo.toml | 1 + mm2src/mm2_main/src/database.rs | 7 ++- mm2src/mm2_main/src/database/my_orders.rs | 2 +- mm2src/mm2_main/src/database/my_swaps.rs | 2 +- mm2src/mm2_main/src/database/stats_nodes.rs | 2 +- mm2src/mm2_main/src/database/stats_swaps.rs | 2 +- mm2src/mm2_main/src/lib.rs | 20 --------- mm2src/mm2_main/src/lp_dispatcher.rs | 4 +- mm2src/mm2_main/src/lp_init/init_context.rs | 4 +- mm2src/mm2_main/src/lp_init/init_hw.rs | 2 +- mm2src/mm2_main/src/lp_init/init_metamask.rs | 2 +- mm2src/mm2_main/src/lp_message_service.rs | 6 +-- mm2src/mm2_main/src/lp_native_dex.rs | 21 +++++---- mm2src/mm2_main/src/lp_network.rs | 4 +- mm2src/mm2_main/src/lp_ordermatch.rs | 40 ++++++++--------- .../mm2_main/src/lp_ordermatch/best_orders.rs | 6 +-- mm2src/mm2_main/src/lp_ordermatch/lp_bot.rs | 10 ++--- .../src/lp_ordermatch/my_orders_storage.rs | 21 +++++---- .../src/lp_ordermatch/new_protocol.rs | 2 +- .../src/lp_ordermatch/orderbook_depth.rs | 2 +- .../src/lp_ordermatch/ordermatch_wasm_db.rs | 2 +- .../src/lp_ordermatch/simple_market_maker.rs | 22 ++++----- .../simple_market_maker_tests.rs | 6 +-- mm2src/mm2_main/src/lp_stats.rs | 16 +++---- mm2src/mm2_main/src/lp_swap.rs | 45 +++++++++---------- mm2src/mm2_main/src/lp_swap/maker_swap.rs | 12 ++--- mm2src/mm2_main/src/lp_swap/maker_swap_v2.rs | 14 +++--- .../mm2_main/src/lp_swap/max_maker_vol_rpc.rs | 2 +- .../mm2_main/src/lp_swap/my_swaps_storage.rs | 10 ++--- .../src/lp_swap/recreate_swap_data.rs | 12 ++--- mm2src/mm2_main/src/lp_swap/saved_swap.rs | 22 ++++----- mm2src/mm2_main/src/lp_swap/swap_lock.rs | 10 ++--- mm2src/mm2_main/src/lp_swap/swap_v2_common.rs | 12 ++--- mm2src/mm2_main/src/lp_swap/swap_v2_rpcs.rs | 6 +-- mm2src/mm2_main/src/lp_swap/swap_watcher.rs | 4 +- mm2src/mm2_main/src/lp_swap/taker_restart.rs | 4 +- mm2src/mm2_main/src/lp_swap/taker_swap.rs | 16 +++---- mm2src/mm2_main/src/lp_swap/taker_swap_v2.rs | 14 +++--- mm2src/mm2_main/src/lp_swap/trade_preimage.rs | 2 +- mm2src/mm2_main/src/lp_wallet.rs | 10 ++--- .../src/lp_wallet/mnemonics_wasm_db.rs | 2 +- mm2src/mm2_main/src/mm2.rs | 43 ++++++++++++------ .../src/notification/telegram/telegram.rs | 6 +-- mm2src/mm2_main/src/ordermatch_tests.rs | 2 +- mm2src/mm2_main/src/rpc.rs | 4 +- .../mm2_main/src/rpc/dispatcher/dispatcher.rs | 22 ++++----- .../src/rpc/dispatcher/dispatcher_legacy.rs | 16 +++---- .../src/rpc/lp_commands/lp_commands_legacy.rs | 8 ++-- mm2src/mm2_main/src/rpc/rate_limiter.rs | 2 +- mm2src/mm2_main/src/wasm_tests.rs | 2 +- .../tests/docker_tests/qrc20_tests.rs | 2 +- .../tests/docker_tests/swap_watcher_tests.rs | 6 +-- .../swaps_confs_settings_sync_tests.rs | 2 +- .../tests/integration_tests_common/mod.rs | 2 +- .../tests/mm2_tests/mm2_tests_inner.rs | 6 +-- .../tests/mm2_tests/orderbook_sync_tests.rs | 2 +- 62 files changed, 264 insertions(+), 283 deletions(-) delete mode 100644 mm2src/mm2_main/src/lib.rs diff --git a/mm2src/coins/Cargo.toml b/mm2src/coins/Cargo.toml index 1c1fe1637d..e5f5f6837c 100644 --- a/mm2src/coins/Cargo.toml +++ b/mm2src/coins/Cargo.toml @@ -25,7 +25,6 @@ run-docker-tests = [] for-tests = [] [lib] -name = "coins" path = "lp_coins.rs" doctest = false diff --git a/mm2src/common/common.rs b/mm2src/common/common.rs index 6892b8f777..e3232bfcfc 100644 --- a/mm2src/common/common.rs +++ b/mm2src/common/common.rs @@ -375,6 +375,7 @@ pub fn stack_trace_frame(instr_ptr: *mut c_void, buf: &mut dyn Write, symbol: &b // Skip common and less than informative frames. match name { + // FIXME: What mm2 here refers to? "mm2::crash_reports::rust_seh_handler" | "veh_exception_filter" | "common::stack_trace" @@ -396,6 +397,7 @@ pub fn stack_trace_frame(instr_ptr: *mut c_void, buf: &mut dyn Write, symbol: &b || name.starts_with("core::ops::") || name.starts_with("futures::") || name.starts_with("hyper::") + // FIXME: What mm2 here refers to? || name.starts_with("mm2::crash_reports::signal_handler") || name.starts_with("panic_unwind::") || name.starts_with("std::") diff --git a/mm2src/mm2_bin_lib/src/lib.rs b/mm2src/mm2_bin_lib/src/lib.rs index 008f0d775c..81c532419f 100644 --- a/mm2src/mm2_bin_lib/src/lib.rs +++ b/mm2src/mm2_bin_lib/src/lib.rs @@ -1,6 +1,6 @@ use enum_primitive_derive::Primitive; use mm2_core::mm_ctx::MmArc; -use mm2_main::mm2::lp_dispatcher::{dispatch_lp_event, StopCtxEvent}; +use mm2_main::lp_dispatcher::{dispatch_lp_event, StopCtxEvent}; use std::sync::atomic::{AtomicBool, AtomicU32, Ordering}; #[cfg(target_arch = "wasm32")] use wasm_bindgen::prelude::*; diff --git a/mm2src/mm2_bin_lib/src/mm2_bin.rs b/mm2src/mm2_bin_lib/src/mm2_bin.rs index 053d9dd9b4..1587103cc4 100644 --- a/mm2src/mm2_bin_lib/src/mm2_bin.rs +++ b/mm2src/mm2_bin_lib/src/mm2_bin.rs @@ -1,4 +1,4 @@ -#[cfg(not(target_arch = "wasm32"))] use mm2_main::mm2::mm2_main; +#[cfg(not(target_arch = "wasm32"))] use mm2_main::mm2_main; #[cfg(not(target_arch = "wasm32"))] const MM_VERSION: &str = env!("MM_VERSION"); diff --git a/mm2src/mm2_bin_lib/src/mm2_native_lib.rs b/mm2src/mm2_bin_lib/src/mm2_native_lib.rs index 5f85596311..94ed6daf62 100644 --- a/mm2src/mm2_bin_lib/src/mm2_native_lib.rs +++ b/mm2src/mm2_bin_lib/src/mm2_native_lib.rs @@ -70,9 +70,7 @@ pub unsafe extern "C" fn mm2_main(conf: *const c_char, log_cb: extern "C" fn(lin return; } let ctx_cb = &|ctx| CTX.store(ctx, Ordering::Relaxed); - match catch_unwind(move || { - mm2_main::mm2::run_lp_main(Some(&conf), ctx_cb, MM_VERSION.into(), MM_DATETIME.into()) - }) { + match catch_unwind(move || mm2_main::run_lp_main(Some(&conf), ctx_cb, MM_VERSION.into(), MM_DATETIME.into())) { Ok(Ok(_)) => log!("run_lp_main finished"), Ok(Err(err)) => log!("run_lp_main error: {}", err), Err(err) => log!("run_lp_main panic: {:?}", any_to_str(&*err)), @@ -125,7 +123,7 @@ pub extern "C" fn mm2_test(torch: i32, log_cb: extern "C" fn(line: *const c_char }, }; let conf = json::to_string(&ctx.conf).unwrap(); - let hy_res = mm2_main::mm2::rpc::lp_commands_legacy::stop(ctx); + let hy_res = mm2_main::rpc::lp_commands_legacy::stop(ctx); let r = match block_on(hy_res) { Ok(r) => r, Err(err) => { diff --git a/mm2src/mm2_bin_lib/src/mm2_wasm_lib.rs b/mm2src/mm2_bin_lib/src/mm2_wasm_lib.rs index 4cafd6509e..ee56bd4045 100644 --- a/mm2src/mm2_bin_lib/src/mm2_wasm_lib.rs +++ b/mm2src/mm2_bin_lib/src/mm2_wasm_lib.rs @@ -16,7 +16,7 @@ use super::*; use common::log::{register_callback, LogLevel, WasmCallback}; use common::{console_err, console_info, deserialize_from_js, executor, serialize_to_js, set_panic_hook}; use enum_primitive_derive::Primitive; -use mm2_main::mm2::LpMainParams; +use mm2_main::LpMainParams; use mm2_rpc::data::legacy::MmVersionResponse; use mm2_rpc::wasm_rpc::WasmRpcResponse; use serde::{Deserialize, Serialize}; @@ -110,12 +110,12 @@ pub fn mm2_main(params: JsValue, log_cb: js_sys::Function) -> Result<(), JsValue let ctx_cb = |ctx| CTX.store(ctx, Ordering::Relaxed); // TODO figure out how to use catch_unwind here // use futures::FutureExt; - // match mm2::lp_main(params, &ctx_cb).catch_unwind().await { + // match mm2_main::lp_main(params, &ctx_cb).catch_unwind().await { // Ok(Ok(_)) => console_info!("run_lp_main finished"), // Ok(Err(err)) => console_err!("run_lp_main error: {}", err), // Err(err) => console_err!("run_lp_main panic: {:?}", any_to_str(&*err)), // }; - match mm2_main::mm2::lp_main(params, &ctx_cb, MM_VERSION.into(), MM_DATETIME.into()).await { + match mm2_main::lp_main(params, &ctx_cb, MM_VERSION.into(), MM_DATETIME.into()).await { Ok(()) => console_info!("run_lp_main finished"), Err(err) => console_err!("run_lp_main error: {}", err), }; diff --git a/mm2src/mm2_main/Cargo.toml b/mm2src/mm2_main/Cargo.toml index 8be8b5ad3c..f3232ac91e 100644 --- a/mm2src/mm2_main/Cargo.toml +++ b/mm2src/mm2_main/Cargo.toml @@ -9,6 +9,7 @@ version = "0.1.0" edition = "2018" [lib] +path = "src/mm2.rs" doctest = false [features] diff --git a/mm2src/mm2_main/src/database.rs b/mm2src/mm2_main/src/database.rs index 1017f1fd6b..8f278d3adc 100644 --- a/mm2src/mm2_main/src/database.rs +++ b/mm2src/mm2_main/src/database.rs @@ -1,10 +1,9 @@ /// The module responsible to work with SQLite database /// -#[path = "database/my_orders.rs"] pub mod my_orders; -#[path = "database/my_swaps.rs"] pub mod my_swaps; -#[path = "database/stats_nodes.rs"] pub mod stats_nodes; -#[path = "database/stats_swaps.rs"] pub mod stats_swaps; +pub mod my_swaps; +pub mod stats_nodes; +pub mod stats_swaps; use crate::CREATE_MY_SWAPS_TABLE; use common::log::{debug, error, info}; diff --git a/mm2src/mm2_main/src/database/my_orders.rs b/mm2src/mm2_main/src/database/my_orders.rs index 898d1f1620..7e38c4bfa9 100644 --- a/mm2src/mm2_main/src/database/my_orders.rs +++ b/mm2src/mm2_main/src/database/my_orders.rs @@ -1,6 +1,6 @@ #![allow(deprecated)] // TODO: remove this once rusqlite is >= 0.29 -use crate::mm2::lp_ordermatch::{FilteringOrder, MakerOrder, MyOrdersFilter, RecentOrdersSelectResult, TakerOrder}; +use crate::lp_ordermatch::{FilteringOrder, MakerOrder, MyOrdersFilter, RecentOrdersSelectResult, TakerOrder}; /// This module contains code to work with my_orders table in MM2 SQLite DB use common::log::debug; use common::{now_ms, PagingOptions}; diff --git a/mm2src/mm2_main/src/database/my_swaps.rs b/mm2src/mm2_main/src/database/my_swaps.rs index 55b08f3957..2fe1a85890 100644 --- a/mm2src/mm2_main/src/database/my_swaps.rs +++ b/mm2src/mm2_main/src/database/my_swaps.rs @@ -1,7 +1,7 @@ #![allow(deprecated)] // TODO: remove this once rusqlite is >= 0.29 /// This module contains code to work with my_swaps table in MM2 SQLite DB -use crate::mm2::lp_swap::{MyRecentSwapsUuids, MySwapsFilter, SavedSwap, SavedSwapIo}; +use crate::lp_swap::{MyRecentSwapsUuids, MySwapsFilter, SavedSwap, SavedSwapIo}; use common::log::debug; use common::PagingOptions; use db_common::sqlite::rusqlite::{Connection, Error as SqlError, Result as SqlResult, ToSql}; diff --git a/mm2src/mm2_main/src/database/stats_nodes.rs b/mm2src/mm2_main/src/database/stats_nodes.rs index f5b24cf8a8..458f4159bc 100644 --- a/mm2src/mm2_main/src/database/stats_nodes.rs +++ b/mm2src/mm2_main/src/database/stats_nodes.rs @@ -1,5 +1,5 @@ /// This module contains code to work with nodes table for stats collection in MM2 SQLite DB -use crate::mm2::lp_stats::{NodeInfo, NodeVersionStat}; +use crate::lp_stats::{NodeInfo, NodeVersionStat}; use common::log::debug; use db_common::sqlite::rusqlite::{params_from_iter, Error as SqlError, Result as SqlResult}; use mm2_core::mm_ctx::MmArc; diff --git a/mm2src/mm2_main/src/database/stats_swaps.rs b/mm2src/mm2_main/src/database/stats_swaps.rs index b1127b2d36..3322245f01 100644 --- a/mm2src/mm2_main/src/database/stats_swaps.rs +++ b/mm2src/mm2_main/src/database/stats_swaps.rs @@ -1,6 +1,6 @@ #![allow(deprecated)] // TODO: remove this once rusqlite is >= 0.29 -use crate::mm2::lp_swap::{MakerSavedSwap, SavedSwap, SavedSwapIo, TakerSavedSwap}; +use crate::lp_swap::{MakerSavedSwap, SavedSwap, SavedSwapIo, TakerSavedSwap}; use common::log::{debug, error}; use db_common::{owned_named_params, sqlite::{rusqlite::{params_from_iter, Connection, OptionalExtension}, diff --git a/mm2src/mm2_main/src/lib.rs b/mm2src/mm2_main/src/lib.rs deleted file mode 100644 index db644c2762..0000000000 --- a/mm2src/mm2_main/src/lib.rs +++ /dev/null @@ -1,20 +0,0 @@ -#![feature(hash_raw_entry)] -// `mockable` implementation uses these -#![allow( - forgetting_references, - forgetting_copy_types, - clippy::swap_ptr_to_ref, - clippy::forget_non_drop, - clippy::let_unit_value -)] - -#[macro_use] extern crate common; -#[macro_use] extern crate gstuff; -#[macro_use] extern crate serde_json; -#[macro_use] extern crate serde_derive; -#[macro_use] extern crate ser_error_derive; -#[cfg(test)] extern crate mm2_test_helpers; - -pub mod mm2; - -#[cfg(all(target_arch = "wasm32", test))] mod wasm_tests; diff --git a/mm2src/mm2_main/src/lp_dispatcher.rs b/mm2src/mm2_main/src/lp_dispatcher.rs index 74f7a9a18d..8ea662873e 100644 --- a/mm2src/mm2_main/src/lp_dispatcher.rs +++ b/mm2src/mm2_main/src/lp_dispatcher.rs @@ -1,5 +1,5 @@ -use crate::mm2::lp_ordermatch::TradingBotEvent; -use crate::mm2::lp_swap::MakerSwapStatusChanged; +use crate::lp_ordermatch::TradingBotEvent; +use crate::lp_swap::MakerSwapStatusChanged; use async_std::sync::RwLock; use mm2_core::{event_dispatcher::{Dispatcher, EventUniqueId}, mm_ctx::{from_ctx, MmArc}}; diff --git a/mm2src/mm2_main/src/lp_init/init_context.rs b/mm2src/mm2_main/src/lp_init/init_context.rs index e1c045c098..8b03751b69 100644 --- a/mm2src/mm2_main/src/lp_init/init_context.rs +++ b/mm2src/mm2_main/src/lp_init/init_context.rs @@ -1,6 +1,6 @@ -use crate::mm2::lp_native_dex::init_hw::InitHwTaskManagerShared; +use crate::lp_native_dex::init_hw::InitHwTaskManagerShared; #[cfg(target_arch = "wasm32")] -use crate::mm2::lp_native_dex::init_metamask::InitMetamaskManagerShared; +use crate::lp_native_dex::init_metamask::InitMetamaskManagerShared; use mm2_core::mm_ctx::{from_ctx, MmArc}; use rpc_task::RpcTaskManager; use std::sync::Arc; diff --git a/mm2src/mm2_main/src/lp_init/init_hw.rs b/mm2src/mm2_main/src/lp_init/init_hw.rs index 18e97bc096..b9d0c67664 100644 --- a/mm2src/mm2_main/src/lp_init/init_hw.rs +++ b/mm2src/mm2_main/src/lp_init/init_hw.rs @@ -1,4 +1,4 @@ -use crate::mm2::lp_native_dex::init_context::MmInitContext; +use crate::lp_native_dex::init_context::MmInitContext; use async_trait::async_trait; use common::{HttpStatusCode, SuccessResponse}; use crypto::hw_rpc_task::{HwConnectStatuses, HwRpcTaskAwaitingStatus, HwRpcTaskUserAction, HwRpcTaskUserActionRequest, diff --git a/mm2src/mm2_main/src/lp_init/init_metamask.rs b/mm2src/mm2_main/src/lp_init/init_metamask.rs index f80afe5878..630f6a1796 100644 --- a/mm2src/mm2_main/src/lp_init/init_metamask.rs +++ b/mm2src/mm2_main/src/lp_init/init_metamask.rs @@ -1,4 +1,4 @@ -use crate::mm2::lp_native_dex::init_context::MmInitContext; +use crate::lp_native_dex::init_context::MmInitContext; use async_trait::async_trait; use common::{HttpStatusCode, SerdeInfallible, SuccessResponse}; use crypto::metamask::{from_metamask_error, MetamaskError, MetamaskRpcError, WithMetamaskRpcError}; diff --git a/mm2src/mm2_main/src/lp_message_service.rs b/mm2src/mm2_main/src/lp_message_service.rs index 018d6bf971..0804bfbfa8 100644 --- a/mm2src/mm2_main/src/lp_message_service.rs +++ b/mm2src/mm2_main/src/lp_message_service.rs @@ -1,6 +1,6 @@ #[path = "notification/telegram/telegram.rs"] pub mod telegram; -use crate::mm2::lp_message_service::telegram::{ChatIdRegistry, TelegramError, TgClient}; +use crate::lp_message_service::telegram::{ChatIdRegistry, TelegramError, TgClient}; use async_trait::async_trait; use derive_more::Display; use futures::lock::Mutex as AsyncMutex; @@ -121,8 +121,8 @@ pub async fn init_message_service(ctx: &MmArc) -> Result<(), MmError Vec { #[cfg(not(target_arch = "wasm32"))] fn default_seednodes(netid: u16) -> Vec { - use crate::mm2::lp_network::addr_to_ipv4_string; + use crate::lp_network::addr_to_ipv4_string; if netid == 8762 { DEFAULT_NETID_SEEDNODES .iter() diff --git a/mm2src/mm2_main/src/lp_network.rs b/mm2src/mm2_main/src/lp_network.rs index cd2b32c538..eb84f390d1 100644 --- a/mm2src/mm2_main/src/lp_network.rs +++ b/mm2src/mm2_main/src/lp_network.rs @@ -38,8 +38,8 @@ use mm2_net::p2p::P2PContext; use serde::de; use std::net::ToSocketAddrs; -use crate::mm2::lp_ordermatch; -use crate::mm2::{lp_stats, lp_swap}; +use crate::lp_ordermatch; +use crate::{lp_stats, lp_swap}; pub type P2PRequestResult = Result>; pub type P2PProcessResult = Result>; diff --git a/mm2src/mm2_main/src/lp_ordermatch.rs b/mm2src/mm2_main/src/lp_ordermatch.rs index 86e2fb0491..9829fed75a 100644 --- a/mm2src/mm2_main/src/lp_ordermatch.rs +++ b/mm2src/mm2_main/src/lp_ordermatch.rs @@ -69,20 +69,20 @@ use std::time::Duration; use trie_db::NodeCodec as NodeCodecT; use uuid::Uuid; -use crate::mm2::lp_network::{broadcast_p2p_msg, request_any_relay, request_one_peer, subscribe_to_topic, P2PRequest, - P2PRequestError}; -use crate::mm2::lp_swap::maker_swap_v2::{self, MakerSwapStateMachine, MakerSwapStorage}; -use crate::mm2::lp_swap::taker_swap_v2::{self, TakerSwapStateMachine, TakerSwapStorage}; -use crate::mm2::lp_swap::{calc_max_maker_vol, check_balance_for_maker_swap, check_balance_for_taker_swap, - check_other_coin_balance_for_swap, detect_secret_hash_algo, dex_fee_amount_from_taker_coin, - generate_secret, get_max_maker_vol, insert_new_swap_to_db, is_pubkey_banned, - lp_atomic_locktime, p2p_keypair_and_peer_id_to_broadcast, - p2p_private_and_peer_id_to_broadcast, run_maker_swap, run_taker_swap, swap_v2_topic, - AtomicLocktimeVersion, CheckBalanceError, CheckBalanceResult, CoinVolumeInfo, MakerSwap, - RunMakerSwapInput, RunTakerSwapInput, SwapConfirmationsSettings, TakerSwap, LEGACY_SWAP_TYPE}; +use crate::lp_network::{broadcast_p2p_msg, request_any_relay, request_one_peer, subscribe_to_topic, P2PRequest, + P2PRequestError}; +use crate::lp_swap::maker_swap_v2::{self, MakerSwapStateMachine, MakerSwapStorage}; +use crate::lp_swap::taker_swap_v2::{self, TakerSwapStateMachine, TakerSwapStorage}; +use crate::lp_swap::{calc_max_maker_vol, check_balance_for_maker_swap, check_balance_for_taker_swap, + check_other_coin_balance_for_swap, detect_secret_hash_algo, dex_fee_amount_from_taker_coin, + generate_secret, get_max_maker_vol, insert_new_swap_to_db, is_pubkey_banned, lp_atomic_locktime, + p2p_keypair_and_peer_id_to_broadcast, p2p_private_and_peer_id_to_broadcast, run_maker_swap, + run_taker_swap, swap_v2_topic, AtomicLocktimeVersion, CheckBalanceError, CheckBalanceResult, + CoinVolumeInfo, MakerSwap, RunMakerSwapInput, RunTakerSwapInput, SwapConfirmationsSettings, + TakerSwap, LEGACY_SWAP_TYPE}; #[cfg(any(test, feature = "run-docker-tests"))] -use crate::mm2::lp_swap::taker_swap::FailAt; +use crate::lp_swap::taker_swap::FailAt; pub use best_orders::{best_orders_rpc, best_orders_rpc_v2}; pub use orderbook_depth::orderbook_depth_rpc; @@ -95,25 +95,21 @@ cfg_wasm32! { pub type OrdermatchDbLocked<'a> = DbLocked<'a, OrdermatchDb>; } -#[path = "lp_ordermatch/best_orders.rs"] mod best_orders; -#[path = "lp_ordermatch/lp_bot.rs"] mod lp_bot; +mod best_orders; +mod lp_bot; pub use lp_bot::{start_simple_market_maker_bot, stop_simple_market_maker_bot, StartSimpleMakerBotRequest, TradingBotEvent}; -#[path = "lp_ordermatch/my_orders_storage.rs"] mod my_orders_storage; -#[path = "lp_ordermatch/new_protocol.rs"] mod new_protocol; -#[path = "lp_ordermatch/order_requests_tracker.rs"] +mod new_protocol; mod order_requests_tracker; -#[path = "lp_ordermatch/orderbook_depth.rs"] mod orderbook_depth; -#[path = "lp_ordermatch/orderbook_rpc.rs"] mod orderbook_rpc; +mod orderbook_depth; +mod orderbook_rpc; #[cfg(all(test, not(target_arch = "wasm32")))] #[path = "ordermatch_tests.rs"] pub mod ordermatch_tests; -#[cfg(target_arch = "wasm32")] -#[path = "lp_ordermatch/ordermatch_wasm_db.rs"] -mod ordermatch_wasm_db; +#[cfg(target_arch = "wasm32")] mod ordermatch_wasm_db; pub const ORDERBOOK_PREFIX: TopicPrefix = "orbk"; #[cfg(not(test))] diff --git a/mm2src/mm2_main/src/lp_ordermatch/best_orders.rs b/mm2src/mm2_main/src/lp_ordermatch/best_orders.rs index 7e20ed46bc..121a444e29 100644 --- a/mm2src/mm2_main/src/lp_ordermatch/best_orders.rs +++ b/mm2src/mm2_main/src/lp_ordermatch/best_orders.rs @@ -13,7 +13,7 @@ use uuid::Uuid; use super::{addr_format_from_protocol_info, is_my_order, mm2_internal_pubkey_hex, orderbook_address, BaseRelProtocolInfo, OrderbookP2PItemWithProof, OrdermatchContext, OrdermatchRequest, RpcOrderbookEntryV2}; -use crate::mm2::lp_network::{request_any_relay, P2PRequest}; +use crate::lp_network::{request_any_relay, P2PRequest}; #[derive(Clone, Copy, Debug, Deserialize, Eq, PartialEq, Serialize)] #[serde(rename_all = "lowercase")] @@ -404,8 +404,8 @@ pub async fn best_orders_rpc_v2( #[cfg(all(test, not(target_arch = "wasm32")))] mod best_orders_test { use super::*; - use crate::mm2::lp_ordermatch::ordermatch_tests::make_random_orders; - use crate::mm2::lp_ordermatch::{OrderbookItem, TrieProof}; + use crate::lp_ordermatch::ordermatch_tests::make_random_orders; + use crate::lp_ordermatch::{OrderbookItem, TrieProof}; use common::new_uuid; use std::iter::FromIterator; diff --git a/mm2src/mm2_main/src/lp_ordermatch/lp_bot.rs b/mm2src/mm2_main/src/lp_ordermatch/lp_bot.rs index acdb6bd217..9c8095253b 100644 --- a/mm2src/mm2_main/src/lp_ordermatch/lp_bot.rs +++ b/mm2src/mm2_main/src/lp_ordermatch/lp_bot.rs @@ -16,11 +16,11 @@ use std::ops::Deref; use std::{collections::HashMap, sync::Arc}; #[path = "simple_market_maker.rs"] mod simple_market_maker_bot; -use crate::mm2::lp_dispatcher::{LpEvents, StopCtxEvent}; -use crate::mm2::lp_message_service::{MessageServiceContext, MAKER_BOT_ROOM_ID}; -use crate::mm2::lp_ordermatch::lp_bot::simple_market_maker_bot::{tear_down_bot, BOT_DEFAULT_REFRESH_RATE, - PRECISION_FOR_NOTIFICATION}; -use crate::mm2::lp_swap::MakerSwapStatusChanged; +use crate::lp_dispatcher::{LpEvents, StopCtxEvent}; +use crate::lp_message_service::{MessageServiceContext, MAKER_BOT_ROOM_ID}; +use crate::lp_ordermatch::lp_bot::simple_market_maker_bot::{tear_down_bot, BOT_DEFAULT_REFRESH_RATE, + PRECISION_FOR_NOTIFICATION}; +use crate::lp_swap::MakerSwapStatusChanged; pub use simple_market_maker_bot::{start_simple_market_maker_bot, stop_simple_market_maker_bot, StartSimpleMakerBotRequest}; diff --git a/mm2src/mm2_main/src/lp_ordermatch/my_orders_storage.rs b/mm2src/mm2_main/src/lp_ordermatch/my_orders_storage.rs index 677af4be71..05322325a5 100644 --- a/mm2src/mm2_main/src/lp_ordermatch/my_orders_storage.rs +++ b/mm2src/mm2_main/src/lp_ordermatch/my_orders_storage.rs @@ -205,11 +205,10 @@ pub trait MyOrdersFilteringHistory { #[cfg(not(target_arch = "wasm32"))] mod native_impl { use super::*; - use crate::mm2::database::my_orders::{insert_maker_order, insert_taker_order, select_orders_by_filter, - select_status_by_uuid, update_maker_order, update_order_status, - update_was_taker}; - use crate::mm2::lp_ordermatch::{my_maker_order_file_path, my_maker_orders_dir, my_order_history_file_path, - my_taker_order_file_path, my_taker_orders_dir}; + use crate::database::my_orders::{insert_maker_order, insert_taker_order, select_orders_by_filter, + select_status_by_uuid, update_maker_order, update_order_status, update_was_taker}; + use crate::lp_ordermatch::{my_maker_order_file_path, my_maker_orders_dir, my_order_history_file_path, + my_taker_order_file_path, my_taker_orders_dir}; use mm2_io::fs::{read_dir_json, read_json, remove_file_async, write_json, FsJsonError}; const USE_TMP_FILE: bool = true; @@ -350,10 +349,10 @@ mod native_impl { #[cfg(target_arch = "wasm32")] mod wasm_impl { use super::*; - use crate::mm2::lp_ordermatch::ordermatch_wasm_db::{DbTransactionError, InitDbError, MyActiveMakerOrdersTable, - MyActiveTakerOrdersTable, MyFilteringHistoryOrdersTable, - MyHistoryOrdersTable}; - use crate::mm2::lp_ordermatch::OrdermatchContext; + use crate::lp_ordermatch::ordermatch_wasm_db::{DbTransactionError, InitDbError, MyActiveMakerOrdersTable, + MyActiveTakerOrdersTable, MyFilteringHistoryOrdersTable, + MyHistoryOrdersTable}; + use crate::lp_ordermatch::OrdermatchContext; use common::log::warn; use mm2_rpc::data::legacy::TakerAction; use num_traits::ToPrimitive; @@ -694,8 +693,8 @@ mod wasm_impl { mod tests { use super::wasm_impl::{maker_order_to_filtering_history_item, taker_order_to_filtering_history_item}; use super::*; - use crate::mm2::lp_ordermatch::ordermatch_wasm_db::{ItemId, MyFilteringHistoryOrdersTable}; - use crate::mm2::lp_ordermatch::{OrdermatchContext, TakerRequest}; + use crate::lp_ordermatch::ordermatch_wasm_db::{ItemId, MyFilteringHistoryOrdersTable}; + use crate::lp_ordermatch::{OrdermatchContext, TakerRequest}; use common::{new_uuid, now_ms}; use futures::compat::Future01CompatExt; use itertools::Itertools; diff --git a/mm2src/mm2_main/src/lp_ordermatch/new_protocol.rs b/mm2src/mm2_main/src/lp_ordermatch/new_protocol.rs index b15f5e6d38..72aa53597d 100644 --- a/mm2src/mm2_main/src/lp_ordermatch/new_protocol.rs +++ b/mm2src/mm2_main/src/lp_ordermatch/new_protocol.rs @@ -5,7 +5,7 @@ use mm2_rpc::data::legacy::{MatchBy as SuperMatchBy, OrderConfirmationsSettings, use std::collections::{HashMap, HashSet}; use uuid::Uuid; -use crate::mm2::lp_ordermatch::{AlbOrderedOrderbookPair, H64}; +use crate::lp_ordermatch::{AlbOrderedOrderbookPair, H64}; #[derive(Debug, Deserialize, Serialize)] #[allow(clippy::large_enum_variant)] diff --git a/mm2src/mm2_main/src/lp_ordermatch/orderbook_depth.rs b/mm2src/mm2_main/src/lp_ordermatch/orderbook_depth.rs index dcc991a361..c335ac75ef 100644 --- a/mm2src/mm2_main/src/lp_ordermatch/orderbook_depth.rs +++ b/mm2src/mm2_main/src/lp_ordermatch/orderbook_depth.rs @@ -1,5 +1,5 @@ use super::{orderbook_topic_from_base_rel, OrdermatchContext, OrdermatchRequest}; -use crate::mm2::lp_network::{request_any_relay, P2PRequest}; +use crate::lp_network::{request_any_relay, P2PRequest}; use coins::is_wallet_only_ticker; use common::log; use http::Response; diff --git a/mm2src/mm2_main/src/lp_ordermatch/ordermatch_wasm_db.rs b/mm2src/mm2_main/src/lp_ordermatch/ordermatch_wasm_db.rs index 3e6c1665c0..d64e0b40df 100644 --- a/mm2src/mm2_main/src/lp_ordermatch/ordermatch_wasm_db.rs +++ b/mm2src/mm2_main/src/lp_ordermatch/ordermatch_wasm_db.rs @@ -40,7 +40,7 @@ impl Deref for OrdermatchDb { pub mod tables { use super::*; - use crate::mm2::lp_ordermatch::{MakerOrder, Order, TakerOrder}; + use crate::lp_ordermatch::{MakerOrder, Order, TakerOrder}; use serde_json::Value as Json; #[derive(Debug, Deserialize, Eq, PartialEq, Serialize)] diff --git a/mm2src/mm2_main/src/lp_ordermatch/simple_market_maker.rs b/mm2src/mm2_main/src/lp_ordermatch/simple_market_maker.rs index 728f177176..14551167d6 100644 --- a/mm2src/mm2_main/src/lp_ordermatch/simple_market_maker.rs +++ b/mm2src/mm2_main/src/lp_ordermatch/simple_market_maker.rs @@ -1,14 +1,14 @@ -use crate::mm2::lp_dispatcher::{dispatch_lp_event, DispatcherContext}; -use crate::mm2::lp_ordermatch::lp_bot::{RunningState, StoppedState, StoppingState, TradingBotStarted, - TradingBotStopped, TradingBotStopping, VolumeSettings}; -use crate::mm2::lp_ordermatch::{cancel_all_orders, CancelBy, TradingBotEvent}; -use crate::mm2::lp_swap::SavedSwap; -use crate::mm2::{lp_ordermatch::{cancel_order, create_maker_order, - lp_bot::{SimpleCoinMarketMakerCfg, SimpleMakerBotRegistry, TradingBotContext, - TradingBotState}, - update_maker_order, CancelOrderReq, MakerOrder, MakerOrderUpdateReq, - OrdermatchContext, SetPriceReq}, - lp_swap::{latest_swaps_for_pair, LatestSwapsErr}}; +use crate::lp_dispatcher::{dispatch_lp_event, DispatcherContext}; +use crate::lp_ordermatch::lp_bot::{RunningState, StoppedState, StoppingState, TradingBotStarted, TradingBotStopped, + TradingBotStopping, VolumeSettings}; +use crate::lp_ordermatch::{cancel_all_orders, CancelBy, TradingBotEvent}; +use crate::lp_swap::SavedSwap; +use crate::{lp_ordermatch::{cancel_order, create_maker_order, + lp_bot::{SimpleCoinMarketMakerCfg, SimpleMakerBotRegistry, TradingBotContext, + TradingBotState}, + update_maker_order, CancelOrderReq, MakerOrder, MakerOrderUpdateReq, OrdermatchContext, + SetPriceReq}, + lp_swap::{latest_swaps_for_pair, LatestSwapsErr}}; use coins::lp_price::{fetch_price_tickers, Provider, RateInfos, PRICE_ENDPOINTS}; use coins::{lp_coinfind, GetNonZeroBalance}; use common::{executor::{SpawnFuture, Timer}, diff --git a/mm2src/mm2_main/src/lp_ordermatch/simple_market_maker_tests.rs b/mm2src/mm2_main/src/lp_ordermatch/simple_market_maker_tests.rs index 8928656415..7e12bcf5f3 100644 --- a/mm2src/mm2_main/src/lp_ordermatch/simple_market_maker_tests.rs +++ b/mm2src/mm2_main/src/lp_ordermatch/simple_market_maker_tests.rs @@ -1,6 +1,6 @@ -use crate::mm2::{lp_ordermatch::lp_bot::simple_market_maker_bot::vwap, - lp_ordermatch::lp_bot::SimpleCoinMarketMakerCfg, - lp_swap::{MakerSavedSwap, SavedSwap}}; +use crate::{lp_ordermatch::lp_bot::simple_market_maker_bot::vwap, + lp_ordermatch::lp_bot::SimpleCoinMarketMakerCfg, + lp_swap::{MakerSavedSwap, SavedSwap}}; use common::{block_on, log::UnifiedLoggerBuilder}; use mm2_number::MmNumber; diff --git a/mm2src/mm2_main/src/lp_stats.rs b/mm2src/mm2_main/src/lp_stats.rs index 77e8e091ed..e86e742457 100644 --- a/mm2src/mm2_main/src/lp_stats.rs +++ b/mm2src/mm2_main/src/lp_stats.rs @@ -12,8 +12,8 @@ use serde_json::{self as json, Value as Json}; use std::collections::{HashMap, HashSet}; use std::sync::Arc; -use crate::mm2::lp_network::{add_reserved_peer_addresses, lp_network_ports, request_peers, NetIdError, P2PRequest, - ParseAddressError, PeerDecodedResponse}; +use crate::lp_network::{add_reserved_peer_addresses, lp_network_ports, request_peers, NetIdError, P2PRequest, + ParseAddressError, PeerDecodedResponse}; use std::str::FromStr; pub type NodeVersionResult = Result>; @@ -90,7 +90,7 @@ fn insert_node_info_to_db(_ctx: &MmArc, _node_info: &NodeInfo) -> Result<(), Str #[cfg(not(target_arch = "wasm32"))] fn insert_node_info_to_db(ctx: &MmArc, node_info: &NodeInfo) -> Result<(), String> { - crate::mm2::database::stats_nodes::insert_node_info(ctx, node_info).map_err(|e| e.to_string()) + crate::database::stats_nodes::insert_node_info(ctx, node_info).map_err(|e| e.to_string()) } #[cfg(target_arch = "wasm32")] @@ -98,7 +98,7 @@ fn insert_node_version_stat_to_db(_ctx: &MmArc, _node_version_stat: NodeVersionS #[cfg(not(target_arch = "wasm32"))] fn insert_node_version_stat_to_db(ctx: &MmArc, node_version_stat: NodeVersionStat) -> Result<(), String> { - crate::mm2::database::stats_nodes::insert_node_version_stat(ctx, node_version_stat).map_err(|e| e.to_string()) + crate::database::stats_nodes::insert_node_version_stat(ctx, node_version_stat).map_err(|e| e.to_string()) } #[cfg(target_arch = "wasm32")] @@ -106,7 +106,7 @@ fn delete_node_info_from_db(_ctx: &MmArc, _name: String) -> Result<(), String> { #[cfg(not(target_arch = "wasm32"))] fn delete_node_info_from_db(ctx: &MmArc, name: String) -> Result<(), String> { - crate::mm2::database::stats_nodes::delete_node_info(ctx, name).map_err(|e| e.to_string()) + crate::database::stats_nodes::delete_node_info(ctx, name).map_err(|e| e.to_string()) } #[cfg(target_arch = "wasm32")] @@ -114,7 +114,7 @@ fn select_peers_addresses_from_db(_ctx: &MmArc) -> Result, #[cfg(not(target_arch = "wasm32"))] fn select_peers_addresses_from_db(ctx: &MmArc) -> Result, String> { - crate::mm2::database::stats_nodes::select_peers_addresses(ctx).map_err(|e| e.to_string()) + crate::database::stats_nodes::select_peers_addresses(ctx).map_err(|e| e.to_string()) } #[cfg(target_arch = "wasm32")] @@ -125,7 +125,7 @@ pub async fn add_node_to_version_stat(_ctx: MmArc, _req: Json) -> NodeVersionRes /// Adds node info. to db to be used later for stats collection #[cfg(not(target_arch = "wasm32"))] pub async fn add_node_to_version_stat(ctx: MmArc, req: Json) -> NodeVersionResult { - use crate::mm2::lp_network::addr_to_ipv4_string; + use crate::lp_network::addr_to_ipv4_string; let node_info: NodeInfo = json::from_value(req)?; @@ -265,7 +265,7 @@ pub async fn start_version_stat_collection(ctx: MmArc, req: Json) -> NodeVersion async fn stat_collection_loop(ctx: MmArc, interval: f64) { use common::now_sec; - use crate::mm2::database::stats_nodes::select_peers_names; + use crate::database::stats_nodes::select_peers_names; let mut interval = interval; loop { diff --git a/mm2src/mm2_main/src/lp_swap.rs b/mm2src/mm2_main/src/lp_swap.rs index 272b53c0dc..c7665da02e 100644 --- a/mm2src/mm2_main/src/lp_swap.rs +++ b/mm2src/mm2_main/src/lp_swap.rs @@ -58,9 +58,9 @@ // use super::lp_network::P2PRequestResult; -use crate::mm2::lp_network::{broadcast_p2p_msg, Libp2pPeerId, P2PProcessError, P2PProcessResult, P2PRequestError}; -use crate::mm2::lp_swap::maker_swap_v2::{MakerSwapStateMachine, MakerSwapStorage}; -use crate::mm2::lp_swap::taker_swap_v2::{TakerSwapStateMachine, TakerSwapStorage}; +use crate::lp_network::{broadcast_p2p_msg, Libp2pPeerId, P2PProcessError, P2PProcessResult, P2PRequestError}; +use crate::lp_swap::maker_swap_v2::{MakerSwapStateMachine, MakerSwapStorage}; +use crate::lp_swap::taker_swap_v2::{TakerSwapStateMachine, TakerSwapStorage}; use bitcrypto::{dhash160, sha256}; use coins::{lp_coinfind, lp_coinfind_or_err, CoinFindError, DexFee, MmCoin, MmCoinEnum, TradeFee, TransactionEnum}; use common::log::{debug, warn}; @@ -94,30 +94,27 @@ use uuid::Uuid; #[cfg(feature = "custom-swap-locktime")] use std::sync::atomic::{AtomicU64, Ordering}; -#[path = "lp_swap/check_balance.rs"] mod check_balance; -#[path = "lp_swap/maker_swap.rs"] mod maker_swap; -#[path = "lp_swap/maker_swap_v2.rs"] pub mod maker_swap_v2; -#[path = "lp_swap/max_maker_vol_rpc.rs"] mod max_maker_vol_rpc; -#[path = "lp_swap/my_swaps_storage.rs"] mod my_swaps_storage; -#[path = "lp_swap/pubkey_banning.rs"] mod pubkey_banning; -#[path = "lp_swap/recreate_swap_data.rs"] mod recreate_swap_data; -#[path = "lp_swap/saved_swap.rs"] mod saved_swap; -#[path = "lp_swap/swap_lock.rs"] mod swap_lock; +mod check_balance; +mod maker_swap; +pub mod maker_swap_v2; +mod max_maker_vol_rpc; +mod my_swaps_storage; +mod pubkey_banning; +mod recreate_swap_data; +mod saved_swap; +mod swap_lock; #[path = "lp_swap/komodefi.swap_v2.pb.rs"] #[rustfmt::skip] mod swap_v2_pb; -#[path = "lp_swap/swap_v2_common.rs"] mod swap_v2_common; -#[path = "lp_swap/swap_v2_rpcs.rs"] pub(crate) mod swap_v2_rpcs; -#[path = "lp_swap/swap_watcher.rs"] pub(crate) mod swap_watcher; -#[path = "lp_swap/taker_restart.rs"] +mod swap_v2_common; +pub(crate) mod swap_v2_rpcs; +pub(crate) mod swap_watcher; pub(crate) mod taker_restart; -#[path = "lp_swap/taker_swap.rs"] pub(crate) mod taker_swap; -#[path = "lp_swap/taker_swap_v2.rs"] pub mod taker_swap_v2; -#[path = "lp_swap/trade_preimage.rs"] mod trade_preimage; +pub(crate) mod taker_swap; +pub mod taker_swap_v2; +mod trade_preimage; -#[cfg(target_arch = "wasm32")] -#[path = "lp_swap/swap_wasm_db.rs"] -mod swap_wasm_db; +#[cfg(target_arch = "wasm32")] mod swap_wasm_db; pub use check_balance::{check_other_coin_balance_for_swap, CheckBalanceError, CheckBalanceResult}; use coins::utxo::utxo_standard::UtxoStandardCoin; @@ -1019,7 +1016,7 @@ pub async fn insert_new_swap_to_db( #[cfg(not(target_arch = "wasm32"))] fn add_swap_to_db_index(ctx: &MmArc, swap: &SavedSwap) { if let Some(conn) = ctx.sqlite_conn_opt() { - crate::mm2::database::stats_swaps::add_swap_to_index(&conn, swap) + crate::database::stats_swaps::add_swap_to_index(&conn, swap) } } @@ -1840,7 +1837,7 @@ pub(crate) const NO_REFUND_FEE: bool = false; #[cfg(all(test, not(target_arch = "wasm32")))] mod lp_swap_tests { use super::*; - use crate::mm2::lp_native_dex::{fix_directories, init_p2p}; + use crate::lp_native_dex::{fix_directories, init_p2p}; use coins::hd_wallet::HDPathAccountToAddressId; use coins::utxo::rpc_clients::ElectrumRpcRequest; use coins::utxo::utxo_standard::utxo_standard_coin_with_priv_key; diff --git a/mm2src/mm2_main/src/lp_swap/maker_swap.rs b/mm2src/mm2_main/src/lp_swap/maker_swap.rs index 8d00318485..82e3809c6c 100644 --- a/mm2src/mm2_main/src/lp_swap/maker_swap.rs +++ b/mm2src/mm2_main/src/lp_swap/maker_swap.rs @@ -10,11 +10,11 @@ use super::{broadcast_my_swap_status, broadcast_p2p_tx_msg, broadcast_swap_msg_e NegotiationDataV2, NegotiationDataV3, RecoveredSwap, RecoveredSwapAction, SavedSwap, SavedSwapIo, SavedTradeFee, SecretHashAlgo, SwapConfirmationsSettings, SwapError, SwapMsg, SwapPubkeys, SwapTxDataMsg, SwapsContext, TransactionIdentifier, INCLUDE_REFUND_FEE, NO_REFUND_FEE, WAIT_CONFIRM_INTERVAL_SEC}; -use crate::mm2::lp_dispatcher::{DispatcherContext, LpEvents}; -use crate::mm2::lp_network::subscribe_to_topic; -use crate::mm2::lp_ordermatch::MakerOrderBuilder; -use crate::mm2::lp_swap::swap_v2_common::mark_swap_as_finished; -use crate::mm2::lp_swap::{broadcast_swap_message, taker_payment_spend_duration, MAX_STARTED_AT_DIFF}; +use crate::lp_dispatcher::{DispatcherContext, LpEvents}; +use crate::lp_network::subscribe_to_topic; +use crate::lp_ordermatch::MakerOrderBuilder; +use crate::lp_swap::swap_v2_common::mark_swap_as_finished; +use crate::lp_swap::{broadcast_swap_message, taker_payment_spend_duration, MAX_STARTED_AT_DIFF}; use coins::lp_price::fetch_swap_coins_price; use coins::{CanRefundHtlc, CheckIfMyPaymentSentArgs, ConfirmPaymentInput, FeeApproxStage, FoundSwapTxSpend, MmCoin, MmCoinEnum, PaymentInstructionArgs, PaymentInstructions, PaymentInstructionsErr, RefundPaymentArgs, @@ -2724,7 +2724,7 @@ mod maker_swap_tests { #[test] fn swap_must_not_lock_funds_by_default() { - use crate::mm2::lp_swap::get_locked_amount; + use crate::lp_swap::get_locked_amount; let ctx = mm_ctx_with_iguana(PASSPHRASE); diff --git a/mm2src/mm2_main/src/lp_swap/maker_swap_v2.rs b/mm2src/mm2_main/src/lp_swap/maker_swap_v2.rs index 6e9555c10f..972c684312 100644 --- a/mm2src/mm2_main/src/lp_swap/maker_swap_v2.rs +++ b/mm2src/mm2_main/src/lp_swap/maker_swap_v2.rs @@ -1,11 +1,11 @@ use super::swap_v2_common::*; use super::{swap_v2_topic, LockedAmount, LockedAmountInfo, SavedTradeFee, SwapsContext, NEGOTIATE_SEND_INTERVAL, NEGOTIATION_TIMEOUT_SEC}; -use crate::mm2::lp_swap::maker_swap::MakerSwapPreparedParams; -use crate::mm2::lp_swap::swap_lock::SwapLock; -use crate::mm2::lp_swap::{broadcast_swap_v2_msg_every, check_balance_for_maker_swap, recv_swap_v2_msg, SecretHashAlgo, - SwapConfirmationsSettings, TransactionIdentifier, MAKER_SWAP_V2_TYPE, MAX_STARTED_AT_DIFF}; -use crate::mm2::lp_swap::{swap_v2_pb::*, NO_REFUND_FEE}; +use crate::lp_swap::maker_swap::MakerSwapPreparedParams; +use crate::lp_swap::swap_lock::SwapLock; +use crate::lp_swap::{broadcast_swap_v2_msg_every, check_balance_for_maker_swap, recv_swap_v2_msg, SecretHashAlgo, + SwapConfirmationsSettings, TransactionIdentifier, MAKER_SWAP_V2_TYPE, MAX_STARTED_AT_DIFF}; +use crate::lp_swap::{swap_v2_pb::*, NO_REFUND_FEE}; use async_trait::async_trait; use bitcrypto::{dhash160, sha256}; use coins::{CanRefundHtlc, ConfirmPaymentInput, DexFee, FeeApproxStage, FundingTxSpend, GenTakerFundingSpendArgs, @@ -32,14 +32,14 @@ use std::marker::PhantomData; use uuid::Uuid; cfg_native!( - use crate::mm2::database::my_swaps::{insert_new_swap_v2, SELECT_MY_SWAP_V2_BY_UUID}; + use crate::database::my_swaps::{insert_new_swap_v2, SELECT_MY_SWAP_V2_BY_UUID}; use common::async_blocking; use db_common::sqlite::rusqlite::{named_params, Error as SqlError, Result as SqlResult, Row}; use db_common::sqlite::rusqlite::types::Type as SqlType; ); cfg_wasm32!( - use crate::mm2::lp_swap::swap_wasm_db::{MySwapsFiltersTable, SavedSwapTable}; + use crate::lp_swap::swap_wasm_db::{MySwapsFiltersTable, SavedSwapTable}; ); // This is needed to have Debug on messages diff --git a/mm2src/mm2_main/src/lp_swap/max_maker_vol_rpc.rs b/mm2src/mm2_main/src/lp_swap/max_maker_vol_rpc.rs index e3f24987ec..625fad2947 100644 --- a/mm2src/mm2_main/src/lp_swap/max_maker_vol_rpc.rs +++ b/mm2src/mm2_main/src/lp_swap/max_maker_vol_rpc.rs @@ -1,4 +1,4 @@ -use crate::mm2::lp_swap::{get_max_maker_vol, CheckBalanceError, CoinVolumeInfo}; +use crate::lp_swap::{get_max_maker_vol, CheckBalanceError, CoinVolumeInfo}; use coins::{lp_coinfind_or_err, CoinFindError}; use common::HttpStatusCode; use derive_more::Display; diff --git a/mm2src/mm2_main/src/lp_swap/my_swaps_storage.rs b/mm2src/mm2_main/src/lp_swap/my_swaps_storage.rs index 33640350aa..f725dce5dc 100644 --- a/mm2src/mm2_main/src/lp_swap/my_swaps_storage.rs +++ b/mm2src/mm2_main/src/lp_swap/my_swaps_storage.rs @@ -58,7 +58,7 @@ impl MySwapsStorage { #[cfg(not(target_arch = "wasm32"))] mod native_impl { use super::*; - use crate::mm2::database::my_swaps::{insert_new_swap, select_uuids_by_my_swaps_filter, SelectSwapsUuidsErr}; + use crate::database::my_swaps::{insert_new_swap, select_uuids_by_my_swaps_filter, SelectSwapsUuidsErr}; use db_common::sqlite::rusqlite::Error as SqlError; impl From for MySwapsError { @@ -111,9 +111,9 @@ mod native_impl { #[cfg(target_arch = "wasm32")] mod wasm_impl { use super::*; - use crate::mm2::lp_swap::swap_wasm_db::cursor_prelude::*; - use crate::mm2::lp_swap::swap_wasm_db::{DbTransactionError, InitDbError, MySwapsFiltersTable}; - use crate::mm2::lp_swap::{SwapsContext, LEGACY_SWAP_TYPE}; + use crate::lp_swap::swap_wasm_db::cursor_prelude::*; + use crate::lp_swap::swap_wasm_db::{DbTransactionError, InitDbError, MySwapsFiltersTable}; + use crate::lp_swap::{SwapsContext, LEGACY_SWAP_TYPE}; use std::collections::BTreeSet; use uuid::Uuid; @@ -328,7 +328,7 @@ mod wasm_impl { mod wasm_tests { use super::wasm_impl::*; use super::*; - use crate::mm2::lp_swap::{LEGACY_SWAP_TYPE, MAKER_SWAP_V2_TYPE, TAKER_SWAP_V2_TYPE}; + use crate::lp_swap::{LEGACY_SWAP_TYPE, MAKER_SWAP_V2_TYPE, TAKER_SWAP_V2_TYPE}; use common::log::wasm_log::register_wasm_log; use common::new_uuid; use mm2_core::mm_ctx::MmCtxBuilder; diff --git a/mm2src/mm2_main/src/lp_swap/recreate_swap_data.rs b/mm2src/mm2_main/src/lp_swap/recreate_swap_data.rs index 56e7877b70..0d139df62f 100644 --- a/mm2src/mm2_main/src/lp_swap/recreate_swap_data.rs +++ b/mm2src/mm2_main/src/lp_swap/recreate_swap_data.rs @@ -1,9 +1,9 @@ -use crate::mm2::lp_swap::maker_swap::{MakerSwapData, MakerSwapEvent, TakerNegotiationData, MAKER_ERROR_EVENTS, - MAKER_SUCCESS_EVENTS}; -use crate::mm2::lp_swap::taker_swap::{MakerNegotiationData, TakerPaymentSpentData, TakerSavedEvent, TakerSwapData, - TakerSwapEvent, TAKER_ERROR_EVENTS, TAKER_SUCCESS_EVENTS}; -use crate::mm2::lp_swap::{wait_for_maker_payment_conf_until, MakerSavedEvent, MakerSavedSwap, SavedSwap, SwapError, - TakerSavedSwap}; +use crate::lp_swap::maker_swap::{MakerSwapData, MakerSwapEvent, TakerNegotiationData, MAKER_ERROR_EVENTS, + MAKER_SUCCESS_EVENTS}; +use crate::lp_swap::taker_swap::{MakerNegotiationData, TakerPaymentSpentData, TakerSavedEvent, TakerSwapData, + TakerSwapEvent, TAKER_ERROR_EVENTS, TAKER_SUCCESS_EVENTS}; +use crate::lp_swap::{wait_for_maker_payment_conf_until, MakerSavedEvent, MakerSavedSwap, SavedSwap, SwapError, + TakerSavedSwap}; use coins::{lp_coinfind, MmCoinEnum}; use common::{HttpStatusCode, StatusCode}; use derive_more::Display; diff --git a/mm2src/mm2_main/src/lp_swap/saved_swap.rs b/mm2src/mm2_main/src/lp_swap/saved_swap.rs index 1531ceb28b..de6d379b5c 100644 --- a/mm2src/mm2_main/src/lp_swap/saved_swap.rs +++ b/mm2src/mm2_main/src/lp_swap/saved_swap.rs @@ -1,6 +1,6 @@ -use crate::mm2::lp_swap::maker_swap::{MakerSavedSwap, MakerSwap, MakerSwapEvent}; -use crate::mm2::lp_swap::taker_swap::{TakerSavedSwap, TakerSwap, TakerSwapEvent}; -use crate::mm2::lp_swap::{MySwapInfo, RecoveredSwap}; +use crate::lp_swap::maker_swap::{MakerSavedSwap, MakerSwap, MakerSwapEvent}; +use crate::lp_swap::taker_swap::{TakerSavedSwap, TakerSwap, TakerSwapEvent}; +use crate::lp_swap::{MySwapInfo, RecoveredSwap}; use async_trait::async_trait; use coins::lp_coinfind; use derive_more::Display; @@ -184,9 +184,9 @@ pub trait SavedSwapIo { #[cfg(not(target_arch = "wasm32"))] mod native_impl { use super::*; - use crate::mm2::lp_swap::maker_swap::{stats_maker_swap_dir, stats_maker_swap_file_path}; - use crate::mm2::lp_swap::taker_swap::{stats_taker_swap_dir, stats_taker_swap_file_path}; - use crate::mm2::lp_swap::{my_swap_file_path, my_swaps_dir}; + use crate::lp_swap::maker_swap::{stats_maker_swap_dir, stats_maker_swap_file_path}; + use crate::lp_swap::taker_swap::{stats_taker_swap_dir, stats_taker_swap_file_path}; + use crate::lp_swap::{my_swap_file_path, my_swaps_dir}; use mm2_io::fs::{read_dir_json, read_json, write_json, FsJsonError}; const USE_TMP_FILE: bool = true; @@ -262,9 +262,9 @@ mod native_impl { #[cfg(target_arch = "wasm32")] mod wasm_impl { use super::*; - use crate::mm2::lp_swap::swap_wasm_db::{DbTransactionError, InitDbError, MySwapsFiltersTable, SavedSwapTable, - SwapsMigrationTable}; - use crate::mm2::lp_swap::{SwapsContext, LEGACY_SWAP_TYPE}; + use crate::lp_swap::swap_wasm_db::{DbTransactionError, InitDbError, MySwapsFiltersTable, SavedSwapTable, + SwapsMigrationTable}; + use crate::lp_swap::{SwapsContext, LEGACY_SWAP_TYPE}; use bytes::Buf; use common::log::{info, warn}; use mm2_db::indexed_db::cursor_prelude::CursorError; @@ -426,8 +426,8 @@ mod wasm_impl { #[cfg(target_arch = "wasm32")] mod tests { use super::*; - use crate::mm2::lp_swap::swap_wasm_db::{ItemId, MySwapsFiltersTable, SavedSwapTable, SwapsMigrationTable}; - use crate::mm2::lp_swap::{SwapsContext, LEGACY_SWAP_TYPE}; + use crate::lp_swap::swap_wasm_db::{ItemId, MySwapsFiltersTable, SavedSwapTable, SwapsMigrationTable}; + use crate::lp_swap::{SwapsContext, LEGACY_SWAP_TYPE}; use mm2_core::mm_ctx::MmCtxBuilder; use serde_json as json; use wasm_bindgen_test::*; diff --git a/mm2src/mm2_main/src/lp_swap/swap_lock.rs b/mm2src/mm2_main/src/lp_swap/swap_lock.rs index 25e752d14b..f4347dde3b 100644 --- a/mm2src/mm2_main/src/lp_swap/swap_lock.rs +++ b/mm2src/mm2_main/src/lp_swap/swap_lock.rs @@ -32,7 +32,7 @@ pub trait SwapLockOps: Sized { #[cfg(not(target_arch = "wasm32"))] mod native_lock { use super::*; - use crate::mm2::lp_swap::my_swaps_dir; + use crate::lp_swap::my_swaps_dir; use mm2_io::file_lock::{FileLock, FileLockError}; use std::path::PathBuf; @@ -70,8 +70,8 @@ mod native_lock { #[cfg(target_arch = "wasm32")] mod wasm_lock { use super::*; - use crate::mm2::lp_swap::swap_wasm_db::{DbTransactionError, InitDbError, ItemId, SwapLockTable}; - use crate::mm2::lp_swap::SwapsContext; + use crate::lp_swap::swap_wasm_db::{DbTransactionError, InitDbError, ItemId, SwapLockTable}; + use crate::lp_swap::SwapsContext; use common::executor::SpawnFuture; use common::log::{debug, error}; use common::{now_float, now_ms}; @@ -194,8 +194,8 @@ mod wasm_lock { mod tests { use super::wasm_lock::*; use super::*; - use crate::mm2::lp_swap::swap_wasm_db::SwapLockTable; - use crate::mm2::lp_swap::SwapsContext; + use crate::lp_swap::swap_wasm_db::SwapLockTable; + use crate::lp_swap::SwapsContext; use common::executor::Timer; use common::new_uuid; use common::now_ms; diff --git a/mm2src/mm2_main/src/lp_swap/swap_v2_common.rs b/mm2src/mm2_main/src/lp_swap/swap_v2_common.rs index ec87e9b79b..686d263d5a 100644 --- a/mm2src/mm2_main/src/lp_swap/swap_v2_common.rs +++ b/mm2src/mm2_main/src/lp_swap/swap_v2_common.rs @@ -1,6 +1,6 @@ -use crate::mm2::lp_network::{subscribe_to_topic, unsubscribe_from_topic}; -use crate::mm2::lp_swap::swap_lock::{SwapLock, SwapLockError, SwapLockOps}; -use crate::mm2::lp_swap::{swap_v2_topic, SwapsContext}; +use crate::lp_network::{subscribe_to_topic, unsubscribe_from_topic}; +use crate::lp_swap::swap_lock::{SwapLock, SwapLockError, SwapLockOps}; +use crate::lp_swap::{swap_v2_topic, SwapsContext}; use coins::utxo::utxo_standard::UtxoStandardCoin; use coins::{lp_coinfind, MmCoinEnum}; use common::executor::abortable_queue::AbortableQueue; @@ -18,13 +18,13 @@ use uuid::Uuid; cfg_native!( use common::async_blocking; - use crate::mm2::database::my_swaps::{does_swap_exist, get_swap_events, update_swap_events, - select_unfinished_swaps_uuids, set_swap_is_finished}; + use crate::database::my_swaps::{does_swap_exist, get_swap_events, update_swap_events, select_unfinished_swaps_uuids, + set_swap_is_finished}; ); cfg_wasm32!( use common::bool_as_int::BoolAsInt; - use crate::mm2::lp_swap::swap_wasm_db::{IS_FINISHED_SWAP_TYPE_INDEX, MySwapsFiltersTable, SavedSwapTable}; + use crate::lp_swap::swap_wasm_db::{IS_FINISHED_SWAP_TYPE_INDEX, MySwapsFiltersTable, SavedSwapTable}; use mm2_db::indexed_db::{DbTransactionError, InitDbError, MultiIndex}; ); diff --git a/mm2src/mm2_main/src/lp_swap/swap_v2_rpcs.rs b/mm2src/mm2_main/src/lp_swap/swap_v2_rpcs.rs index d5c50c6534..e3f57e8400 100644 --- a/mm2src/mm2_main/src/lp_swap/swap_v2_rpcs.rs +++ b/mm2src/mm2_main/src/lp_swap/swap_v2_rpcs.rs @@ -18,7 +18,7 @@ use std::num::NonZeroUsize; use uuid::Uuid; cfg_native!( - use crate::mm2::database::my_swaps::SELECT_MY_SWAP_V2_FOR_RPC_BY_UUID; + use crate::database::my_swaps::SELECT_MY_SWAP_V2_FOR_RPC_BY_UUID; use common::async_blocking; use db_common::sqlite::query_single_row; use db_common::sqlite::rusqlite::{Result as SqlResult, Row, Error as SqlError}; @@ -29,7 +29,7 @@ cfg_wasm32!( use super::SwapsContext; use super::maker_swap_v2::MakerSwapDbRepr; use super::taker_swap_v2::TakerSwapDbRepr; - use crate::mm2::lp_swap::swap_wasm_db::{MySwapsFiltersTable, SavedSwapTable}; + use crate::lp_swap::swap_wasm_db::{MySwapsFiltersTable, SavedSwapTable}; use mm2_db::indexed_db::{DbTransactionError, DbTransactionResult, InitDbError}; ); @@ -77,7 +77,7 @@ impl From for SwapV2DbError { #[cfg(target_arch = "wasm32")] pub(super) async fn get_swap_type(ctx: &MmArc, uuid: &Uuid) -> MmResult, SwapV2DbError> { - use crate::mm2::lp_swap::swap_wasm_db::MySwapsFiltersTable; + use crate::lp_swap::swap_wasm_db::MySwapsFiltersTable; let swaps_ctx = SwapsContext::from_ctx(ctx).unwrap(); let db = swaps_ctx.swap_db().await?; diff --git a/mm2src/mm2_main/src/lp_swap/swap_watcher.rs b/mm2src/mm2_main/src/lp_swap/swap_watcher.rs index c88b34f76b..0cc4c9e633 100644 --- a/mm2src/mm2_main/src/lp_swap/swap_watcher.rs +++ b/mm2src/mm2_main/src/lp_swap/swap_watcher.rs @@ -1,8 +1,8 @@ use super::{broadcast_p2p_tx_msg, get_payment_locktime, lp_coinfind, taker_payment_spend_deadline, tx_helper_topic, H256Json, SwapsContext, WAIT_CONFIRM_INTERVAL_SEC}; -use crate::mm2::lp_network::{P2PRequestError, P2PRequestResult}; +use crate::lp_network::{P2PRequestError, P2PRequestResult}; -use crate::mm2::MmError; +use crate::MmError; use async_trait::async_trait; use coins::{CanRefundHtlc, ConfirmPaymentInput, FoundSwapTxSpend, MmCoinEnum, RefundPaymentArgs, SendMakerPaymentSpendPreimageInput, SwapTxTypeWithSecretHash, WaitForHTLCTxSpendArgs, diff --git a/mm2src/mm2_main/src/lp_swap/taker_restart.rs b/mm2src/mm2_main/src/lp_swap/taker_restart.rs index 8d4d5a2bc5..9ab1b48092 100644 --- a/mm2src/mm2_main/src/lp_swap/taker_restart.rs +++ b/mm2src/mm2_main/src/lp_swap/taker_restart.rs @@ -1,7 +1,7 @@ use super::taker_swap::TakerSwapCommand; use super::{AtomicSwap, TakerSavedSwap, TakerSwap}; -use crate::mm2::lp_swap::taker_swap::{TakerPaymentSpentData, TakerSavedEvent, TakerSwapEvent}; -use crate::mm2::lp_swap::{SavedSwap, SavedSwapIo, TransactionIdentifier, MAKER_PAYMENT_SPENT_BY_WATCHER_LOG}; +use crate::lp_swap::taker_swap::{TakerPaymentSpentData, TakerSavedEvent, TakerSwapEvent}; +use crate::lp_swap::{SavedSwap, SavedSwapIo, TransactionIdentifier, MAKER_PAYMENT_SPENT_BY_WATCHER_LOG}; use coins::{FoundSwapTxSpend, SearchForSwapTxSpendInput, TransactionEnum, ValidateWatcherSpendInput, WatcherSpendType}; use common::log::info; use common::{now_ms, Future01CompatExt}; diff --git a/mm2src/mm2_main/src/lp_swap/taker_swap.rs b/mm2src/mm2_main/src/lp_swap/taker_swap.rs index 4e087ad527..1b72199244 100644 --- a/mm2src/mm2_main/src/lp_swap/taker_swap.rs +++ b/mm2src/mm2_main/src/lp_swap/taker_swap.rs @@ -10,12 +10,12 @@ use super::{broadcast_my_swap_status, broadcast_swap_message, broadcast_swap_msg NegotiationDataMsg, NegotiationDataV2, NegotiationDataV3, RecoveredSwap, RecoveredSwapAction, SavedSwap, SavedSwapIo, SavedTradeFee, SwapConfirmationsSettings, SwapError, SwapMsg, SwapPubkeys, SwapTxDataMsg, SwapsContext, TransactionIdentifier, INCLUDE_REFUND_FEE, NO_REFUND_FEE, WAIT_CONFIRM_INTERVAL_SEC}; -use crate::mm2::lp_network::subscribe_to_topic; -use crate::mm2::lp_ordermatch::TakerOrderBuilder; -use crate::mm2::lp_swap::swap_v2_common::mark_swap_as_finished; -use crate::mm2::lp_swap::taker_restart::get_command_based_on_maker_or_watcher_activity; -use crate::mm2::lp_swap::{broadcast_p2p_tx_msg, broadcast_swap_msg_every_delayed, tx_helper_topic, - wait_for_maker_payment_conf_duration, TakerSwapWatcherData, MAX_STARTED_AT_DIFF}; +use crate::lp_network::subscribe_to_topic; +use crate::lp_ordermatch::TakerOrderBuilder; +use crate::lp_swap::swap_v2_common::mark_swap_as_finished; +use crate::lp_swap::taker_restart::get_command_based_on_maker_or_watcher_activity; +use crate::lp_swap::{broadcast_p2p_tx_msg, broadcast_swap_msg_every_delayed, tx_helper_topic, + wait_for_maker_payment_conf_duration, TakerSwapWatcherData, MAX_STARTED_AT_DIFF}; use coins::lp_price::fetch_swap_coins_price; use coins::{lp_coinfind, CanRefundHtlc, CheckIfMyPaymentSentArgs, ConfirmPaymentInput, FeeApproxStage, FoundSwapTxSpend, MmCoin, MmCoinEnum, PaymentInstructionArgs, PaymentInstructions, PaymentInstructionsErr, @@ -2676,7 +2676,7 @@ pub fn max_taker_vol_from_available( #[cfg(all(test, not(target_arch = "wasm32")))] mod taker_swap_tests { use super::*; - use crate::mm2::lp_swap::{dex_fee_amount, get_locked_amount_by_other_swaps}; + use crate::lp_swap::{dex_fee_amount, get_locked_amount_by_other_swaps}; use coins::eth::{addr_from_str, signed_eth_tx_from_bytes, SignedEthTx}; use coins::utxo::UtxoTx; use coins::{FoundSwapTxSpend, MarketCoinOps, MmCoin, SwapOps, TestCoin}; @@ -3153,7 +3153,7 @@ mod taker_swap_tests { #[test] fn locked_amount_should_not_use_paid_from_trading_vol_fee() { - use crate::mm2::lp_swap::get_locked_amount; + use crate::lp_swap::get_locked_amount; let taker_saved_json = r#"{ "type": "Taker", diff --git a/mm2src/mm2_main/src/lp_swap/taker_swap_v2.rs b/mm2src/mm2_main/src/lp_swap/taker_swap_v2.rs index 256503350b..dd7f615ec7 100644 --- a/mm2src/mm2_main/src/lp_swap/taker_swap_v2.rs +++ b/mm2src/mm2_main/src/lp_swap/taker_swap_v2.rs @@ -1,11 +1,11 @@ use super::swap_v2_common::*; use super::{LockedAmount, LockedAmountInfo, SavedTradeFee, SwapsContext, TakerSwapPreparedParams, NEGOTIATE_SEND_INTERVAL, NEGOTIATION_TIMEOUT_SEC}; -use crate::mm2::lp_swap::swap_lock::SwapLock; -use crate::mm2::lp_swap::{broadcast_swap_v2_msg_every, check_balance_for_taker_swap, recv_swap_v2_msg, swap_v2_topic, - SecretHashAlgo, SwapConfirmationsSettings, TransactionIdentifier, MAX_STARTED_AT_DIFF, - TAKER_SWAP_V2_TYPE}; -use crate::mm2::lp_swap::{swap_v2_pb::*, NO_REFUND_FEE}; +use crate::lp_swap::swap_lock::SwapLock; +use crate::lp_swap::{broadcast_swap_v2_msg_every, check_balance_for_taker_swap, recv_swap_v2_msg, swap_v2_topic, + SecretHashAlgo, SwapConfirmationsSettings, TransactionIdentifier, MAX_STARTED_AT_DIFF, + TAKER_SWAP_V2_TYPE}; +use crate::lp_swap::{swap_v2_pb::*, NO_REFUND_FEE}; use async_trait::async_trait; use bitcrypto::{dhash160, sha256}; use coins::{CanRefundHtlc, ConfirmPaymentInput, DexFee, FeeApproxStage, GenTakerFundingSpendArgs, @@ -33,14 +33,14 @@ use std::marker::PhantomData; use uuid::Uuid; cfg_native!( - use crate::mm2::database::my_swaps::{insert_new_swap_v2, SELECT_MY_SWAP_V2_BY_UUID}; + use crate::database::my_swaps::{insert_new_swap_v2, SELECT_MY_SWAP_V2_BY_UUID}; use common::async_blocking; use db_common::sqlite::rusqlite::{named_params, Error as SqlError, Result as SqlResult, Row}; use db_common::sqlite::rusqlite::types::Type as SqlType; ); cfg_wasm32!( - use crate::mm2::lp_swap::swap_wasm_db::{MySwapsFiltersTable, SavedSwapTable}; + use crate::lp_swap::swap_wasm_db::{MySwapsFiltersTable, SavedSwapTable}; ); // This is needed to have Debug on messages diff --git a/mm2src/mm2_main/src/lp_swap/trade_preimage.rs b/mm2src/mm2_main/src/lp_swap/trade_preimage.rs index 7f64b052db..cb31ed63e9 100644 --- a/mm2src/mm2_main/src/lp_swap/trade_preimage.rs +++ b/mm2src/mm2_main/src/lp_swap/trade_preimage.rs @@ -1,6 +1,6 @@ use super::check_balance::CheckBalanceError; use super::{maker_swap_trade_preimage, taker_swap_trade_preimage, MakerTradePreimage, TakerTradePreimage}; -use crate::mm2::lp_ordermatch::{MakerOrderBuildError, TakerOrderBuildError}; +use crate::lp_ordermatch::{MakerOrderBuildError, TakerOrderBuildError}; use coins::{is_wallet_only_ticker, lp_coinfind_or_err, BalanceError, CoinFindError, TradeFee, TradePreimageError}; use common::HttpStatusCode; use crypto::CryptoCtxError; diff --git a/mm2src/mm2_main/src/lp_wallet.rs b/mm2src/mm2_main/src/lp_wallet.rs index e84ea8e98c..19ac357cab 100644 --- a/mm2src/mm2_main/src/lp_wallet.rs +++ b/mm2src/mm2_main/src/lp_wallet.rs @@ -8,7 +8,7 @@ use serde::de::DeserializeOwned; use serde_json::{self as json}; cfg_wasm32! { - use crate::mm2::lp_wallet::mnemonics_wasm_db::{WalletsDb, WalletsDBError}; + use crate::lp_wallet::mnemonics_wasm_db::{WalletsDb, WalletsDBError}; use mm2_core::mm_ctx::from_ctx; use mm2_db::indexed_db::{ConstructibleDb, DbLocked, InitDbResult}; use mnemonics_wasm_db::{read_encrypted_passphrase_if_available, save_encrypted_passphrase}; @@ -21,12 +21,8 @@ cfg_native! { use mnemonics_storage::{read_encrypted_passphrase_if_available, save_encrypted_passphrase, WalletsStorageError}; } -#[cfg(not(target_arch = "wasm32"))] -#[path = "lp_wallet/mnemonics_storage.rs"] -mod mnemonics_storage; -#[cfg(target_arch = "wasm32")] -#[path = "lp_wallet/mnemonics_wasm_db.rs"] -mod mnemonics_wasm_db; +#[cfg(not(target_arch = "wasm32"))] mod mnemonics_storage; +#[cfg(target_arch = "wasm32")] mod mnemonics_wasm_db; type WalletInitResult = Result>; diff --git a/mm2src/mm2_main/src/lp_wallet/mnemonics_wasm_db.rs b/mm2src/mm2_main/src/lp_wallet/mnemonics_wasm_db.rs index f7bf2674e4..40daa62029 100644 --- a/mm2src/mm2_main/src/lp_wallet/mnemonics_wasm_db.rs +++ b/mm2src/mm2_main/src/lp_wallet/mnemonics_wasm_db.rs @@ -1,4 +1,4 @@ -use crate::mm2::lp_wallet::WalletsContext; +use crate::lp_wallet::WalletsContext; use async_trait::async_trait; use crypto::EncryptedData; use mm2_core::mm_ctx::MmArc; diff --git a/mm2src/mm2_main/src/mm2.rs b/mm2src/mm2_main/src/mm2.rs index 52412b6ec7..7dcc5572cb 100644 --- a/mm2src/mm2_main/src/mm2.rs +++ b/mm2src/mm2_main/src/mm2.rs @@ -21,9 +21,25 @@ // Copyright © 2023 Pampex LTD and TillyHK LTD. All rights reserved. // +#![feature(hash_raw_entry)] +// `mockable` implementation uses these +#![allow( + forgetting_references, + forgetting_copy_types, + clippy::swap_ptr_to_ref, + clippy::forget_non_drop, + clippy::let_unit_value +)] #![cfg_attr(target_arch = "wasm32", allow(dead_code))] #![cfg_attr(target_arch = "wasm32", allow(unused_imports))] +#[macro_use] extern crate common; +#[macro_use] extern crate gstuff; +#[macro_use] extern crate serde_json; +#[macro_use] extern crate serde_derive; +#[macro_use] extern crate ser_error_derive; +#[cfg(test)] extern crate mm2_test_helpers; + #[cfg(not(target_arch = "wasm32"))] use common::block_on; use common::crash_reports::init_crash_reports; use common::double_panic_crash; @@ -48,25 +64,24 @@ use std::process::exit; use std::ptr::null; use std::str; -#[path = "lp_native_dex.rs"] mod lp_native_dex; +mod lp_native_dex; pub use self::lp_native_dex::init_hw; pub use self::lp_native_dex::lp_init; use coins::update_coins_config; use mm2_err_handle::prelude::*; -#[cfg(not(target_arch = "wasm32"))] -#[path = "database.rs"] -pub mod database; - -#[path = "heartbeat_event.rs"] pub mod heartbeat_event; -#[path = "lp_dispatcher.rs"] pub mod lp_dispatcher; -#[path = "lp_message_service.rs"] pub mod lp_message_service; -#[path = "lp_network.rs"] pub mod lp_network; -#[path = "lp_ordermatch.rs"] pub mod lp_ordermatch; -#[path = "lp_stats.rs"] pub mod lp_stats; -#[path = "lp_swap.rs"] pub mod lp_swap; -#[path = "lp_wallet.rs"] pub mod lp_wallet; -#[path = "rpc.rs"] pub mod rpc; +#[cfg(not(target_arch = "wasm32"))] pub mod database; + +pub mod heartbeat_event; +pub mod lp_dispatcher; +pub mod lp_message_service; +pub mod lp_network; +pub mod lp_ordermatch; +pub mod lp_stats; +pub mod lp_swap; +pub mod lp_wallet; +pub mod rpc; +#[cfg(all(target_arch = "wasm32", test))] mod wasm_tests; pub const PASSWORD_MAXIMUM_CONSECUTIVE_CHARACTERS: usize = 3; diff --git a/mm2src/mm2_main/src/notification/telegram/telegram.rs b/mm2src/mm2_main/src/notification/telegram/telegram.rs index edfc5c15f7..3879920767 100644 --- a/mm2src/mm2_main/src/notification/telegram/telegram.rs +++ b/mm2src/mm2_main/src/notification/telegram/telegram.rs @@ -1,4 +1,4 @@ -use crate::mm2::lp_message_service::{MessageResult, MessageServiceTraits}; +use crate::lp_message_service::{MessageResult, MessageServiceTraits}; use async_trait::async_trait; use derive_more::Display; use mm2_net::transport::{post_json, SlurpError}; @@ -58,8 +58,8 @@ impl MessageServiceTraits for TgClient { #[cfg(all(test, not(target_arch = "wasm32")))] mod telegram_tests { - use crate::mm2::lp_message_service::telegram::{ChatIdRegistry, TgClient}; - use crate::mm2::lp_message_service::MessageServiceTraits; + use crate::lp_message_service::telegram::{ChatIdRegistry, TgClient}; + use crate::lp_message_service::MessageServiceTraits; use common::block_on; use std::env::var; diff --git a/mm2src/mm2_main/src/ordermatch_tests.rs b/mm2src/mm2_main/src/ordermatch_tests.rs index b0657b0d00..0faa806f33 100644 --- a/mm2src/mm2_main/src/ordermatch_tests.rs +++ b/mm2src/mm2_main/src/ordermatch_tests.rs @@ -1,5 +1,5 @@ use super::*; -use crate::mm2::lp_ordermatch::new_protocol::{MakerOrderUpdated, PubkeyKeepAlive}; +use crate::lp_ordermatch::new_protocol::{MakerOrderUpdated, PubkeyKeepAlive}; use coins::{MmCoin, TestCoin}; use common::{block_on, executor::spawn}; use crypto::privkey::key_pair_from_seed; diff --git a/mm2src/mm2_main/src/rpc.rs b/mm2src/mm2_main/src/rpc.rs index 92422738f9..c7b483d952 100644 --- a/mm2src/mm2_main/src/rpc.rs +++ b/mm2src/mm2_main/src/rpc.rs @@ -20,7 +20,7 @@ // Copyright © 2023 Pampex LTD and TillyHK LTD. All rights reserved. // -use crate::mm2::rpc::rate_limiter::RateLimitError; +use crate::rpc::rate_limiter::RateLimitError; use common::log::{error, info}; use common::{err_to_rpc_json_string, err_tp_rpc_json, HttpStatusCode, APPLICATION_JSON}; use derive_more::Display; @@ -49,7 +49,7 @@ mod dispatcher_legacy; #[path = "rpc/lp_commands/lp_commands.rs"] pub mod lp_commands; #[path = "rpc/lp_commands/lp_commands_legacy.rs"] pub mod lp_commands_legacy; -#[path = "rpc/rate_limiter.rs"] mod rate_limiter; +mod rate_limiter; /// Lists the RPC method not requiring the "userpass" authentication. /// None is also public to skip auth and display proper error in case of method is missing diff --git a/mm2src/mm2_main/src/rpc/dispatcher/dispatcher.rs b/mm2src/mm2_main/src/rpc/dispatcher/dispatcher.rs index 271fbf48cc..5403392240 100644 --- a/mm2src/mm2_main/src/rpc/dispatcher/dispatcher.rs +++ b/mm2src/mm2_main/src/rpc/dispatcher/dispatcher.rs @@ -1,16 +1,16 @@ use super::{DispatcherError, DispatcherResult, PUBLIC_METHODS}; -use crate::mm2::lp_native_dex::init_hw::{cancel_init_trezor, init_trezor, init_trezor_status, init_trezor_user_action}; +use crate::lp_native_dex::init_hw::{cancel_init_trezor, init_trezor, init_trezor_status, init_trezor_user_action}; #[cfg(target_arch = "wasm32")] -use crate::mm2::lp_native_dex::init_metamask::{cancel_connect_metamask, connect_metamask, connect_metamask_status}; -use crate::mm2::lp_ordermatch::{best_orders_rpc_v2, orderbook_rpc_v2, start_simple_market_maker_bot, - stop_simple_market_maker_bot}; -use crate::mm2::lp_swap::swap_v2_rpcs::{active_swaps_rpc, my_recent_swaps_rpc, my_swap_status_rpc}; -use crate::mm2::lp_wallet::get_mnemonic_rpc; -use crate::mm2::rpc::rate_limiter::{process_rate_limit, RateLimitContext}; -use crate::{mm2::lp_stats::{add_node_to_version_stat, remove_node_from_version_stat, start_version_stat_collection, - stop_version_stat_collection, update_version_stat_collection}, - mm2::lp_swap::{get_locked_amount_rpc, max_maker_vol, recreate_swap_data, trade_preimage_rpc}, - mm2::rpc::lp_commands::{get_public_key, get_public_key_hash, get_shared_db_id, trezor_connection_status}}; +use crate::lp_native_dex::init_metamask::{cancel_connect_metamask, connect_metamask, connect_metamask_status}; +use crate::lp_ordermatch::{best_orders_rpc_v2, orderbook_rpc_v2, start_simple_market_maker_bot, + stop_simple_market_maker_bot}; +use crate::lp_swap::swap_v2_rpcs::{active_swaps_rpc, my_recent_swaps_rpc, my_swap_status_rpc}; +use crate::lp_wallet::get_mnemonic_rpc; +use crate::rpc::rate_limiter::{process_rate_limit, RateLimitContext}; +use crate::{lp_stats::{add_node_to_version_stat, remove_node_from_version_stat, start_version_stat_collection, + stop_version_stat_collection, update_version_stat_collection}, + lp_swap::{get_locked_amount_rpc, max_maker_vol, recreate_swap_data, trade_preimage_rpc}, + rpc::lp_commands::{get_public_key, get_public_key_hash, get_shared_db_id, trezor_connection_status}}; use coins::eth::EthCoin; use coins::my_tx_history_v2::my_tx_history_v2_rpc; use coins::rpc_command::tendermint::{ibc_chains, ibc_transfer_channels}; diff --git a/mm2src/mm2_main/src/rpc/dispatcher/dispatcher_legacy.rs b/mm2src/mm2_main/src/rpc/dispatcher/dispatcher_legacy.rs index 795b76cee0..bcb09c4d51 100644 --- a/mm2src/mm2_main/src/rpc/dispatcher/dispatcher_legacy.rs +++ b/mm2src/mm2_main/src/rpc/dispatcher/dispatcher_legacy.rs @@ -8,13 +8,13 @@ use serde_json::{self as json, Value as Json}; use std::net::SocketAddr; use super::lp_commands_legacy::*; -use crate::mm2::lp_ordermatch::{best_orders_rpc, buy, cancel_all_orders_rpc, cancel_order_rpc, my_orders, - order_status, orderbook_depth_rpc, orderbook_rpc, orders_history_by_filter, sell, - set_price, update_maker_order_rpc}; -use crate::mm2::lp_swap::{active_swaps_rpc, all_swaps_uuids_by_filter, ban_pubkey_rpc, coins_needed_for_kick_start, - import_swaps, list_banned_pubkeys_rpc, max_taker_vol, my_recent_swaps_rpc, my_swap_status, - recover_funds_of_swap, stats_swap_status, unban_pubkeys_rpc}; -use crate::mm2::rpc::rate_limiter::{process_rate_limit, RateLimitContext}; +use crate::lp_ordermatch::{best_orders_rpc, buy, cancel_all_orders_rpc, cancel_order_rpc, my_orders, order_status, + orderbook_depth_rpc, orderbook_rpc, orders_history_by_filter, sell, set_price, + update_maker_order_rpc}; +use crate::lp_swap::{active_swaps_rpc, all_swaps_uuids_by_filter, ban_pubkey_rpc, coins_needed_for_kick_start, + import_swaps, list_banned_pubkeys_rpc, max_taker_vol, my_recent_swaps_rpc, my_swap_status, + recover_funds_of_swap, stats_swap_status, unban_pubkeys_rpc}; +use crate::rpc::rate_limiter::{process_rate_limit, RateLimitContext}; use coins::{convert_address, convert_utxo_address, get_enabled_coins, get_trade_fee, kmd_rewards_info, my_tx_history, send_raw_transaction, set_required_confirmations, set_requires_notarization, show_priv_key, validate_address}; @@ -144,7 +144,7 @@ pub async fn process_single_request( /// The set of functions that convert the result of the updated handlers into the legacy format. mod into_legacy { use super::*; - use crate::mm2::lp_swap; + use crate::lp_swap; pub async fn withdraw(ctx: MmArc, req: Json) -> Result>, String> { let params = try_s!(json::from_value(req)); diff --git a/mm2src/mm2_main/src/rpc/lp_commands/lp_commands_legacy.rs b/mm2src/mm2_main/src/rpc/lp_commands/lp_commands_legacy.rs index 7e61b8c642..9e7140d829 100644 --- a/mm2src/mm2_main/src/rpc/lp_commands/lp_commands_legacy.rs +++ b/mm2src/mm2_main/src/rpc/lp_commands/lp_commands_legacy.rs @@ -35,10 +35,10 @@ use std::borrow::Cow; use std::collections::HashSet; use uuid::Uuid; -use crate::mm2::lp_dispatcher::{dispatch_lp_event, StopCtxEvent}; -use crate::mm2::lp_network::subscribe_to_topic; -use crate::mm2::lp_ordermatch::{cancel_orders_by, get_matching_orders, CancelBy}; -use crate::mm2::lp_swap::{active_swaps_using_coins, tx_helper_topic, watcher_topic}; +use crate::lp_dispatcher::{dispatch_lp_event, StopCtxEvent}; +use crate::lp_network::subscribe_to_topic; +use crate::lp_ordermatch::{cancel_orders_by, get_matching_orders, CancelBy}; +use crate::lp_swap::{active_swaps_using_coins, tx_helper_topic, watcher_topic}; const INTERNAL_SERVER_ERROR_CODE: u16 = 500; const RESPONSE_OK_STATUS_CODE: u16 = 200; diff --git a/mm2src/mm2_main/src/rpc/rate_limiter.rs b/mm2src/mm2_main/src/rpc/rate_limiter.rs index 9f07be2b46..aa68cee4a8 100644 --- a/mm2src/mm2_main/src/rpc/rate_limiter.rs +++ b/mm2src/mm2_main/src/rpc/rate_limiter.rs @@ -1,4 +1,4 @@ -use crate::mm2::rpc::DispatcherError; +use crate::rpc::DispatcherError; use derive_more::Display; use futures::lock::Mutex as AsyncMutex; use mm2_core::mm_ctx::from_ctx; diff --git a/mm2src/mm2_main/src/wasm_tests.rs b/mm2src/mm2_main/src/wasm_tests.rs index a43b948ac8..fbf37ca545 100644 --- a/mm2src/mm2_main/src/wasm_tests.rs +++ b/mm2src/mm2_main/src/wasm_tests.rs @@ -1,4 +1,4 @@ -use crate::mm2::lp_init; +use crate::lp_init; use common::executor::{spawn, Timer}; use common::log::wasm_log::register_wasm_log; use mm2_core::mm_ctx::MmArc; diff --git a/mm2src/mm2_main/tests/docker_tests/qrc20_tests.rs b/mm2src/mm2_main/tests/docker_tests/qrc20_tests.rs index fbf7df14d2..e66a3a5852 100644 --- a/mm2src/mm2_main/tests/docker_tests/qrc20_tests.rs +++ b/mm2src/mm2_main/tests/docker_tests/qrc20_tests.rs @@ -17,7 +17,7 @@ use ethereum_types::H160; use futures01::Future; use http::StatusCode; use mm2_core::mm_ctx::{MmArc, MmCtxBuilder}; -use mm2_main::mm2::lp_swap::{dex_fee_amount, max_taker_vol_from_available}; +use mm2_main::lp_swap::{dex_fee_amount, max_taker_vol_from_available}; use mm2_number::BigDecimal; use mm2_rpc::data::legacy::{CoinInitResponse, OrderbookResponse}; use mm2_test_helpers::structs::{trade_preimage_error, RpcErrorResponse, RpcSuccessResponse, TransactionDetails}; diff --git a/mm2src/mm2_main/tests/docker_tests/swap_watcher_tests.rs b/mm2src/mm2_main/tests/docker_tests/swap_watcher_tests.rs index 98973aaf96..22c17c1444 100644 --- a/mm2src/mm2_main/tests/docker_tests/swap_watcher_tests.rs +++ b/mm2src/mm2_main/tests/docker_tests/swap_watcher_tests.rs @@ -16,9 +16,9 @@ use coins::{ConfirmPaymentInput, FoundSwapTxSpend, MarketCoinOps, MmCoin, MmCoin use common::{block_on, now_sec, wait_until_sec, DEX_FEE_ADDR_RAW_PUBKEY}; use crypto::privkey::{key_pair_from_secret, key_pair_from_seed}; use futures01::Future; -use mm2_main::mm2::lp_swap::{dex_fee_amount, dex_fee_amount_from_taker_coin, generate_secret, get_payment_locktime, - MAKER_PAYMENT_SENT_LOG, MAKER_PAYMENT_SPEND_FOUND_LOG, MAKER_PAYMENT_SPEND_SENT_LOG, - REFUND_TEST_FAILURE_LOG, TAKER_PAYMENT_REFUND_SENT_LOG, WATCHER_MESSAGE_SENT_LOG}; +use mm2_main::lp_swap::{dex_fee_amount, dex_fee_amount_from_taker_coin, generate_secret, get_payment_locktime, + MAKER_PAYMENT_SENT_LOG, MAKER_PAYMENT_SPEND_FOUND_LOG, MAKER_PAYMENT_SPEND_SENT_LOG, + REFUND_TEST_FAILURE_LOG, TAKER_PAYMENT_REFUND_SENT_LOG, WATCHER_MESSAGE_SENT_LOG}; use mm2_number::BigDecimal; use mm2_number::MmNumber; use mm2_test_helpers::for_tests::{enable_eth_coin, erc20_dev_conf, eth_dev_conf, eth_jst_testnet_conf, mm_dump, diff --git a/mm2src/mm2_main/tests/docker_tests/swaps_confs_settings_sync_tests.rs b/mm2src/mm2_main/tests/docker_tests/swaps_confs_settings_sync_tests.rs index 13c35cb0be..31c6c264e3 100644 --- a/mm2src/mm2_main/tests/docker_tests/swaps_confs_settings_sync_tests.rs +++ b/mm2src/mm2_main/tests/docker_tests/swaps_confs_settings_sync_tests.rs @@ -1,7 +1,7 @@ use crate::generate_utxo_coin_with_random_privkey; use crate::integration_tests_common::enable_native; use common::block_on; -use mm2_main::mm2::lp_swap::get_payment_locktime; +use mm2_main::lp_swap::get_payment_locktime; use mm2_rpc::data::legacy::OrderConfirmationsSettings; use mm2_test_helpers::for_tests::{mm_dump, MarketMakerIt}; use serde_json::Value as Json; diff --git a/mm2src/mm2_main/tests/integration_tests_common/mod.rs b/mm2src/mm2_main/tests/integration_tests_common/mod.rs index 13393bd8d1..7294f44283 100644 --- a/mm2src/mm2_main/tests/integration_tests_common/mod.rs +++ b/mm2src/mm2_main/tests/integration_tests_common/mod.rs @@ -2,7 +2,7 @@ use common::executor::Timer; use common::log::LogLevel; use common::{block_on, log, now_ms, wait_until_ms}; use crypto::privkey::key_pair_from_seed; -use mm2_main::mm2::{lp_main, LpMainParams}; +use mm2_main::{lp_main, LpMainParams}; use mm2_rpc::data::legacy::CoinInitResponse; use mm2_test_helpers::electrums::{doc_electrums, marty_electrums}; use mm2_test_helpers::for_tests::{create_new_account_status, enable_native as enable_native_impl, diff --git a/mm2src/mm2_main/tests/mm2_tests/mm2_tests_inner.rs b/mm2src/mm2_main/tests/mm2_tests/mm2_tests_inner.rs index 06abd46a92..137eb6ef09 100644 --- a/mm2src/mm2_main/tests/mm2_tests/mm2_tests_inner.rs +++ b/mm2src/mm2_main/tests/mm2_tests/mm2_tests_inner.rs @@ -5,7 +5,7 @@ use common::executor::Timer; use common::{cfg_native, cfg_wasm32, log, new_uuid}; use crypto::privkey::key_pair_from_seed; use http::{HeaderMap, StatusCode}; -use mm2_main::mm2::lp_ordermatch::MIN_ORDER_KEEP_ALIVE_INTERVAL; +use mm2_main::lp_ordermatch::MIN_ORDER_KEEP_ALIVE_INTERVAL; use mm2_metrics::{MetricType, MetricsJson}; use mm2_number::{BigDecimal, BigRational, Fraction, MmNumber}; use mm2_rpc::data::legacy::{CoinInitResponse, MmVersionResponse, OrderbookResponse}; @@ -5937,8 +5937,8 @@ mod trezor_tests { use crypto::hw_rpc_task::HwRpcTaskAwaitingStatus; use crypto::CryptoCtx; use mm2_core::mm_ctx::MmArc; - use mm2_main::mm2::init_hw::init_trezor_user_action; - use mm2_main::mm2::init_hw::{init_trezor, init_trezor_status, InitHwRequest, InitHwResponse}; + use mm2_main::init_hw::init_trezor_user_action; + use mm2_main::init_hw::{init_trezor, init_trezor_status, InitHwRequest, InitHwResponse}; use mm2_test_helpers::electrums::tbtc_electrums; use mm2_test_helpers::for_tests::{enable_utxo_v2_electrum, eth_sepolia_trezor_firmware_compat_conf, eth_testnet_conf_trezor, init_trezor_rpc, init_trezor_status_rpc, diff --git a/mm2src/mm2_main/tests/mm2_tests/orderbook_sync_tests.rs b/mm2src/mm2_main/tests/mm2_tests/orderbook_sync_tests.rs index bc3ec5e93d..c7ab8956b9 100644 --- a/mm2src/mm2_main/tests/mm2_tests/orderbook_sync_tests.rs +++ b/mm2src/mm2_main/tests/mm2_tests/orderbook_sync_tests.rs @@ -1,7 +1,7 @@ use crate::integration_tests_common::{enable_coins_rick_morty_electrum, enable_electrum, enable_electrum_json}; use common::{block_on, log}; use http::StatusCode; -use mm2_main::mm2::lp_ordermatch::MIN_ORDER_KEEP_ALIVE_INTERVAL; +use mm2_main::lp_ordermatch::MIN_ORDER_KEEP_ALIVE_INTERVAL; use mm2_number::{BigDecimal, BigRational, MmNumber}; use mm2_rpc::data::legacy::{AggregatedOrderbookEntry, CoinInitResponse, OrderbookResponse}; use mm2_test_helpers::electrums::doc_electrums; From 8c3331c84d418f8da9abc869e2b6d3327dad3ed5 Mon Sep 17 00:00:00 2001 From: Omer Yacine Date: Thu, 8 Aug 2024 07:45:37 +0200 Subject: [PATCH 2/2] fix stack trace skip path for crash reports --- mm2src/common/common.rs | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/mm2src/common/common.rs b/mm2src/common/common.rs index e3232bfcfc..6d1c03d8a1 100644 --- a/mm2src/common/common.rs +++ b/mm2src/common/common.rs @@ -375,11 +375,9 @@ pub fn stack_trace_frame(instr_ptr: *mut c_void, buf: &mut dyn Write, symbol: &b // Skip common and less than informative frames. match name { - // FIXME: What mm2 here refers to? - "mm2::crash_reports::rust_seh_handler" + "common::crash_reports::rust_seh_handler" | "veh_exception_filter" | "common::stack_trace" - | "common::log_stacktrace" // Super-main on Windows. | "__scrt_common_main_seh" => return, _ => (), @@ -397,8 +395,7 @@ pub fn stack_trace_frame(instr_ptr: *mut c_void, buf: &mut dyn Write, symbol: &b || name.starts_with("core::ops::") || name.starts_with("futures::") || name.starts_with("hyper::") - // FIXME: What mm2 here refers to? - || name.starts_with("mm2::crash_reports::signal_handler") + || name.starts_with("common::crash_reports::signal_handler") || name.starts_with("panic_unwind::") || name.starts_with("std::") || name.starts_with("scoped_tls::")