From c079f9e7c0a28b9053dc056f136c3886696e4dc1 Mon Sep 17 00:00:00 2001 From: "hinto.janai" <hinto.janai@protonmail.com> Date: Thu, 19 Sep 2024 18:26:36 -0400 Subject: [PATCH] fixes --- Cargo.lock | 2 ++ Cargo.toml | 1 - consensus/Cargo.toml | 1 + consensus/rules/Cargo.toml | 7 ++++--- consensus/rules/src/lib.rs | 14 ++++++++------ .../rules/src/transactions/contextual_data.rs | 2 +- consensus/src/context/task.rs | 2 +- consensus/src/lib.rs | 15 ++++++++------- consensus/tests/verify_correct_txs.rs | 6 +----- 9 files changed, 26 insertions(+), 24 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5bb97776..d5c6a23b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -552,6 +552,7 @@ dependencies = [ name = "cuprate-consensus" version = "0.1.0" dependencies = [ + "cfg-if", "cuprate-consensus-rules", "cuprate-helper", "cuprate-test-utils", @@ -579,6 +580,7 @@ dependencies = [ name = "cuprate-consensus-rules" version = "0.1.0" dependencies = [ + "cfg-if", "crypto-bigint", "cuprate-cryptonight", "cuprate-helper", diff --git a/Cargo.toml b/Cargo.toml index f991f73d..2554fbde 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -210,7 +210,6 @@ unseparated_literal_suffix = "deny" unnecessary_safety_doc = "deny" unnecessary_safety_comment = "deny" unnecessary_self_imports = "deny" -tests_outside_test_module = "deny" string_to_string = "deny" rest_pat_in_fully_bound_structs = "deny" redundant_type_annotations = "deny" diff --git a/consensus/Cargo.toml b/consensus/Cargo.toml index 91932d74..12d97eed 100644 --- a/consensus/Cargo.toml +++ b/consensus/Cargo.toml @@ -12,6 +12,7 @@ cuprate-helper = { path = "../helper", default-features = false, features = ["st cuprate-consensus-rules = { path = "./rules", features = ["rayon"] } cuprate-types = { path = "../types" } +cfg-if = { workspace = true } thiserror = { workspace = true } tower = { workspace = true, features = ["util"] } tracing = { workspace = true, features = ["std", "attributes"] } diff --git a/consensus/rules/Cargo.toml b/consensus/rules/Cargo.toml index ede4350b..575bed70 100644 --- a/consensus/rules/Cargo.toml +++ b/consensus/rules/Cargo.toml @@ -24,15 +24,16 @@ hex = { workspace = true, features = ["std"] } hex-literal = { workspace = true } crypto-bigint = { workspace = true } +cfg-if = { workspace = true } tracing = { workspace = true, features = ["std"] } thiserror = { workspace = true } rayon = { workspace = true, optional = true } [dev-dependencies] -proptest = {workspace = true} -proptest-derive = {workspace = true} -tokio = {version = "1.35.0", features = ["rt-multi-thread", "macros"]} +proptest = { workspace = true } +proptest-derive = { workspace = true } +tokio = { version = "1.35.0", features = ["rt-multi-thread", "macros"] } [lints] workspace = true \ No newline at end of file diff --git a/consensus/rules/src/lib.rs b/consensus/rules/src/lib.rs index 2d54a818..876e2f7f 100644 --- a/consensus/rules/src/lib.rs +++ b/consensus/rules/src/lib.rs @@ -1,9 +1,11 @@ -#[cfg(test)] -use proptest as _; -#[cfg(test)] -use proptest_derive as _; -#[cfg(test)] -use tokio as _; +cfg_if::cfg_if! { + // Used in external `tests/`. + if #[cfg(test)] { + use proptest as _; + use proptest_derive as _; + use tokio as _; + } +} use std::time::{SystemTime, UNIX_EPOCH}; diff --git a/consensus/rules/src/transactions/contextual_data.rs b/consensus/rules/src/transactions/contextual_data.rs index 74dcb5b7..73bc12ec 100644 --- a/consensus/rules/src/transactions/contextual_data.rs +++ b/consensus/rules/src/transactions/contextual_data.rs @@ -103,7 +103,7 @@ impl DecoyInfo { /// /// So: /// - /// `amount_outs_on_chain(inputs``[X]`) == `outputs_with_amount``[X]` + /// `amount_outs_on_chain(inputs[X]) == outputs_with_amount[X]` /// /// Do not rely on this function to do consensus checks! /// diff --git a/consensus/src/context/task.rs b/consensus/src/context/task.rs index 32ee77f1..82b466c4 100644 --- a/consensus/src/context/task.rs +++ b/consensus/src/context/task.rs @@ -333,7 +333,7 @@ impl<D: Database + Clone + Send + 'static> ContextTask<D> { pub(crate) async fn run(mut self, mut rx: mpsc::Receiver<ContextTaskRequest>) { while let Some(req) = rx.recv().await { let res = self.handle_req(req.req).instrument(req.span).await; - let _unused = req.tx.send(res); + drop(req.tx.send(res)); } tracing::info!("Shutting down blockchain context task."); diff --git a/consensus/src/lib.rs b/consensus/src/lib.rs index d522b6c1..e104cec9 100644 --- a/consensus/src/lib.rs +++ b/consensus/src/lib.rs @@ -11,13 +11,14 @@ //! with [`BlockchainResponse`]. //! -// Used in external `tests/`. -#[cfg(test)] -use cuprate_test_utils as _; -#[cfg(test)] -use curve25519_dalek as _; -#[cfg(test)] -use hex_literal as _; +cfg_if::cfg_if! { + // Used in external `tests/`. + if #[cfg(test)] { + use cuprate_test_utils as _; + use curve25519_dalek as _; + use hex_literal as _; + } +} use cuprate_consensus_rules::ConsensusError; diff --git a/consensus/tests/verify_correct_txs.rs b/consensus/tests/verify_correct_txs.rs index 0eb3cb21..4d6c1793 100644 --- a/consensus/tests/verify_correct_txs.rs +++ b/consensus/tests/verify_correct_txs.rs @@ -1,8 +1,4 @@ -#![expect( - clippy::tests_outside_test_module, - unused_crate_dependencies, - reason = "external test module" -)] +#![expect(unused_crate_dependencies, reason = "external test module")] #![expect(clippy::allow_attributes, reason = "usage inside macro")] use std::{