[INFO] cloning repository https://github.com/AlexandriaDAO/basket [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AlexandriaDAO/basket" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlexandriaDAO%2Fbasket", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlexandriaDAO%2Fbasket'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ce37d1920ccaa15d2475487f63363d895921864b [INFO] linting AlexandriaDAO/basket against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlexandriaDAO%2Fbasket" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/AlexandriaDAO/basket [INFO] finished tweaking git repo https://github.com/AlexandriaDAO/basket [INFO] tweaked toml for git repo https://github.com/AlexandriaDAO/basket written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/AlexandriaDAO/basket on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/AlexandriaDAO/basket already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded candid_derive v0.10.19 [INFO] [stderr] Downloaded rust_decimal_macros v1.38.0 [INFO] [stderr] Downloaded pretty v0.12.5 [INFO] [stderr] Downloaded candid v0.10.19 [INFO] [stderr] Downloaded rust_decimal v1.38.0 [INFO] [stderr] Downloaded ic-stable-structures v0.6.9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d5d1fcd6afa763a5e8371a5d4c47c2697b663c463e64ba6e9c76ebd8cb9e5dd5 [INFO] running `Command { std: "docker" "start" "-a" "d5d1fcd6afa763a5e8371a5d4c47c2697b663c463e64ba6e9c76ebd8cb9e5dd5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d5d1fcd6afa763a5e8371a5d4c47c2697b663c463e64ba6e9c76ebd8cb9e5dd5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d5d1fcd6afa763a5e8371a5d4c47c2697b663c463e64ba6e9c76ebd8cb9e5dd5", kill_on_drop: false }` [INFO] [stdout] d5d1fcd6afa763a5e8371a5d4c47c2697b663c463e64ba6e9c76ebd8cb9e5dd5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 56c3dd3164358722ac2b34cdd9db4075e1a379218aea8f27c90265b0607e59c0 [INFO] running `Command { std: "docker" "start" "-a" "56c3dd3164358722ac2b34cdd9db4075e1a379218aea8f27c90265b0607e59c0", kill_on_drop: false }` [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Compiling proc-macro2 v1.0.101 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling psm v0.1.26 [INFO] [stderr] Compiling libc v0.2.176 [INFO] [stderr] Compiling stacker v0.1.21 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling cfg-if v1.0.3 [INFO] [stderr] Compiling anyhow v1.0.100 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling cpufeatures v0.2.17 [INFO] [stderr] Checking crc32fast v1.5.0 [INFO] [stderr] Compiling quote v1.0.41 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling data-encoding v2.9.0 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Compiling arrayvec v0.5.2 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Compiling typed-arena v2.0.2 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Compiling pretty v0.12.5 [INFO] [stderr] Checking unicode-width v0.2.1 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling ic-cdk-executor v0.1.0 [INFO] [stderr] Compiling leb128 v0.2.5 [INFO] [stderr] Compiling serde_bytes v0.11.19 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling slotmap v1.0.7 [INFO] [stderr] Compiling rust_decimal v1.38.0 [INFO] [stderr] Checking ic0 v0.23.0 [INFO] [stderr] Checking num-iter v0.1.45 [INFO] [stderr] Checking num-complex v0.4.6 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Compiling binread_derive v2.1.0 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling candid_derive v0.10.19 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling rust_decimal_macros v1.38.0 [INFO] [stderr] Compiling binread v2.2.0 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Compiling ic_principal v0.1.1 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling serde_tokenstream v0.2.2 [INFO] [stderr] Checking ic-stable-structures v0.6.9 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking candid v0.10.19 [INFO] [stderr] Checking num-rational v0.4.2 [INFO] [stderr] Checking num v0.4.3 [INFO] [stderr] Compiling ic-cdk-macros v0.17.2 [INFO] [stderr] Checking ic-cdk v0.17.2 [INFO] [stderr] Checking ic-cdk-timers v0.11.0 [INFO] [stderr] Checking icpi_backend v0.1.0 (/opt/rustwide/workdir/src/icpi_backend) [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/minting/mint_state.rs:43:1 [INFO] [stdout] | [INFO] [stdout] 43 | / /// BUGFIX (PR #8 Review): Keep internal state private to maintain encapsulation [INFO] [stdout] 44 | | /// Access via getter/setter functions only (store_pending_mint, get_pending_mint, etc.) [INFO] [stdout] | |_---------------------------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TransferArgs` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/minting/fee_handler.rs:6:29 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::types::{Account, TransferArgs}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MintSnapshot` and `PendingMint` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/minting/mod.rs:11:34 [INFO] [stdout] | [INFO] [stdout] 11 | pub use mint_state::{MintStatus, PendingMint, MintSnapshot}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fee_handler::collect_mint_fee` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/minting/mod.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub use fee_handler::collect_mint_fee; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::types::TrackedToken` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/redemption_calculator.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::types::TrackedToken; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TrackedToken` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/token_distributor.rs:6:20 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::types::{TrackedToken, Account, TransferArgs, TransferResult}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Principal` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/tests.rs:105:23 [INFO] [stdout] | [INFO] [stdout] 105 | use candid::{Nat, Principal}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `complete_mint` and `initiate_mint` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/mod.rs:9:19 [INFO] [stdout] | [INFO] [stdout] 9 | pub use minting::{initiate_mint, complete_mint}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `burning::burn_icpi` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use burning::burn_icpi; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `get_rebalancer_status`, `perform_rebalance`, and `start_rebalancing_timer` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/mod.rs:11:23 [INFO] [stdout] | [INFO] [stdout] 11 | pub use rebalancing::{perform_rebalance, start_rebalancing_timer, get_rebalancer_status}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `calculate_portfolio_value_atomic` and `get_portfolio_state_uncached` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:13:27 [INFO] [stdout] | [INFO] [stdout] 13 | pub use portfolio_value::{calculate_portfolio_value_atomic, get_portfolio_state_uncached}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `get_icpi_supply_uncached` and `get_validated_supply` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:14:26 [INFO] [stdout] | [INFO] [stdout] 14 | pub use supply_tracker::{get_icpi_supply_uncached, get_validated_supply}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `get_all_balances_uncached` and `get_token_balance_uncached` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:15:25 [INFO] [stdout] | [INFO] [stdout] 15 | pub use token_queries::{get_all_balances_uncached, get_token_balance_uncached}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `validate_price` and `validate_supply` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:16:22 [INFO] [stdout] | [INFO] [stdout] 16 | pub use validation::{validate_price, validate_supply}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/icpi_backend/src/3_KONG_LIQUIDITY/tvl/mod.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | / /// Cached TVL data [INFO] [stdout] 13 | | /// Structure: (tvl_data, timestamp) [INFO] [stdout] 14 | | /// Cache duration: 1 hour (3600 seconds) [INFO] [stdout] | |_----------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SwapAmountsReply` [INFO] [stdout] --> src/icpi_backend/src/4_TRADING_EXECUTION/swaps/mod.rs:20:66 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::types::{TrackedToken, kongswap::{SwapArgs, SwapReply, SwapAmountsReply, SwapAmountsResult}}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `display::get_index_state_cached` [INFO] [stdout] --> src/icpi_backend/src/5_INFORMATIONAL/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use display::get_index_state_cached; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `get_health_status` and `get_tracked_tokens` [INFO] [stdout] --> src/icpi_backend/src/5_INFORMATIONAL/mod.rs:10:18 [INFO] [stdout] | [INFO] [stdout] 10 | pub use health::{get_health_status, get_tracked_tokens}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cache::clear_all_caches` [INFO] [stdout] --> src/icpi_backend/src/5_INFORMATIONAL/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use cache::clear_all_caches; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `num_traits::ToPrimitive` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/math/pure_math.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use num_traits::ToPrimitive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `calculate_redemptions` and `calculate_trade_size` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/math/mod.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | calculate_redemptions, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | calculate_trade_size, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::infrastructure::Result` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/cache/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::infrastructure::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: digits grouped inconsistently by underscores [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/rate_limiting/mod.rs:8:31 [INFO] [stdout] | [INFO] [stdout] 8 | const CLEANUP_INTERVAL: u64 = 3600_000_000_000; // 1 hour in nanoseconds [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: consider: `3_600_000_000_000` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inconsistent_digit_grouping [INFO] [stdout] = note: `#[warn(clippy::inconsistent_digit_grouping)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/admin/mod.rs:43:1 [INFO] [stdout] | [INFO] [stdout] 43 | / /// Emergency pause state [INFO] [stdout] 44 | | /// [INFO] [stdout] 45 | | /// **CRITICAL UPGRADE BEHAVIOR**: This thread-local state is NOT persisted across canister upgrades. [INFO] [stdout] 46 | | /// [INFO] [stdout] ... | [INFO] [stdout] 62 | | /// - Pause is typically temporary (minutes/hours, not days) [INFO] [stdout] 63 | | /// - Full stable storage implementation deferred to Phase 5 [INFO] [stdout] | |_-----------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/admin/mod.rs:76:1 [INFO] [stdout] | [INFO] [stdout] 76 | /// Admin action log storage [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `KongswapError`, `RebalanceError`, and `TradingError` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/mod.rs:17:59 [INFO] [stdout] | [INFO] [stdout] 17 | ...t, MintError, BurnError, RebalanceError, ValidationError, CalculationError, TradingError, KongswapError, SystemError}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `calculate_mint_amount`, `convert_decimals`, and `multiply_and_divide` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/mod.rs:18:16 [INFO] [stdout] | [INFO] [stdout] 18 | pub use math::{multiply_and_divide, convert_decimals, calculate_mint_amount}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ckUSDT` should have an upper camel case name [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | ckUSDT, [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `CkUsdt` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/icpi_backend/src/types/icrc.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Principal` [INFO] [stdout] --> src/icpi_backend/src/types/kongswap.rs:1:44 [INFO] [stdout] | [INFO] [stdout] 1 | use candid::{CandidType, Deserialize, Nat, Principal}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/icpi_backend/src/types/kongswap.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CKUSDT_CANISTER_ID`, `ICPI_CANISTER_ID`, and `TokenMetadata` [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:9:32 [INFO] [stdout] | [INFO] [stdout] 9 | pub use tokens::{TrackedToken, TokenMetadata, ICPI_CANISTER_ID, CKUSDT_CANISTER_ID}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LPBalancesReply`, `SwapAmountsReply`, `SwapAmountsResult`, `SwapArgs`, `SwapReply`, `TxId`, `UserBalancesReply`, and `UserBalancesResult` [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:11:20 [INFO] [stdout] | [INFO] [stdout] 11 | ...ap::{SwapArgs, SwapReply, SwapAmountsReply, SwapAmountsResult, LPBalancesReply, UserBalancesReply, UserBalancesResult, TxId}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CurrentPosition` and `IndexState` [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:12:21 [INFO] [stdout] | [INFO] [stdout] 12 | pub use portfolio::{CurrentPosition, IndexState}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocationDeviation`, `RebalanceAction`, and `TargetAllocation` [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:13:23 [INFO] [stdout] | [INFO] [stdout] 13 | pub use rebalancing::{TargetAllocation, AllocationDeviation, RebalanceAction}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `common::HealthStatus` [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub use common::HealthStatus; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Nat` [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:21:14 [INFO] [stdout] | [INFO] [stdout] 21 | use candid::{Nat, Principal}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty line after outer attribute [INFO] [stdout] --> src/icpi_backend/src/lib.rs:149:1 [INFO] [stdout] | [INFO] [stdout] 149 | / /// ``` [INFO] [stdout] 150 | | // ===== ADDITIONAL API ENDPOINTS ===== [INFO] [stdout] 151 | | [INFO] [stdout] | |_^ [INFO] [stdout] ... [INFO] [stdout] 155 | fn check_mint_status(mint_id: String) -> Result<_1_CRITICAL_OPERATIONS::minting::MintStatus> { [INFO] [stdout] | -------------------- the attribute applies to this function [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_outer_attr [INFO] [stdout] = note: `#[warn(clippy::empty_line_after_outer_attr)]` on by default [INFO] [stdout] = help: if the empty line is unintentional, remove it [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/icpi_backend/src/lib.rs:179:9 [INFO] [stdout] | [INFO] [stdout] 179 | tokens: tokens, // Fixed field name to match .did file [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `tokens` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/minting/mint_state.rs:43:1 [INFO] [stdout] | [INFO] [stdout] 43 | / /// BUGFIX (PR #8 Review): Keep internal state private to maintain encapsulation [INFO] [stdout] 44 | | /// Access via getter/setter functions only (store_pending_mint, get_pending_mint, etc.) [INFO] [stdout] | |_---------------------------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TransferArgs` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/minting/fee_handler.rs:6:29 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::types::{Account, TransferArgs}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MintSnapshot` and `PendingMint` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/minting/mod.rs:11:34 [INFO] [stdout] | [INFO] [stdout] 11 | pub use mint_state::{MintStatus, PendingMint, MintSnapshot}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fee_handler::collect_mint_fee` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/minting/mod.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub use fee_handler::collect_mint_fee; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::types::TrackedToken` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/redemption_calculator.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::types::TrackedToken; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TrackedToken` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/token_distributor.rs:6:20 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::types::{TrackedToken, Account, TransferArgs, TransferResult}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `complete_mint` and `initiate_mint` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/mod.rs:9:19 [INFO] [stdout] | [INFO] [stdout] 9 | pub use minting::{initiate_mint, complete_mint}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `burning::burn_icpi` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub use burning::burn_icpi; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `get_rebalancer_status`, `perform_rebalance`, and `start_rebalancing_timer` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/mod.rs:11:23 [INFO] [stdout] | [INFO] [stdout] 11 | pub use rebalancing::{perform_rebalance, start_rebalancing_timer, get_rebalancer_status}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `calculate_portfolio_value_atomic` and `get_portfolio_state_uncached` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:13:27 [INFO] [stdout] | [INFO] [stdout] 13 | pub use portfolio_value::{calculate_portfolio_value_atomic, get_portfolio_state_uncached}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `get_icpi_supply_uncached` and `get_validated_supply` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:14:26 [INFO] [stdout] | [INFO] [stdout] 14 | pub use supply_tracker::{get_icpi_supply_uncached, get_validated_supply}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `get_all_balances_uncached` and `get_token_balance_uncached` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:15:25 [INFO] [stdout] | [INFO] [stdout] 15 | pub use token_queries::{get_all_balances_uncached, get_token_balance_uncached}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `validate_price` and `validate_supply` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:16:22 [INFO] [stdout] | [INFO] [stdout] 16 | pub use validation::{validate_price, validate_supply}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/icpi_backend/src/3_KONG_LIQUIDITY/tvl/mod.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | / /// Cached TVL data [INFO] [stdout] 13 | | /// Structure: (tvl_data, timestamp) [INFO] [stdout] 14 | | /// Cache duration: 1 hour (3600 seconds) [INFO] [stdout] | |_----------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SwapAmountsReply` [INFO] [stdout] --> src/icpi_backend/src/4_TRADING_EXECUTION/swaps/mod.rs:20:66 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::types::{TrackedToken, kongswap::{SwapArgs, SwapReply, SwapAmountsReply, SwapAmountsResult}}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `display::get_index_state_cached` [INFO] [stdout] --> src/icpi_backend/src/5_INFORMATIONAL/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use display::get_index_state_cached; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `get_health_status` and `get_tracked_tokens` [INFO] [stdout] --> src/icpi_backend/src/5_INFORMATIONAL/mod.rs:10:18 [INFO] [stdout] | [INFO] [stdout] 10 | pub use health::{get_health_status, get_tracked_tokens}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cache::clear_all_caches` [INFO] [stdout] --> src/icpi_backend/src/5_INFORMATIONAL/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use cache::clear_all_caches; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `num_traits::ToPrimitive` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/math/pure_math.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use num_traits::ToPrimitive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `calculate_redemptions` and `calculate_trade_size` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/math/mod.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | calculate_redemptions, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | calculate_trade_size, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::infrastructure::Result` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/cache/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::infrastructure::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: digits grouped inconsistently by underscores [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/rate_limiting/mod.rs:8:31 [INFO] [stdout] | [INFO] [stdout] 8 | const CLEANUP_INTERVAL: u64 = 3600_000_000_000; // 1 hour in nanoseconds [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: consider: `3_600_000_000_000` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inconsistent_digit_grouping [INFO] [stdout] = note: `#[warn(clippy::inconsistent_digit_grouping)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/admin/mod.rs:43:1 [INFO] [stdout] | [INFO] [stdout] 43 | / /// Emergency pause state [INFO] [stdout] 44 | | /// [INFO] [stdout] 45 | | /// **CRITICAL UPGRADE BEHAVIOR**: This thread-local state is NOT persisted across canister upgrades. [INFO] [stdout] 46 | | /// [INFO] [stdout] ... | [INFO] [stdout] 62 | | /// - Pause is typically temporary (minutes/hours, not days) [INFO] [stdout] 63 | | /// - Full stable storage implementation deferred to Phase 5 [INFO] [stdout] | |_-----------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/admin/mod.rs:76:1 [INFO] [stdout] | [INFO] [stdout] 76 | /// Admin action log storage [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `KongswapError`, `RebalanceError`, and `TradingError` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/mod.rs:17:59 [INFO] [stdout] | [INFO] [stdout] 17 | ...t, MintError, BurnError, RebalanceError, ValidationError, CalculationError, TradingError, KongswapError, SystemError}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `calculate_mint_amount`, `convert_decimals`, and `multiply_and_divide` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/mod.rs:18:16 [INFO] [stdout] | [INFO] [stdout] 18 | pub use math::{multiply_and_divide, convert_decimals, calculate_mint_amount}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ckUSDT` should have an upper camel case name [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | ckUSDT, [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case: `CkUsdt` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/icpi_backend/src/types/icrc.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Principal` [INFO] [stdout] --> src/icpi_backend/src/types/kongswap.rs:1:44 [INFO] [stdout] | [INFO] [stdout] 1 | use candid::{CandidType, Deserialize, Nat, Principal}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/icpi_backend/src/types/kongswap.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CKUSDT_CANISTER_ID`, `ICPI_CANISTER_ID`, and `TokenMetadata` [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:9:32 [INFO] [stdout] | [INFO] [stdout] 9 | pub use tokens::{TrackedToken, TokenMetadata, ICPI_CANISTER_ID, CKUSDT_CANISTER_ID}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LPBalancesReply`, `SwapAmountsReply`, `SwapAmountsResult`, `SwapArgs`, `SwapReply`, `TxId`, `UserBalancesReply`, and `UserBalancesResult` [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:11:20 [INFO] [stdout] | [INFO] [stdout] 11 | ...ap::{SwapArgs, SwapReply, SwapAmountsReply, SwapAmountsResult, LPBalancesReply, UserBalancesReply, UserBalancesResult, TxId}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CurrentPosition` and `IndexState` [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:12:21 [INFO] [stdout] | [INFO] [stdout] 12 | pub use portfolio::{CurrentPosition, IndexState}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AllocationDeviation`, `RebalanceAction`, and `TargetAllocation` [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:13:23 [INFO] [stdout] | [INFO] [stdout] 13 | pub use rebalancing::{TargetAllocation, AllocationDeviation, RebalanceAction}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `common::HealthStatus` [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub use common::HealthStatus; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Nat` [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:21:14 [INFO] [stdout] | [INFO] [stdout] 21 | use candid::{Nat, Principal}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty line after outer attribute [INFO] [stdout] --> src/icpi_backend/src/lib.rs:149:1 [INFO] [stdout] | [INFO] [stdout] 149 | / /// ``` [INFO] [stdout] 150 | | // ===== ADDITIONAL API ENDPOINTS ===== [INFO] [stdout] 151 | | [INFO] [stdout] | |_^ [INFO] [stdout] ... [INFO] [stdout] 155 | fn check_mint_status(mint_id: String) -> Result<_1_CRITICAL_OPERATIONS::minting::MintStatus> { [INFO] [stdout] | -------------------- the attribute applies to this function [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_outer_attr [INFO] [stdout] = note: `#[warn(clippy::empty_line_after_outer_attr)]` on by default [INFO] [stdout] = help: if the empty line is unintentional, remove it [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/icpi_backend/src/lib.rs:179:9 [INFO] [stdout] | [INFO] [stdout] 179 | tokens: tokens, // Fixed field name to match .did file [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `tokens` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cached_supply` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/validation/mod.rs:7:42 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn validate_supply(new_supply: &Nat, cached_supply: Option<&Nat>) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cached_supply` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/validation/mod.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | token: &str, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cached_price` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/validation/mod.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | cached_price: Option, [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cached_price` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cached_supply` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/validation/mod.rs:7:42 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn validate_supply(new_supply: &Nat, cached_supply: Option<&Nat>) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cached_supply` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/validation/mod.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | token: &str, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_token` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cached_price` [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/validation/mod.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | cached_price: Option, [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cached_price` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_pending_count` is never used [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/minting/mint_state.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn get_pending_count() -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_proportional_share` is never used [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/redemption_calculator.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn calculate_proportional_share( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_token_decimals` is never used [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/portfolio_value/mod.rs:326:4 [INFO] [stdout] | [INFO] [stdout] 326 | fn get_token_decimals(symbol: &str) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_validated_supply` is never used [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/supply_tracker/mod.rs:72:14 [INFO] [stdout] | [INFO] [stdout] 72 | pub async fn get_validated_supply() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_supply` is never used [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/validation/mod.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn validate_supply(new_supply: &Nat, cached_supply: Option<&Nat>) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_price` is never used [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/validation/mod.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn validate_price( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_kongswap_allowance` is never used [INFO] [stdout] --> src/icpi_backend/src/4_TRADING_EXECUTION/approvals/mod.rs:137:14 [INFO] [stdout] | [INFO] [stdout] 137 | pub async fn check_kongswap_allowance( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_min_receive` is never used [INFO] [stdout] --> src/icpi_backend/src/4_TRADING_EXECUTION/slippage/mod.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn calculate_min_receive( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ICPI_LEDGER_ID` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const ICPI_LEDGER_ID: &str = "l6lep-niaaa-aaaap-qqeda-cai"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ICPI_BACKEND_ID` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const ICPI_BACKEND_ID: &str = "ev6xm-haaaa-aaaap-qqcza-cai"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ICPI_DECIMALS` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const ICPI_DECIMALS: u32 = 8; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CKUSDT_DECIMALS` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const CKUSDT_DECIMALS: u32 = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MINT_TIMEOUT_NANOS` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const MINT_TIMEOUT_NANOS: u64 = 180_000_000_000; // 3 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEE_RECIPIENT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const FEE_RECIPIENT: &str = "e454q-riaaa-aaaap-qqcyq-cai"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_DEVIATION_PERCENT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const MIN_DEVIATION_PERCENT: f64 = 1.0; // 1% minimum deviation to trigger [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_SUPPLY_CHANGE_RATIO` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | pub const MAX_SUPPLY_CHANGE_RATIO: f64 = 1.1; // 10% max supply change [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PRICE_CHANGE_RATIO` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const MAX_PRICE_CHANGE_RATIO: f64 = 2.0; // 100% max price change [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_REASONABLE_PRICE` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | pub const MIN_REASONABLE_PRICE: f64 = 0.0001; // $0.0001 minimum [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_REASONABLE_PRICE` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 66 | pub const MAX_REASONABLE_PRICE: f64 = 1_000_000.0; // $1M maximum [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CACHE_DURATION_SHORT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub const CACHE_DURATION_SHORT: u64 = 30; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CACHE_DURATION_MEDIUM` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const CACHE_DURATION_MEDIUM: u64 = 300; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CACHE_DURATION_LONG` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const CACHE_DURATION_LONG: u64 = 3600; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TARGET_ALEX_PERCENT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:74:11 [INFO] [stdout] | [INFO] [stdout] 74 | pub const TARGET_ALEX_PERCENT: f64 = 25.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TARGET_ZERO_PERCENT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:75:11 [INFO] [stdout] | [INFO] [stdout] 75 | pub const TARGET_ZERO_PERCENT: f64 = 25.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TARGET_KONG_PERCENT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:76:11 [INFO] [stdout] | [INFO] [stdout] 76 | pub const TARGET_KONG_PERCENT: f64 = 25.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TARGET_BOB_PERCENT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 77 | pub const TARGET_BOB_PERCENT: f64 = 25.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_redemptions` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/math/pure_math.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 104 | pub fn calculate_redemptions( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_trade_size` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/math/pure_math.rs:154:8 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn calculate_trade_size( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `log_operation` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/logging/mod.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn log_operation(operation: &str, details: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `assert_no_cache_for_critical_op` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/cache/mod.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn assert_no_cache_for_critical_op(op: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `periodic_cleanup` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/rate_limiting/mod.rs:75:8 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn periodic_cleanup() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Minting` and `Burning` are never constructed [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub enum GlobalOperation { [INFO] [stdout] | --------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 32 | Minting, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 33 | /// At least one burn operation active (any user) [INFO] [stdout] 34 | Burning, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GlobalOperation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_current_operation` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:287:8 [INFO] [stdout] | [INFO] [stdout] 287 | pub fn get_current_operation() -> GlobalOperation { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `has_active_operations` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:292:8 [INFO] [stdout] | [INFO] [stdout] 292 | pub fn has_active_operations() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KONG_LOCKER_ID` is never used [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const KONG_LOCKER_ID: &str = "eazgb-giaaa-aaaap-qqc2q-cai"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KONGSWAP_BACKEND_ID` is never used [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const KONGSWAP_BACKEND_ID: &str = "2ipq2-uqaaa-aaaar-qailq-cai"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_principal` is never used [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn validate_principal(principal_str: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decimal_to_f64` is never used [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn decimal_to_f64(decimal: &Decimal) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `f64_to_decimal` is never used [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn f64_to_decimal(value: f64) -> Decimal { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ICPI_CANISTER_ID` is never used [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const ICPI_CANISTER_ID: &str = "l6lep-niaaa-aaaap-qqeda-cai"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `all_vec` is never used [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl TrackedToken { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn all_vec() -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CachedLockCanisters` is never constructed [INFO] [stdout] --> src/icpi_backend/src/types/portfolio.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct CachedLockCanisters { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `TokenTVLSummary` is never used [INFO] [stdout] --> src/icpi_backend/src/types/portfolio.rs:48:10 [INFO] [stdout] | [INFO] [stdout] 48 | pub type TokenTVLSummary = TokenTvl; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `TVLSummary` is never used [INFO] [stdout] --> src/icpi_backend/src/types/portfolio.rs:49:10 [INFO] [stdout] | [INFO] [stdout] 49 | pub type TVLSummary = TvlSummary; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `RebalanceAction` is never used [INFO] [stdout] --> src/icpi_backend/src/types/rebalancing.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | pub enum RebalanceAction { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RebalanceStatus` is never constructed [INFO] [stdout] --> src/icpi_backend/src/types/rebalancing.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct RebalanceStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PriceResult` is never used [INFO] [stdout] --> src/icpi_backend/src/types/common.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | pub enum PriceResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `ServiceResult` is never used [INFO] [stdout] --> src/icpi_backend/src/types/common.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub type ServiceResult = Result; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ServiceError` is never used [INFO] [stdout] --> src/icpi_backend/src/types/common.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | pub enum ServiceError { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/minting/mint_orchestrator.rs:97:23 [INFO] [stdout] | [INFO] [stdout] 97 | if current_tvl == Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] = note: `#[warn(clippy::cmp_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/redemption_calculator.rs:20:22 [INFO] [stdout] | [INFO] [stdout] 20 | if balance > Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/redemption_calculator.rs:38:36 [INFO] [stdout] | [INFO] [stdout] 38 | if redemption_amount > Nat::from(TRANSFER_FEE + MIN_BUFFER) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `TRANSFER_FEE + MIN_BUFFER` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/mod.rs:98:26 [INFO] [stdout] | [INFO] [stdout] 98 | if current_supply == Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/rebalancing/mod.rs:98:1 [INFO] [stdout] | [INFO] [stdout] 98 | / impl Default for RebalanceState { [INFO] [stdout] 99 | | fn default() -> Self { [INFO] [stdout] 100 | | Self { [INFO] [stdout] 101 | | last_rebalance: None, [INFO] [stdout] ... | [INFO] [stdout] 105 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] = note: `#[warn(clippy::derivable_impls)]` on by default [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 93 + #[derive(Default)] [INFO] [stdout] 94 | struct RebalanceState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/rebalancing/mod.rs:109:42 [INFO] [stdout] | [INFO] [stdout] 109 | static TIMER_ACTIVE: RefCell = RefCell::new(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(false) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] = note: `#[warn(clippy::missing_const_for_thread_local)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/rebalancing/mod.rs:110:53 [INFO] [stdout] | [INFO] [stdout] 110 | static REBALANCING_IN_PROGRESS: RefCell = RefCell::new(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(false) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/rebalancing/mod.rs:112:58 [INFO] [stdout] | [INFO] [stdout] 112 | static FULL_HISTORY: RefCell> = RefCell::new(Vec::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(Vec::new()) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/validation/mod.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | if price < MIN_REASONABLE_PRICE || price > MAX_REASONABLE_PRICE { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(MIN_REASONABLE_PRICE..=MAX_REASONABLE_PRICE).contains(&price)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | if supply > Nat::from(0u32) && tvl == Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:84:43 [INFO] [stdout] | [INFO] [stdout] 84 | if supply > Nat::from(0u32) && tvl == Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:97:18 [INFO] [stdout] | [INFO] [stdout] 97 | if supply == Nat::from(0u32) && tvl > Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:97:43 [INFO] [stdout] | [INFO] [stdout] 97 | if supply == Nat::from(0u32) && tvl > Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/icpi_backend/src/3_KONG_LIQUIDITY/tvl/mod.rs:16:23 [INFO] [stdout] | [INFO] [stdout] 16 | static TVL_CACHE: RefCell, u64)>> = RefCell::new(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] = note: `#[warn(clippy::type_complexity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/3_KONG_LIQUIDITY/tvl/mod.rs:16:74 [INFO] [stdout] | [INFO] [stdout] 16 | static TVL_CACHE: RefCell, u64)>> = RefCell::new(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(None) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/icpi_backend/src/4_TRADING_EXECUTION/swaps/mod.rs:235:8 [INFO] [stdout] | [INFO] [stdout] 235 | if max_slippage < 0.0 || max_slippage > 10.0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(0.0..=10.0).contains(&max_slippage)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `slice` [INFO] [stdout] --> src/icpi_backend/src/5_INFORMATIONAL/health/mod.rs:19:10 [INFO] [stdout] | [INFO] [stdout] 19 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] = note: `#[warn(clippy::into_iter_on_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_pending_count` is never used [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/minting/mint_state.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn get_pending_count() -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_validated_supply` is never used [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/supply_tracker/mod.rs:72:14 [INFO] [stdout] | [INFO] [stdout] 72 | pub async fn get_validated_supply() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_supply` is never used [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/validation/mod.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn validate_supply(new_supply: &Nat, cached_supply: Option<&Nat>) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_price` is never used [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/validation/mod.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn validate_price( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_kongswap_allowance` is never used [INFO] [stdout] --> src/icpi_backend/src/4_TRADING_EXECUTION/approvals/mod.rs:137:14 [INFO] [stdout] | [INFO] [stdout] 137 | pub async fn check_kongswap_allowance( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ICPI_LEDGER_ID` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const ICPI_LEDGER_ID: &str = "l6lep-niaaa-aaaap-qqeda-cai"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ICPI_BACKEND_ID` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const ICPI_BACKEND_ID: &str = "ev6xm-haaaa-aaaap-qqcza-cai"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ICPI_DECIMALS` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const ICPI_DECIMALS: u32 = 8; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CKUSDT_DECIMALS` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const CKUSDT_DECIMALS: u32 = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MINT_TIMEOUT_NANOS` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const MINT_TIMEOUT_NANOS: u64 = 180_000_000_000; // 3 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEE_RECIPIENT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const FEE_RECIPIENT: &str = "e454q-riaaa-aaaap-qqcyq-cai"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_DEVIATION_PERCENT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const MIN_DEVIATION_PERCENT: f64 = 1.0; // 1% minimum deviation to trigger [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_SUPPLY_CHANGE_RATIO` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | pub const MAX_SUPPLY_CHANGE_RATIO: f64 = 1.1; // 10% max supply change [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PRICE_CHANGE_RATIO` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const MAX_PRICE_CHANGE_RATIO: f64 = 2.0; // 100% max price change [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_REASONABLE_PRICE` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | pub const MIN_REASONABLE_PRICE: f64 = 0.0001; // $0.0001 minimum [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_REASONABLE_PRICE` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 66 | pub const MAX_REASONABLE_PRICE: f64 = 1_000_000.0; // $1M maximum [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CACHE_DURATION_SHORT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub const CACHE_DURATION_SHORT: u64 = 30; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CACHE_DURATION_MEDIUM` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const CACHE_DURATION_MEDIUM: u64 = 300; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CACHE_DURATION_LONG` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const CACHE_DURATION_LONG: u64 = 3600; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TARGET_ALEX_PERCENT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:74:11 [INFO] [stdout] | [INFO] [stdout] 74 | pub const TARGET_ALEX_PERCENT: f64 = 25.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TARGET_ZERO_PERCENT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:75:11 [INFO] [stdout] | [INFO] [stdout] 75 | pub const TARGET_ZERO_PERCENT: f64 = 25.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TARGET_KONG_PERCENT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:76:11 [INFO] [stdout] | [INFO] [stdout] 76 | pub const TARGET_KONG_PERCENT: f64 = 25.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TARGET_BOB_PERCENT` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/constants/mod.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 77 | pub const TARGET_BOB_PERCENT: f64 = 25.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `log_operation` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/logging/mod.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn log_operation(operation: &str, details: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `assert_no_cache_for_critical_op` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/cache/mod.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn assert_no_cache_for_critical_op(op: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `periodic_cleanup` is never used [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/rate_limiting/mod.rs:75:8 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn periodic_cleanup() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KONG_LOCKER_ID` is never used [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const KONG_LOCKER_ID: &str = "eazgb-giaaa-aaaap-qqc2q-cai"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KONGSWAP_BACKEND_ID` is never used [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const KONGSWAP_BACKEND_ID: &str = "2ipq2-uqaaa-aaaar-qailq-cai"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_principal` is never used [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn validate_principal(principal_str: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decimal_to_f64` is never used [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn decimal_to_f64(decimal: &Decimal) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `f64_to_decimal` is never used [INFO] [stdout] --> src/icpi_backend/src/types/mod.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn f64_to_decimal(value: f64) -> Decimal { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ICPI_CANISTER_ID` is never used [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const ICPI_CANISTER_ID: &str = "l6lep-niaaa-aaaap-qqeda-cai"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `all_vec` is never used [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl TrackedToken { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn all_vec() -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CachedLockCanisters` is never constructed [INFO] [stdout] --> src/icpi_backend/src/types/portfolio.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct CachedLockCanisters { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `TokenTVLSummary` is never used [INFO] [stdout] --> src/icpi_backend/src/types/portfolio.rs:48:10 [INFO] [stdout] | [INFO] [stdout] 48 | pub type TokenTVLSummary = TokenTvl; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `TVLSummary` is never used [INFO] [stdout] --> src/icpi_backend/src/types/portfolio.rs:49:10 [INFO] [stdout] | [INFO] [stdout] 49 | pub type TVLSummary = TvlSummary; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `RebalanceAction` is never used [INFO] [stdout] --> src/icpi_backend/src/types/rebalancing.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | pub enum RebalanceAction { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RebalanceStatus` is never constructed [INFO] [stdout] --> src/icpi_backend/src/types/rebalancing.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct RebalanceStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PriceResult` is never used [INFO] [stdout] --> src/icpi_backend/src/types/common.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | pub enum PriceResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `ServiceResult` is never used [INFO] [stdout] --> src/icpi_backend/src/types/common.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub type ServiceResult = Result; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ServiceError` is never used [INFO] [stdout] --> src/icpi_backend/src/types/common.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | pub enum ServiceError { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/minting/mint_orchestrator.rs:97:23 [INFO] [stdout] | [INFO] [stdout] 97 | if current_tvl == Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] = note: `#[warn(clippy::cmp_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/redemption_calculator.rs:20:22 [INFO] [stdout] | [INFO] [stdout] 20 | if balance > Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/redemption_calculator.rs:38:36 [INFO] [stdout] | [INFO] [stdout] 38 | if redemption_amount > Nat::from(TRANSFER_FEE + MIN_BUFFER) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `TRANSFER_FEE + MIN_BUFFER` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/tests.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 133 | assert!(!(approved_sufficient < required), "Exact approval should be sufficient"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `(approved_sufficient >= required)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/tests.rs:134:17 [INFO] [stdout] | [INFO] [stdout] 134 | assert!(!(approved_excess < required), "Excess approval should be sufficient"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `(approved_excess >= required)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/tests.rs:161:17 [INFO] [stdout] | [INFO] [stdout] 161 | assert!(!(exact < required)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try: `(exact >= required)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/tests.rs:165:17 [INFO] [stdout] | [INFO] [stdout] 165 | assert!(!(one_more < required)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `(one_more >= required)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/burning/mod.rs:98:26 [INFO] [stdout] | [INFO] [stdout] 98 | if current_supply == Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/rebalancing/mod.rs:98:1 [INFO] [stdout] | [INFO] [stdout] 98 | / impl Default for RebalanceState { [INFO] [stdout] 99 | | fn default() -> Self { [INFO] [stdout] 100 | | Self { [INFO] [stdout] 101 | | last_rebalance: None, [INFO] [stdout] ... | [INFO] [stdout] 105 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] = note: `#[warn(clippy::derivable_impls)]` on by default [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 93 + #[derive(Default)] [INFO] [stdout] 94 | struct RebalanceState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/rebalancing/mod.rs:109:42 [INFO] [stdout] | [INFO] [stdout] 109 | static TIMER_ACTIVE: RefCell = RefCell::new(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(false) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] = note: `#[warn(clippy::missing_const_for_thread_local)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/rebalancing/mod.rs:110:53 [INFO] [stdout] | [INFO] [stdout] 110 | static REBALANCING_IN_PROGRESS: RefCell = RefCell::new(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(false) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/1_CRITICAL_OPERATIONS/rebalancing/mod.rs:112:58 [INFO] [stdout] | [INFO] [stdout] 112 | static FULL_HISTORY: RefCell> = RefCell::new(Vec::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(Vec::new()) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/validation/mod.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | if price < MIN_REASONABLE_PRICE || price > MAX_REASONABLE_PRICE { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(MIN_REASONABLE_PRICE..=MAX_REASONABLE_PRICE).contains(&price)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | if supply > Nat::from(0u32) && tvl == Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:84:43 [INFO] [stdout] | [INFO] [stdout] 84 | if supply > Nat::from(0u32) && tvl == Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:97:18 [INFO] [stdout] | [INFO] [stdout] 97 | if supply == Nat::from(0u32) && tvl > Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:97:43 [INFO] [stdout] | [INFO] [stdout] 97 | if supply == Nat::from(0u32) && tvl > Nat::from(0u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:130:40 [INFO] [stdout] | [INFO] [stdout] 130 | let is_inconsistent = supply > Nat::from(0u32) && tvl == Nat::from(0u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:130:66 [INFO] [stdout] | [INFO] [stdout] 130 | let is_inconsistent = supply > Nat::from(0u32) && tvl == Nat::from(0u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:141:41 [INFO] [stdout] | [INFO] [stdout] 141 | let is_inconsistent = supply == Nat::from(0u32) && tvl > Nat::from(0u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:141:66 [INFO] [stdout] | [INFO] [stdout] 141 | let is_inconsistent = supply == Nat::from(0u32) && tvl > Nat::from(0u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:151:41 [INFO] [stdout] | [INFO] [stdout] 151 | let is_inconsistent = (supply > Nat::from(0u32) && tvl == Nat::from(0u32)) || [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:151:67 [INFO] [stdout] | [INFO] [stdout] 151 | let is_inconsistent = (supply > Nat::from(0u32) && tvl == Nat::from(0u32)) || [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:152:42 [INFO] [stdout] | [INFO] [stdout] 152 | ... (supply == Nat::from(0u32) && tvl > Nat::from(0u32)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:152:67 [INFO] [stdout] | [INFO] [stdout] 152 | ... (supply == Nat::from(0u32) && tvl > Nat::from(0u32)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:163:41 [INFO] [stdout] | [INFO] [stdout] 163 | let is_inconsistent = (supply > Nat::from(0u32) && tvl == Nat::from(0u32)) || [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:163:67 [INFO] [stdout] | [INFO] [stdout] 163 | let is_inconsistent = (supply > Nat::from(0u32) && tvl == Nat::from(0u32)) || [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:164:42 [INFO] [stdout] | [INFO] [stdout] 164 | ... (supply == Nat::from(0u32) && tvl > Nat::from(0u32)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:164:67 [INFO] [stdout] | [INFO] [stdout] 164 | ... (supply == Nat::from(0u32) && tvl > Nat::from(0u32)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:185:44 [INFO] [stdout] | [INFO] [stdout] 185 | let is_inconsistent = supply_one > Nat::from(0u32) && tvl_zero == Nat::from(0u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:185:75 [INFO] [stdout] | [INFO] [stdout] 185 | let is_inconsistent = supply_one > Nat::from(0u32) && tvl_zero == Nat::from(0u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:192:46 [INFO] [stdout] | [INFO] [stdout] 192 | let is_inconsistent = supply_zero == Nat::from(0u32) && tvl_one > Nat::from(0u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:192:75 [INFO] [stdout] | [INFO] [stdout] 192 | let is_inconsistent = supply_zero == Nat::from(0u32) && tvl_one > Nat::from(0u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:207:34 [INFO] [stdout] | [INFO] [stdout] 207 | let cond1 = supply > Nat::from(0u32) && tvl == Nat::from(0u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:207:60 [INFO] [stdout] | [INFO] [stdout] 207 | let cond1 = supply > Nat::from(0u32) && tvl == Nat::from(0u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:208:35 [INFO] [stdout] | [INFO] [stdout] 208 | let cond2 = supply == Nat::from(0u32) && tvl > Nat::from(0u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/2_CRITICAL_DATA/mod.rs:208:60 [INFO] [stdout] | [INFO] [stdout] 208 | let cond2 = supply == Nat::from(0u32) && tvl > Nat::from(0u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/icpi_backend/src/3_KONG_LIQUIDITY/tvl/mod.rs:16:23 [INFO] [stdout] | [INFO] [stdout] 16 | static TVL_CACHE: RefCell, u64)>> = RefCell::new(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] = note: `#[warn(clippy::type_complexity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/3_KONG_LIQUIDITY/tvl/mod.rs:16:74 [INFO] [stdout] | [INFO] [stdout] 16 | static TVL_CACHE: RefCell, u64)>> = RefCell::new(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(None) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/math/pure_math.rs:94:23 [INFO] [stdout] | [INFO] [stdout] 94 | if icpi_amount == Nat::from(0u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u64` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/math/pure_math.rs:139:32 [INFO] [stdout] | [INFO] [stdout] 139 | if redemption_amount > Nat::from(0u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u64` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> src/icpi_backend/src/4_TRADING_EXECUTION/swaps/mod.rs:235:8 [INFO] [stdout] | [INFO] [stdout] 235 | if max_slippage < 0.0 || max_slippage > 10.0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(0.0..=10.0).contains(&max_slippage)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/rate_limiting/mod.rs:13:41 [INFO] [stdout] | [INFO] [stdout] 13 | static LAST_CLEANUP: RefCell = RefCell::new(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(0) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:61:65 [INFO] [stdout] | [INFO] [stdout] 61 | static CURRENT_GLOBAL_OPERATION: RefCell = RefCell::new(GlobalOperation::Idle); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(GlobalOperation::Idle) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:64:52 [INFO] [stdout] | [INFO] [stdout] 64 | static LAST_OPERATION_END_TIME: RefCell = RefCell::new(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(0) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `slice` [INFO] [stdout] --> src/icpi_backend/src/5_INFORMATIONAL/health/mod.rs:19:10 [INFO] [stdout] | [INFO] [stdout] 19 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] = note: `#[warn(clippy::into_iter_on_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/admin/mod.rs:65:45 [INFO] [stdout] | [INFO] [stdout] 65 | static EMERGENCY_PAUSE: RefCell = RefCell::new(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(false) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/admin/mod.rs:78:51 [INFO] [stdout] | [INFO] [stdout] 78 | static ADMIN_LOG: RefCell> = RefCell::new(Vec::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(Vec::new()) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `ALEX` contains a capitalized acronym [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | ALEX, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Alex` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] = note: `#[warn(clippy::upper_case_acronyms)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `ZERO` contains a capitalized acronym [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | ZERO, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Zero` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `KONG` contains a capitalized acronym [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | KONG, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Kong` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `BOB` contains a capitalized acronym [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | BOB, [INFO] [stdout] | ^^^ help: consider making the acronym lowercase, except the initial letter: `Bob` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/math/pure_math.rs:94:23 [INFO] [stdout] | [INFO] [stdout] 94 | if icpi_amount == Nat::from(0u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u64` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/math/pure_math.rs:139:32 [INFO] [stdout] | [INFO] [stdout] 139 | if redemption_amount > Nat::from(0u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `0u64` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/math/pure_math.rs:262:26 [INFO] [stdout] | [INFO] [stdout] 262 | assert!(result > Nat::from(u64::MAX)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::MAX` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/rate_limiting/mod.rs:13:41 [INFO] [stdout] | [INFO] [stdout] 13 | static LAST_CLEANUP: RefCell = RefCell::new(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(0) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:61:65 [INFO] [stdout] | [INFO] [stdout] 61 | static CURRENT_GLOBAL_OPERATION: RefCell = RefCell::new(GlobalOperation::Idle); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(GlobalOperation::Idle) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:64:52 [INFO] [stdout] | [INFO] [stdout] 64 | static LAST_OPERATION_END_TIME: RefCell = RefCell::new(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(0) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this let-binding has unit value [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:381:9 [INFO] [stdout] | [INFO] [stdout] 381 | let _ = try_start_global_operation(GlobalOperation::Minting).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value [INFO] [stdout] = note: `#[warn(clippy::let_unit_value)]` on by default [INFO] [stdout] help: omit the `let` binding [INFO] [stdout] | [INFO] [stdout] 381 - let _ = try_start_global_operation(GlobalOperation::Minting).unwrap(); [INFO] [stdout] 381 + try_start_global_operation(GlobalOperation::Minting).unwrap(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this let-binding has unit value [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:395:9 [INFO] [stdout] | [INFO] [stdout] 395 | let _ = try_start_global_operation(GlobalOperation::Rebalancing).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value [INFO] [stdout] help: omit the `let` binding [INFO] [stdout] | [INFO] [stdout] 395 - let _ = try_start_global_operation(GlobalOperation::Rebalancing).unwrap(); [INFO] [stdout] 395 + try_start_global_operation(GlobalOperation::Rebalancing).unwrap(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this let-binding has unit value [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:409:9 [INFO] [stdout] | [INFO] [stdout] 409 | let _ = try_start_global_operation(GlobalOperation::Minting).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value [INFO] [stdout] help: omit the `let` binding [INFO] [stdout] | [INFO] [stdout] 409 - let _ = try_start_global_operation(GlobalOperation::Minting).unwrap(); [INFO] [stdout] 409 + try_start_global_operation(GlobalOperation::Minting).unwrap(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this let-binding has unit value [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:426:9 [INFO] [stdout] | [INFO] [stdout] 426 | let _ = try_start_global_operation(GlobalOperation::Minting).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value [INFO] [stdout] help: omit the `let` binding [INFO] [stdout] | [INFO] [stdout] 426 - let _ = try_start_global_operation(GlobalOperation::Minting).unwrap(); [INFO] [stdout] 426 + try_start_global_operation(GlobalOperation::Minting).unwrap(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this let-binding has unit value [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:439:9 [INFO] [stdout] | [INFO] [stdout] 439 | let _ = try_start_global_operation(GlobalOperation::Rebalancing).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value [INFO] [stdout] help: omit the `let` binding [INFO] [stdout] | [INFO] [stdout] 439 - let _ = try_start_global_operation(GlobalOperation::Rebalancing).unwrap(); [INFO] [stdout] 439 + try_start_global_operation(GlobalOperation::Rebalancing).unwrap(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this let-binding has unit value [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/reentrancy/mod.rs:468:9 [INFO] [stdout] | [INFO] [stdout] 468 | let _ = try_start_global_operation(GlobalOperation::Minting).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value [INFO] [stdout] help: omit the `let` binding [INFO] [stdout] | [INFO] [stdout] 468 - let _ = try_start_global_operation(GlobalOperation::Minting).unwrap(); [INFO] [stdout] 468 + try_start_global_operation(GlobalOperation::Minting).unwrap(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/admin/mod.rs:65:45 [INFO] [stdout] | [INFO] [stdout] 65 | static EMERGENCY_PAUSE: RefCell = RefCell::new(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(false) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/icpi_backend/src/6_INFRASTRUCTURE/admin/mod.rs:78:51 [INFO] [stdout] | [INFO] [stdout] 78 | static ADMIN_LOG: RefCell> = RefCell::new(Vec::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(Vec::new()) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `ALEX` contains a capitalized acronym [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | ALEX, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Alex` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] = note: `#[warn(clippy::upper_case_acronyms)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `ZERO` contains a capitalized acronym [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | ZERO, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Zero` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `KONG` contains a capitalized acronym [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | KONG, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Kong` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `BOB` contains a capitalized acronym [INFO] [stdout] --> src/icpi_backend/src/types/tokens.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | BOB, [INFO] [stdout] | ^^^ help: consider making the acronym lowercase, except the initial letter: `Bob` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/icpi_backend/src/lib.rs:194:26 [INFO] [stdout] | [INFO] [stdout] 194 | .map_err(|e| IcpiError::Other(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `IcpiError::Other` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/icpi_backend/src/lib.rs:391:5 [INFO] [stdout] | [INFO] [stdout] 391 | output.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `output.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] = note: `#[warn(clippy::single_char_add_str)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/icpi_backend/src/lib.rs:403:5 [INFO] [stdout] | [INFO] [stdout] 403 | output.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `output.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/icpi_backend/src/lib.rs:429:5 [INFO] [stdout] | [INFO] [stdout] 429 | output.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `output.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/icpi_backend/src/lib.rs:194:26 [INFO] [stdout] | [INFO] [stdout] 194 | .map_err(|e| IcpiError::Other(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `IcpiError::Other` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/icpi_backend/src/lib.rs:391:5 [INFO] [stdout] | [INFO] [stdout] 391 | output.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `output.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] = note: `#[warn(clippy::single_char_add_str)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/icpi_backend/src/lib.rs:403:5 [INFO] [stdout] | [INFO] [stdout] 403 | output.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `output.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/icpi_backend/src/lib.rs:429:5 [INFO] [stdout] | [INFO] [stdout] 429 | output.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `output.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 01s [INFO] running `Command { std: "docker" "inspect" "56c3dd3164358722ac2b34cdd9db4075e1a379218aea8f27c90265b0607e59c0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "56c3dd3164358722ac2b34cdd9db4075e1a379218aea8f27c90265b0607e59c0", kill_on_drop: false }` [INFO] [stdout] 56c3dd3164358722ac2b34cdd9db4075e1a379218aea8f27c90265b0607e59c0