[INFO] cloning repository https://github.com/zhaochengpro/flashbot-solana [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/zhaochengpro/flashbot-solana" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzhaochengpro%2Fflashbot-solana", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzhaochengpro%2Fflashbot-solana'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 791d2c88424359a45e120039d5af7ee7f828790b [INFO] checking zhaochengpro/flashbot-solana against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzhaochengpro%2Fflashbot-solana" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/zhaochengpro/flashbot-solana [INFO] finished tweaking git repo https://github.com/zhaochengpro/flashbot-solana [INFO] tweaked toml for git repo https://github.com/zhaochengpro/flashbot-solana written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/zhaochengpro/flashbot-solana on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/zhaochengpro/flashbot-solana 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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root: [INFO] [stderr] package: /workspace/builds/worker-1-tc2/source/programs/flashbot-solana/Cargo.toml [INFO] [stderr] workspace: /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2b3ef0128eb67b44950b9e02ad846201dd5bce10b0126cf472854191752254b4 [INFO] running `Command { std: "docker" "start" "-a" "2b3ef0128eb67b44950b9e02ad846201dd5bce10b0126cf472854191752254b4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2b3ef0128eb67b44950b9e02ad846201dd5bce10b0126cf472854191752254b4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2b3ef0128eb67b44950b9e02ad846201dd5bce10b0126cf472854191752254b4", kill_on_drop: false }` [INFO] [stdout] 2b3ef0128eb67b44950b9e02ad846201dd5bce10b0126cf472854191752254b4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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 -Dunmustuse_in_always_ok" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] bb5f974c6c30245faf4e57edeacd34ab210105b952a7495e5a2574c07a9d2103 [INFO] running `Command { std: "docker" "start" "-a" "bb5f974c6c30245faf4e57edeacd34ab210105b952a7495e5a2574c07a9d2103", kill_on_drop: false }` [INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root: [INFO] [stderr] package: /opt/rustwide/workdir/programs/flashbot-solana/Cargo.toml [INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Checking cfg-if v1.0.1 [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Checking subtle v2.6.1 [INFO] [stderr] Compiling zerocopy v0.8.26 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling hashbrown v0.15.4 [INFO] [stderr] Compiling winnow v0.7.12 [INFO] [stderr] Checking cpufeatures v0.2.17 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling borsh v1.5.7 [INFO] [stderr] Checking five8_core v0.1.2 [INFO] [stderr] Compiling semver v1.0.26 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Checking solana-sanitize v2.2.1 [INFO] [stderr] Checking once_cell v1.21.3 [INFO] [stderr] Checking solana-atomic-u64 v2.2.1 [INFO] [stderr] Checking solana-decode-error v2.3.0 [INFO] [stderr] Compiling serde_json v1.0.141 [INFO] [stderr] Checking five8 v0.2.1 [INFO] [stderr] Checking five8_const v0.1.4 [INFO] [stderr] Checking solana-msg v2.2.1 [INFO] [stderr] Compiling bs58 v0.5.1 [INFO] [stderr] Checking keccak v0.1.5 [INFO] [stderr] Checking solana-program-memory v2.3.1 [INFO] [stderr] Checking qstring v0.7.2 [INFO] [stderr] Checking uriparse v0.6.4 [INFO] [stderr] Checking derivation-path v0.2.0 [INFO] [stderr] Checking solana-signature v2.3.0 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Checking solana-program-option v2.2.1 [INFO] [stderr] Checking memchr v2.7.5 [INFO] [stderr] Compiling crunchy v0.2.4 [INFO] [stderr] Compiling feature-probe v0.1.1 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling cc v1.2.30 [INFO] [stderr] Checking itertools v0.12.1 [INFO] [stderr] Compiling bv v0.11.1 [INFO] [stderr] Compiling anyhow v1.0.98 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Checking constant_time_eq v0.3.1 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Compiling memoffset v0.9.1 [INFO] [stderr] Checking base64 v0.12.3 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling indexmap v2.10.0 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking solana-native-token v2.3.0 [INFO] [stderr] Compiling heck v0.3.3 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling libsecp256k1-core v0.2.2 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Checking solana-derivation-path v2.2.1 [INFO] [stderr] Checking solana-seed-derivable v2.2.1 [INFO] [stderr] Compiling rustversion v1.0.21 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking solana-security-txt v1.1.1 [INFO] [stderr] Compiling az v1.2.1 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling fixed v1.29.0 [INFO] [stderr] Checking half v2.6.0 [INFO] [stderr] Compiling ruint-macro v1.2.1 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Checking uint v0.9.5 (https://github.com/raydium-io/parity-common#43a0303b) [INFO] [stderr] Checking safe-transmute v0.11.3 [INFO] [stderr] Compiling libsecp256k1-gen-ecmult v0.2.1 [INFO] [stderr] Compiling libsecp256k1-gen-genmult v0.2.1 [INFO] [stderr] Checking inout v0.1.4 [INFO] [stderr] Checking block-buffer v0.9.0 [INFO] [stderr] Checking universal-hash v0.5.1 [INFO] [stderr] Checking aead v0.5.2 [INFO] [stderr] Checking ruint v1.15.0 [INFO] [stderr] Checking sha2 v0.9.9 [INFO] [stderr] Checking cipher v0.4.4 [INFO] [stderr] Checking polyval v0.6.2 [INFO] [stderr] Checking sha3 v0.10.8 [INFO] [stderr] Checking pbkdf2 v0.11.0 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Compiling blake3 v1.8.2 [INFO] [stderr] Compiling libsecp256k1 v0.6.0 [INFO] [stderr] Checking aes v0.8.4 [INFO] [stderr] Checking ctr v0.9.2 [INFO] [stderr] Checking solana-seed-phrase v2.2.1 [INFO] [stderr] Checking solana-big-mod-exp v2.2.1 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking hashbrown v0.13.2 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling proc-macro-crate v3.3.0 [INFO] [stderr] Compiling borsh-derive-internal v0.10.4 [INFO] [stderr] Compiling borsh-schema-derive-internal v0.10.4 [INFO] [stderr] Compiling num-derive v0.3.3 [INFO] [stderr] Compiling anchor-derive-space v0.31.1 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling bytemuck_derive v1.10.0 [INFO] [stderr] Compiling borsh-derive v1.5.7 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling solana-sdk-macro v2.2.1 [INFO] [stderr] Compiling num_enum_derive v0.7.4 [INFO] [stderr] Compiling spl-program-error-derive v0.4.1 [INFO] [stderr] Compiling spl-program-error-derive v0.5.0 [INFO] [stderr] Checking zeroize v1.8.1 [INFO] [stderr] Checking aes-gcm-siv v0.11.1 [INFO] [stderr] Checking merlin v3.0.0 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Checking num_enum v0.7.4 [INFO] [stderr] Compiling spl-discriminator-syn v0.2.0 [INFO] [stderr] Checking thiserror v2.0.12 [INFO] [stderr] Compiling spl-discriminator-derive v0.2.0 [INFO] [stderr] Checking bytemuck v1.23.1 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Compiling anchor-lang-idl-spec v0.1.0 [INFO] [stderr] Checking solana-hash v2.3.0 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking solana-fee-calculator v2.2.1 [INFO] [stderr] Checking serde_bytes v0.11.17 [INFO] [stderr] Checking solana-short-vec v2.2.1 [INFO] [stderr] Checking solana-serde-varint v2.2.2 [INFO] [stderr] Checking solana-sha256-hasher v2.2.1 [INFO] [stderr] Checking solana-keccak-hasher v2.2.1 [INFO] [stderr] Checking solana-blake3-hasher v2.2.1 [INFO] [stderr] Compiling proc-macro-crate v0.1.5 [INFO] [stderr] Compiling anchor-syn v0.31.1 [INFO] [stderr] Compiling borsh-derive v0.10.4 [INFO] [stderr] Compiling anchor-lang-idl v0.1.2 [INFO] [stderr] Checking borsh v0.10.4 [INFO] [stderr] Checking solana-curve25519 v2.3.5 [INFO] [stderr] Checking solana-pubkey v2.4.0 [INFO] [stderr] Checking solana-borsh v2.2.1 [INFO] [stderr] Checking solana-instruction v2.3.0 [INFO] [stderr] Checking solana-sdk-ids v2.2.1 [INFO] [stderr] Checking solana-nonce v2.2.1 [INFO] [stderr] Checking solana-sysvar-id v2.2.1 [INFO] [stderr] Checking solana-program-error v2.2.2 [INFO] [stderr] Checking solana-transaction-error v2.2.1 [INFO] [stderr] Checking solana-system-interface v1.0.0 [INFO] [stderr] Checking solana-serialize-utils v2.2.1 [INFO] [stderr] Checking solana-bincode v2.2.1 [INFO] [stderr] Checking solana-stable-layout v2.2.1 [INFO] [stderr] Checking solana-loader-v2-interface v2.2.1 [INFO] [stderr] Checking spl-associated-token-account-client v2.0.0 [INFO] [stderr] Checking solana-clock v2.2.2 [INFO] [stderr] Checking solana-slot-hashes v2.2.1 [INFO] [stderr] Checking solana-rent v2.2.1 [INFO] [stderr] Checking solana-slot-history v2.2.1 [INFO] [stderr] Checking solana-epoch-rewards v2.2.1 [INFO] [stderr] Checking solana-last-restart-slot v2.2.1 [INFO] [stderr] Checking solana-epoch-schedule v2.2.1 [INFO] [stderr] Checking solana-signer v2.2.1 [INFO] [stderr] Checking solana-address-lookup-table-interface v2.2.2 [INFO] [stderr] Checking solana-zk-sdk v2.3.5 [INFO] [stderr] Checking solana-account-info v2.3.0 [INFO] [stderr] Checking solana-program-pack v2.2.1 [INFO] [stderr] Checking spl-discriminator v0.4.1 [INFO] [stderr] Checking spl-program-error v0.7.0 [INFO] [stderr] Checking solana-cpi v2.2.1 [INFO] [stderr] Checking solana-program-entrypoint v2.3.0 [INFO] [stderr] Checking solana-instructions-sysvar v2.2.2 [INFO] [stderr] Checking solana-account v2.2.1 [INFO] [stderr] Checking solana-message v2.4.0 [INFO] [stderr] Checking solana-loader-v4-interface v2.2.1 [INFO] [stderr] Checking solana-loader-v3-interface v5.0.0 [INFO] [stderr] Checking solana-vote-interface v2.2.6 [INFO] [stderr] Checking solana-stake-interface v1.2.1 [INFO] [stderr] Checking spl-memo v6.0.0 [INFO] [stderr] Checking solana-feature-gate-interface v2.2.2 [INFO] [stderr] Checking solana-sysvar v2.2.2 [INFO] [stderr] Checking spl-pod v0.5.1 [INFO] [stderr] Checking spl-token-confidential-transfer-proof-generation v0.2.0 [INFO] [stderr] Checking spl-token-confidential-transfer-ciphertext-arithmetic v0.2.1 [INFO] [stderr] Checking spl-token-confidential-transfer-ciphertext-arithmetic v0.3.0 [INFO] [stderr] Checking spl-token-confidential-transfer-proof-generation v0.4.0 [INFO] [stderr] Checking spl-token v8.0.0 [INFO] [stderr] Checking spl-type-length-value v0.7.0 [INFO] [stderr] Checking spl-type-length-value v0.8.0 [INFO] [stderr] Checking spl-token-group-interface v0.5.0 [INFO] [stderr] Checking spl-token-confidential-transfer-proof-extraction v0.4.0 [INFO] [stderr] Checking spl-token-group-interface v0.6.0 [INFO] [stderr] Checking spl-elgamal-registry v0.3.0 [INFO] [stderr] Checking solana-example-mocks v2.2.1 [INFO] [stderr] Checking spl-tlv-account-resolution v0.10.0 [INFO] [stderr] Checking spl-token-metadata-interface v0.7.0 [INFO] [stderr] Checking spl-token-metadata-interface v0.6.0 [INFO] [stderr] Checking spl-transfer-hook-interface v0.10.0 [INFO] [stderr] Checking spl-token-2022 v9.0.0 [INFO] [stderr] Checking solana-secp256k1-recover v2.2.1 [INFO] [stderr] Checking solana-program v2.3.0 [INFO] [stderr] Checking spl-program-error v0.6.0 [INFO] [stderr] Checking spl-token-confidential-transfer-proof-extraction v0.2.1 [INFO] [stderr] Checking spl-token v7.0.0 [INFO] [stderr] Checking mpl-token-metadata v5.1.0 [INFO] [stderr] Checking spl-tlv-account-resolution v0.9.0 [INFO] [stderr] Checking spl-elgamal-registry v0.1.1 [INFO] [stderr] Checking spl-transfer-hook-interface v0.9.0 [INFO] [stderr] Checking spl-token-2022 v6.0.0 [INFO] [stderr] Compiling anchor-attribute-program v0.31.1 [INFO] [stderr] Compiling anchor-derive-accounts v0.31.1 [INFO] [stderr] Compiling anchor-attribute-event v0.31.1 [INFO] [stderr] Compiling anchor-attribute-account v0.31.1 [INFO] [stderr] Compiling anchor-attribute-access-control v0.31.1 [INFO] [stderr] Compiling anchor-attribute-error v0.31.1 [INFO] [stderr] Compiling anchor-derive-serde v0.31.1 [INFO] [stderr] Compiling anchor-attribute-constant v0.31.1 [INFO] [stderr] Checking anchor-lang v0.31.1 [INFO] [stderr] Checking spl-associated-token-account v6.0.0 [INFO] [stderr] Checking anchor-spl v0.31.1 [INFO] [stderr] Checking flashbot-solana v0.1.0 (/opt/rustwide/workdir/programs/flashbot-solana) [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 54 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 62 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:78:12 [INFO] [stdout] | [INFO] [stdout] 78 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 90 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 103 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:134:12 [INFO] [stdout] | [INFO] [stdout] 134 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:203:12 [INFO] [stdout] | [INFO] [stdout] 203 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 227 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:252:12 [INFO] [stdout] | [INFO] [stdout] 252 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:293:12 [INFO] [stdout] | [INFO] [stdout] 293 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:335:12 [INFO] [stdout] | [INFO] [stdout] 335 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:344:12 [INFO] [stdout] | [INFO] [stdout] 344 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `solana` [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | #[program] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `helenos`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `redox`, `rtems`, `solaris`, `solid_asp3`, and `teeos` and 13 more [INFO] [stdout] = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `$crate::custom_heap_default` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the macro `$crate::custom_heap_default` may come from an old version of the `solana_program_entrypoint` crate, try updating your dependency with `cargo update -p solana_program_entrypoint` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the macro `$crate::custom_heap_default` which comes from the expansion of the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `solana` [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | #[program] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `helenos`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `redox`, `rtems`, `solaris`, `solid_asp3`, and `teeos` and 13 more [INFO] [stdout] = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `$crate::custom_panic_default` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the macro `$crate::custom_panic_default` may come from an old version of the `solana_program_entrypoint` crate, try updating your dependency with `cargo update -p solana_program_entrypoint` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the macro `$crate::custom_panic_default` which comes from the expansion of the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Mint` and `TokenAccount` [INFO] [stdout] --> programs/flashbot-solana/src/state.rs:3:25 [INFO] [stdout] | [INFO] [stdout] 3 | use anchor_spl::token::{Mint, Token, TokenAccount}; [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 import: `solana_program` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:1:31 [INFO] [stdout] | [INFO] [stdout] 1 | use anchor_lang::{prelude::*, solana_program}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TokenAccount` and `Token` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:2:25 [INFO] [stdout] | [INFO] [stdout] 2 | use anchor_spl::token::{Token, TokenAccount}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deref` and `Neg` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:8:16 [INFO] [stdout] | [INFO] [stdout] 8 | use std::ops::{Deref, Neg}; [INFO] [stdout] | ^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MulDiv`, `U128`, `fixed_point_64`, and `liquidity_math` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:10:38 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::raydium_clmm::libraries::{fixed_point_64, liquidity_math, swap_math, tick_math, MulDiv, U128}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FEE_RATE_DENOMINATOR_VALUE`, `ObservationState`, `SwapEvent`, and `oracle` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:11:35 [INFO] [stdout] | [INFO] [stdout] 11 | ...::{oracle, AmmConfig, ObservationState, PoolState, PoolStatusBitIndex, SwapEvent, TickArrayBitmapExtension, TickArrayState, TickState, FEE_RATE_DENOMINATOR_VALUE}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AccountLoad`, `transfer_from_pool_vault_to_user`, and `transfer_from_user_to_pool_vault` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:12:33 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::raydium_clmm::util::{transfer_from_pool_vault_to_user, transfer_from_user_to_pool_vault, AccountLoad}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::raydium_clmm::error::CLMMErrorCode` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/config.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::raydium_clmm::error::CLMMErrorCode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anchor_lang::solana_program::program_option::COption` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use anchor_lang::solana_program::program_option::COption; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anchor_spl::token_interface::Mint` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use anchor_spl::token_interface::Mint; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BitOr` and `BitXor` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:6:24 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ops::{BitAnd, BitOr, BitXor}; [INFO] [stdout] | ^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AmmConfig` and `OperationState` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:9:35 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::raydium_clmm::states::{AmmConfig, OperationState, TickArrayBitmapExtension, TickArrayState}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:1:26 [INFO] [stdout] | [INFO] [stdout] 1 | use anchor_lang::error::{Error, ErrorCode}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Owner` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:3:24 [INFO] [stdout] | [INFO] [stdout] 3 | use anchor_lang::{Key, Owner, Result, ToAccountInfos, ZeroCopy}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/util.rs:21:79 [INFO] [stdout] | [INFO] [stdout] 21 | let clmm_remaining_accounts = next_account_infos(remaining_accounts_iter, (9 + ticks_array_len))?; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 21 - let clmm_remaining_accounts = next_account_infos(remaining_accounts_iter, (9 + ticks_array_len))?; [INFO] [stdout] 21 + let clmm_remaining_accounts = next_account_infos(remaining_accounts_iter, 9 + ticks_array_len )?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/big_num.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::convert; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::result` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/big_num.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BuyQuoteInputResult` [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/mod.rs:3:42 [INFO] [stdout] | [INFO] [stdout] 3 | pub use util::{buy_quote_input_internal, BuyQuoteInputResult}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 54 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 62 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:78:12 [INFO] [stdout] | [INFO] [stdout] 78 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 90 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 103 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:134:12 [INFO] [stdout] | [INFO] [stdout] 134 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:203:12 [INFO] [stdout] | [INFO] [stdout] 203 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 227 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:252:12 [INFO] [stdout] | [INFO] [stdout] 252 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:293:12 [INFO] [stdout] | [INFO] [stdout] 293 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:335:12 [INFO] [stdout] | [INFO] [stdout] 335 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `serde` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:344:12 [INFO] [stdout] | [INFO] [stdout] 344 | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `serde` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `solana` [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | #[program] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `helenos`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `redox`, `rtems`, `solaris`, `solid_asp3`, and `teeos` and 13 more [INFO] [stdout] = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `$crate::custom_heap_default` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the macro `$crate::custom_heap_default` may come from an old version of the `solana_program_entrypoint` crate, try updating your dependency with `cargo update -p solana_program_entrypoint` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the macro `$crate::custom_heap_default` which comes from the expansion of the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `solana` [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | #[program] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `helenos`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `redox`, `rtems`, `solaris`, `solid_asp3`, and `teeos` and 13 more [INFO] [stdout] = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `$crate::custom_panic_default` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the macro `$crate::custom_panic_default` may come from an old version of the `solana_program_entrypoint` crate, try updating your dependency with `cargo update -p solana_program_entrypoint` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the macro `$crate::custom_panic_default` which comes from the expansion of the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Mint` and `TokenAccount` [INFO] [stdout] --> programs/flashbot-solana/src/state.rs:3:25 [INFO] [stdout] | [INFO] [stdout] 3 | use anchor_spl::token::{Mint, Token, TokenAccount}; [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 import: `anchor_spl::token_2022::spl_token_2022::extension` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use anchor_spl::token_2022::spl_token_2022::extension; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::*` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/lb_pair.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::dlmm::util::derive_bin_array_pda` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/bin_array.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::dlmm::util::derive_bin_array_pda; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `account` [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | account, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `msg` [INFO] [stdout] --> programs/flashbot-solana/src/damm/util.rs:4:28 [INFO] [stdout] | [INFO] [stdout] 4 | use anchor_lang::prelude::{msg, AccountInfo, Clock, Pubkey, SolanaSysvar}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DepegType`, `Depeg`, and `TokenMultiplier` [INFO] [stdout] --> programs/flashbot-solana/src/damm/util.rs:8:63 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::damm::state::{ActivationType, CurveType, DammPool, Depeg, DepegType, TokenMultiplier, Vault}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `static_assertions::const_assert_eq` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/pool.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use static_assertions::const_assert_eq; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `InitSpace` and `Space` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/pool.rs:7:30 [INFO] [stdout] | [INFO] [stdout] 7 | use anchor_lang::{zero_copy, InitSpace, Space, Result, account}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:40:15 [INFO] [stdout] | [INFO] [stdout] 40 | #[cfg(not(feature = "local"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:42:11 [INFO] [stdout] | [INFO] [stdout] 42 | #[cfg(feature = "local")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | #[cfg(not(feature = "local"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | #[cfg(feature = "local")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:50:15 [INFO] [stdout] | [INFO] [stdout] 50 | #[cfg(not(feature = "local"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `solana_program` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:1:31 [INFO] [stdout] | [INFO] [stdout] 1 | use anchor_lang::{prelude::*, solana_program}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TokenAccount` and `Token` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:2:25 [INFO] [stdout] | [INFO] [stdout] 2 | use anchor_spl::token::{Token, TokenAccount}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | #[cfg(feature = "local")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deref` and `Neg` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:8:16 [INFO] [stdout] | [INFO] [stdout] 8 | use std::ops::{Deref, Neg}; [INFO] [stdout] | ^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:55:15 [INFO] [stdout] | [INFO] [stdout] 55 | #[cfg(not(feature = "local"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MulDiv`, `U128`, `fixed_point_64`, and `liquidity_math` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:10:38 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::raydium_clmm::libraries::{fixed_point_64, liquidity_math, swap_math, tick_math, MulDiv, U128}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FEE_RATE_DENOMINATOR_VALUE`, `ObservationState`, `SwapEvent`, and `oracle` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:11:35 [INFO] [stdout] | [INFO] [stdout] 11 | ...::{oracle, AmmConfig, ObservationState, PoolState, PoolStatusBitIndex, SwapEvent, TickArrayBitmapExtension, TickArrayState, TickState, FEE_RATE_DENOMINATOR_VALUE}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AccountLoad`, `transfer_from_pool_vault_to_user`, and `transfer_from_user_to_pool_vault` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:12:33 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::raydium_clmm::util::{transfer_from_pool_vault_to_user, transfer_from_user_to_pool_vault, AccountLoad}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::raydium_clmm::error::CLMMErrorCode` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/config.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::raydium_clmm::error::CLMMErrorCode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anchor_lang::solana_program::program_option::COption` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use anchor_lang::solana_program::program_option::COption; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anchor_spl::token_interface::Mint` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use anchor_spl::token_interface::Mint; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BitOr` and `BitXor` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:6:24 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ops::{BitAnd, BitOr, BitXor}; [INFO] [stdout] | ^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AmmConfig` and `OperationState` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:9:35 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::raydium_clmm::states::{AmmConfig, OperationState, TickArrayBitmapExtension, TickArrayState}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:1:26 [INFO] [stdout] | [INFO] [stdout] 1 | use anchor_lang::error::{Error, ErrorCode}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Owner` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:3:24 [INFO] [stdout] | [INFO] [stdout] 3 | use anchor_lang::{Key, Owner, Result, ToAccountInfos, ZeroCopy}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/util.rs:21:79 [INFO] [stdout] | [INFO] [stdout] 21 | let clmm_remaining_accounts = next_account_infos(remaining_accounts_iter, (9 + ticks_array_len))?; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 21 - let clmm_remaining_accounts = next_account_infos(remaining_accounts_iter, (9 + ticks_array_len))?; [INFO] [stdout] 21 + let clmm_remaining_accounts = next_account_infos(remaining_accounts_iter, 9 + ticks_array_len )?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/big_num.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::convert; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::result` [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/big_num.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:57:11 [INFO] [stdout] | [INFO] [stdout] 57 | #[cfg(feature = "local")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::whirlpool::state::Whirlpool` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/oracle.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::whirlpool::state::Whirlpool; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MAX_FEE_RATE`, `MAX_PROTOCOL_FEE_RATE`, `MAX_SQRT_PRICE_X64`, `MIN_SQRT_PRICE_X64`, `errors::ErrorCode`, and `tick_index_from_sqrt_price` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | errors::ErrorCode, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 3 | math::{ [INFO] [stdout] 4 | tick_index_from_sqrt_price, MAX_FEE_RATE, MAX_PROTOCOL_FEE_RATE, MAX_SQRT_PRICE_X64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 5 | MIN_SQRT_PRICE_X64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anchor_lang::solana_program::system_program` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use anchor_lang::solana_program::system_program; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::WhirlpoolsConfig` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use super::WhirlpoolsConfig; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `adaptive_fee_tier::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | pub use adaptive_fee_tier::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `config_extension::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub use config_extension::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fee_tier::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub use fee_tier::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lock_config::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub use lock_config::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `position::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub use position::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `position_bundle::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub use position_bundle::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: glob import doesn't reexport anything with visibility `pub` because no imported item is public enough [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub use zeroed_tick_array::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the most public imported item is `pub(crate)` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub use zeroed_tick_array::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: reduce the glob import's visibility or increase visibility of imported items [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bn::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use bn::*; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::state::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/swap_tick_sequence.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::state::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anchor_lang::solana_program` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use anchor_lang::solana_program; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BuildMemo`, `Memo`, and `self` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:9:24 [INFO] [stdout] | [INFO] [stdout] 9 | use anchor_spl::memo::{self, BuildMemo, Memo}; [INFO] [stdout] | ^^^^ ^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TokenAccount` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:10:32 [INFO] [stdout] | [INFO] [stdout] 10 | use anchor_spl::token::{Token, TokenAccount}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TokenInterface` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:15:41 [INFO] [stdout] | [INFO] [stdout] 15 | use anchor_spl::token_interface::{Mint, TokenInterface}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `spl_transfer_hook_interface` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use spl_transfer_hook_interface; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BuyQuoteInputResult` [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/mod.rs:3:42 [INFO] [stdout] | [INFO] [stdout] 3 | pub use util::{buy_quote_input_internal, BuyQuoteInputResult}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `token::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use token::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `math::add_liquidity_delta` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/manager/tick_manager.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | math::add_liquidity_delta, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `add_liquidity_delta` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/manager/whirlpool_manager.rs:2:30 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::whirlpool::math::{add_liquidity_delta, checked_mul_div}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RAYDIUM_CLMM` should have an upper camel case name [INFO] [stdout] --> programs/flashbot-solana/src/utils.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | RAYDIUM_CLMM, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RaydiumClmm` [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: variant `RAYDIUM_CPMM` should have an upper camel case name [INFO] [stdout] --> programs/flashbot-solana/src/utils.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | RAYDIUM_CPMM, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RaydiumCpmm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anchor_lang::solana_program::program::invoke` [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | use anchor_lang::solana_program::program::invoke; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DexMaxResult`, `Dex`, and `get_pump_amount` [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:40:44 [INFO] [stdout] | [INFO] [stdout] 40 | use crate::utils::{get_max_amount_out, get_pump_amount, Dex, DexMaxResult}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:62:78 [INFO] [stdout] | [INFO] [stdout] 62 | let token_program = next_account_info(&mut remaining_accounts_iter)?;; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anchor_spl::token_2022::spl_token_2022::extension` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use anchor_spl::token_2022::spl_token_2022::extension; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::*` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/lb_pair.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::dlmm::util::derive_bin_array_pda` [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/bin_array.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::dlmm::util::derive_bin_array_pda; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `account` [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | account, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `msg` [INFO] [stdout] --> programs/flashbot-solana/src/damm/util.rs:4:28 [INFO] [stdout] | [INFO] [stdout] 4 | use anchor_lang::prelude::{msg, AccountInfo, Clock, Pubkey, SolanaSysvar}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DepegType`, `Depeg`, and `TokenMultiplier` [INFO] [stdout] --> programs/flashbot-solana/src/damm/util.rs:8:63 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::damm::state::{ActivationType, CurveType, DammPool, Depeg, DepegType, TokenMultiplier, Vault}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `static_assertions::const_assert_eq` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/pool.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use static_assertions::const_assert_eq; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `InitSpace` and `Space` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/pool.rs:7:30 [INFO] [stdout] | [INFO] [stdout] 7 | use anchor_lang::{zero_copy, InitSpace, Space, Result, account}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:40:15 [INFO] [stdout] | [INFO] [stdout] 40 | #[cfg(not(feature = "local"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:42:11 [INFO] [stdout] | [INFO] [stdout] 42 | #[cfg(feature = "local")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | #[cfg(not(feature = "local"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | #[cfg(feature = "local")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:50:15 [INFO] [stdout] | [INFO] [stdout] 50 | #[cfg(not(feature = "local"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | #[cfg(feature = "local")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:55:15 [INFO] [stdout] | [INFO] [stdout] 55 | #[cfg(not(feature = "local"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `local` [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:57:11 [INFO] [stdout] | [INFO] [stdout] 57 | #[cfg(feature = "local")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `anchor-debug`, `client`, `cpi`, `custom-heap`, `custom-panic`, `default`, `enable-log`, `enable-power`, `idl-build`, `no-entrypoint`, `no-idl`, `no-log-ix-name`, and `paramset` [INFO] [stdout] = help: consider adding `local` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::whirlpool::state::Whirlpool` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/oracle.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::whirlpool::state::Whirlpool; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MAX_FEE_RATE`, `MAX_PROTOCOL_FEE_RATE`, `MAX_SQRT_PRICE_X64`, `MIN_SQRT_PRICE_X64`, `errors::ErrorCode`, and `tick_index_from_sqrt_price` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | errors::ErrorCode, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 3 | math::{ [INFO] [stdout] 4 | tick_index_from_sqrt_price, MAX_FEE_RATE, MAX_PROTOCOL_FEE_RATE, MAX_SQRT_PRICE_X64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 5 | MIN_SQRT_PRICE_X64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anchor_lang::solana_program::system_program` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use anchor_lang::solana_program::system_program; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::WhirlpoolsConfig` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use super::WhirlpoolsConfig; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `adaptive_fee_tier::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | pub use adaptive_fee_tier::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `config_extension::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub use config_extension::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fee_tier::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub use fee_tier::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lock_config::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub use lock_config::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `position::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub use position::*; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `position_bundle::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub use position_bundle::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: glob import doesn't reexport anything with visibility `pub` because no imported item is public enough [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub use zeroed_tick_array::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the most public imported item is `pub(crate)` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | pub use zeroed_tick_array::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: reduce the glob import's visibility or increase visibility of imported items [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bn::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use bn::*; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::state::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/swap_tick_sequence.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::state::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anchor_lang::solana_program` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use anchor_lang::solana_program; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BuildMemo`, `Memo`, and `self` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:9:24 [INFO] [stdout] | [INFO] [stdout] 9 | use anchor_spl::memo::{self, BuildMemo, Memo}; [INFO] [stdout] | ^^^^ ^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TokenAccount` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:10:32 [INFO] [stdout] | [INFO] [stdout] 10 | use anchor_spl::token::{Token, TokenAccount}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TokenInterface` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:15:41 [INFO] [stdout] | [INFO] [stdout] 15 | use anchor_spl::token_interface::{Mint, TokenInterface}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `spl_transfer_hook_interface` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use spl_transfer_hook_interface; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `token::*` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use token::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `math::add_liquidity_delta` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/manager/tick_manager.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | math::add_liquidity_delta, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `add_liquidity_delta` [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/manager/whirlpool_manager.rs:2:30 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::whirlpool::math::{add_liquidity_delta, checked_mul_div}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RAYDIUM_CLMM` should have an upper camel case name [INFO] [stdout] --> programs/flashbot-solana/src/utils.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | RAYDIUM_CLMM, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RaydiumClmm` [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: variant `RAYDIUM_CPMM` should have an upper camel case name [INFO] [stdout] --> programs/flashbot-solana/src/utils.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | RAYDIUM_CPMM, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RaydiumCpmm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anchor_lang::solana_program::program::invoke` [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | use anchor_lang::solana_program::program::invoke; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DexMaxResult`, `Dex`, and `get_pump_amount` [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:40:44 [INFO] [stdout] | [INFO] [stdout] 40 | use crate::utils::{get_max_amount_out, get_pump_amount, Dex, DexMaxResult}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:62:78 [INFO] [stdout] | [INFO] [stdout] 62 | let token_program = next_account_info(&mut remaining_accounts_iter)?;; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated module `anchor_lang::solana_program::system_program`: Use `solana_sdk_ids::system_program` instead [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:9:34 [INFO] [stdout] | [INFO] [stdout] 9 | use anchor_lang::solana_program::system_program; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated module `anchor_lang::solana_program::system_program`: Use `solana_sdk_ids::system_program` instead [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:9:34 [INFO] [stdout] | [INFO] [stdout] 9 | use anchor_lang::solana_program::system_program; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `anchor_lang::prelude::AccountInfo::<'a>::realloc`: Use AccountInfo::resize() instead [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | #[program] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `anchor_lang::prelude::AccountInfo::<'a>::realloc`: Use AccountInfo::resize() instead [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | #[program] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the attribute macro `program` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `amount_with_slippage` is never read [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:453:36 [INFO] [stdout] | [INFO] [stdout] 453 | let mut amount_with_slippage = amount_in; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stake_data` [INFO] [stdout] --> programs/flashbot-solana/src/damm/util.rs:204:9 [INFO] [stdout] | [INFO] [stdout] 204 | let stake_data = "e_data.stake_data; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stake_data` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `amount_with_slippage` is never read [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:453:36 [INFO] [stdout] | [INFO] [stdout] 453 | let mut amount_with_slippage = amount_in; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stake_data` [INFO] [stdout] --> programs/flashbot-solana/src/damm/util.rs:204:9 [INFO] [stdout] | [INFO] [stdout] 204 | let stake_data = "e_data.stake_data; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stake_data` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `amount_out` is never read [INFO] [stdout] --> programs/flashbot-solana/src/utils.rs:365:26 [INFO] [stdout] | [INFO] [stdout] 365 | let mut amount_out = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `destination_mint` [INFO] [stdout] --> programs/flashbot-solana/src/utils.rs:741:5 [INFO] [stdout] | [INFO] [stdout] 741 | destination_mint: &'a AccountInfo<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_destination_mint` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token_program` [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | let token_program = next_account_info(&mut remaining_accounts_iter)?;; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_program` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `into_u64`, `valid_status`, `deposit_permission`, `withdraw_permission`, and `swap_permission` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl AmmStatus { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn into_u64(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn valid_status(status: u64) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn deposit_permission(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn withdraw_permission(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn swap_permission(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AmmState` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:120:10 [INFO] [stdout] | [INFO] [stdout] 120 | pub enum AmmState { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_u64`, `into_u64`, and `valid_state` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:130:12 [INFO] [stdout] | [INFO] [stdout] 129 | impl AmmState { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 130 | pub fn from_u64(state: u64) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn into_u64(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 154 | pub fn valid_state(state: u64) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `load` and `load_from_bytes` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:304:8 [INFO] [stdout] | [INFO] [stdout] 297 | pub trait Loadable: Pod { [INFO] [stdout] | -------- associated functions in this trait [INFO] [stdout] ... [INFO] [stdout] 304 | fn load<'a>(account: &'a AccountInfo) -> Result, ProgramError> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 310 | fn load_from_bytes(data: &[u8]) -> Result<&Self, ProgramError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `load_checked` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:332:12 [INFO] [stdout] | [INFO] [stdout] 315 | impl AmmInfo { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 332 | pub fn load_checked<'a>( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PoolInfo` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:350:12 [INFO] [stdout] | [INFO] [stdout] 350 | pub struct PoolInfo { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `swap_token_amount_base_out` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:451:12 [INFO] [stdout] | [INFO] [stdout] 412 | impl Calculator { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 451 | pub fn swap_token_amount_base_out( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MarketState` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:513:12 [INFO] [stdout] | [INFO] [stdout] 513 | pub struct MarketState { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_amount_in` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/utils.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn get_amount_in(amount_out: u64, raydium_accounts: Vec<&AccountInfo>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `invoke_swap_base_out` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/processor.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Processor { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn invoke_swap_base_out( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const POOL_SEED: &str = "pool"; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_LP_MINT_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const POOL_LP_MINT_SEED: &str = "pool_lp_mint"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_VAULT_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const POOL_VAULT_SEED: &str = "pool_vault"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PoolStatusBitIndex` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | pub enum PoolStatusBitIndex { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PoolStatusBitFlag` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | pub enum PoolStatusBitFlag { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, `set_status`, `set_status_by_bit`, and `get_status_by_bit` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:82:15 [INFO] [stdout] | [INFO] [stdout] 81 | impl PoolState { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 82 | pub const LEN: usize = 8 + 10 * 32 + 1 * 5 + 8 * 7 + 8 * 31; [INFO] [stdout] | ^^^ [INFO] [stdout] 83 | [INFO] [stdout] 84 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn set_status(&mut self, status: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn set_status_by_bit(&mut self, bit: PoolStatusBitIndex, flag: PoolStatusBitFlag) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn get_status_by_bit(&self, bit: PoolStatusBitIndex) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AMM_CONFIG_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:162:11 [INFO] [stdout] | [INFO] [stdout] 162 | pub const AMM_CONFIG_SEED: &str = "amm_config"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `LEN` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:191:15 [INFO] [stdout] | [INFO] [stdout] 190 | impl AmmConfig { [INFO] [stdout] | -------------- associated constant in this implementation [INFO] [stdout] 191 | pub const LEN: usize = 8 + 1 + 1 + 2 + 4 * 8 + 32 * 2 + 8 * 16; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_transfer_inverse_fee` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/utils.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn get_transfer_inverse_fee(mint_info: &AccountInfo, post_fee_amount: u64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_amount_base_out` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/utils.rs:145:8 [INFO] [stdout] | [INFO] [stdout] 145 | pub fn get_amount_base_out( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `calculate_pre_fee_amount` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/fees.rs:53:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl Fees { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn calculate_pre_fee_amount(post_fee_amount: u128, trade_fee_rate: u64) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `swap_base_output_without_fees` and `lp_tokens_to_trading_tokens` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/constant_product.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl ConstantProductCurve { [INFO] [stdout] | ------------------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn swap_base_output_without_fees( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn lp_tokens_to_trading_tokens( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `RoundDirection` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/calculator.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | pub enum RoundDirection { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `opposite` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/calculator.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl TradeDirection { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn opposite(&self) -> TradeDirection { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TradingTokenResult` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/calculator.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct TradingTokenResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `validate_supply`, `swap_base_output`, and `lp_tokens_to_trading_tokens` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/calculator.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 78 | impl CurveCalculator { [INFO] [stdout] | -------------------- associated functions in this implementation [INFO] [stdout] 79 | pub fn validate_supply(token_0_amount: u64, token_1_amount: u64) -> anchor_lang::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn swap_base_output( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 158 | pub fn lp_tokens_to_trading_tokens( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `fee_growth_global_x64`, `fee_amount`, `protocol_fee`, and `fund_fee` are never read [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct SwapState { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 26 | pub fee_growth_global_x64: u128, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 27 | // the global fee of the input token [INFO] [stdout] 28 | pub fee_amount: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 29 | // amount of input token paid as protocol fee [INFO] [stdout] 30 | pub protocol_fee: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 31 | // amount of input token paid as fund fee [INFO] [stdout] 32 | pub fund_fee: u64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SwapState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AMM_CONFIG_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/config.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const AMM_CONFIG_SEED: &str = "amm_config"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OPERATION_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/operation_account.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub const OPERATION_SEED: &str = "operation"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, `validate_operation_owner`, `validate_whitelist_mint`, `update_whitelist_mint`, and `remove_whitelist_mint` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/operation_account.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 21 | impl OperationState { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 22 | pub const LEN: usize = 8 + 1 + 32 * OPERATION_SIZE_USIZE + 32 * WHITE_MINT_SIZE_USIZE; [INFO] [stdout] | ^^^ [INFO] [stdout] 23 | pub fn initialize(&mut self, bump: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn validate_operation_owner(&self, owner: Pubkey) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn validate_whitelist_mint(&self, mint: Pubkey) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn update_whitelist_mint(&mut self, keys: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn remove_whitelist_mint(&mut self, keys: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OBSERVATION_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/oracle.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const OBSERVATION_SEED: &str = "observation"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OBSERVATION_UPDATE_DURATION_DEFAULT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/oracle.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const OBSERVATION_UPDATE_DURATION_DEFAULT: u32 = 15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `initialize` and `update` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/oracle.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 61 | impl ObservationState { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn initialize(&mut self, pool_id: Pubkey) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn update(&mut self, block_timestamp: u32, tick: i32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `block_timestamp_mock` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/oracle.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn block_timestamp_mock() -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_VAULT_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const POOL_VAULT_SEED: &str = "pool_vault"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_REWARD_VAULT_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const POOL_REWARD_VAULT_SEED: &str = "pool_reward_vault"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_TICK_ARRAY_BITMAP_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const POOL_TICK_ARRAY_BITMAP_SEED: &str = "pool_tick_array_bitmap_extension"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `OpenPositionOrIncreaseLiquidity`, `DecreaseLiquidity`, `CollectFee`, and `CollectReward` are never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub enum PoolStatusBitIndex { [INFO] [stdout] | ------------------ variants in this enum [INFO] [stdout] 34 | OpenPositionOrIncreaseLiquidity, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 35 | DecreaseLiquidity, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 36 | CollectFee, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 37 | CollectReward, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PoolStatusBitFlag` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:42:10 [INFO] [stdout] | [INFO] [stdout] 42 | pub enum PoolStatusBitFlag { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `update_reward_infos`, `check_unclaimed_reward`, `add_reward_clamed`, and `get_tick_array_offset` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:141:15 [INFO] [stdout] | [INFO] [stdout] 140 | impl PoolState { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 141 | pub const LEN: usize = 8 [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 335 | pub fn update_reward_infos(&mut self, curr_timestamp: u64) -> Result<[RewardInfo; REWARD_NUM]> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 412 | pub fn check_unclaimed_reward(&self, index: usize, reward_amount_owed: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 422 | pub fn add_reward_clamed(&mut self, index: usize, amount: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 431 | pub fn get_tick_array_offset(&self, tick_array_start_index: i32) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `RewardState` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:610:10 [INFO] [stdout] | [INFO] [stdout] 610 | pub enum RewardState { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `new`, `initialized`, and `get_reward_growths` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:651:15 [INFO] [stdout] | [INFO] [stdout] 650 | impl RewardInfo { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 651 | pub const LEN: usize = 1 + 8 + 8 + 8 + 16 + 8 + 8 + 32 + 32 + 32 + 16; [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 654 | pub fn new(authority: Pubkey) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 663 | pub fn initialized(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 667 | pub fn get_reward_growths(reward_infos: &[RewardInfo; REWARD_NUM]) -> [u128; REWARD_NUM] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PoolCreatedEvent` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:680:12 [INFO] [stdout] | [INFO] [stdout] 680 | pub struct PoolCreatedEvent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CollectProtocolFeeEvent` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:708:12 [INFO] [stdout] | [INFO] [stdout] 708 | pub struct CollectProtocolFeeEvent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SwapEvent` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:728:12 [INFO] [stdout] | [INFO] [stdout] 728 | pub struct SwapEvent { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LiquidityChangeEvent` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:771:12 [INFO] [stdout] | [INFO] [stdout] 771 | pub struct LiquidityChangeEvent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_REWARD_PERIOD` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:28:15 [INFO] [stdout] | [INFO] [stdout] 28 | pub const MIN_REWARD_PERIOD: u64 = 7 * 24 * 60 * 60; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_REWARD_PERIOD` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:29:15 [INFO] [stdout] | [INFO] [stdout] 29 | pub const MAX_REWARD_PERIOD: u64 = 90 * 24 * 60 * 60; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INCREASE_EMISSIONES_PERIOD` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:30:15 [INFO] [stdout] | [INFO] [stdout] 30 | pub const INCREASE_EMISSIONES_PERIOD: u64 = 72 * 60 * 60; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SUPPORT_MINT_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/support_mint_associated.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub const SUPPORT_MINT_SEED: &str = "support_mint"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SupportMintAssociated` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/support_mint_associated.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct SupportMintAssociated { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN` and `initialize` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/support_mint_associated.rs:17:15 [INFO] [stdout] | [INFO] [stdout] 16 | impl SupportMintAssociated { [INFO] [stdout] | -------------------------- associated items in this implementation [INFO] [stdout] 17 | pub const LEN: usize = 8 + 1 + 32 + 64; [INFO] [stdout] | ^^^ [INFO] [stdout] 18 | [INFO] [stdout] 19 | pub fn initialize<'info>(&mut self, bump: u8, mint: Pubkey) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TICK_ARRAY_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const TICK_ARRAY_SEED: &str = "tick_array"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:30:15 [INFO] [stdout] | [INFO] [stdout] 29 | impl TickArrayState { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 30 | pub const LEN: usize = 8 + 32 + 4 + TickState::LEN * TICK_ARRAY_SIZE_USIZE + 1 + 115; [INFO] [stdout] | ^^^ [INFO] [stdout] 31 | [INFO] [stdout] 32 | pub fn key(&self) -> Pubkey { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn get_or_create_tick_array<'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | pub fn update_initialized_tick_count(&mut self, add: bool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn get_tick_state_mut( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn update_tick_state( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | fn get_tick_offset_in_array(self, tick_index: i32, tick_spacing: u16) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 217 | pub fn next_tick_arrary_start_index(&self, tick_spacing: u16, zero_for_one: bool) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, `update`, `cross`, and `clear` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:289:15 [INFO] [stdout] | [INFO] [stdout] 288 | impl TickState { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 289 | pub const LEN: usize = 4 + 16 + 16 + 16 + 16 + 16 * REWARD_NUM + 16 + 16 + 8 + 8 + 4; [INFO] [stdout] | ^^^ [INFO] [stdout] 290 | [INFO] [stdout] 291 | pub fn initialize(&mut self, tick: i32, tick_spacing: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 303 | pub fn update( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 343 | pub fn cross( [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 370 | pub fn clear(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_fee_growth_inside` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:392:8 [INFO] [stdout] | [INFO] [stdout] 392 | pub fn get_fee_growth_inside( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_reward_growths_inside` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:443:8 [INFO] [stdout] | [INFO] [stdout] 443 | pub fn get_reward_growths_inside( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_tick_array_start_index` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:491:8 [INFO] [stdout] | [INFO] [stdout] 491 | pub fn check_tick_array_start_index( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_ticks_order` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:512:8 [INFO] [stdout] | [INFO] [stdout] 512 | pub fn check_ticks_order(tick_lower_index: i32, tick_upper_index: i32) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, `key`, and `flip_tick_array_bit` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tickarray_bitmap_extension.rs:31:15 [INFO] [stdout] | [INFO] [stdout] 30 | impl TickArrayBitmapExtension { [INFO] [stdout] | ----------------------------- associated items in this implementation [INFO] [stdout] 31 | pub const LEN: usize = 8 + 32 + 64 * EXTENSION_TICKARRAY_BITMAP_SIZE * 2; [INFO] [stdout] | ^^^ [INFO] [stdout] 32 | [INFO] [stdout] 33 | pub fn initialize(&mut self, pool_id: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn key(pool_id: Pubkey) -> Pubkey { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn flip_tick_array_bit( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MINT_WHITELIST` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | const MINT_WHITELIST: [&'static str; 6] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `invoke_memo_instruction` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn invoke_memo_instruction<'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `transfer_from_user_to_pool_vault` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn transfer_from_user_to_pool_vault<'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `transfer_from_pool_vault_to_user` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:91:8 [INFO] [stdout] | [INFO] [stdout] 91 | pub fn transfer_from_pool_vault_to_user<'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `close_spl_account` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn close_spl_account<'a, 'b, 'c, 'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `burn` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:158:8 [INFO] [stdout] | [INFO] [stdout] 158 | pub fn burn<'a, 'b, 'c, 'info>( [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_transfer_inverse_fee` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:183:8 [INFO] [stdout] | [INFO] [stdout] 183 | pub fn get_transfer_inverse_fee( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_transfer_fee` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:219:8 [INFO] [stdout] | [INFO] [stdout] 219 | pub fn get_transfer_fee( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `support_mint_associated_is_initialized` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:240:8 [INFO] [stdout] | [INFO] [stdout] 240 | pub fn support_mint_associated_is_initialized( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_supported_mint` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:269:8 [INFO] [stdout] | [INFO] [stdout] 269 | pub fn is_supported_mint( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_position_nft_mint_with_extensions` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:300:8 [INFO] [stdout] | [INFO] [stdout] 300 | pub fn create_position_nft_mint_with_extensions<'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_token_vault_account` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:389:8 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn create_token_vault_account<'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_or_allocate_account` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/system.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn create_or_allocate_account<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_recent_epoch` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/system.rs:64:8 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn get_recent_epoch() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AccountLoad` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct AccountLoad<'info, T: ZeroCopy> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl<'info, T: ZeroCopy> AccountLoad<'info, T> { [INFO] [stdout] | ---------------------------------------------- associated items in this implementation [INFO] [stdout] 17 | fn new(acc_info: AccountInfo<'info>) -> AccountLoad<'info, T> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn try_from(acc_info: &AccountInfo<'info>) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn try_from_unchecked( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn load_init(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn load_data_mut<'a>(acc_info: &'a AccountInfo) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn load(&self) -> Result> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn load_mut(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_underflow_u64` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/full_math.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub trait MulDiv { [INFO] [stdout] | ------ method in this trait [INFO] [stdout] ... [INFO] [stdout] 27 | fn to_underflow_u64(self) -> u64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_delta` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn add_delta(x: u128, y: i128) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_liquidity_from_amount_0` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn get_liquidity_from_amount_0( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_liquidity_from_amount_1` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn get_liquidity_from_amount_1( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_liquidity_from_amounts` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn get_liquidity_from_amounts( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_liquidity_from_single_amount_0` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn get_liquidity_from_single_amount_0( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_liquidity_from_single_amount_1` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn get_liquidity_from_single_amount_1( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_delta_amount_0_signed` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:233:8 [INFO] [stdout] | [INFO] [stdout] 233 | pub fn get_delta_amount_0_signed( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_delta_amount_1_signed` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:256:8 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn get_delta_amount_1_signed( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_delta_amounts_signed` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:278:8 [INFO] [stdout] | [INFO] [stdout] 278 | pub fn get_delta_amounts_signed( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BIT_PRECISION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/tick_math.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const BIT_PRECISION: u32 = 16; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_tick_at_sqrt_price` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/tick_math.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | pub fn get_tick_at_sqrt_price(sqrt_price_x64: u128) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `internal_quote_without_fees` and `max_quote` are never read [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BuyQuoteInputResult { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 11 | pub internal_quote_without_fees: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | /// 最大报价(含滑点) [INFO] [stdout] 13 | pub max_quote: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BuyQuoteInputResult` 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: struct `SellQuoteInputResult` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 115 | pub struct SellQuoteInputResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sell_quote_input_internal` is never used [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn sell_quote_input_internal( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_quote_amount_out` is never used [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:214:4 [INFO] [stdout] | [INFO] [stdout] 214 | fn calculate_quote_amount_out(quote: u64, total_fee_bps: u64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BuyBaseInputResult` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:231:12 [INFO] [stdout] | [INFO] [stdout] 231 | pub struct BuyBaseInputResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `buy_base_input_internal` is never used [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:252:8 [INFO] [stdout] | [INFO] [stdout] 252 | pub fn buy_base_input_internal( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `min_quote` and `internal_quote_amount_out` are never read [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:350:9 [INFO] [stdout] | [INFO] [stdout] 346 | pub struct SellBaseInputResult { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 350 | pub min_quote: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 351 | /// 内部报价输出(不含费用) [INFO] [stdout] 352 | pub internal_quote_amount_out: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SellBaseInputResult` 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: methods `serialize` and `try_to_vec` are never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 172 | impl LbPairAccount { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn serialize(&self, mut writer: W) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub fn try_to_vec(&self) -> std::io::Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `protocol_fee_after_host_fee`, `host_fee`, and `is_exact_out_amount` are never read [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:218:9 [INFO] [stdout] | [INFO] [stdout] 210 | pub struct SwapResult { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 218 | pub protocol_fee_after_host_fee: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 219 | /// Part of protocol fee [INFO] [stdout] 220 | pub host_fee: u64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 221 | /// Indicate whether we reach exact out amount [INFO] [stdout] 222 | pub is_exact_out_amount: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SwapResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BIN_ARRAY_BITMAP_EXTENSION_ACCOUNT_DISCM` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:240:11 [INFO] [stdout] | [INFO] [stdout] 240 | pub const BIN_ARRAY_BITMAP_EXTENSION_ACCOUNT_DISCM: [u8; 8] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BinArrayBitmapExtensionAccount` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:259:12 [INFO] [stdout] | [INFO] [stdout] 259 | pub struct BinArrayBitmapExtensionAccount(pub BinArrayBitmapExtension); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `deserialize`, `serialize`, and `try_to_vec` are never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:261:12 [INFO] [stdout] | [INFO] [stdout] 260 | impl BinArrayBitmapExtensionAccount { [INFO] [stdout] | ----------------------------------- associated items in this implementation [INFO] [stdout] 261 | pub fn deserialize(buf: &[u8]) -> std::io::Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn serialize(&self, mut writer: W) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | pub fn try_to_vec(&self) -> std::io::Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BIN_ARRAY_ACCOUNT_DISCM` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:290:11 [INFO] [stdout] | [INFO] [stdout] 290 | pub const BIN_ARRAY_ACCOUNT_DISCM: [u8; 8] = [92, 142, 92, 220, 5, 148, 70, 181]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BinArrayAccount` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:303:12 [INFO] [stdout] | [INFO] [stdout] 303 | pub struct BinArrayAccount(pub BinArray); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `deserialize`, `serialize`, and `try_to_vec` are never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:305:12 [INFO] [stdout] | [INFO] [stdout] 304 | impl BinArrayAccount { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 305 | pub fn deserialize(buf: &[u8]) -> std::io::Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 323 | pub fn serialize(&self, mut writer: W) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 327 | pub fn try_to_vec(&self) -> std::io::Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `fee` is never read [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct SwapExactInQuote { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 14 | pub amount_out: u64, [INFO] [stdout] 15 | pub fee: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SwapExactInQuote` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SwapExactOutQuote` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct SwapExactOutQuote { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `transfer_fee` is never read [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 337 | pub struct TransferFeeExcludedAmount { [INFO] [stdout] | ------------------------- field in this struct [INFO] [stdout] 338 | pub amount: u64, [INFO] [stdout] 339 | pub transfer_fee: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TransferFeeExcludedAmount` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `calculate_out_amount` and `get_amount_in` are never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:391:8 [INFO] [stdout] | [INFO] [stdout] 386 | pub trait BinExtension { [INFO] [stdout] | ------------ associated items in this trait [INFO] [stdout] ... [INFO] [stdout] 391 | fn calculate_out_amount(&self, liquidity_share: u128) -> Result<(u64, u64)>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 403 | fn get_amount_in(amount_out: u64, price: u128, swap_for_y: bool) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `safe_mul_div_cast` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:782:8 [INFO] [stdout] | [INFO] [stdout] 782 | pub fn safe_mul_div_cast( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_bin_arrays_map` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:792:8 [INFO] [stdout] | [INFO] [stdout] 792 | pub fn build_bin_arrays_map(bin_array_accounts: &[AccountInfo]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_BIN_PER_POSITION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const DEFAULT_BIN_PER_POSITION: usize = 70; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_RESIZE_LENGTH` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const MAX_RESIZE_LENGTH: usize = 70; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POSITION_MAX_LENGTH` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const POSITION_MAX_LENGTH: usize = 1400; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PROTOCOL_SHARE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const MAX_PROTOCOL_SHARE: u16 = 2_500; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HOST_FEE_BPS` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const HOST_FEE_BPS: u16 = 2_000; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NUM_REWARDS` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const NUM_REWARDS: usize = 2; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_REWARD_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:36:11 [INFO] [stdout] | [INFO] [stdout] 36 | pub const MIN_REWARD_DURATION: u64 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_REWARD_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const MAX_REWARD_DURATION: u64 = 31536000; // 1 year = 365 * 24 * 3600 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_OBSERVATION_LENGTH` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:40:11 [INFO] [stdout] | [INFO] [stdout] 40 | pub const DEFAULT_OBSERVATION_LENGTH: u64 = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SAMPLE_LIFETIME` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:42:11 [INFO] [stdout] | [INFO] [stdout] 42 | pub const SAMPLE_LIFETIME: u64 = 120; // 2 [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_BASE_FACTOR_STEP` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:48:11 [INFO] [stdout] | [INFO] [stdout] 48 | pub const MAX_BASE_FACTOR_STEP: u16 = 100; // 100 bps, 1% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_FEE_UPDATE_WINDOW` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:50:11 [INFO] [stdout] | [INFO] [stdout] 50 | pub const MAX_FEE_UPDATE_WINDOW: i64 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_REWARD_BIN_SPLIT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | pub const MAX_REWARD_BIN_SPLIT: usize = 15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SLOT_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | pub const SLOT_BUFFER: u64 = 9000; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TIME_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:56:11 [INFO] [stdout] | [INFO] [stdout] 56 | pub const TIME_BUFFER: u64 = 3600; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_ACTIVATION_SLOT_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:58:11 [INFO] [stdout] | [INFO] [stdout] 58 | pub const MAX_ACTIVATION_SLOT_DURATION: u64 = SLOT_BUFFER * 24 * 31; // 31 days [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_ACTIVATION_TIME_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:60:11 [INFO] [stdout] | [INFO] [stdout] 60 | pub const MAX_ACTIVATION_TIME_DURATION: u64 = TIME_BUFFER * 24 * 31; // 31 days [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIVE_MINUTES_SLOT_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:62:11 [INFO] [stdout] | [INFO] [stdout] 62 | pub const FIVE_MINUTES_SLOT_BUFFER: u64 = SLOT_BUFFER / 12; // 5 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIVE_MINUTES_TIME_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const FIVE_MINUTES_TIME_BUFFER: u64 = TIME_BUFFER / 12; // 5 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ILM_PROTOCOL_SHARE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | pub const ILM_PROTOCOL_SHARE: u16 = 2000; // 20% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_BIN_STEP` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const MAX_BIN_STEP: u16 = 400; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_BASE_FEE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | pub const MAX_BASE_FEE: u128 = 100_000_000; // 10% (10^9 * 10 / 100) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_BASE_FEE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:76:11 [INFO] [stdout] | [INFO] [stdout] 76 | pub const MIN_BASE_FEE: u128 = 100_000; // 0.01% (10^9 * 0.01 / 100) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `is_bin_id_within_range`, `get_bin_index_in_array`, `get_bin_array_lower_upper_bin_id`, `get_bin_mut`, and `get_bin` are never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/bin_array.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub trait BinArrayExtension { [INFO] [stdout] | ----------------- associated items in this trait [INFO] [stdout] 10 | fn is_bin_id_within_range(&self, bin_id: i32) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | fn get_bin_index_in_array(&self, bin_id: i32) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | [INFO] [stdout] 13 | fn get_bin_array_lower_upper_bin_id(index: i32) -> Result<(i32, i32)>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | fn get_bin_mut<'a>(&'a mut self, bin_id: i32) -> Result<&'a mut Bin>; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 18 | fn get_bin<'a>(&'a self, bin_id: i32) -> Result<&'a Bin>; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HostFee` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:86:12 [INFO] [stdout] | [INFO] [stdout] 86 | pub struct HostFee<'c, 'info> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `host_trading_fee` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:234:12 [INFO] [stdout] | [INFO] [stdout] 232 | impl PoolFees { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 233 | /// Calculate the host trading fee in trading tokens [INFO] [stdout] 234 | pub fn host_trading_fee(&self, trading_tokens: u128) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `upscale_token_a`, `upscale_token_b`, `downscale_token_a`, and `downscale_token_b` are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:290:12 [INFO] [stdout] | [INFO] [stdout] 288 | impl TokenMultiplier { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 289 | /// Upscale the token amount using token_a_multiplier. [INFO] [stdout] 290 | pub fn upscale_token_a(&self, token_amount: u128) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub fn upscale_token_b(&self, token_amount: u128) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 299 | pub fn downscale_token_a(&self, token_amount: u128) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 303 | pub fn downscale_token_b(&self, token_amount: u128) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_none` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:321:12 [INFO] [stdout] | [INFO] [stdout] 319 | impl DepegType { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 320 | /// Check whether the pool is a depeg pool or not [INFO] [stdout] 321 | pub fn is_none(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CONSTANT_PRODUCT_TRADE_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | pub const CONSTANT_PRODUCT_TRADE_FEE_NUMERATOR: u64 = 250; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STABLE_SWAP_TRADE_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:18:15 [INFO] [stdout] | [INFO] [stdout] 18 | pub const STABLE_SWAP_TRADE_FEE_NUMERATOR: u64 = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CONSTANT_PRODUCT_PROTOCOL_TRADE_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:23:15 [INFO] [stdout] | [INFO] [stdout] 23 | pub const CONSTANT_PRODUCT_PROTOCOL_TRADE_FEE_NUMERATOR: u64 = 0; // Set all protocol fees to zero, we will enable later when we have... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STABLE_SWAP_PROTOCOL_TRADE_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:28:15 [INFO] [stdout] | [INFO] [stdout] 28 | pub const STABLE_SWAP_PROTOCOL_TRADE_FEE_NUMERATOR: u64 = 0; // Set all protocol fees to zero, we will enable later when we have ve(3... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HOST_TRADE_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:32:15 [INFO] [stdout] | [INFO] [stdout] 32 | pub const HOST_TRADE_FEE_NUMERATOR: u64 = 20000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEE_DENOMINATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:35:15 [INFO] [stdout] | [INFO] [stdout] 35 | pub const FEE_DENOMINATOR: u64 = 100000; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_FEE_BPS` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:37:15 [INFO] [stdout] | [INFO] [stdout] 37 | pub const MAX_FEE_BPS: u64 = 1500; // 15% [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_BASIS_POINT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:39:15 [INFO] [stdout] | [INFO] [stdout] 39 | pub const MAX_BASIS_POINT: u64 = 10000; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEME_MIN_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:42:15 [INFO] [stdout] | [INFO] [stdout] 42 | pub const MEME_MIN_FEE_NUMERATOR: u64 = 250; // 250 / FEE_DENOMINATOR = 0.25% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEME_MAX_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:43:15 [INFO] [stdout] | [INFO] [stdout] 43 | pub const MEME_MAX_FEE_NUMERATOR: u64 = 15000; // 15_000 / FEE_DENOMINATOR = 15% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEME_MIN_FEE_BPS` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | pub const MEME_MIN_FEE_BPS: u64 = 25; // 0.25% [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEME_MAX_FEE_BPS` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:46:15 [INFO] [stdout] | [INFO] [stdout] 46 | pub const MEME_MAX_FEE_BPS: u64 = 1500; // 15% [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEME_PROTOCOL_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:48:15 [INFO] [stdout] | [INFO] [stdout] 48 | pub const MEME_PROTOCOL_FEE_NUMERATOR: u64 = 20000; // 20% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEME_MIN_FEE_UPDATE_WINDOW_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:50:15 [INFO] [stdout] | [INFO] [stdout] 50 | pub const MEME_MIN_FEE_UPDATE_WINDOW_DURATION: i64 = 60 * 30; // 30 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PARTNER_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:52:15 [INFO] [stdout] | [INFO] [stdout] 52 | pub const MAX_PARTNER_FEE_NUMERATOR: u64 = 50000; // 50% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `fee` is never read [INFO] [stdout] --> programs/flashbot-solana/src/damm/util.rs:166:9 [INFO] [stdout] | [INFO] [stdout] 162 | pub struct QuoteResult { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 166 | pub fee: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `QuoteResult` 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: constant `BASE_CACHE_EXPIRES` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/util.rs:432:15 [INFO] [stdout] | [INFO] [stdout] 432 | pub const BASE_CACHE_EXPIRES: u64 = 60 * 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PRECISION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/util.rs:434:15 [INFO] [stdout] | [INFO] [stdout] 434 | pub const PRECISION: u64 = 10_u64.pow(6_u32); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_max_base_fee_numerator` and `get_min_base_fee_numerator` are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/fee.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 92 | impl BaseFeeStruct { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] 93 | pub fn get_max_base_fee_numerator(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn get_min_base_fee_numerator(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `get_delta_bin_id`, `update_volatility_accumulator`, and `update_references` are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/fee.rs:231:12 [INFO] [stdout] | [INFO] [stdout] 228 | impl DynamicFeeStruct { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 231 | pub fn get_delta_bin_id( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 249 | pub fn update_volatility_accumulator(&mut self, sqrt_price: u128) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | pub fn update_references( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `fees_on_token_a` is never read [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/fee.rs:318:9 [INFO] [stdout] | [INFO] [stdout] 316 | pub struct FeeMode { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 317 | pub fees_on_input: bool, [INFO] [stdout] 318 | pub fees_on_token_a: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FeeMode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `increase_position`, `reduce_position`, and `accumulate_fee` are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/pool.rs:152:12 [INFO] [stdout] | [INFO] [stdout] 151 | impl PoolMetrics { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 152 | pub fn increase_position(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn reduce_position(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn accumulate_fee( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/pool.rs:216:12 [INFO] [stdout] | [INFO] [stdout] 213 | impl RewardInfo { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn initialized(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn init_reward( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | pub fn update_rewards(&mut self, liquidity_supply: u128, current_time: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 267 | pub fn update_last_update_time(&mut self, current_time: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn get_seconds_elapsed_since_last_update(&self, current_time: u64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn calculate_reward_per_token_stored_since_last_update( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub fn accumulate_reward_per_token_stored(&mut self, delta: U256) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 302 | pub fn reward_per_token_stored(&self) -> U256 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 307 | pub fn update_rate_after_funding( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/pool.rs:341:12 [INFO] [stdout] | [INFO] [stdout] 340 | impl Pool { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 341 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 382 | pub fn pool_reward_initialized(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 506 | pub fn apply_swap_result( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 552 | pub fn get_amounts_for_modify_liquidity( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 578 | pub fn apply_add_liquidity( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 594 | pub fn apply_remove_liquidity( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 610 | pub fn get_max_amount_in(&self, trade_direction: TradeDirection) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 632 | pub fn update_pre_swap(&mut self, current_timestamp: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 641 | pub fn update_post_swap(&mut self, old_sqrt_price: u128, current_timestamp: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 660 | pub fn accumulate_permanent_locked_liquidity( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 671 | pub fn claim_protocol_fee( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 683 | pub fn claim_partner_fee( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 696 | pub fn update_rewards(&mut self, current_time: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 705 | pub fn claim_ineligible_reward(&mut self, reward_index: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 721 | pub fn fee_a_per_liquidity(&self) -> U256 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 725 | pub fn fee_b_per_liquidity(&self) -> U256 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ModifyLiquidityResult` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/pool.rs:761:12 [INFO] [stdout] | [INFO] [stdout] 761 | pub struct ModifyLiquidityResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update_rewards` and `reward_per_token_checkpoint` are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/position.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl UserRewardInfo { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] 25 | pub fn update_rewards( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn reward_per_token_checkpoint(&self) -> U256 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `accumulate_claimed_fee` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/position.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 87 | impl PositionMetrics { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] 88 | pub fn accumulate_claimed_fee( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/position.rs:100:12 [INFO] [stdout] | [INFO] [stdout] 99 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 100 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn has_sufficient_liquidity(&self, liquidity: u128) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn get_total_liquidity(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn lock(&mut self, total_lock_liquidity: u128) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn permanent_lock_liquidity(&mut self, permanent_lock_liquidity: u128) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn update_fee( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub fn release_vested_liquidity(&mut self, released_liquidity: u128) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn add_liquidity(&mut self, liquidity_delta: u128) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn remove_unlocked_liquidity(&mut self, liquidity_delta: u128) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn reset_pending_fee(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 199 | pub fn update_rewards(&mut self, pool: &mut RefMut<'_, Pool>, current_time: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | fn get_total_reward(&self, reward_index: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | fn accumulate_total_claimed_rewards(&mut self, reward_index: usize, reward: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | pub fn claim_reward(&mut self, reward_index: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 242 | pub fn reset_all_pending_reward(&mut self, reward_index: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 246 | pub fn fee_a_per_token_checkpoint(&self) -> U256 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 249 | pub fn fee_b_per_token_checkpoint(&self) -> U256 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 253 | pub fn is_empty(&self) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_SQRT_PRICE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const MIN_SQRT_PRICE: u128 = 4295048016; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_SQRT_PRICE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const MAX_SQRT_PRICE: u128 = 79226673521066979257578248091; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BIN_STEP_BPS_DEFAULT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const BIN_STEP_BPS_DEFAULT: u16 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BIN_STEP_BPS_U128_DEFAULT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const BIN_STEP_BPS_U128_DEFAULT: u128 = 1844674407370955; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `U24_MAX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const U24_MAX: u32 = 0xffffff; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_REWARD_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const MIN_REWARD_DURATION: u64 = 24 * 60 * 60; // 1 day [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_REWARD_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const MAX_REWARD_DURATION: u64 = 31536000; // 1 year = 365 * 24 * 3600 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SOL` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:125:7 [INFO] [stdout] | [INFO] [stdout] 125 | const SOL: Pubkey = pubkey!("So11111111111111111111111111111111111111112"); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USDC` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:126:7 [INFO] [stdout] | [INFO] [stdout] 126 | const USDC: Pubkey = pubkey!("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_QUOTE_MINTS` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:127:11 [INFO] [stdout] | [INFO] [stdout] 127 | pub const DEFAULT_QUOTE_MINTS: [Pubkey; 2] = [SOL, USDC]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SLOT_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:41:15 [INFO] [stdout] | [INFO] [stdout] 41 | pub const SLOT_BUFFER: u64 = 9000; // 1 slot = 400 mls => 1 hour [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TIME_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:46:15 [INFO] [stdout] | [INFO] [stdout] 46 | pub const TIME_BUFFER: u64 = 3600; // 1 hour [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_ACTIVATION_SLOT_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:51:15 [INFO] [stdout] | [INFO] [stdout] 51 | pub const MAX_ACTIVATION_SLOT_DURATION: u64 = SLOT_BUFFER * 24 * 31; // 31 days [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_ACTIVATION_TIME_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:56:15 [INFO] [stdout] | [INFO] [stdout] 56 | pub const MAX_ACTIVATION_TIME_DURATION: u64 = TIME_BUFFER * 24 * 31; // 31 days [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_VESTING_SLOT_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:60:15 [INFO] [stdout] | [INFO] [stdout] 60 | pub const MAX_VESTING_SLOT_DURATION: u64 = SLOT_BUFFER * 24 * 365 * 10; // 10 years [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_VESTING_TIME_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:61:15 [INFO] [stdout] | [INFO] [stdout] 61 | pub const MAX_VESTING_TIME_DURATION: u64 = TIME_BUFFER * 24 * 365 * 10; // 10 years [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIVE_MINUTES_SLOT_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:63:15 [INFO] [stdout] | [INFO] [stdout] 63 | pub const FIVE_MINUTES_SLOT_BUFFER: u64 = SLOT_BUFFER / 12; // 5 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIVE_MINUTES_TIME_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:65:15 [INFO] [stdout] | [INFO] [stdout] 65 | pub const FIVE_MINUTES_TIME_BUFFER: u64 = TIME_BUFFER / 12; // 5 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_FEE_CURVE_TIME_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:67:15 [INFO] [stdout] | [INFO] [stdout] 67 | pub const MAX_FEE_CURVE_TIME_DURATION: u64 = 3600 * 24; // 1 day [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_FEE_CURVE_SLOT_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:68:15 [INFO] [stdout] | [INFO] [stdout] 68 | pub const MAX_FEE_CURVE_SLOT_DURATION: u64 = 9000 * 24; // 1 day [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_HIGH_TAX_TIME_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:70:15 [INFO] [stdout] | [INFO] [stdout] 70 | pub const MAX_HIGH_TAX_TIME_DURATION: u64 = TIME_BUFFER / 6; // 10 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_HIGH_TAX_SLOT_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:71:15 [INFO] [stdout] | [INFO] [stdout] 71 | pub const MAX_HIGH_TAX_SLOT_DURATION: u64 = SLOT_BUFFER / 6; // 10 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CUSTOMIZABLE_PROTOCOL_FEE_PERCENT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:100:15 [INFO] [stdout] | [INFO] [stdout] 100 | pub const CUSTOMIZABLE_PROTOCOL_FEE_PERCENT: u8 = 20; // 20% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CUSTOMIZABLE_HOST_FEE_PERCENT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:102:15 [INFO] [stdout] | [INFO] [stdout] 102 | pub const CUSTOMIZABLE_HOST_FEE_PERCENT: u8 = 20; // 20% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CONFIG_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:106:15 [INFO] [stdout] | [INFO] [stdout] 106 | pub const CONFIG_PREFIX: &[u8] = b"config"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CUSTOMIZABLE_POOL_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:107:15 [INFO] [stdout] | [INFO] [stdout] 107 | pub const CUSTOMIZABLE_POOL_PREFIX: &[u8] = b"cpool"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:108:15 [INFO] [stdout] | [INFO] [stdout] 108 | pub const POOL_PREFIX: &[u8] = b"pool"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOKEN_VAULT_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:109:15 [INFO] [stdout] | [INFO] [stdout] 109 | pub const TOKEN_VAULT_PREFIX: &[u8] = b"token_vault"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_AUTHORITY_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:110:15 [INFO] [stdout] | [INFO] [stdout] 110 | pub const POOL_AUTHORITY_PREFIX: &[u8] = b"pool_authority"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POSITION_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:111:15 [INFO] [stdout] | [INFO] [stdout] 111 | pub const POSITION_PREFIX: &[u8] = b"position"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POSITION_NFT_ACCOUNT_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:112:15 [INFO] [stdout] | [INFO] [stdout] 112 | pub const POSITION_NFT_ACCOUNT_PREFIX: &[u8] = b"position_nft_account"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOKEN_BADGE_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:113:15 [INFO] [stdout] | [INFO] [stdout] 113 | pub const TOKEN_BADGE_PREFIX: &[u8] = b"token_badge"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REWARD_VAULT_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:114:15 [INFO] [stdout] | [INFO] [stdout] 114 | pub const REWARD_VAULT_PREFIX: &[u8] = b"reward_vault"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLAIM_FEE_OPERATOR_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:115:15 [INFO] [stdout] | [INFO] [stdout] 115 | pub const CLAIM_FEE_OPERATOR_PREFIX: &[u8] = b"cf_operator"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ID` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:121:15 [INFO] [stdout] | [INFO] [stdout] 121 | pub const ID: Pubkey = pubkey!("4EWqcx3aNZmMetCnxwLYwyNjan6XLGp3Ca2W316vrSjv"); [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mul_shr` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/u128x128_math.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn mul_shr(x: u128, y: u128, offset: u8) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mul_shr_256` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/u128x128_math.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn mul_shr_256(x: U256, y: U256, offset: u8) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shl_div` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/u128x128_math.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn shl_div(x: u128, y: u128, offset: u8, rounding: Rounding) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shl_div_256` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/u128x128_math.rs:72:8 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn shl_div_256(x: u128, y: u128, offset: u8) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `safe_rem` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/safe_math.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait SafeMath: Sized { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 10 | fn safe_rem(self, rhs: Self) -> Result; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `safe_mul_shr_cast` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/utils_math.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn safe_mul_shr_cast(x: u128, y: u128, offset: u8) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `safe_mul_shr_256_cast` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/utils_math.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn safe_mul_shr_256_cast(x: U256, y: U256, offset: u8) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `safe_shl_div_cast` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/utils_math.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn safe_shl_div_cast( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_initialize_amounts` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/curve.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn get_initialize_amounts( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AdaptiveFeeTier` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/adaptive_fee_tier.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct AdaptiveFeeTier { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/adaptive_fee_tier.rs:36:15 [INFO] [stdout] | [INFO] [stdout] 35 | impl AdaptiveFeeTier { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 36 | pub const LEN: usize = 8 + 32 + 2 + 2 + 32 + 32 + 2 + 2 + 2 + 2 + 4 + 4 + 2 + 2 + 128; [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn update_initialize_pool_authority(&mut self, initialize_pool_authority: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn update_delegated_fee_authority(&mut self, delegated_fee_authority: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn update_default_base_fee_rate(&mut self, default_base_fee_rate: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn update_adaptive_fee_constants( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn is_valid_initialize_pool_authority(&self, initialize_pool_authority: Pubkey) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn is_permissioned(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WhirlpoolsConfig` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/config.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct WhirlpoolsConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `update_fee_authority`, `update_collect_protocol_fees_authority`, `initialize`, `update_reward_emissions_super_authority`, and `update_default_protocol_fee_rate` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/config.rs:15:15 [INFO] [stdout] | [INFO] [stdout] 14 | impl WhirlpoolsConfig { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 15 | pub const LEN: usize = 8 + 96 + 4; [INFO] [stdout] | ^^^ [INFO] [stdout] 16 | [INFO] [stdout] 17 | pub fn update_fee_authority(&mut self, fee_authority: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn update_collect_protocol_fees_authority( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn update_reward_emissions_super_authority( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn update_default_protocol_fee_rate( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WhirlpoolsConfigExtension` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/config_extension.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct WhirlpoolsConfigExtension { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, `update_config_extension_authority`, and `update_token_badge_authority` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/config_extension.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 11 | impl WhirlpoolsConfigExtension { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 12 | pub const LEN: usize = 8 + 32 + 32 + 32 + 512; [INFO] [stdout] | ^^^ [INFO] [stdout] 13 | [INFO] [stdout] 14 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn update_config_extension_authority(&mut self, config_extension_authority: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn update_token_badge_authority(&mut self, token_badge_authority: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `MIN_LEN` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/dynamic_tick_array.rs:85:15 [INFO] [stdout] | [INFO] [stdout] 84 | impl DynamicTickArray { [INFO] [stdout] | --------------------- associated constant in this implementation [INFO] [stdout] 85 | pub const MIN_LEN: usize = DynamicTickArray::DISCRIMINATOR.len() [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `initialize` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/dynamic_tick_array.rs:142:12 [INFO] [stdout] | [INFO] [stdout] 119 | impl DynamicTickArrayLoader { [INFO] [stdout] | --------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 142 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FeeTier` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/fee_tier.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct FeeTier { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, and `update_default_fee_rate` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/fee_tier.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 12 | impl FeeTier { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 13 | pub const LEN: usize = 8 + 32 + 4; [INFO] [stdout] | ^^^ [INFO] [stdout] 14 | [INFO] [stdout] 15 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn update_default_fee_rate(&mut self, default_fee_rate: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN` and `initialize` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/fixed_tick_array.rs:35:15 [INFO] [stdout] | [INFO] [stdout] 34 | impl TickArray { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 35 | pub const LEN: usize = 8 + 36 + (Tick::LEN * TICK_ARRAY_SIZE_USIZE); [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TickArrayBuilder` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/fixed_tick_array.rs:181:16 [INFO] [stdout] | [INFO] [stdout] 181 | pub struct TickArrayBuilder(TickArray); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `start_tick_index`, `whirlpool`, `tick`, `tick_with_offset`, `ticks`, and `build` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/fixed_tick_array.rs:184:16 [INFO] [stdout] | [INFO] [stdout] 183 | impl TickArrayBuilder { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] 184 | pub fn start_tick_index(mut self, start_tick_index: i32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn whirlpool(mut self, whirlpool: Pubkey) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn tick(mut self, tick: Tick, tick_index: i32, tick_spacing: u16) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | pub fn tick_with_offset(mut self, tick: Tick, offset: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn ticks(mut self, ticks: [Tick; TICK_ARRAY_SIZE_USIZE]) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | pub fn build(self) -> TickArray { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LockConfig` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/lock_config.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct LockConfig { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `LockType` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/lock_config.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum LockType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `LockTypeLabel` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/lock_config.rs:27:10 [INFO] [stdout] | [INFO] [stdout] 27 | pub enum LockTypeLabel { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, and `update_position_owner` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/lock_config.rs:32:15 [INFO] [stdout] | [INFO] [stdout] 31 | impl LockConfig { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 32 | pub const LEN: usize = 8 + 32 + 32 + 32 + 8 + 1 + 128; [INFO] [stdout] | ^^^ [INFO] [stdout] 33 | [INFO] [stdout] 34 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn update_position_owner(&mut self, position_owner: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_TRADE_ENABLE_TIMESTAMP_DELTA` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/oracle.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const MAX_TRADE_ENABLE_TIMESTAMP_DELTA: u64 = 60 * 60 * 72; // 72 hours [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `validate_constants` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/oracle.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 55 | impl AdaptiveFeeConstants { [INFO] [stdout] | ------------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn validate_constants( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `initialize`, `initialize_adaptive_fee_constants`, `update_adaptive_fee_variables`, and `reset_adaptive_fee_variables` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/oracle.rs:281:12 [INFO] [stdout] | [INFO] [stdout] 277 | impl Oracle { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 281 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 314 | pub fn initialize_adaptive_fee_constants( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 337 | pub fn update_adaptive_fee_variables(&mut self, variables: AdaptiveFeeVariables) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 341 | fn reset_adaptive_fee_variables(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update_adaptive_fee_variables` and `load_mut` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/oracle.rs:385:12 [INFO] [stdout] | [INFO] [stdout] 351 | impl<'info> OracleAccessor<'info> { [INFO] [stdout] | --------------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 385 | pub fn update_adaptive_fee_variables( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 464 | fn load_mut(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OpenPositionBumps` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct OpenPositionBumps { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OpenPositionWithMetadataBumps` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct OpenPositionWithMetadataBumps { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Position` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct Position { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:38:15 [INFO] [stdout] | [INFO] [stdout] 37 | impl Position { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 38 | pub const LEN: usize = 8 + 136 + 72; [INFO] [stdout] | ^^^ [INFO] [stdout] 39 | [INFO] [stdout] 40 | pub fn is_position_empty(position: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn update(&mut self, update: &PositionUpdate) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn open_position( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn reset_fees_owed(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn update_reward_owed(&mut self, index: usize, amount_owed: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn reset_position_range( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_tick_range_for_whirlpool` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:123:4 [INFO] [stdout] | [INFO] [stdout] 123 | fn validate_tick_range_for_whirlpool( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PositionRewardInfo` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 149 | pub struct PositionRewardInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PositionUpdate` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:156:12 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct PositionUpdate { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POSITION_BITMAP_USIZE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position_bundle.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub const POSITION_BITMAP_USIZE: usize = 32; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POSITION_BUNDLE_SIZE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position_bundle.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const POSITION_BUNDLE_SIZE: u16 = 8 * POSITION_BITMAP_USIZE as u16; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PositionBundle` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position_bundle.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct PositionBundle { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position_bundle.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 15 | impl PositionBundle { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 16 | pub const LEN: usize = 8 + 32 + 32 + 64; [INFO] [stdout] | ^^^ [INFO] [stdout] 17 | [INFO] [stdout] 18 | pub fn initialize(&mut self, position_bundle_mint: Pubkey) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn is_deletable(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn open_bundled_position(&mut self, bundle_index: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn close_bundled_position(&mut self, bundle_index: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | fn update_bitmap(&mut self, bundle_index: u16, open: bool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | fn is_valid_bundle_index(bundle_index: u16) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `full_range_indexes`, and `bound_tick_index` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/tick.rs:41:15 [INFO] [stdout] | [INFO] [stdout] 40 | impl Tick { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 41 | pub const LEN: usize = 113; [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn full_range_indexes(tick_spacing: u16) -> (i32, i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | pub fn bound_tick_index(tick_index: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_variable_size` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/tick_array.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub trait TickArrayType { [INFO] [stdout] | ------------- method in this trait [INFO] [stdout] 21 | fn is_variable_size(&self) -> bool; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `LoadedTickArray` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/tick_array.rs:99:10 [INFO] [stdout] | [INFO] [stdout] 99 | pub type LoadedTickArray<'a> = Ref<'a, dyn TickArrayType>; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TickArraysMut` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/tick_array.rs:181:12 [INFO] [stdout] | [INFO] [stdout] 181 | pub struct TickArraysMut<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `deref` and `deref_mut` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/tick_array.rs:204:12 [INFO] [stdout] | [INFO] [stdout] 186 | impl<'a> TickArraysMut<'a> { [INFO] [stdout] | -------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn deref(&self) -> (&dyn TickArrayType, &dyn TickArrayType) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 220 | pub fn deref_mut(&mut self) -> (&mut dyn TickArrayType, Option<&mut dyn TickArrayType>) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `to_reward_growths` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 78 | impl WhirlpoolRewardInfo { [INFO] [stdout] | ------------------------ associated functions in this implementation [INFO] [stdout] 79 | /// Creates a new `WhirlpoolRewardInfo` with the authority set [INFO] [stdout] 80 | pub fn new(authority: Pubkey) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn to_reward_growths( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WhirlpoolBumps` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 106 | pub struct WhirlpoolBumps { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WhirlpoolBuilder` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:128:16 [INFO] [stdout] | [INFO] [stdout] 128 | pub struct WhirlpoolBuilder { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:142:16 [INFO] [stdout] | [INFO] [stdout] 141 | impl WhirlpoolBuilder { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 142 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn liquidity(mut self, liquidity: u128) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 154 | pub fn reward_last_updated_timestamp(mut self, reward_last_updated_timestamp: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn reward_info(mut self, index: usize, reward_info: WhirlpoolRewardInfo) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 164 | pub fn reward_infos(mut self, reward_infos: [WhirlpoolRewardInfo; NUM_REWARDS]) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 169 | pub fn tick_spacing(mut self, tick_spacing: u16) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 174 | pub fn tick_current_index(mut self, tick_current_index: i32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn sqrt_price(mut self, sqrt_price: u128) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn fee_growth_global_a(mut self, fee_growth_global_a: u128) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn fee_growth_global_b(mut self, fee_growth_global_b: u128) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn fee_rate(mut self, fee_rate: u16) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 199 | pub fn protocol_fee_rate(mut self, protocol_fee_rate: u16) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn build(self) -> Whirlpool { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TO_Q64` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/bit_math.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const TO_Q64: u128 = 1u128 << Q64_RESOLUTION; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `checked_mul_shift_right` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/bit_math.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn checked_mul_shift_right(n0: u128, n1: u128) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `checked_mul_shift_right_round_up_if` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/bit_math.rs:39:8 [INFO] [stdout] | [INFO] [stdout] 39 | pub fn checked_mul_shift_right_round_up_if( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `div_round_up` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/bit_math.rs:64:8 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn div_round_up(n: u128, d: u128) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convert_to_liquidity_delta` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/liquidity_math.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn convert_to_liquidity_delta( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FULL_RANGE_ONLY_TICK_SPACING_THRESHOLD` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/tick_math.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const FULL_RANGE_ONLY_TICK_SPACING_THRESHOLD: u16 = 32768; // 2^15 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_FEE_RATE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/token_math.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const MAX_FEE_RATE: u16 = 60_000; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PROTOCOL_FEE_RATE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/token_math.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const MAX_PROTOCOL_FEE_RATE: u16 = 2_500; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `eq`, `lt`, `gt`, `gte`, and `get_add_inverse` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/u256_math.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl U256Muldiv { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 144 | pub fn eq(&self, other: U256Muldiv) -> bool { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 154 | pub fn lt(&self, other: U256Muldiv) -> bool { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn gt(&self, other: U256Muldiv) -> bool { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 190 | pub fn gte(&self, other: U256Muldiv) -> bool { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn get_add_inverse(&self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `verify_position_authority` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/shared.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn verify_position_authority( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `verify_position_authority_interface` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/shared.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn verify_position_authority_interface( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_owner` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/shared.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn validate_owner(expected_owner: &Pubkey, owner_account_info: &AccountInfo) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/swap_tick_sequence.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl<'a> SwapTickSequence<'a> { [INFO] [stdout] | ----------------------------- associated function in this implementation [INFO] [stdout] 13 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `transfer_fee` is never read [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct TransferFeeIncludedAmount { [INFO] [stdout] | ------------------------- field in this struct [INFO] [stdout] 21 | pub amount: u64, [INFO] [stdout] 22 | pub transfer_fee: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TransferFeeIncludedAmount` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `transfer_fee` is never read [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct TransferFeeExcludedAmount { [INFO] [stdout] | ------------------------- field in this struct [INFO] [stdout] 27 | pub amount: u64, [INFO] [stdout] 28 | pub transfer_fee: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TransferFeeExcludedAmount` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:51:22 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn load_init(&self) -> Result> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 51 | pub fn load_init(&self) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:100:17 [INFO] [stdout] | [INFO] [stdout] 100 | pub fn load(&self) -> Result> { [INFO] [stdout] | ^^^^^ ^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 100 | pub fn load(&self) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:117:21 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn load_mut(&self) -> Result> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 117 | pub fn load_mut(&self) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `amount_out` is never read [INFO] [stdout] --> programs/flashbot-solana/src/utils.rs:365:26 [INFO] [stdout] | [INFO] [stdout] 365 | let mut amount_out = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: std::result::Result [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:245:13 [INFO] [stdout] | [INFO] [stdout] 245 | u128::try_from(self.trade_fee_numerator).ok()?, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-D unmustuse-in-always-ok` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: std::result::Result [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:246:13 [INFO] [stdout] | [INFO] [stdout] 246 | u128::try_from(self.trade_fee_denominator).ok()?, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: std::result::Result [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:254:13 [INFO] [stdout] | [INFO] [stdout] 254 | u128::try_from(self.protocol_trade_fee_numerator).ok()?, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: std::result::Result [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:255:13 [INFO] [stdout] | [INFO] [stdout] 255 | u128::try_from(self.protocol_trade_fee_denominator).ok()?, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `destination_mint` [INFO] [stdout] --> programs/flashbot-solana/src/utils.rs:741:5 [INFO] [stdout] | [INFO] [stdout] 741 | destination_mint: &'a AccountInfo<'a>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_destination_mint` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token_program` [INFO] [stdout] --> programs/flashbot-solana/src/lib.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | let token_program = next_account_info(&mut remaining_accounts_iter)?;; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_program` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `into_u64`, `valid_status`, `deposit_permission`, `withdraw_permission`, and `swap_permission` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl AmmStatus { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn into_u64(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn valid_status(status: u64) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn deposit_permission(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn withdraw_permission(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn swap_permission(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AmmState` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:120:10 [INFO] [stdout] | [INFO] [stdout] 120 | pub enum AmmState { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_u64`, `into_u64`, and `valid_state` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:130:12 [INFO] [stdout] | [INFO] [stdout] 129 | impl AmmState { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 130 | pub fn from_u64(state: u64) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn into_u64(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 154 | pub fn valid_state(state: u64) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `load` and `load_from_bytes` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:304:8 [INFO] [stdout] | [INFO] [stdout] 297 | pub trait Loadable: Pod { [INFO] [stdout] | -------- associated functions in this trait [INFO] [stdout] ... [INFO] [stdout] 304 | fn load<'a>(account: &'a AccountInfo) -> Result, ProgramError> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 310 | fn load_from_bytes(data: &[u8]) -> Result<&Self, ProgramError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `load_checked` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:332:12 [INFO] [stdout] | [INFO] [stdout] 315 | impl AmmInfo { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 332 | pub fn load_checked<'a>( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PoolInfo` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:350:12 [INFO] [stdout] | [INFO] [stdout] 350 | pub struct PoolInfo { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `swap_token_amount_base_out` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:451:12 [INFO] [stdout] | [INFO] [stdout] 412 | impl Calculator { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 451 | pub fn swap_token_amount_base_out( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MarketState` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium/states.rs:513:12 [INFO] [stdout] | [INFO] [stdout] 513 | pub struct MarketState { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_amount_in` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/utils.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn get_amount_in(amount_out: u64, raydium_accounts: Vec<&AccountInfo>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `invoke_swap_base_out` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium/processor.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Processor { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn invoke_swap_base_out( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const POOL_SEED: &str = "pool"; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_LP_MINT_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const POOL_LP_MINT_SEED: &str = "pool_lp_mint"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_VAULT_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const POOL_VAULT_SEED: &str = "pool_vault"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PoolStatusBitIndex` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | pub enum PoolStatusBitIndex { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PoolStatusBitFlag` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | pub enum PoolStatusBitFlag { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, `set_status`, `set_status_by_bit`, and `get_status_by_bit` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:82:15 [INFO] [stdout] | [INFO] [stdout] 81 | impl PoolState { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 82 | pub const LEN: usize = 8 + 10 * 32 + 1 * 5 + 8 * 7 + 8 * 31; [INFO] [stdout] | ^^^ [INFO] [stdout] 83 | [INFO] [stdout] 84 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn set_status(&mut self, status: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn set_status_by_bit(&mut self, bit: PoolStatusBitIndex, flag: PoolStatusBitFlag) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn get_status_by_bit(&self, bit: PoolStatusBitIndex) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AMM_CONFIG_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:162:11 [INFO] [stdout] | [INFO] [stdout] 162 | pub const AMM_CONFIG_SEED: &str = "amm_config"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `LEN` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/state.rs:191:15 [INFO] [stdout] | [INFO] [stdout] 190 | impl AmmConfig { [INFO] [stdout] | -------------- associated constant in this implementation [INFO] [stdout] 191 | pub const LEN: usize = 8 + 1 + 1 + 2 + 4 * 8 + 32 * 2 + 8 * 16; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_transfer_inverse_fee` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/utils.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn get_transfer_inverse_fee(mint_info: &AccountInfo, post_fee_amount: u64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_amount_base_out` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/utils.rs:145:8 [INFO] [stdout] | [INFO] [stdout] 145 | pub fn get_amount_base_out( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `calculate_pre_fee_amount` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/fees.rs:53:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl Fees { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn calculate_pre_fee_amount(post_fee_amount: u128, trade_fee_rate: u64) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `swap_base_output_without_fees` and `lp_tokens_to_trading_tokens` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/constant_product.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl ConstantProductCurve { [INFO] [stdout] | ------------------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn swap_base_output_without_fees( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn lp_tokens_to_trading_tokens( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `RoundDirection` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/calculator.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | pub enum RoundDirection { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `opposite` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/calculator.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl TradeDirection { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn opposite(&self) -> TradeDirection { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TradingTokenResult` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/calculator.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct TradingTokenResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `validate_supply`, `swap_base_output`, and `lp_tokens_to_trading_tokens` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_cpmm/calculator.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 78 | impl CurveCalculator { [INFO] [stdout] | -------------------- associated functions in this implementation [INFO] [stdout] 79 | pub fn validate_supply(token_0_amount: u64, token_1_amount: u64) -> anchor_lang::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn swap_base_output( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 158 | pub fn lp_tokens_to_trading_tokens( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `fee_growth_global_x64`, `fee_amount`, `protocol_fee`, and `fund_fee` are never read [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/instructions/swap.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct SwapState { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 26 | pub fee_growth_global_x64: u128, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 27 | // the global fee of the input token [INFO] [stdout] 28 | pub fee_amount: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 29 | // amount of input token paid as protocol fee [INFO] [stdout] 30 | pub protocol_fee: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 31 | // amount of input token paid as fund fee [INFO] [stdout] 32 | pub fund_fee: u64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SwapState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AMM_CONFIG_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/config.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const AMM_CONFIG_SEED: &str = "amm_config"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OPERATION_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/operation_account.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub const OPERATION_SEED: &str = "operation"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OPERATION_SIZE_USIZE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/operation_account.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const OPERATION_SIZE_USIZE: usize = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_MINT_SIZE_USIZE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/operation_account.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const WHITE_MINT_SIZE_USIZE: usize = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OperationState` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/operation_account.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct OperationState { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/operation_account.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 21 | impl OperationState { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 22 | pub const LEN: usize = 8 + 1 + 32 * OPERATION_SIZE_USIZE + 32 * WHITE_MINT_SIZE_USIZE; [INFO] [stdout] | ^^^ [INFO] [stdout] 23 | pub fn initialize(&mut self, bump: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn validate_operation_owner(&self, owner: Pubkey) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn validate_whitelist_mint(&self, mint: Pubkey) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn update_operation_owner(&mut self, keys: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn remove_operation_owner(&mut self, keys: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn update_whitelist_mint(&mut self, keys: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn remove_whitelist_mint(&mut self, keys: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OBSERVATION_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/oracle.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const OBSERVATION_SEED: &str = "observation"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OBSERVATION_NUM` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/oracle.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const OBSERVATION_NUM: usize = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OBSERVATION_UPDATE_DURATION_DEFAULT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/oracle.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const OBSERVATION_UPDATE_DURATION_DEFAULT: u32 = 15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Observation` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/oracle.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct Observation { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `LEN` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/oracle.rs:26:15 [INFO] [stdout] | [INFO] [stdout] 25 | impl Observation { [INFO] [stdout] | ---------------- associated constant in this implementation [INFO] [stdout] 26 | pub const LEN: usize = 4 + 8 + 8 * 4; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ObservationState` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/oracle.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct ObservationState { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, and `update` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/oracle.rs:62:15 [INFO] [stdout] | [INFO] [stdout] 61 | impl ObservationState { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 62 | pub const LEN: usize = 8 + 1 + 8 + 2 + 32 + (Observation::LEN * OBSERVATION_NUM) + 8 * 4; [INFO] [stdout] | ^^^ [INFO] [stdout] 63 | [INFO] [stdout] 64 | pub fn initialize(&mut self, pool_id: Pubkey) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn update(&mut self, block_timestamp: u32, tick: i32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_VAULT_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const POOL_VAULT_SEED: &str = "pool_vault"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_REWARD_VAULT_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const POOL_REWARD_VAULT_SEED: &str = "pool_reward_vault"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_TICK_ARRAY_BITMAP_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const POOL_TICK_ARRAY_BITMAP_SEED: &str = "pool_tick_array_bitmap_extension"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `OpenPositionOrIncreaseLiquidity`, `DecreaseLiquidity`, `CollectFee`, and `CollectReward` are never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub enum PoolStatusBitIndex { [INFO] [stdout] | ------------------ variants in this enum [INFO] [stdout] 34 | OpenPositionOrIncreaseLiquidity, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 35 | DecreaseLiquidity, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 36 | CollectFee, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 37 | CollectReward, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PoolStatusBitFlag` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:42:10 [INFO] [stdout] | [INFO] [stdout] 42 | pub enum PoolStatusBitFlag { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `update_reward_infos`, `check_unclaimed_reward`, `add_reward_clamed`, and `get_tick_array_offset` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:141:15 [INFO] [stdout] | [INFO] [stdout] 140 | impl PoolState { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 141 | pub const LEN: usize = 8 [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 335 | pub fn update_reward_infos(&mut self, curr_timestamp: u64) -> Result<[RewardInfo; REWARD_NUM]> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 412 | pub fn check_unclaimed_reward(&self, index: usize, reward_amount_owed: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 422 | pub fn add_reward_clamed(&mut self, index: usize, amount: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 431 | pub fn get_tick_array_offset(&self, tick_array_start_index: i32) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `RewardState` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:610:10 [INFO] [stdout] | [INFO] [stdout] 610 | pub enum RewardState { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `new`, `initialized`, and `get_reward_growths` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:651:15 [INFO] [stdout] | [INFO] [stdout] 650 | impl RewardInfo { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 651 | pub const LEN: usize = 1 + 8 + 8 + 8 + 16 + 8 + 8 + 32 + 32 + 32 + 16; [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 654 | pub fn new(authority: Pubkey) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 663 | pub fn initialized(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 667 | pub fn get_reward_growths(reward_infos: &[RewardInfo; REWARD_NUM]) -> [u128; REWARD_NUM] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PoolCreatedEvent` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:680:12 [INFO] [stdout] | [INFO] [stdout] 680 | pub struct PoolCreatedEvent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CollectProtocolFeeEvent` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:708:12 [INFO] [stdout] | [INFO] [stdout] 708 | pub struct CollectProtocolFeeEvent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SwapEvent` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:728:12 [INFO] [stdout] | [INFO] [stdout] 728 | pub struct SwapEvent { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LiquidityChangeEvent` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:771:12 [INFO] [stdout] | [INFO] [stdout] 771 | pub struct LiquidityChangeEvent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_REWARD_PERIOD` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:28:15 [INFO] [stdout] | [INFO] [stdout] 28 | pub const MIN_REWARD_PERIOD: u64 = 7 * 24 * 60 * 60; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_REWARD_PERIOD` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:29:15 [INFO] [stdout] | [INFO] [stdout] 29 | pub const MAX_REWARD_PERIOD: u64 = 90 * 24 * 60 * 60; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INCREASE_EMISSIONES_PERIOD` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/pool.rs:30:15 [INFO] [stdout] | [INFO] [stdout] 30 | pub const INCREASE_EMISSIONES_PERIOD: u64 = 72 * 60 * 60; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SUPPORT_MINT_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/support_mint_associated.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub const SUPPORT_MINT_SEED: &str = "support_mint"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SupportMintAssociated` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/support_mint_associated.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct SupportMintAssociated { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN` and `initialize` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/support_mint_associated.rs:17:15 [INFO] [stdout] | [INFO] [stdout] 16 | impl SupportMintAssociated { [INFO] [stdout] | -------------------------- associated items in this implementation [INFO] [stdout] 17 | pub const LEN: usize = 8 + 1 + 32 + 64; [INFO] [stdout] | ^^^ [INFO] [stdout] 18 | [INFO] [stdout] 19 | pub fn initialize<'info>(&mut self, bump: u8, mint: Pubkey) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TICK_ARRAY_SEED` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const TICK_ARRAY_SEED: &str = "tick_array"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:30:15 [INFO] [stdout] | [INFO] [stdout] 29 | impl TickArrayState { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 30 | pub const LEN: usize = 8 + 32 + 4 + TickState::LEN * TICK_ARRAY_SIZE_USIZE + 1 + 115; [INFO] [stdout] | ^^^ [INFO] [stdout] 31 | [INFO] [stdout] 32 | pub fn key(&self) -> Pubkey { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn get_or_create_tick_array<'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | pub fn update_initialized_tick_count(&mut self, add: bool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn get_tick_state_mut( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn update_tick_state( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | fn get_tick_offset_in_array(self, tick_index: i32, tick_spacing: u16) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 217 | pub fn next_tick_arrary_start_index(&self, tick_spacing: u16, zero_for_one: bool) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, `update`, `cross`, and `clear` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:289:15 [INFO] [stdout] | [INFO] [stdout] 288 | impl TickState { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 289 | pub const LEN: usize = 4 + 16 + 16 + 16 + 16 + 16 * REWARD_NUM + 16 + 16 + 8 + 8 + 4; [INFO] [stdout] | ^^^ [INFO] [stdout] 290 | [INFO] [stdout] 291 | pub fn initialize(&mut self, tick: i32, tick_spacing: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 303 | pub fn update( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 343 | pub fn cross( [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 370 | pub fn clear(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_fee_growth_inside` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:392:8 [INFO] [stdout] | [INFO] [stdout] 392 | pub fn get_fee_growth_inside( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_reward_growths_inside` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:443:8 [INFO] [stdout] | [INFO] [stdout] 443 | pub fn get_reward_growths_inside( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_tick_array_start_index` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:491:8 [INFO] [stdout] | [INFO] [stdout] 491 | pub fn check_tick_array_start_index( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_ticks_order` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tick_array.rs:512:8 [INFO] [stdout] | [INFO] [stdout] 512 | pub fn check_ticks_order(tick_lower_index: i32, tick_upper_index: i32) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, `key`, and `flip_tick_array_bit` are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/states/tickarray_bitmap_extension.rs:31:15 [INFO] [stdout] | [INFO] [stdout] 30 | impl TickArrayBitmapExtension { [INFO] [stdout] | ----------------------------- associated items in this implementation [INFO] [stdout] 31 | pub const LEN: usize = 8 + 32 + 64 * EXTENSION_TICKARRAY_BITMAP_SIZE * 2; [INFO] [stdout] | ^^^ [INFO] [stdout] 32 | [INFO] [stdout] 33 | pub fn initialize(&mut self, pool_id: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn key(pool_id: Pubkey) -> Pubkey { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn flip_tick_array_bit( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MINT_WHITELIST` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | const MINT_WHITELIST: [&'static str; 6] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `invoke_memo_instruction` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn invoke_memo_instruction<'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `transfer_from_user_to_pool_vault` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn transfer_from_user_to_pool_vault<'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `transfer_from_pool_vault_to_user` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:91:8 [INFO] [stdout] | [INFO] [stdout] 91 | pub fn transfer_from_pool_vault_to_user<'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `close_spl_account` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn close_spl_account<'a, 'b, 'c, 'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `burn` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:158:8 [INFO] [stdout] | [INFO] [stdout] 158 | pub fn burn<'a, 'b, 'c, 'info>( [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_transfer_inverse_fee` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:183:8 [INFO] [stdout] | [INFO] [stdout] 183 | pub fn get_transfer_inverse_fee( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_transfer_fee` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:219:8 [INFO] [stdout] | [INFO] [stdout] 219 | pub fn get_transfer_fee( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `support_mint_associated_is_initialized` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:240:8 [INFO] [stdout] | [INFO] [stdout] 240 | pub fn support_mint_associated_is_initialized( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_supported_mint` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:269:8 [INFO] [stdout] | [INFO] [stdout] 269 | pub fn is_supported_mint( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_position_nft_mint_with_extensions` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:300:8 [INFO] [stdout] | [INFO] [stdout] 300 | pub fn create_position_nft_mint_with_extensions<'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_token_vault_account` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/token.rs:389:8 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn create_token_vault_account<'info>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_or_allocate_account` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/system.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn create_or_allocate_account<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_recent_epoch` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/system.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn get_recent_epoch() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AccountLoad` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct AccountLoad<'info, T: ZeroCopy> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl<'info, T: ZeroCopy> AccountLoad<'info, T> { [INFO] [stdout] | ---------------------------------------------- associated items in this implementation [INFO] [stdout] 17 | fn new(acc_info: AccountInfo<'info>) -> AccountLoad<'info, T> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn try_from(acc_info: &AccountInfo<'info>) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn try_from_unchecked( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn load_init(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn load_data_mut<'a>(acc_info: &'a AccountInfo) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn load(&self) -> Result> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn load_mut(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_underflow_u64` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/full_math.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub trait MulDiv { [INFO] [stdout] | ------ method in this trait [INFO] [stdout] ... [INFO] [stdout] 27 | fn to_underflow_u64(self) -> u64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_delta` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn add_delta(x: u128, y: i128) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_liquidity_from_amount_0` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn get_liquidity_from_amount_0( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_liquidity_from_amount_1` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn get_liquidity_from_amount_1( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_liquidity_from_amounts` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn get_liquidity_from_amounts( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_liquidity_from_single_amount_0` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn get_liquidity_from_single_amount_0( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_liquidity_from_single_amount_1` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn get_liquidity_from_single_amount_1( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_delta_amount_0_signed` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:233:8 [INFO] [stdout] | [INFO] [stdout] 233 | pub fn get_delta_amount_0_signed( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_delta_amount_1_signed` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:256:8 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn get_delta_amount_1_signed( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_delta_amounts_signed` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/liquidity_math.rs:278:8 [INFO] [stdout] | [INFO] [stdout] 278 | pub fn get_delta_amounts_signed( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BIT_PRECISION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/tick_math.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const BIT_PRECISION: u32 = 16; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_tick_at_sqrt_price` is never used [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/libraries/tick_math.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | pub fn get_tick_at_sqrt_price(sqrt_price_x64: u128) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `internal_quote_without_fees` and `max_quote` are never read [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct BuyQuoteInputResult { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 11 | pub internal_quote_without_fees: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | /// 最大报价(含滑点) [INFO] [stdout] 13 | pub max_quote: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BuyQuoteInputResult` 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: struct `SellQuoteInputResult` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 115 | pub struct SellQuoteInputResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sell_quote_input_internal` is never used [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn sell_quote_input_internal( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_quote_amount_out` is never used [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:214:4 [INFO] [stdout] | [INFO] [stdout] 214 | fn calculate_quote_amount_out(quote: u64, total_fee_bps: u64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BuyBaseInputResult` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:231:12 [INFO] [stdout] | [INFO] [stdout] 231 | pub struct BuyBaseInputResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `buy_base_input_internal` is never used [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:252:8 [INFO] [stdout] | [INFO] [stdout] 252 | pub fn buy_base_input_internal( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `min_quote` and `internal_quote_amount_out` are never read [INFO] [stdout] --> programs/flashbot-solana/src/pump/util/util.rs:350:9 [INFO] [stdout] | [INFO] [stdout] 346 | pub struct SellBaseInputResult { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 350 | pub min_quote: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 351 | /// 内部报价输出(不含费用) [INFO] [stdout] 352 | pub internal_quote_amount_out: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SellBaseInputResult` 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: methods `serialize` and `try_to_vec` are never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 172 | impl LbPairAccount { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn serialize(&self, mut writer: W) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub fn try_to_vec(&self) -> std::io::Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `protocol_fee_after_host_fee`, `host_fee`, and `is_exact_out_amount` are never read [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:218:9 [INFO] [stdout] | [INFO] [stdout] 210 | pub struct SwapResult { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 218 | pub protocol_fee_after_host_fee: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 219 | /// Part of protocol fee [INFO] [stdout] 220 | pub host_fee: u64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 221 | /// Indicate whether we reach exact out amount [INFO] [stdout] 222 | pub is_exact_out_amount: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SwapResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BIN_ARRAY_BITMAP_EXTENSION_ACCOUNT_DISCM` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:240:11 [INFO] [stdout] | [INFO] [stdout] 240 | pub const BIN_ARRAY_BITMAP_EXTENSION_ACCOUNT_DISCM: [u8; 8] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BinArrayBitmapExtensionAccount` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:259:12 [INFO] [stdout] | [INFO] [stdout] 259 | pub struct BinArrayBitmapExtensionAccount(pub BinArrayBitmapExtension); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `deserialize`, `serialize`, and `try_to_vec` are never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:261:12 [INFO] [stdout] | [INFO] [stdout] 260 | impl BinArrayBitmapExtensionAccount { [INFO] [stdout] | ----------------------------------- associated items in this implementation [INFO] [stdout] 261 | pub fn deserialize(buf: &[u8]) -> std::io::Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn serialize(&self, mut writer: W) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | pub fn try_to_vec(&self) -> std::io::Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BIN_ARRAY_ACCOUNT_DISCM` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:290:11 [INFO] [stdout] | [INFO] [stdout] 290 | pub const BIN_ARRAY_ACCOUNT_DISCM: [u8; 8] = [92, 142, 92, 220, 5, 148, 70, 181]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BinArrayAccount` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:303:12 [INFO] [stdout] | [INFO] [stdout] 303 | pub struct BinArrayAccount(pub BinArray); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `deserialize`, `serialize`, and `try_to_vec` are never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/state.rs:305:12 [INFO] [stdout] | [INFO] [stdout] 304 | impl BinArrayAccount { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 305 | pub fn deserialize(buf: &[u8]) -> std::io::Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 323 | pub fn serialize(&self, mut writer: W) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 327 | pub fn try_to_vec(&self) -> std::io::Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `fee` is never read [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct SwapExactInQuote { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 14 | pub amount_out: u64, [INFO] [stdout] 15 | pub fee: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SwapExactInQuote` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SwapExactOutQuote` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct SwapExactOutQuote { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `transfer_fee` is never read [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 337 | pub struct TransferFeeExcludedAmount { [INFO] [stdout] | ------------------------- field in this struct [INFO] [stdout] 338 | pub amount: u64, [INFO] [stdout] 339 | pub transfer_fee: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TransferFeeExcludedAmount` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `calculate_out_amount` and `get_amount_in` are never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:391:8 [INFO] [stdout] | [INFO] [stdout] 386 | pub trait BinExtension { [INFO] [stdout] | ------------ associated items in this trait [INFO] [stdout] ... [INFO] [stdout] 391 | fn calculate_out_amount(&self, liquidity_share: u128) -> Result<(u64, u64)>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 403 | fn get_amount_in(amount_out: u64, price: u128, swap_for_y: bool) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `safe_mul_div_cast` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:782:8 [INFO] [stdout] | [INFO] [stdout] 782 | pub fn safe_mul_div_cast( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_bin_arrays_map` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/util.rs:792:8 [INFO] [stdout] | [INFO] [stdout] 792 | pub fn build_bin_arrays_map(bin_array_accounts: &[AccountInfo]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_BIN_PER_POSITION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const DEFAULT_BIN_PER_POSITION: usize = 70; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_RESIZE_LENGTH` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const MAX_RESIZE_LENGTH: usize = 70; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POSITION_MAX_LENGTH` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const POSITION_MAX_LENGTH: usize = 1400; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PROTOCOL_SHARE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const MAX_PROTOCOL_SHARE: u16 = 2_500; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HOST_FEE_BPS` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const HOST_FEE_BPS: u16 = 2_000; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NUM_REWARDS` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const NUM_REWARDS: usize = 2; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_REWARD_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:36:11 [INFO] [stdout] | [INFO] [stdout] 36 | pub const MIN_REWARD_DURATION: u64 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_REWARD_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const MAX_REWARD_DURATION: u64 = 31536000; // 1 year = 365 * 24 * 3600 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_OBSERVATION_LENGTH` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:40:11 [INFO] [stdout] | [INFO] [stdout] 40 | pub const DEFAULT_OBSERVATION_LENGTH: u64 = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SAMPLE_LIFETIME` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:42:11 [INFO] [stdout] | [INFO] [stdout] 42 | pub const SAMPLE_LIFETIME: u64 = 120; // 2 [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_BASE_FACTOR_STEP` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:48:11 [INFO] [stdout] | [INFO] [stdout] 48 | pub const MAX_BASE_FACTOR_STEP: u16 = 100; // 100 bps, 1% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_FEE_UPDATE_WINDOW` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:50:11 [INFO] [stdout] | [INFO] [stdout] 50 | pub const MAX_FEE_UPDATE_WINDOW: i64 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_REWARD_BIN_SPLIT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | pub const MAX_REWARD_BIN_SPLIT: usize = 15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SLOT_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | pub const SLOT_BUFFER: u64 = 9000; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TIME_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:56:11 [INFO] [stdout] | [INFO] [stdout] 56 | pub const TIME_BUFFER: u64 = 3600; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_ACTIVATION_SLOT_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:58:11 [INFO] [stdout] | [INFO] [stdout] 58 | pub const MAX_ACTIVATION_SLOT_DURATION: u64 = SLOT_BUFFER * 24 * 31; // 31 days [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_ACTIVATION_TIME_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:60:11 [INFO] [stdout] | [INFO] [stdout] 60 | pub const MAX_ACTIVATION_TIME_DURATION: u64 = TIME_BUFFER * 24 * 31; // 31 days [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIVE_MINUTES_SLOT_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:62:11 [INFO] [stdout] | [INFO] [stdout] 62 | pub const FIVE_MINUTES_SLOT_BUFFER: u64 = SLOT_BUFFER / 12; // 5 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIVE_MINUTES_TIME_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const FIVE_MINUTES_TIME_BUFFER: u64 = TIME_BUFFER / 12; // 5 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ILM_PROTOCOL_SHARE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | pub const ILM_PROTOCOL_SHARE: u16 = 2000; // 20% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_BIN_STEP` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const MAX_BIN_STEP: u16 = 400; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_BASE_FEE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | pub const MAX_BASE_FEE: u128 = 100_000_000; // 10% (10^9 * 10 / 100) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_BASE_FEE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/constants.rs:76:11 [INFO] [stdout] | [INFO] [stdout] 76 | pub const MIN_BASE_FEE: u128 = 100_000; // 0.01% (10^9 * 0.01 / 100) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `is_bin_id_within_range`, `get_bin_index_in_array`, `get_bin_array_lower_upper_bin_id`, `get_bin_mut`, and `get_bin` are never used [INFO] [stdout] --> programs/flashbot-solana/src/dlmm/bin_array.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub trait BinArrayExtension { [INFO] [stdout] | ----------------- associated items in this trait [INFO] [stdout] 10 | fn is_bin_id_within_range(&self, bin_id: i32) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | fn get_bin_index_in_array(&self, bin_id: i32) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | [INFO] [stdout] 13 | fn get_bin_array_lower_upper_bin_id(index: i32) -> Result<(i32, i32)>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | fn get_bin_mut<'a>(&'a mut self, bin_id: i32) -> Result<&'a mut Bin>; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 18 | fn get_bin<'a>(&'a self, bin_id: i32) -> Result<&'a Bin>; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HostFee` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:86:12 [INFO] [stdout] | [INFO] [stdout] 86 | pub struct HostFee<'c, 'info> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `host_trading_fee` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:234:12 [INFO] [stdout] | [INFO] [stdout] 232 | impl PoolFees { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 233 | /// Calculate the host trading fee in trading tokens [INFO] [stdout] 234 | pub fn host_trading_fee(&self, trading_tokens: u128) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `upscale_token_a`, `upscale_token_b`, `downscale_token_a`, and `downscale_token_b` are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:290:12 [INFO] [stdout] | [INFO] [stdout] 288 | impl TokenMultiplier { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 289 | /// Upscale the token amount using token_a_multiplier. [INFO] [stdout] 290 | pub fn upscale_token_a(&self, token_amount: u128) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub fn upscale_token_b(&self, token_amount: u128) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 299 | pub fn downscale_token_a(&self, token_amount: u128) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 303 | pub fn downscale_token_b(&self, token_amount: u128) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_none` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:321:12 [INFO] [stdout] | [INFO] [stdout] 319 | impl DepegType { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 320 | /// Check whether the pool is a depeg pool or not [INFO] [stdout] 321 | pub fn is_none(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CONSTANT_PRODUCT_TRADE_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | pub const CONSTANT_PRODUCT_TRADE_FEE_NUMERATOR: u64 = 250; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STABLE_SWAP_TRADE_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:18:15 [INFO] [stdout] | [INFO] [stdout] 18 | pub const STABLE_SWAP_TRADE_FEE_NUMERATOR: u64 = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CONSTANT_PRODUCT_PROTOCOL_TRADE_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:23:15 [INFO] [stdout] | [INFO] [stdout] 23 | pub const CONSTANT_PRODUCT_PROTOCOL_TRADE_FEE_NUMERATOR: u64 = 0; // Set all protocol fees to zero, we will enable later when we have... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STABLE_SWAP_PROTOCOL_TRADE_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:28:15 [INFO] [stdout] | [INFO] [stdout] 28 | pub const STABLE_SWAP_PROTOCOL_TRADE_FEE_NUMERATOR: u64 = 0; // Set all protocol fees to zero, we will enable later when we have ve(3... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HOST_TRADE_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:32:15 [INFO] [stdout] | [INFO] [stdout] 32 | pub const HOST_TRADE_FEE_NUMERATOR: u64 = 20000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FEE_DENOMINATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:35:15 [INFO] [stdout] | [INFO] [stdout] 35 | pub const FEE_DENOMINATOR: u64 = 100000; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_FEE_BPS` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:37:15 [INFO] [stdout] | [INFO] [stdout] 37 | pub const MAX_FEE_BPS: u64 = 1500; // 15% [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_BASIS_POINT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:39:15 [INFO] [stdout] | [INFO] [stdout] 39 | pub const MAX_BASIS_POINT: u64 = 10000; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEME_MIN_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:42:15 [INFO] [stdout] | [INFO] [stdout] 42 | pub const MEME_MIN_FEE_NUMERATOR: u64 = 250; // 250 / FEE_DENOMINATOR = 0.25% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEME_MAX_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:43:15 [INFO] [stdout] | [INFO] [stdout] 43 | pub const MEME_MAX_FEE_NUMERATOR: u64 = 15000; // 15_000 / FEE_DENOMINATOR = 15% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEME_MIN_FEE_BPS` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | pub const MEME_MIN_FEE_BPS: u64 = 25; // 0.25% [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEME_MAX_FEE_BPS` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:46:15 [INFO] [stdout] | [INFO] [stdout] 46 | pub const MEME_MAX_FEE_BPS: u64 = 1500; // 15% [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEME_PROTOCOL_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:48:15 [INFO] [stdout] | [INFO] [stdout] 48 | pub const MEME_PROTOCOL_FEE_NUMERATOR: u64 = 20000; // 20% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MEME_MIN_FEE_UPDATE_WINDOW_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:50:15 [INFO] [stdout] | [INFO] [stdout] 50 | pub const MEME_MIN_FEE_UPDATE_WINDOW_DURATION: i64 = 60 * 30; // 30 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PARTNER_FEE_NUMERATOR` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:52:15 [INFO] [stdout] | [INFO] [stdout] 52 | pub const MAX_PARTNER_FEE_NUMERATOR: u64 = 50000; // 50% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `fee` is never read [INFO] [stdout] --> programs/flashbot-solana/src/damm/util.rs:166:9 [INFO] [stdout] | [INFO] [stdout] 162 | pub struct QuoteResult { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 166 | pub fee: u64, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `QuoteResult` 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: constant `BASE_CACHE_EXPIRES` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/util.rs:432:15 [INFO] [stdout] | [INFO] [stdout] 432 | pub const BASE_CACHE_EXPIRES: u64 = 60 * 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PRECISION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm/util.rs:434:15 [INFO] [stdout] | [INFO] [stdout] 434 | pub const PRECISION: u64 = 10_u64.pow(6_u32); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_max_base_fee_numerator` and `get_min_base_fee_numerator` are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/fee.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 92 | impl BaseFeeStruct { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] 93 | pub fn get_max_base_fee_numerator(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn get_min_base_fee_numerator(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `get_delta_bin_id`, `update_volatility_accumulator`, and `update_references` are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/fee.rs:231:12 [INFO] [stdout] | [INFO] [stdout] 228 | impl DynamicFeeStruct { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 231 | pub fn get_delta_bin_id( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 249 | pub fn update_volatility_accumulator(&mut self, sqrt_price: u128) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | pub fn update_references( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `fees_on_token_a` is never read [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/fee.rs:318:9 [INFO] [stdout] | [INFO] [stdout] 316 | pub struct FeeMode { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 317 | pub fees_on_input: bool, [INFO] [stdout] 318 | pub fees_on_token_a: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FeeMode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `increase_position`, `reduce_position`, and `accumulate_fee` are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/pool.rs:152:12 [INFO] [stdout] | [INFO] [stdout] 151 | impl PoolMetrics { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 152 | pub fn increase_position(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn reduce_position(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn accumulate_fee( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/pool.rs:216:12 [INFO] [stdout] | [INFO] [stdout] 213 | impl RewardInfo { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn initialized(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn init_reward( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | pub fn update_rewards(&mut self, liquidity_supply: u128, current_time: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 267 | pub fn update_last_update_time(&mut self, current_time: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn get_seconds_elapsed_since_last_update(&self, current_time: u64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn calculate_reward_per_token_stored_since_last_update( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub fn accumulate_reward_per_token_stored(&mut self, delta: U256) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 302 | pub fn reward_per_token_stored(&self) -> U256 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 307 | pub fn update_rate_after_funding( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/pool.rs:341:12 [INFO] [stdout] | [INFO] [stdout] 340 | impl Pool { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 341 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 382 | pub fn pool_reward_initialized(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 506 | pub fn apply_swap_result( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 552 | pub fn get_amounts_for_modify_liquidity( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 578 | pub fn apply_add_liquidity( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 594 | pub fn apply_remove_liquidity( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 610 | pub fn get_max_amount_in(&self, trade_direction: TradeDirection) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 632 | pub fn update_pre_swap(&mut self, current_timestamp: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 641 | pub fn update_post_swap(&mut self, old_sqrt_price: u128, current_timestamp: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 660 | pub fn accumulate_permanent_locked_liquidity( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 671 | pub fn claim_protocol_fee( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 683 | pub fn claim_partner_fee( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 696 | pub fn update_rewards(&mut self, current_time: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 705 | pub fn claim_ineligible_reward(&mut self, reward_index: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 721 | pub fn fee_a_per_liquidity(&self) -> U256 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 725 | pub fn fee_b_per_liquidity(&self) -> U256 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ModifyLiquidityResult` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/pool.rs:761:12 [INFO] [stdout] | [INFO] [stdout] 761 | pub struct ModifyLiquidityResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update_rewards` and `reward_per_token_checkpoint` are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/position.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl UserRewardInfo { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] 25 | pub fn update_rewards( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn reward_per_token_checkpoint(&self) -> U256 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `accumulate_claimed_fee` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/position.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 87 | impl PositionMetrics { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] 88 | pub fn accumulate_claimed_fee( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/state/position.rs:100:12 [INFO] [stdout] | [INFO] [stdout] 99 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 100 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn has_sufficient_liquidity(&self, liquidity: u128) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn get_total_liquidity(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn lock(&mut self, total_lock_liquidity: u128) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn permanent_lock_liquidity(&mut self, permanent_lock_liquidity: u128) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn update_fee( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub fn release_vested_liquidity(&mut self, released_liquidity: u128) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn add_liquidity(&mut self, liquidity_delta: u128) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn remove_unlocked_liquidity(&mut self, liquidity_delta: u128) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn reset_pending_fee(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 199 | pub fn update_rewards(&mut self, pool: &mut RefMut<'_, Pool>, current_time: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | fn get_total_reward(&self, reward_index: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | fn accumulate_total_claimed_rewards(&mut self, reward_index: usize, reward: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | pub fn claim_reward(&mut self, reward_index: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 242 | pub fn reset_all_pending_reward(&mut self, reward_index: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 246 | pub fn fee_a_per_token_checkpoint(&self) -> U256 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 249 | pub fn fee_b_per_token_checkpoint(&self) -> U256 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 253 | pub fn is_empty(&self) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_SQRT_PRICE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const MIN_SQRT_PRICE: u128 = 4295048016; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_SQRT_PRICE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const MAX_SQRT_PRICE: u128 = 79226673521066979257578248091; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BIN_STEP_BPS_DEFAULT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const BIN_STEP_BPS_DEFAULT: u16 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BIN_STEP_BPS_U128_DEFAULT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const BIN_STEP_BPS_U128_DEFAULT: u128 = 1844674407370955; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `U24_MAX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const U24_MAX: u32 = 0xffffff; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_REWARD_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const MIN_REWARD_DURATION: u64 = 24 * 60 * 60; // 1 day [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_REWARD_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const MAX_REWARD_DURATION: u64 = 31536000; // 1 year = 365 * 24 * 3600 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SOL` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:125:7 [INFO] [stdout] | [INFO] [stdout] 125 | const SOL: Pubkey = pubkey!("So11111111111111111111111111111111111111112"); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USDC` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:126:7 [INFO] [stdout] | [INFO] [stdout] 126 | const USDC: Pubkey = pubkey!("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_QUOTE_MINTS` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:127:11 [INFO] [stdout] | [INFO] [stdout] 127 | pub const DEFAULT_QUOTE_MINTS: [Pubkey; 2] = [SOL, USDC]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SLOT_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:41:15 [INFO] [stdout] | [INFO] [stdout] 41 | pub const SLOT_BUFFER: u64 = 9000; // 1 slot = 400 mls => 1 hour [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TIME_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:46:15 [INFO] [stdout] | [INFO] [stdout] 46 | pub const TIME_BUFFER: u64 = 3600; // 1 hour [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_ACTIVATION_SLOT_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:51:15 [INFO] [stdout] | [INFO] [stdout] 51 | pub const MAX_ACTIVATION_SLOT_DURATION: u64 = SLOT_BUFFER * 24 * 31; // 31 days [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_ACTIVATION_TIME_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:56:15 [INFO] [stdout] | [INFO] [stdout] 56 | pub const MAX_ACTIVATION_TIME_DURATION: u64 = TIME_BUFFER * 24 * 31; // 31 days [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_VESTING_SLOT_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:60:15 [INFO] [stdout] | [INFO] [stdout] 60 | pub const MAX_VESTING_SLOT_DURATION: u64 = SLOT_BUFFER * 24 * 365 * 10; // 10 years [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_VESTING_TIME_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:61:15 [INFO] [stdout] | [INFO] [stdout] 61 | pub const MAX_VESTING_TIME_DURATION: u64 = TIME_BUFFER * 24 * 365 * 10; // 10 years [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIVE_MINUTES_SLOT_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:63:15 [INFO] [stdout] | [INFO] [stdout] 63 | pub const FIVE_MINUTES_SLOT_BUFFER: u64 = SLOT_BUFFER / 12; // 5 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIVE_MINUTES_TIME_BUFFER` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:65:15 [INFO] [stdout] | [INFO] [stdout] 65 | pub const FIVE_MINUTES_TIME_BUFFER: u64 = TIME_BUFFER / 12; // 5 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_FEE_CURVE_TIME_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:67:15 [INFO] [stdout] | [INFO] [stdout] 67 | pub const MAX_FEE_CURVE_TIME_DURATION: u64 = 3600 * 24; // 1 day [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_FEE_CURVE_SLOT_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:68:15 [INFO] [stdout] | [INFO] [stdout] 68 | pub const MAX_FEE_CURVE_SLOT_DURATION: u64 = 9000 * 24; // 1 day [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_HIGH_TAX_TIME_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:70:15 [INFO] [stdout] | [INFO] [stdout] 70 | pub const MAX_HIGH_TAX_TIME_DURATION: u64 = TIME_BUFFER / 6; // 10 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_HIGH_TAX_SLOT_DURATION` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:71:15 [INFO] [stdout] | [INFO] [stdout] 71 | pub const MAX_HIGH_TAX_SLOT_DURATION: u64 = SLOT_BUFFER / 6; // 10 minutes [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CUSTOMIZABLE_PROTOCOL_FEE_PERCENT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:100:15 [INFO] [stdout] | [INFO] [stdout] 100 | pub const CUSTOMIZABLE_PROTOCOL_FEE_PERCENT: u8 = 20; // 20% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CUSTOMIZABLE_HOST_FEE_PERCENT` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:102:15 [INFO] [stdout] | [INFO] [stdout] 102 | pub const CUSTOMIZABLE_HOST_FEE_PERCENT: u8 = 20; // 20% [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CONFIG_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:106:15 [INFO] [stdout] | [INFO] [stdout] 106 | pub const CONFIG_PREFIX: &[u8] = b"config"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CUSTOMIZABLE_POOL_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:107:15 [INFO] [stdout] | [INFO] [stdout] 107 | pub const CUSTOMIZABLE_POOL_PREFIX: &[u8] = b"cpool"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:108:15 [INFO] [stdout] | [INFO] [stdout] 108 | pub const POOL_PREFIX: &[u8] = b"pool"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOKEN_VAULT_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:109:15 [INFO] [stdout] | [INFO] [stdout] 109 | pub const TOKEN_VAULT_PREFIX: &[u8] = b"token_vault"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POOL_AUTHORITY_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:110:15 [INFO] [stdout] | [INFO] [stdout] 110 | pub const POOL_AUTHORITY_PREFIX: &[u8] = b"pool_authority"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POSITION_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:111:15 [INFO] [stdout] | [INFO] [stdout] 111 | pub const POSITION_PREFIX: &[u8] = b"position"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POSITION_NFT_ACCOUNT_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:112:15 [INFO] [stdout] | [INFO] [stdout] 112 | pub const POSITION_NFT_ACCOUNT_PREFIX: &[u8] = b"position_nft_account"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOKEN_BADGE_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:113:15 [INFO] [stdout] | [INFO] [stdout] 113 | pub const TOKEN_BADGE_PREFIX: &[u8] = b"token_badge"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REWARD_VAULT_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:114:15 [INFO] [stdout] | [INFO] [stdout] 114 | pub const REWARD_VAULT_PREFIX: &[u8] = b"reward_vault"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLAIM_FEE_OPERATOR_PREFIX` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:115:15 [INFO] [stdout] | [INFO] [stdout] 115 | pub const CLAIM_FEE_OPERATOR_PREFIX: &[u8] = b"cf_operator"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ID` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/constants.rs:121:15 [INFO] [stdout] | [INFO] [stdout] 121 | pub const ID: Pubkey = pubkey!("4EWqcx3aNZmMetCnxwLYwyNjan6XLGp3Ca2W316vrSjv"); [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mul_shr` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/u128x128_math.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn mul_shr(x: u128, y: u128, offset: u8) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mul_shr_256` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/u128x128_math.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn mul_shr_256(x: U256, y: U256, offset: u8) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shl_div` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/u128x128_math.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn shl_div(x: u128, y: u128, offset: u8, rounding: Rounding) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shl_div_256` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/u128x128_math.rs:72:8 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn shl_div_256(x: u128, y: u128, offset: u8) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `safe_rem` and `safe_shr` are never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/safe_math.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait SafeMath: Sized { [INFO] [stdout] | -------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 10 | fn safe_rem(self, rhs: Self) -> Result; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 13 | fn safe_shr(self, offset: T) -> Result; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `safe_mul_shr_cast` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/utils_math.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn safe_mul_shr_cast(x: u128, y: u128, offset: u8) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `safe_mul_shr_256_cast` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/utils_math.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn safe_mul_shr_256_cast(x: U256, y: U256, offset: u8) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `safe_shl_div_cast` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/math/utils_math.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn safe_shl_div_cast( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_initialize_amounts` is never used [INFO] [stdout] --> programs/flashbot-solana/src/damm_v2/curve.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn get_initialize_amounts( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AdaptiveFeeTier` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/adaptive_fee_tier.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct AdaptiveFeeTier { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/adaptive_fee_tier.rs:36:15 [INFO] [stdout] | [INFO] [stdout] 35 | impl AdaptiveFeeTier { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 36 | pub const LEN: usize = 8 + 32 + 2 + 2 + 32 + 32 + 2 + 2 + 2 + 2 + 4 + 4 + 2 + 2 + 128; [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn update_initialize_pool_authority(&mut self, initialize_pool_authority: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn update_delegated_fee_authority(&mut self, delegated_fee_authority: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn update_default_base_fee_rate(&mut self, default_base_fee_rate: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn update_adaptive_fee_constants( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn is_valid_initialize_pool_authority(&self, initialize_pool_authority: Pubkey) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn is_permissioned(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WhirlpoolsConfig` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/config.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct WhirlpoolsConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `update_fee_authority`, `update_collect_protocol_fees_authority`, `initialize`, `update_reward_emissions_super_authority`, and `update_default_protocol_fee_rate` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/config.rs:15:15 [INFO] [stdout] | [INFO] [stdout] 14 | impl WhirlpoolsConfig { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 15 | pub const LEN: usize = 8 + 96 + 4; [INFO] [stdout] | ^^^ [INFO] [stdout] 16 | [INFO] [stdout] 17 | pub fn update_fee_authority(&mut self, fee_authority: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn update_collect_protocol_fees_authority( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn update_reward_emissions_super_authority( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn update_default_protocol_fee_rate( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WhirlpoolsConfigExtension` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/config_extension.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct WhirlpoolsConfigExtension { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, `update_config_extension_authority`, and `update_token_badge_authority` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/config_extension.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 11 | impl WhirlpoolsConfigExtension { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 12 | pub const LEN: usize = 8 + 32 + 32 + 32 + 512; [INFO] [stdout] | ^^^ [INFO] [stdout] 13 | [INFO] [stdout] 14 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn update_config_extension_authority(&mut self, config_extension_authority: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn update_token_badge_authority(&mut self, token_badge_authority: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start_tick_index`, `whirlpool`, `tick_bitmap`, and `ticks` are never read [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/dynamic_tick_array.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 76 | pub struct DynamicTickArray { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 77 | pub start_tick_index: i32, // 4 bytes [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 78 | pub whirlpool: Pubkey, // 32 bytes [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 79 | // 0: uninitialized, 1: initialized [INFO] [stdout] 80 | pub tick_bitmap: u128, // 16 bytes [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 81 | pub ticks: [DynamicTick; TICK_ARRAY_SIZE_USIZE], [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `MIN_LEN` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/dynamic_tick_array.rs:85:15 [INFO] [stdout] | [INFO] [stdout] 84 | impl DynamicTickArray { [INFO] [stdout] | --------------------- associated constant in this implementation [INFO] [stdout] 85 | pub const MIN_LEN: usize = DynamicTickArray::DISCRIMINATOR.len() [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `load` and `initialize` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/dynamic_tick_array.rs:124:12 [INFO] [stdout] | [INFO] [stdout] 119 | impl DynamicTickArrayLoader { [INFO] [stdout] | --------------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn load(data: &[u8]) -> &DynamicTickArrayLoader { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 142 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FeeTier` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/fee_tier.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct FeeTier { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, and `update_default_fee_rate` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/fee_tier.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 12 | impl FeeTier { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 13 | pub const LEN: usize = 8 + 32 + 4; [INFO] [stdout] | ^^^ [INFO] [stdout] 14 | [INFO] [stdout] 15 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn update_default_fee_rate(&mut self, default_fee_rate: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN` and `initialize` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/fixed_tick_array.rs:35:15 [INFO] [stdout] | [INFO] [stdout] 34 | impl TickArray { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 35 | pub const LEN: usize = 8 + 36 + (Tick::LEN * TICK_ARRAY_SIZE_USIZE); [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LockConfig` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/lock_config.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct LockConfig { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `LockType` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/lock_config.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum LockType { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `LockTypeLabel` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/lock_config.rs:27:10 [INFO] [stdout] | [INFO] [stdout] 27 | pub enum LockTypeLabel { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, and `update_position_owner` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/lock_config.rs:32:15 [INFO] [stdout] | [INFO] [stdout] 31 | impl LockConfig { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 32 | pub const LEN: usize = 8 + 32 + 32 + 32 + 8 + 1 + 128; [INFO] [stdout] | ^^^ [INFO] [stdout] 33 | [INFO] [stdout] 34 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn update_position_owner(&mut self, position_owner: Pubkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_TRADE_ENABLE_TIMESTAMP_DELTA` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/oracle.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const MAX_TRADE_ENABLE_TIMESTAMP_DELTA: u64 = 60 * 60 * 72; // 72 hours [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN` and `validate_constants` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/oracle.rs:56:15 [INFO] [stdout] | [INFO] [stdout] 55 | impl AdaptiveFeeConstants { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] 56 | pub const LEN: usize = 2 + 2 + 2 + 4 + 4 + 2 + 2 + 16; [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn validate_constants( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `LEN` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/oracle.rs:138:15 [INFO] [stdout] | [INFO] [stdout] 137 | impl AdaptiveFeeVariables { [INFO] [stdout] | ------------------------- associated constant in this implementation [INFO] [stdout] 138 | pub const LEN: usize = 8 + 8 + 4 + 4 + 4 + 16; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `LEN`, `initialize`, `initialize_adaptive_fee_constants`, `update_adaptive_fee_variables`, and `reset_adaptive_fee_variables` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/oracle.rs:278:15 [INFO] [stdout] | [INFO] [stdout] 277 | impl Oracle { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 278 | pub const LEN: usize = 8 + 32 + 8 + AdaptiveFeeConstants::LEN + AdaptiveFeeVariables::LEN + 128; [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 281 | pub fn initialize( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 314 | pub fn initialize_adaptive_fee_constants( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 337 | pub fn update_adaptive_fee_variables(&mut self, variables: AdaptiveFeeVariables) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 341 | fn reset_adaptive_fee_variables(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update_adaptive_fee_variables` and `load_mut` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/oracle.rs:385:12 [INFO] [stdout] | [INFO] [stdout] 351 | impl<'info> OracleAccessor<'info> { [INFO] [stdout] | --------------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 385 | pub fn update_adaptive_fee_variables( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 464 | fn load_mut(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OpenPositionBumps` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct OpenPositionBumps { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OpenPositionWithMetadataBumps` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct OpenPositionWithMetadataBumps { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Position` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct Position { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:38:15 [INFO] [stdout] | [INFO] [stdout] 37 | impl Position { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 38 | pub const LEN: usize = 8 + 136 + 72; [INFO] [stdout] | ^^^ [INFO] [stdout] 39 | [INFO] [stdout] 40 | pub fn is_position_empty(position: &Position) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn update(&mut self, update: &PositionUpdate) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn open_position( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn reset_fees_owed(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn update_reward_owed(&mut self, index: usize, amount_owed: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn reset_position_range( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_tick_range_for_whirlpool` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:123:4 [INFO] [stdout] | [INFO] [stdout] 123 | fn validate_tick_range_for_whirlpool( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PositionRewardInfo` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 149 | pub struct PositionRewardInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PositionUpdate` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position.rs:156:12 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct PositionUpdate { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POSITION_BITMAP_USIZE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position_bundle.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub const POSITION_BITMAP_USIZE: usize = 32; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `POSITION_BUNDLE_SIZE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position_bundle.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const POSITION_BUNDLE_SIZE: u16 = 8 * POSITION_BITMAP_USIZE as u16; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PositionBundle` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position_bundle.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct PositionBundle { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `flashbot-solana` (lib test) due to 4 previous errors; 353 warnings emitted [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/position_bundle.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 15 | impl PositionBundle { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 16 | pub const LEN: usize = 8 + 32 + 32 + 64; [INFO] [stdout] | ^^^ [INFO] [stdout] 17 | [INFO] [stdout] 18 | pub fn initialize(&mut self, position_bundle_mint: Pubkey) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn is_deletable(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn open_bundled_position(&mut self, bundle_index: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn close_bundled_position(&mut self, bundle_index: u16) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | fn update_bitmap(&mut self, bundle_index: u16, open: bool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | fn is_valid_bundle_index(bundle_index: u16) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: associated items `LEN`, `full_range_indexes`, and `bound_tick_index` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/tick.rs:41:15 [INFO] [stdout] | [INFO] [stdout] 40 | impl Tick { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 41 | pub const LEN: usize = 113; [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn full_range_indexes(tick_spacing: u16) -> (i32, i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | pub fn bound_tick_index(tick_index: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_variable_size` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/tick_array.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub trait TickArrayType { [INFO] [stdout] | ------------- method in this trait [INFO] [stdout] 21 | fn is_variable_size(&self) -> bool; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `LoadedTickArray` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/tick_array.rs:99:10 [INFO] [stdout] | [INFO] [stdout] 99 | pub type LoadedTickArray<'a> = Ref<'a, dyn TickArrayType>; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TickArraysMut` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/tick_array.rs:181:12 [INFO] [stdout] | [INFO] [stdout] 181 | pub struct TickArraysMut<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `deref` and `deref_mut` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/tick_array.rs:204:12 [INFO] [stdout] | [INFO] [stdout] 186 | impl<'a> TickArraysMut<'a> { [INFO] [stdout] | -------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn deref(&self) -> (&dyn TickArrayType, &dyn TickArrayType) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 220 | pub fn deref_mut(&mut self) -> (&mut dyn TickArrayType, Option<&mut dyn TickArrayType>) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `to_reward_growths` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 78 | impl WhirlpoolRewardInfo { [INFO] [stdout] | ------------------------ associated functions in this implementation [INFO] [stdout] 79 | /// Creates a new `WhirlpoolRewardInfo` with the authority set [INFO] [stdout] 80 | pub fn new(authority: Pubkey) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn to_reward_growths( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WhirlpoolBumps` is never constructed [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/state/whirlpool.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 106 | pub struct WhirlpoolBumps { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TO_Q64` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/bit_math.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const TO_Q64: u128 = 1u128 << Q64_RESOLUTION; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `checked_mul_shift_right` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/bit_math.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn checked_mul_shift_right(n0: u128, n1: u128) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `checked_mul_shift_right_round_up_if` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/bit_math.rs:39:8 [INFO] [stdout] | [INFO] [stdout] 39 | pub fn checked_mul_shift_right_round_up_if( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `div_round_up` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/bit_math.rs:64:8 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn div_round_up(n: u128, d: u128) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convert_to_liquidity_delta` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/liquidity_math.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn convert_to_liquidity_delta( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FULL_RANGE_ONLY_TICK_SPACING_THRESHOLD` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/tick_math.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const FULL_RANGE_ONLY_TICK_SPACING_THRESHOLD: u16 = 32768; // 2^15 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_FEE_RATE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/token_math.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const MAX_FEE_RATE: u16 = 60_000; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_PROTOCOL_FEE_RATE` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/token_math.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const MAX_PROTOCOL_FEE_RATE: u16 = 2_500; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `eq`, `lt`, `gt`, `gte`, and `get_add_inverse` are never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/math/u256_math.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl U256Muldiv { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 144 | pub fn eq(&self, other: U256Muldiv) -> bool { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 154 | pub fn lt(&self, other: U256Muldiv) -> bool { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn gt(&self, other: U256Muldiv) -> bool { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 190 | pub fn gte(&self, other: U256Muldiv) -> bool { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn get_add_inverse(&self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `verify_position_authority` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/shared.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn verify_position_authority( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `verify_position_authority_interface` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/shared.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn verify_position_authority_interface( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_owner` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/shared.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn validate_owner(expected_owner: &Pubkey, owner_account_info: &AccountInfo) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/swap_tick_sequence.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl<'a> SwapTickSequence<'a> { [INFO] [stdout] | ----------------------------- associated function in this implementation [INFO] [stdout] 13 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `transfer_fee` is never read [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct TransferFeeIncludedAmount { [INFO] [stdout] | ------------------------- field in this struct [INFO] [stdout] 21 | pub amount: u64, [INFO] [stdout] 22 | pub transfer_fee: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TransferFeeIncludedAmount` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `transfer_fee` is never read [INFO] [stdout] --> programs/flashbot-solana/src/whirlpool/util/v2/token.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct TransferFeeExcludedAmount { [INFO] [stdout] | ------------------------- field in this struct [INFO] [stdout] 27 | pub amount: u64, [INFO] [stdout] 28 | pub transfer_fee: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TransferFeeExcludedAmount` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:51:22 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn load_init(&self) -> Result> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 51 | pub fn load_init(&self) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:100:17 [INFO] [stdout] | [INFO] [stdout] 100 | pub fn load(&self) -> Result> { [INFO] [stdout] | ^^^^^ ^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 100 | pub fn load(&self) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> programs/flashbot-solana/src/raydium_clmm/util/account_load.rs:117:21 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn load_mut(&self) -> Result> { [INFO] [stdout] | ^^^^^ ^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 117 | pub fn load_mut(&self) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: std::result::Result [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:245:13 [INFO] [stdout] | [INFO] [stdout] 245 | u128::try_from(self.trade_fee_numerator).ok()?, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-D unmustuse-in-always-ok` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: std::result::Result [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:246:13 [INFO] [stdout] | [INFO] [stdout] 246 | u128::try_from(self.trade_fee_denominator).ok()?, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: std::result::Result [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:254:13 [INFO] [stdout] | [INFO] [stdout] 254 | u128::try_from(self.protocol_trade_fee_numerator).ok()?, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: std::result::Result [INFO] [stdout] --> programs/flashbot-solana/src/damm/state.rs:255:13 [INFO] [stdout] | [INFO] [stdout] 255 | u128::try_from(self.protocol_trade_fee_denominator).ok()?, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `flashbot-solana` (lib) due to 4 previous errors; 357 warnings emitted [INFO] running `Command { std: "docker" "inspect" "bb5f974c6c30245faf4e57edeacd34ab210105b952a7495e5a2574c07a9d2103", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bb5f974c6c30245faf4e57edeacd34ab210105b952a7495e5a2574c07a9d2103", kill_on_drop: false }` [INFO] [stdout] bb5f974c6c30245faf4e57edeacd34ab210105b952a7495e5a2574c07a9d2103