[INFO] cloning repository https://github.com/happybigmtn/gitcraps [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/happybigmtn/gitcraps" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhappybigmtn%2Fgitcraps", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhappybigmtn%2Fgitcraps'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 17a0800a497fd4e27e803b331d8643130c7ae7ad [INFO] linting happybigmtn/gitcraps against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhappybigmtn%2Fgitcraps" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-3-tc1/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/happybigmtn/gitcraps [INFO] finished tweaking git repo https://github.com/happybigmtn/gitcraps [INFO] tweaked toml for git repo https://github.com/happybigmtn/gitcraps written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/happybigmtn/gitcraps on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/happybigmtn/gitcraps already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Updating git repository `https://github.com/jup-ag/jupiter-swap-api-client` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded redox_syscall v0.5.10 [INFO] [stderr] Downloaded spl-pod v0.5.0 [INFO] [stderr] Downloaded windows-targets v0.53.4 [INFO] [stderr] Downloaded solana-rayon-threadlimit v2.1.15 [INFO] [stderr] Downloaded quote v1.0.39 [INFO] [stderr] Downloaded solana-serde-varint v2.1.15 [INFO] [stderr] Downloaded nonzero_ext v0.3.0 [INFO] [stderr] Downloaded solana-tpu-client v2.1.15 [INFO] [stderr] Downloaded solana-vote v2.1.15 [INFO] [stderr] Downloaded spl-token-confidential-transfer-proof-generation v0.3.0 [INFO] [stderr] Downloaded fastbloom v0.14.0 [INFO] [stderr] Downloaded quanta v0.12.6 [INFO] [stderr] Downloaded solana-connection-cache v2.1.15 [INFO] [stderr] Downloaded solana-metrics v2.1.15 [INFO] [stderr] Downloaded solana-rpc-client-api v2.1.15 [INFO] [stderr] Downloaded ts-rs-macros v7.1.1 [INFO] [stderr] Downloaded solana-nostd-keccak v0.1.3 [INFO] [stderr] Downloaded solana-instruction v0.0.3 [INFO] [stderr] Downloaded spl-token-group-interface v0.3.0 [INFO] [stderr] Downloaded spl-memo v5.0.0 [INFO] [stderr] Downloaded spl-transfer-hook-interface v0.7.0 [INFO] [stderr] Downloaded solana-config-program v2.1.15 [INFO] [stderr] Downloaded keccak-const v0.2.0 [INFO] [stderr] Downloaded entropy-types v0.0.1 [INFO] [stderr] Downloaded serde_qs v0.13.0 [INFO] [stderr] Downloaded chrono v0.4.40 [INFO] [stderr] Downloaded raw-cpuid v11.6.0 [INFO] [stderr] Downloaded openssl v0.10.71 [INFO] [stderr] Downloaded governor v0.6.3 [INFO] [stderr] Downloaded spl-token-2022 v4.0.0 [INFO] [stderr] Downloaded rust_decimal v1.39.0 [INFO] [stderr] Downloaded rustls v0.23.32 [INFO] [stderr] Downloaded fixed v1.28.0 [INFO] [stderr] Downloaded solana-rpc-client v2.1.15 [INFO] [stderr] Downloaded solana-quic-client v2.1.15 [INFO] [stderr] Downloaded spl-token v6.0.0 [INFO] [stderr] Downloaded const-crypto v0.1.0 [INFO] [stderr] Downloaded ts-rs v7.1.1 [INFO] [stderr] Downloaded spl-tlv-account-resolution v0.7.0 [INFO] [stderr] Downloaded brotli-decompressor v5.0.0 [INFO] [stderr] Downloaded blake3 v1.6.1 [INFO] [stderr] Downloaded spl-discriminator v0.3.0 [INFO] [stderr] Downloaded spl-pod v0.3.1 [INFO] [stderr] Downloaded solana-account-decoder v2.1.15 [INFO] [stderr] Downloaded solana-inline-spl v2.1.15 [INFO] [stderr] Downloaded solana-net-utils v2.1.15 [INFO] [stderr] Downloaded webpki-root-certs v1.0.2 [INFO] [stderr] Downloaded solana_rbpf v0.8.5 [INFO] [stderr] Downloaded winnow v0.7.3 [INFO] [stderr] Downloaded libc v0.2.170 [INFO] [stderr] Downloaded spl-token-metadata-interface v0.4.0 [INFO] [stderr] Downloaded solana-program v2.1.15 [INFO] [stderr] Downloaded brotli v8.0.2 [INFO] [stderr] Downloaded solana-account-decoder-client-types v2.1.15 [INFO] [stderr] Downloaded cc v1.2.16 [INFO] [stderr] Downloaded solana-address-lookup-table-interface v0.0.2 [INFO] [stderr] Downloaded solana-rpc-client-nonce-utils v2.1.15 [INFO] [stderr] Downloaded entropy-api v0.1.4 [INFO] [stderr] Downloaded solana-sdk-ids v0.0.3 [INFO] [stderr] Downloaded spl-type-length-value v0.5.0 [INFO] [stderr] Downloaded task-local-extensions v0.1.4 [INFO] [stderr] Downloaded reqwest-middleware v0.2.5 [INFO] [stderr] Downloaded solana-transaction-status-client-types v2.1.15 [INFO] [stderr] Downloaded solana-version v2.1.15 [INFO] [stderr] Downloaded solana-thin-client v2.1.15 [INFO] [stderr] Downloaded spl-program-error v0.5.0 [INFO] [stderr] Downloaded solana-pubsub-client v2.1.15 [INFO] [stderr] Downloaded rustls-platform-verifier v0.6.1 [INFO] [stderr] Downloaded rustls-webpki v0.103.7 [INFO] [stderr] Downloaded solana-streamer v2.1.15 [INFO] [stderr] Downloaded spl-token-2022 v7.0.0 [INFO] [stderr] Downloaded spinning_top v0.3.0 [INFO] [stderr] Downloaded solana-program-runtime v2.1.15 [INFO] [stderr] Downloaded solana-vote-program v2.1.15 [INFO] [stderr] Downloaded windows-core v0.62.1 [INFO] [stderr] Downloaded solana-feature-set v2.1.15 [INFO] [stderr] Downloaded solana-last-restart-slot v2.1.15 [INFO] [stderr] Downloaded solana-signature v2.1.15 [INFO] [stderr] Downloaded solana-compute-budget v2.1.15 [INFO] [stderr] Downloaded solana-measure v2.1.15 [INFO] [stderr] Downloaded solana-timings v2.1.15 [INFO] [stderr] Downloaded solana-transaction-metrics-tracker v2.1.15 [INFO] [stderr] Downloaded solana-udp-client v2.1.15 [INFO] [stderr] Downloaded solana-curve25519 v2.1.15 [INFO] [stderr] Downloaded windows-result v0.4.0 [INFO] [stderr] Downloaded solana-cpi v2.1.15 [INFO] [stderr] Downloaded solana-fee-calculator v2.1.15 [INFO] [stderr] Downloaded solana-native-token v2.1.15 [INFO] [stderr] Downloaded solana-program-option v2.1.15 [INFO] [stderr] Downloaded solana-serialize-utils v2.1.15 [INFO] [stderr] Downloaded solana-slot-history v2.1.15 [INFO] [stderr] Downloaded solana-secp256r1-program v2.1.15 [INFO] [stderr] Downloaded borsh-derive v1.5.5 [INFO] [stderr] Downloaded cfg_eval v0.1.2 [INFO] [stderr] Downloaded solana-borsh v2.1.15 [INFO] [stderr] Downloaded solana-msg v2.1.15 [INFO] [stderr] Downloaded openssl-sys v0.9.106 [INFO] [stderr] Downloaded solana-define-syscall v2.1.15 [INFO] [stderr] Downloaded solana-client v2.1.15 [INFO] [stderr] Downloaded solana-account v2.1.15 [INFO] [stderr] Downloaded solana-secp256k1-recover v2.1.15 [INFO] [stderr] Downloaded solana-sdk-macro v2.1.15 [INFO] [stderr] Downloaded solana-epoch-schedule v2.1.15 [INFO] [stderr] Downloaded solana-short-vec v2.1.15 [INFO] [stderr] Downloaded borsh v1.5.5 [INFO] [stderr] Downloaded bytemuck_derive v1.8.1 [INFO] [stderr] Downloaded solana-atomic-u64 v2.1.15 [INFO] [stderr] Downloaded solana-hash v2.1.15 [INFO] [stderr] Downloaded solana-pubkey v2.1.15 [INFO] [stderr] Downloaded solana-instruction v2.1.15 [INFO] [stderr] Downloaded solana-sanitize v2.1.15 [INFO] [stderr] Downloaded solana-sdk v2.1.15 [INFO] [stderr] Downloaded steel v4.0.3 [INFO] [stderr] Downloaded no-std-compat v0.4.1 [INFO] [stderr] Downloaded solana-log-collector v2.1.15 [INFO] [stderr] Downloaded enum-iterator-derive v1.5.0 [INFO] [stderr] Downloaded solana-perf v2.1.15 [INFO] [stderr] Downloaded spl-token v4.0.2 [INFO] [stderr] Downloaded windows-implement v0.60.1 [INFO] [stderr] Downloaded windows-interface v0.59.2 [INFO] [stderr] Downloaded windows-strings v0.5.0 [INFO] [stderr] Downloaded solana-bn254 v2.1.15 [INFO] [stderr] Downloaded solana-derivation-path v2.1.15 [INFO] [stderr] Downloaded solana-inflation v2.1.15 [INFO] [stderr] Downloaded solana-packet v2.1.15 [INFO] [stderr] Downloaded solana-bincode v2.1.15 [INFO] [stderr] Downloaded solana-account-info v2.1.15 [INFO] [stderr] Downloaded solana-program-entrypoint v2.1.15 [INFO] [stderr] Downloaded solana-program-error v2.1.15 [INFO] [stderr] Downloaded solana-program-pack v2.1.15 [INFO] [stderr] Downloaded solana-slot-hashes v2.1.15 [INFO] [stderr] Downloaded solana-stable-layout v2.1.15 [INFO] [stderr] Downloaded solana-program-memory v2.1.15 [INFO] [stderr] Downloaded solana-clock v2.1.15 [INFO] [stderr] Downloaded solana-sysvar-id v2.1.15 [INFO] [stderr] Downloaded solana-precompile-error v2.1.15 [INFO] [stderr] Downloaded solana-zk-sdk v2.1.15 [INFO] [stderr] Downloaded five8_core v0.1.1 [INFO] [stderr] Downloaded solana-decode-error v2.1.15 [INFO] [stderr] Downloaded solana-sha256-hasher v2.1.15 [INFO] [stderr] Downloaded once_cell v1.21.0 [INFO] [stderr] Downloaded five8_const v0.1.3 [INFO] [stderr] Downloaded solana-transaction-error v2.1.15 [INFO] [stderr] Downloaded solana-type-overrides v2.1.15 [INFO] [stderr] Downloaded solana-zk-token-sdk v2.1.15 [INFO] [stderr] Downloaded solana-rent v2.1.15 [INFO] [stderr] Downloaded windows-sys v0.61.1 [INFO] [stderr] Downloaded sha2-const-stable v0.1.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d52385838357ae3285575a74289f3511c31097f75df19902402a0c5b7004b1a9 [INFO] running `Command { std: "docker" "start" "-a" "d52385838357ae3285575a74289f3511c31097f75df19902402a0c5b7004b1a9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d52385838357ae3285575a74289f3511c31097f75df19902402a0c5b7004b1a9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d52385838357ae3285575a74289f3511c31097f75df19902402a0c5b7004b1a9", kill_on_drop: false }` [INFO] [stdout] d52385838357ae3285575a74289f3511c31097f75df19902402a0c5b7004b1a9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d6177be5bb1cba6eee80d80b1c45686863215ce4881188c30bc338ed60c21c67 [INFO] running `Command { std: "docker" "start" "-a" "d6177be5bb1cba6eee80d80b1c45686863215ce4881188c30bc338ed60c21c67", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.170 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Checking subtle v2.6.1 [INFO] [stderr] Checking once_cell v1.21.0 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling hashbrown v0.15.2 [INFO] [stderr] Compiling toml_datetime v0.6.8 [INFO] [stderr] Compiling winnow v0.7.3 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling quote v1.0.39 [INFO] [stderr] Compiling semver v1.0.26 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Compiling borsh v1.5.5 [INFO] [stderr] Checking solana-sanitize v2.1.15 [INFO] [stderr] Checking bs58 v0.5.1 [INFO] [stderr] Checking solana-atomic-u64 v2.1.15 [INFO] [stderr] Checking five8_core v0.1.1 [INFO] [stderr] Checking log v0.4.26 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking five8_const v0.1.3 [INFO] [stderr] Compiling indexmap v2.8.0 [INFO] [stderr] Compiling crunchy v0.2.3 [INFO] [stderr] Checking opaque-debug v0.3.1 [INFO] [stderr] Compiling syn v2.0.100 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking solana-msg v2.1.15 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling memoffset v0.9.1 [INFO] [stderr] Checking arrayref v0.3.9 [INFO] [stderr] Checking keccak v0.1.5 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Checking constant_time_eq v0.3.1 [INFO] [stderr] Checking solana-native-token v2.1.15 [INFO] [stderr] Checking solana-program-option v2.1.15 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling jobserver v0.1.32 [INFO] [stderr] Compiling openssl v0.10.71 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking ed25519 v1.5.3 [INFO] [stderr] Checking derivation-path v0.2.0 [INFO] [stderr] Compiling cc v1.2.16 [INFO] [stderr] Checking solana-decode-error v2.1.15 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking solana-program-memory v2.1.15 [INFO] [stderr] Checking qstring v0.7.2 [INFO] [stderr] Checking uriparse v0.6.4 [INFO] [stderr] Checking iana-time-zone v0.1.64 [INFO] [stderr] Checking solana-precompile-error v2.1.15 [INFO] [stderr] Checking itertools v0.12.1 [INFO] [stderr] Checking siphasher v0.3.11 [INFO] [stderr] Checking smallvec v1.14.0 [INFO] [stderr] Checking bytes v1.10.1 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Compiling cpufeatures v0.2.17 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking tracing-core v0.1.34 [INFO] [stderr] Checking writeable v0.6.1 [INFO] [stderr] Compiling openssl-src v300.5.3+3.5.4 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking getrandom v0.1.16 [INFO] [stderr] Compiling toml_edit v0.22.24 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking solana-derivation-path v2.1.15 [INFO] [stderr] Checking hashbrown v0.13.2 [INFO] [stderr] Checking memmap2 v0.5.10 [INFO] [stderr] Checking socket2 v0.5.8 [INFO] [stderr] Checking signal-hook-registry v1.4.6 [INFO] [stderr] Compiling libsecp256k1-core v0.2.2 [INFO] [stderr] Checking mio v1.0.4 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Checking litemap v0.8.0 [INFO] [stderr] Compiling blake3 v1.6.1 [INFO] [stderr] Compiling openssl-sys v0.9.106 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Compiling icu_normalizer_data v2.0.0 [INFO] [stderr] Compiling icu_properties_data v2.0.1 [INFO] [stderr] Checking ark-std v0.4.0 [INFO] [stderr] Checking http v0.2.12 [INFO] [stderr] Compiling libsecp256k1-gen-genmult v0.2.1 [INFO] [stderr] Compiling libsecp256k1-gen-ecmult v0.2.1 [INFO] [stderr] Checking form_urlencoded v1.2.2 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Checking alloc-no-stdlib v2.0.4 [INFO] [stderr] Checking miniz_oxide v0.8.9 [INFO] [stderr] Checking crc32fast v1.5.0 [INFO] [stderr] Checking alloc-stdlib v0.2.2 [INFO] [stderr] Compiling unicase v2.8.1 [INFO] [stderr] Checking compression-core v0.4.29 [INFO] [stderr] Compiling proc-macro-crate v3.3.0 [INFO] [stderr] Checking brotli-decompressor v5.0.0 [INFO] [stderr] Compiling libsecp256k1 v0.6.0 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Checking encoding_rs v0.8.35 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Checking http-body v0.4.6 [INFO] [stderr] Checking webpki-roots v0.25.4 [INFO] [stderr] Checking flate2 v1.1.2 [INFO] [stderr] Checking rustls-pemfile v1.0.4 [INFO] [stderr] Compiling num-bigint v0.2.6 [INFO] [stderr] Compiling num-rational v0.2.4 [INFO] [stderr] Compiling num-complex v0.2.4 [INFO] [stderr] Checking crossbeam-channel v0.5.15 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking gethostname v0.2.3 [INFO] [stderr] Checking unreachable v1.0.0 [INFO] [stderr] Checking num-iter v0.1.45 [INFO] [stderr] Checking ascii v0.9.3 [INFO] [stderr] Compiling zstd-sys v2.0.16+zstd.1.5.7 [INFO] [stderr] Checking hash32 v0.2.1 [INFO] [stderr] Checking brotli v8.0.2 [INFO] [stderr] Compiling proc-macro-crate v0.1.5 [INFO] [stderr] Checking rustc-demangle v0.1.26 [INFO] [stderr] Checking combine v3.8.1 [INFO] [stderr] Checking scroll v0.11.0 [INFO] [stderr] Checking eager v0.1.0 [INFO] [stderr] Checking solana-measure v2.1.15 [INFO] [stderr] Checking solana-type-overrides v2.1.15 [INFO] [stderr] Checking solana-log-collector v2.1.15 [INFO] [stderr] Compiling zstd-safe v7.2.4 [INFO] [stderr] Checking solana-security-txt v1.1.1 [INFO] [stderr] Compiling portable-atomic v1.11.1 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Checking powerfmt v0.2.0 [INFO] [stderr] Compiling time-core v0.1.6 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Checking task-local-extensions v0.1.4 [INFO] [stderr] Checking deranged v0.5.4 [INFO] [stderr] Compiling time-macros v0.2.24 [INFO] [stderr] Compiling nix v0.29.0 [INFO] [stderr] Compiling borsh-derive-internal v0.10.4 [INFO] [stderr] Compiling borsh-schema-derive-internal v0.10.4 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling darling_core v0.20.10 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Checking num v0.2.1 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking percentage v0.1.0 [INFO] [stderr] Compiling az v1.2.1 [INFO] [stderr] Checking data-encoding v2.9.0 [INFO] [stderr] Compiling rustls v0.23.32 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Checking http v1.3.1 [INFO] [stderr] Checking rusticata-macros v4.1.0 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling fixed v1.28.0 [INFO] [stderr] Checking regex-syntax v0.8.6 [INFO] [stderr] Checking rand v0.9.2 [INFO] [stderr] Checking num_cpus v1.17.0 [INFO] [stderr] Compiling quinn-udp v0.5.14 [INFO] [stderr] Checking time v0.3.44 [INFO] [stderr] Checking half v2.4.1 [INFO] [stderr] Compiling oid-registry v0.6.1 [INFO] [stderr] Compiling solana-perf v2.1.15 [INFO] [stderr] Checking siphasher v1.0.1 [INFO] [stderr] Checking unicode-width v0.2.1 [INFO] [stderr] Checking tinyvec v1.9.0 [INFO] [stderr] Checking http-body v1.0.1 [INFO] [stderr] Checking fastbloom v0.14.0 [INFO] [stderr] Checking console v0.15.11 [INFO] [stderr] Checking solana-rayon-threadlimit v2.1.15 [INFO] [stderr] Compiling borsh-derive v0.10.4 [INFO] [stderr] Compiling ark-serialize-derive v0.4.2 [INFO] [stderr] Compiling ark-ff-macros v0.4.2 [INFO] [stderr] Compiling ark-ff-asm v0.4.2 [INFO] [stderr] Compiling derivative v2.2.0 [INFO] [stderr] Checking borsh v0.10.4 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling bytemuck_derive v1.8.1 [INFO] [stderr] Compiling borsh-derive v1.5.5 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Checking zeroize v1.8.1 [INFO] [stderr] Compiling solana-sdk-macro v2.1.15 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling num_enum_derive v0.7.3 [INFO] [stderr] Compiling cfg_eval v0.1.2 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling yoke-derive v0.8.0 [INFO] [stderr] Compiling zerovec-derive v0.11.1 [INFO] [stderr] Checking merlin v3.0.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Checking bytemuck v1.22.0 [INFO] [stderr] Checking rustls-webpki v0.101.7 [INFO] [stderr] Checking sct v0.7.1 [INFO] [stderr] Compiling darling_macro v0.20.10 [INFO] [stderr] Compiling spl-program-error-derive v0.4.1 [INFO] [stderr] Checking tokio v1.46.1 [INFO] [stderr] Checking compression-codecs v0.4.31 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Compiling darling v0.20.10 [INFO] [stderr] Checking num_enum v0.7.3 [INFO] [stderr] Compiling spl-discriminator-syn v0.2.0 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Compiling serde_with_macros v3.12.0 [INFO] [stderr] Compiling enum-iterator-derive v1.5.0 [INFO] [stderr] Checking solana_rbpf v0.8.5 [INFO] [stderr] Checking rustls-pki-types v1.12.0 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Compiling spl-discriminator-derive v0.2.0 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Checking rustls-webpki v0.103.7 [INFO] [stderr] Checking yoke v0.8.0 [INFO] [stderr] Compiling asn1-rs-impl v0.1.0 [INFO] [stderr] Checking zerotrie v0.2.2 [INFO] [stderr] Checking zerovec v0.11.4 [INFO] [stderr] Compiling asn1-rs-derive v0.4.0 [INFO] [stderr] Checking rustls-native-certs v0.8.1 [INFO] [stderr] Checking regex-automata v0.4.11 [INFO] [stderr] Checking enum-iterator v1.5.0 [INFO] [stderr] Compiling dlopen2_derive v0.3.0 [INFO] [stderr] Checking caps v0.5.5 [INFO] [stderr] Checking asn1-rs v0.5.2 [INFO] [stderr] Checking solana-borsh v2.1.15 [INFO] [stderr] Compiling quinn v0.11.9 [INFO] [stderr] Checking rustc-hash v2.1.1 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking dlopen2 v0.5.0 [INFO] [stderr] Checking lru-slab v0.1.2 [INFO] [stderr] Checking indicatif v0.17.11 [INFO] [stderr] Checking thiserror v2.0.12 [INFO] [stderr] Checking webpki-roots v0.24.0 [INFO] [stderr] Checking spinning_top v0.3.0 [INFO] [stderr] Checking sha2-const-stable v0.1.0 [INFO] [stderr] Checking no-std-compat v0.4.1 [INFO] [stderr] Checking futures-timer v3.0.3 [INFO] [stderr] Checking keccak-const v0.2.0 [INFO] [stderr] Checking nonzero_ext v0.3.0 [INFO] [stderr] Checking const-crypto v0.1.0 [INFO] [stderr] Checking event-listener v5.4.1 [INFO] [stderr] Checking dashmap v5.5.3 [INFO] [stderr] Checking async-channel v1.9.0 [INFO] [stderr] Checking pem v1.1.1 [INFO] [stderr] Checking tinystr v0.8.1 [INFO] [stderr] Checking potential_utf v0.1.3 [INFO] [stderr] Checking histogram v0.6.9 [INFO] [stderr] Checking icu_locale_core v2.0.0 [INFO] [stderr] Checking icu_collections v2.0.0 [INFO] [stderr] Checking event-listener-strategy v0.5.4 [INFO] [stderr] Checking http-body-util v0.1.3 [INFO] [stderr] Compiling rust_decimal v1.39.0 [INFO] [stderr] Checking async-lock v3.4.1 [INFO] [stderr] Checking rustls-pemfile v2.2.0 [INFO] [stderr] Checking option-ext v0.2.0 [INFO] [stderr] Checking dirs-sys v0.5.0 [INFO] [stderr] Checking der-parser v8.2.0 [INFO] [stderr] Checking dirs v6.0.0 [INFO] [stderr] Checking regex v1.11.3 [INFO] [stderr] Checking icu_provider v2.0.0 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking Inflector v0.11.4 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking icu_properties v2.0.1 [INFO] [stderr] Checking icu_normalizer v2.0.0 [INFO] [stderr] Checking x509-parser v0.14.0 [INFO] [stderr] Checking solana-hash v2.1.15 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking bitflags v2.9.0 [INFO] [stderr] Checking bv v0.11.1 [INFO] [stderr] Checking solana-serde-varint v2.1.15 [INFO] [stderr] Checking solana-fee-calculator v2.1.15 [INFO] [stderr] Checking serde_bytes v0.11.17 [INFO] [stderr] Checking solana-short-vec v2.1.15 [INFO] [stderr] Checking serde_with v3.12.0 [INFO] [stderr] Checking chrono v0.4.40 [INFO] [stderr] Checking solana-inflation v2.1.15 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking raw-cpuid v11.6.0 [INFO] [stderr] Checking serde-big-array v0.5.1 [INFO] [stderr] Checking block-buffer v0.9.0 [INFO] [stderr] Checking crypto-mac v0.8.0 [INFO] [stderr] Checking sha2 v0.9.9 [INFO] [stderr] Checking hmac v0.8.1 [INFO] [stderr] Checking curve25519-dalek v3.2.0 [INFO] [stderr] Checking hmac-drbg v0.3.0 [INFO] [stderr] Checking inout v0.1.4 [INFO] [stderr] Checking universal-hash v0.5.1 [INFO] [stderr] Checking sha3 v0.10.8 [INFO] [stderr] Checking ark-serialize v0.4.2 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Checking pbkdf2 v0.11.0 [INFO] [stderr] Checking cipher v0.4.4 [INFO] [stderr] Checking solana-packet v2.1.15 [INFO] [stderr] Checking polyval v0.6.2 [INFO] [stderr] Checking aead v0.5.2 [INFO] [stderr] Checking tokio-util v0.7.16 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking solana-sha256-hasher v2.1.15 [INFO] [stderr] Checking tokio-rustls v0.24.1 [INFO] [stderr] Checking idna v1.1.0 [INFO] [stderr] Checking ark-ff v0.4.2 [INFO] [stderr] Checking async-compression v0.4.32 [INFO] [stderr] Checking jsonrpc-core v18.0.0 [INFO] [stderr] Checking sha1 v0.10.6 [INFO] [stderr] Checking ctr v0.9.2 [INFO] [stderr] Checking aes v0.8.4 [INFO] [stderr] Checking url v2.5.4 [INFO] [stderr] Checking zstd v0.13.3 [INFO] [stderr] Checking rustls-platform-verifier v0.6.1 [INFO] [stderr] Checking ed25519-dalek v1.0.1 [INFO] [stderr] Checking h2 v0.3.27 [INFO] [stderr] Checking h2 v0.4.12 [INFO] [stderr] Checking quinn-proto v0.11.13 [INFO] [stderr] Checking solana-signature v2.1.15 [INFO] [stderr] Checking ed25519-dalek-bip32 v0.2.0 [INFO] [stderr] Checking tokio-stream v0.1.17 [INFO] [stderr] Checking tower v0.5.2 [INFO] [stderr] Checking tungstenite v0.20.1 [INFO] [stderr] Checking serde_qs v0.13.0 [INFO] [stderr] Checking solana-nostd-keccak v0.1.3 [INFO] [stderr] Checking aes-gcm-siv v0.11.1 [INFO] [stderr] Checking quanta v0.12.6 [INFO] [stderr] Checking governor v0.6.3 [INFO] [stderr] Checking solana-pubkey v2.1.15 [INFO] [stderr] Checking solana-curve25519 v2.1.15 [INFO] [stderr] Checking solana-instruction v2.1.15 [INFO] [stderr] Checking solana-sysvar-id v2.1.15 [INFO] [stderr] Checking solana-inline-spl v2.1.15 [INFO] [stderr] Checking solana-instruction v0.0.3 [INFO] [stderr] Checking solana-sdk-ids v0.0.3 [INFO] [stderr] Checking solana-clock v2.1.15 [INFO] [stderr] Checking solana-epoch-schedule v2.1.15 [INFO] [stderr] Checking solana-slot-hashes v2.1.15 [INFO] [stderr] Checking solana-slot-history v2.1.15 [INFO] [stderr] Checking solana-last-restart-slot v2.1.15 [INFO] [stderr] Checking solana-rent v2.1.15 [INFO] [stderr] Checking tokio-tungstenite v0.20.1 [INFO] [stderr] Checking solana-feature-set v2.1.15 [INFO] [stderr] Checking solana-address-lookup-table-interface v0.0.2 [INFO] [stderr] Checking solana-program-error v2.1.15 [INFO] [stderr] Checking solana-bincode v2.1.15 [INFO] [stderr] Checking solana-serialize-utils v2.1.15 [INFO] [stderr] Checking solana-stable-layout v2.1.15 [INFO] [stderr] Checking solana-transaction-error v2.1.15 [INFO] [stderr] Checking spl-associated-token-account-client v2.0.0 [INFO] [stderr] Checking solana-account-info v2.1.15 [INFO] [stderr] Checking solana-program-pack v2.1.15 [INFO] [stderr] Checking spl-discriminator v0.4.1 [INFO] [stderr] Checking solana-program-entrypoint v2.1.15 [INFO] [stderr] Checking solana-cpi v2.1.15 [INFO] [stderr] Checking spl-memo v6.0.0 [INFO] [stderr] Checking solana-version v2.1.15 [INFO] [stderr] Checking solana-secp256k1-recover v2.1.15 [INFO] [stderr] Checking solana-program v2.1.15 [INFO] [stderr] Checking hyper v0.14.32 [INFO] [stderr] Checking hyper v1.7.0 [INFO] [stderr] Checking hyper-util v0.1.10 [INFO] [stderr] Checking ark-poly v0.4.2 [INFO] [stderr] Checking ark-ec v0.4.2 [INFO] [stderr] Checking solana-account v2.1.15 [INFO] [stderr] Checking spl-program-error v0.5.0 [INFO] [stderr] Checking spl-program-error v0.6.0 [INFO] [stderr] Checking spl-discriminator v0.3.0 [INFO] [stderr] Checking spl-token v7.0.0 [INFO] [stderr] Checking spl-memo v5.0.0 [INFO] [stderr] Checking spl-token v6.0.0 [INFO] [stderr] Checking spl-token v4.0.2 [INFO] [stderr] Checking solana-account-decoder-client-types v2.1.15 [INFO] [stderr] Checking hyper-rustls v0.24.2 [INFO] [stderr] Checking reqwest v0.11.27 [INFO] [stderr] Checking ark-bn254 v0.4.0 [INFO] [stderr] Checking solana-bn254 v2.1.15 [INFO] [stderr] Checking reqwest-middleware v0.2.5 [INFO] [stderr] Compiling native-tls v0.2.14 [INFO] [stderr] Checking solana-secp256r1-program v2.1.15 [INFO] [stderr] Checking solana-sdk v2.1.15 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking hyper-tls v0.6.0 [INFO] [stderr] Checking reqwest v0.12.15 [INFO] [stderr] Checking solana-zk-sdk v2.1.15 [INFO] [stderr] Checking solana-metrics v2.1.15 [INFO] [stderr] Checking solana-compute-budget v2.1.15 [INFO] [stderr] Checking solana-timings v2.1.15 [INFO] [stderr] Checking solana-vote v2.1.15 [INFO] [stderr] Checking solana-zk-token-sdk v2.1.15 [INFO] [stderr] Checking solana-transaction-status-client-types v2.1.15 [INFO] [stderr] Checking solana-net-utils v2.1.15 [INFO] [stderr] Checking entropy-types v0.0.1 [INFO] [stderr] Checking solana-program-runtime v2.1.15 [INFO] [stderr] Checking solana-connection-cache v2.1.15 [INFO] [stderr] Checking solana-vote-program v2.1.15 [INFO] [stderr] Checking solana-config-program v2.1.15 [INFO] [stderr] Checking solana-rpc-client-api v2.1.15 [INFO] [stderr] Checking spl-pod v0.3.1 [INFO] [stderr] Checking spl-pod v0.5.0 [INFO] [stderr] Checking spl-token-confidential-transfer-ciphertext-arithmetic v0.2.1 [INFO] [stderr] Checking spl-token-confidential-transfer-proof-generation v0.2.0 [INFO] [stderr] Checking spl-token-confidential-transfer-proof-generation v0.3.0 [INFO] [stderr] Checking solana-transaction-metrics-tracker v2.1.15 [INFO] [stderr] Checking spl-type-length-value v0.5.0 [INFO] [stderr] Checking spl-token-group-interface v0.3.0 [INFO] [stderr] Checking solana-streamer v2.1.15 [INFO] [stderr] Checking spl-tlv-account-resolution v0.7.0 [INFO] [stderr] Checking spl-token-metadata-interface v0.4.0 [INFO] [stderr] Checking spl-type-length-value v0.7.0 [INFO] [stderr] Checking spl-token-confidential-transfer-proof-extraction v0.2.1 [INFO] [stderr] Checking spl-token-group-interface v0.5.0 [INFO] [stderr] Checking spl-tlv-account-resolution v0.9.0 [INFO] [stderr] Checking spl-token-metadata-interface v0.6.0 [INFO] [stderr] Checking spl-elgamal-registry v0.1.1 [INFO] [stderr] Checking spl-transfer-hook-interface v0.7.0 [INFO] [stderr] Checking spl-token-2022 v4.0.0 [INFO] [stderr] Checking spl-transfer-hook-interface v0.9.0 [INFO] [stderr] Checking spl-token-2022 v6.0.0 [INFO] [stderr] Checking spl-token-2022 v7.0.0 [INFO] [stderr] Checking solana-rpc-client v2.1.15 [INFO] [stderr] Checking solana-quic-client v2.1.15 [INFO] [stderr] Checking solana-udp-client v2.1.15 [INFO] [stderr] Checking solana-account-decoder v2.1.15 [INFO] [stderr] Checking solana-thin-client v2.1.15 [INFO] [stderr] Checking solana-rpc-client-nonce-utils v2.1.15 [INFO] [stderr] Checking spl-associated-token-account v6.0.0 [INFO] [stderr] Checking steel v4.0.3 [INFO] [stderr] Checking solana-pubsub-client v2.1.15 [INFO] [stderr] Checking jupiter-swap-api-client v0.1.0 (https://github.com/jup-ag/jupiter-swap-api-client?branch=2.1#ae29bc75) [INFO] [stderr] Checking entropy-api v0.1.4 [INFO] [stderr] Checking solana-tpu-client v2.1.15 [INFO] [stderr] Checking ore-api v3.7.7 (/opt/rustwide/workdir/api) [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> api/src/sdk.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | data: data, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> api/src/sdk.rs:508:13 [INFO] [stdout] | [INFO] [stdout] 508 | commit: commit, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `commit` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking solana-client v2.1.15 [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> api/src/sdk.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | data: data, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> api/src/sdk.rs:508:13 [INFO] [stdout] | [INFO] [stdout] 508 | commit: commit, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `commit` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u8` -> `u8`) [INFO] [stdout] --> api/src/sdk.rs:73:23 [INFO] [stdout] | [INFO] [stdout] 73 | strategy: strategy as u8, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try: `strategy` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u8` -> `u8`) [INFO] [stdout] --> api/src/sdk.rs:73:23 [INFO] [stdout] | [INFO] [stdout] 73 | strategy: strategy as u8, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try: `strategy` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:334:12 [INFO] [stdout] | [INFO] [stdout] 334 | if total >= 2 && total <= 6 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=6).contains(&total)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:342:12 [INFO] [stdout] | [INFO] [stdout] 342 | if total >= 8 && total <= 12 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(8..=12).contains(&total)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:415:12 [INFO] [stdout] | [INFO] [stdout] 415 | if die_value >= 1 && die_value <= 6 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(1..=6).contains(&die_value)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual saturating add detected [INFO] [stdout] --> api/src/state/craps_position.rs:429:9 [INFO] [stdout] | [INFO] [stdout] 429 | / if self.ride_wins_count < 255 { [INFO] [stdout] 430 | | self.ride_wins_count += 1; [INFO] [stdout] 431 | | } [INFO] [stdout] | |_________^ help: use instead: `self.ride_wins_count = self.ride_wins_count.saturating_add(1);` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implicit_saturating_add [INFO] [stdout] = note: `#[warn(clippy::implicit_saturating_add)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:438:12 [INFO] [stdout] | [INFO] [stdout] 438 | if total >= 2 && total <= 6 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=6).contains(&total)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:443:12 [INFO] [stdout] | [INFO] [stdout] 443 | if total >= 8 && total <= 12 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(8..=12).contains(&total)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual saturating add detected [INFO] [stdout] --> api/src/state/craps_position.rs:465:13 [INFO] [stdout] | [INFO] [stdout] 465 | / if self.replay_counts[idx] < 255 { [INFO] [stdout] 466 | | self.replay_counts[idx] += 1; [INFO] [stdout] 467 | | } [INFO] [stdout] | |_____________^ help: use instead: `self.replay_counts[idx] = self.replay_counts[idx].saturating_add(1);` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implicit_saturating_add [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:545:8 [INFO] [stdout] | [INFO] [stdout] 545 | if sum >= 2 && sum <= 12 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=12).contains(&sum)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:563:5 [INFO] [stdout] | [INFO] [stdout] 563 | sum >= 2 && sum <= 12 && sum != 7 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=12).contains(&sum)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `.is_multiple_of()` [INFO] [stdout] --> api/src/state/round.rs:125:9 [INFO] [stdout] | [INFO] [stdout] 125 | rng.reverse_bits() % 625 == 0 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `rng.reverse_bits().is_multiple_of(625)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_multiple_of [INFO] [stdout] = note: `#[warn(clippy::manual_is_multiple_of)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/round.rs:179:12 [INFO] [stdout] | [INFO] [stdout] 179 | if prediction < 2 || prediction > 12 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(2..=12).contains(&prediction)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:334:12 [INFO] [stdout] | [INFO] [stdout] 334 | if total >= 2 && total <= 6 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=6).contains(&total)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:342:12 [INFO] [stdout] | [INFO] [stdout] 342 | if total >= 8 && total <= 12 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(8..=12).contains(&total)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:415:12 [INFO] [stdout] | [INFO] [stdout] 415 | if die_value >= 1 && die_value <= 6 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(1..=6).contains(&die_value)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual saturating add detected [INFO] [stdout] --> api/src/state/craps_position.rs:429:9 [INFO] [stdout] | [INFO] [stdout] 429 | / if self.ride_wins_count < 255 { [INFO] [stdout] 430 | | self.ride_wins_count += 1; [INFO] [stdout] 431 | | } [INFO] [stdout] | |_________^ help: use instead: `self.ride_wins_count = self.ride_wins_count.saturating_add(1);` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implicit_saturating_add [INFO] [stdout] = note: `#[warn(clippy::implicit_saturating_add)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:438:12 [INFO] [stdout] | [INFO] [stdout] 438 | if total >= 2 && total <= 6 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=6).contains(&total)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:443:12 [INFO] [stdout] | [INFO] [stdout] 443 | if total >= 8 && total <= 12 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(8..=12).contains(&total)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual saturating add detected [INFO] [stdout] --> api/src/state/craps_position.rs:465:13 [INFO] [stdout] | [INFO] [stdout] 465 | / if self.replay_counts[idx] < 255 { [INFO] [stdout] 466 | | self.replay_counts[idx] += 1; [INFO] [stdout] 467 | | } [INFO] [stdout] | |_____________^ help: use instead: `self.replay_counts[idx] = self.replay_counts[idx].saturating_add(1);` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implicit_saturating_add [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:545:8 [INFO] [stdout] | [INFO] [stdout] 545 | if sum >= 2 && sum <= 12 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=12).contains(&sum)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/craps_position.rs:563:5 [INFO] [stdout] | [INFO] [stdout] 563 | sum >= 2 && sum <= 12 && sum != 7 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=12).contains(&sum)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking ore-program v3.7.7 (/opt/rustwide/workdir/program) [INFO] [stderr] Checking ore-cli v3.7.7 (/opt/rustwide/workdir/cli) [INFO] [stdout] warning: manual implementation of `.is_multiple_of()` [INFO] [stdout] --> api/src/state/round.rs:125:9 [INFO] [stdout] | [INFO] [stdout] 125 | rng.reverse_bits() % 625 == 0 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `rng.reverse_bits().is_multiple_of(625)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_multiple_of [INFO] [stdout] = note: `#[warn(clippy::manual_is_multiple_of)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/round.rs:179:12 [INFO] [stdout] | [INFO] [stdout] 179 | if prediction < 2 || prediction > 12 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(2..=12).contains(&prediction)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/round.rs:313:21 [INFO] [stdout] | [INFO] [stdout] 313 | assert!(die1 >= 1 && die1 <= 6, "Die 1 out of range: {}", die1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use: `(1..=6).contains(&die1)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/round.rs:314:21 [INFO] [stdout] | [INFO] [stdout] 314 | assert!(die2 >= 1 && die2 <= 6, "Die 2 out of range: {}", die2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use: `(1..=6).contains(&die2)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> api/src/state/round.rs:316:21 [INFO] [stdout] | [INFO] [stdout] 316 | assert!(sum >= 2 && sum <= 12, "Sum out of range: {}", sum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=12).contains(&sum)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `custom-heap` [INFO] [stdout] --> program/src/lib.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 73 | entrypoint!(process_instruction); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `debug`, `default`, `devnet`, and `localnet` [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: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::custom_heap_default` which comes from the expansion of the macro `entrypoint` (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] --> program/src/lib.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 73 | entrypoint!(process_instruction); [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`, `qurt`, `redox`, `rtems`, `solaris`, and `solid_asp3` and 14 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 macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `custom-panic` [INFO] [stdout] --> program/src/lib.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 73 | entrypoint!(process_instruction); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `debug`, `default`, `devnet`, and `localnet` [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 macro `entrypoint` (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] --> program/src/lib.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 73 | entrypoint!(process_instruction); [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`, `qurt`, `redox`, `rtems`, `solaris`, and `solid_asp3` and 14 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 macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `custom-heap` [INFO] [stdout] --> program/src/lib.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 73 | entrypoint!(process_instruction); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `debug`, `default`, `devnet`, and `localnet` [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: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::custom_heap_default` which comes from the expansion of the macro `entrypoint` (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] --> program/src/lib.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 73 | entrypoint!(process_instruction); [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`, `qurt`, `redox`, `rtems`, `solaris`, and `solid_asp3` and 14 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 macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `custom-panic` [INFO] [stdout] --> program/src/lib.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 73 | entrypoint!(process_instruction); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `debug`, `default`, `devnet`, and `localnet` [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 macro `entrypoint` (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] --> program/src/lib.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 73 | entrypoint!(process_instruction); [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`, `qurt`, `redox`, `rtems`, `solaris`, and `solid_asp3` and 14 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 macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fire_count` [INFO] [stdout] --> program/src/craps/settle.rs:1089:21 [INFO] [stdout] | [INFO] [stdout] 1089 | let fire_count = craps_position.record_fire_point(point); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fire_count` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `replay_count` [INFO] [stdout] --> program/src/craps/settle.rs:1096:21 [INFO] [stdout] | [INFO] [stdout] 1096 | let replay_count = craps_position.record_replay_point(point); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_replay_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:173:13 [INFO] [stdout] | [INFO] [stdout] 173 | sol_log(&format!("PlaceCrapsBet: type={}, point={}, amount={}", bet_type, point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("PlaceCrapsBet: type={}, point={}, amount={}", bet_type, point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:343:21 [INFO] [stdout] | [INFO] [stdout] 343 | sol_log(&format!("Pass Line bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Pass Line bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:354:21 [INFO] [stdout] | [INFO] [stdout] 354 | sol_log(&format!("Don't Pass bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Don't Pass bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:369:21 [INFO] [stdout] | [INFO] [stdout] 369 | sol_log(&format!("Pass Odds bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Pass Odds bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:384:21 [INFO] [stdout] | [INFO] [stdout] 384 | sol_log(&format!("Don't Pass Odds bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Don't Pass Odds bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:397:25 [INFO] [stdout] | [INFO] [stdout] 397 | sol_log(&format!("Come bet placed on {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Come bet placed on {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:409:25 [INFO] [stdout] | [INFO] [stdout] 409 | sol_log(&format!("Don't Come bet placed on {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Don't Come bet placed on {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:425:25 [INFO] [stdout] | [INFO] [stdout] 425 | sol_log(&format!("Come Odds placed on {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Come Odds placed on {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:441:25 [INFO] [stdout] | [INFO] [stdout] 441 | sol_log(&format!("Don't Come Odds placed on {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Don't Come Odds placed on {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:454:25 [INFO] [stdout] | [INFO] [stdout] 454 | sol_log(&format!("Place bet on {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Place bet on {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:473:25 [INFO] [stdout] | [INFO] [stdout] 473 | sol_log(&format!("Hardway bet on {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Hardway bet on {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:484:21 [INFO] [stdout] | [INFO] [stdout] 484 | sol_log(&format!("Field bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Field bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:491:21 [INFO] [stdout] | [INFO] [stdout] 491 | sol_log(&format!("Any Seven bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Any Seven bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:498:21 [INFO] [stdout] | [INFO] [stdout] 498 | sol_log(&format!("Any Craps bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Any Craps bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:505:21 [INFO] [stdout] | [INFO] [stdout] 505 | sol_log(&format!("Yo Eleven bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Yo Eleven bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:512:21 [INFO] [stdout] | [INFO] [stdout] 512 | sol_log(&format!("Aces (2) bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Aces (2) bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:519:21 [INFO] [stdout] | [INFO] [stdout] 519 | sol_log(&format!("Twelve bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Twelve bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:529:29 [INFO] [stdout] | [INFO] [stdout] 529 | sol_log(&format!("Yes bet on sum {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Yes bet on sum {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:547:29 [INFO] [stdout] | [INFO] [stdout] 547 | sol_log(&format!("No bet on sum {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("No bet on sum {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:564:25 [INFO] [stdout] | [INFO] [stdout] 564 | sol_log(&format!("Next bet on sum {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Next bet on sum {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:623:13 [INFO] [stdout] | [INFO] [stdout] 623 | sol_log(&format!("Total wagered: {}, House bankroll: {}, Reserved payouts: {}", [INFO] [stdout] | _____________^ [INFO] [stdout] 624 | | craps_position.total_wagered, [INFO] [stdout] 625 | | craps_game.house_bankroll, [INFO] [stdout] 626 | | craps_game.reserved_payouts [INFO] [stdout] 627 | | ).as_str()); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 623 ~ sol_log(format!("Total wagered: {}, House bankroll: {}, Reserved payouts: {}", [INFO] [stdout] 624 + craps_position.total_wagered, [INFO] [stdout] 625 + craps_game.house_bankroll, [INFO] [stdout] 626 + craps_game.reserved_payouts [INFO] [stdout] 627 ~ ).as_str()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/settle.rs:71:21 [INFO] [stdout] | [INFO] [stdout] 71 | sol_log(&format!("Winning square mismatch: expected {}, got {}", actual_winning_square, winning_square).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Winning square mismatch: expected {}, got {}", actual_winning_square, winning_square).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/settle.rs:142:21 [INFO] [stdout] | [INFO] [stdout] 142 | sol_log(&format!("Refunded {} lamports from old epoch", total_refund).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Refunded {} lamports from old epoch", total_refund).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> program/src/craps/settle.rs:630:5 [INFO] [stdout] | [INFO] [stdout] 630 | / if craps_position.mugsy_bet > 0 { [INFO] [stdout] 631 | | if dice_sum == 7 { [INFO] [stdout] 632 | | let (num, den) = if craps_position.is_mugsy_comeout() { [INFO] [stdout] 633 | | (MUGSY_COMEOUT_7_PAYOUT_NUM, MUGSY_COMEOUT_7_PAYOUT_DEN) [INFO] [stdout] ... | [INFO] [stdout] 651 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 630 ~ if craps_position.mugsy_bet > 0 [INFO] [stdout] 631 ~ && dice_sum == 7 { [INFO] [stdout] 632 | let (num, den) = if craps_position.is_mugsy_comeout() { [INFO] [stdout] ... [INFO] [stdout] 649 | } [INFO] [stdout] 650 ~ // Note: Mugsy state transitions happen in the LINE BETS section when point is established [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/settle.rs:1301:25 [INFO] [stdout] | [INFO] [stdout] 1301 | sol_log(&format!( [INFO] [stdout] | _________________________^ [INFO] [stdout] 1302 | | "WARNING: House insolvent. Paid: {}, Debt recorded: {}", [INFO] [stdout] 1303 | | payable_amount, debt_amount [INFO] [stdout] 1304 | | ).as_str()); [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 1301 ~ sol_log(format!( [INFO] [stdout] 1302 + "WARNING: House insolvent. Paid: {}, Debt recorded: {}", [INFO] [stdout] 1303 + payable_amount, debt_amount [INFO] [stdout] 1304 ~ ).as_str()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/claim.rs:83:13 [INFO] [stdout] | [INFO] [stdout] 83 | sol_log(&format!("Claiming {} CRAP tokens from craps vault", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Claiming {} CRAP tokens from craps vault", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/claim.rs:118:13 [INFO] [stdout] | [INFO] [stdout] 118 | sol_log(&format!("Claimed {} CRAP tokens", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Claimed {} CRAP tokens", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/fund_house.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | sol_log(&format!("FundCrapsHouse: amount={}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("FundCrapsHouse: amount={}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/fund_house.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | sol_log(&format!("House bankroll is now: {} CRAP tokens", craps_game.house_bankroll).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("House bankroll is now: {} CRAP tokens", craps_game.house_bankroll).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/force_settle.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | sol_log(&format!( [INFO] [stdout] | _____________^ [INFO] [stdout] 191 | | "Force settled: forfeited={}, reserved released", [INFO] [stdout] 192 | | total_forfeited [INFO] [stdout] 193 | | ).as_str()); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 190 ~ sol_log(format!( [INFO] [stdout] 191 + "Force settled: forfeited={}, reserved released", [INFO] [stdout] 192 + total_forfeited [INFO] [stdout] 193 ~ ).as_str()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/claim_debt.rs:121:13 [INFO] [stdout] | [INFO] [stdout] 121 | sol_log(&format!( [INFO] [stdout] | _____________^ [INFO] [stdout] 122 | | "Debt claimed: paid={}, remaining_debt={}", [INFO] [stdout] 123 | | claimable_amount, craps_position.unpaid_debt [INFO] [stdout] 124 | | ).as_str()); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 121 ~ sol_log(format!( [INFO] [stdout] 122 + "Debt claimed: paid={}, remaining_debt={}", [INFO] [stdout] 123 + claimable_amount, craps_position.unpaid_debt [INFO] [stdout] 124 ~ ).as_str()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `.is_multiple_of()` [INFO] [stdout] --> program/src/craps/utils.rs:27:28 [INFO] [stdout] | [INFO] [stdout] 27 | square < BOARD_SIZE && square % 7 == 0 [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: replace with: `square.is_multiple_of(7)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_multiple_of [INFO] [stdout] = note: `#[warn(clippy::manual_is_multiple_of)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> program/src/craps/utils.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 93 | if d2 >= 1 && d2 <= 6 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use: `(1..=6).contains(&d2)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> program/src/craps/utils.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 140 | if sum >= 2 && sum <= 12 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=12).contains(&sum)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> program/src/craps/utils.rs:158:5 [INFO] [stdout] | [INFO] [stdout] 158 | sum >= 2 && sum <= 12 && sum != 7 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=12).contains(&sum)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> program/src/mining/deploy.rs:20:32 [INFO] [stdout] | [INFO] [stdout] 20 | if dice_prediction != 0 && (dice_prediction < 2 || dice_prediction > 12) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(2..=12).contains(&dice_prediction)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> program/src/mining/deploy.rs:116:44 [INFO] [stdout] | [INFO] [stdout] 116 | match AutomationStrategy::from_u64(automation.strategy as u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `automation.strategy` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `squares` [INFO] [stdout] --> program/src/mining/deploy.rs:119:26 [INFO] [stdout] | [INFO] [stdout] 119 | for i in 0..BOARD_SIZE { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] = note: `#[warn(clippy::needless_range_loop)]` on by default [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 119 - for i in 0..BOARD_SIZE { [INFO] [stdout] 119 + for (i, ) in squares.iter_mut().enumerate().take(BOARD_SIZE) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> program/src/mining/deploy.rs:125:35 [INFO] [stdout] | [INFO] [stdout] 125 | let num_squares = ((automation.mask & 0xFF) as u64).min(BOARD_SIZE as u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((automation.mask & 0xFF))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `squares` [INFO] [stdout] --> program/src/mining/deploy.rs:133:18 [INFO] [stdout] | [INFO] [stdout] 133 | for i in 0..BOARD_SIZE { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 133 - for i in 0..BOARD_SIZE { [INFO] [stdout] 133 + for (i, ) in squares.iter_mut().enumerate().take(BOARD_SIZE) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/deploy.rs:236:44 [INFO] [stdout] | [INFO] [stdout] 236 | miner_info.collect(CHECKPOINT_FEE, &signer_info)?; [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `signer_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/deploy.rs:246:48 [INFO] [stdout] | [INFO] [stdout] 246 | automation_info.send(total_amount, &round_info); [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `round_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/deploy.rs:247:50 [INFO] [stdout] | [INFO] [stdout] 247 | automation_info.send(automation.fee, &signer_info); [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `signer_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/deploy.rs:277:9 [INFO] [stdout] | [INFO] [stdout] 277 | / &format!( [INFO] [stdout] 278 | | "Round #{}: deploying {:.2} RNG to {} squares", [INFO] [stdout] 279 | | round.id, [INFO] [stdout] 280 | | rng_amount, [INFO] [stdout] ... | [INFO] [stdout] 283 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 277 ~ format!( [INFO] [stdout] 278 + "Round #{}: deploying {:.2} RNG to {} squares", [INFO] [stdout] 279 + round.id, [INFO] [stdout] 280 + rng_amount, [INFO] [stdout] 281 + total_squares, [INFO] [stdout] 282 + ) [INFO] [stdout] 283 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> program/src/mining/deploy.rs:295:32 [INFO] [stdout] | [INFO] [stdout] 295 | let remaining_needed = num_squares as u64 - selected as u64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `num_squares` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fire_count` [INFO] [stdout] --> program/src/craps/settle.rs:1089:21 [INFO] [stdout] | [INFO] [stdout] 1089 | let fire_count = craps_position.record_fire_point(point); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fire_count` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `replay_count` [INFO] [stdout] --> program/src/craps/settle.rs:1096:21 [INFO] [stdout] | [INFO] [stdout] 1096 | let replay_count = craps_position.record_replay_point(point); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_replay_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:31:17 [INFO] [stdout] | [INFO] [stdout] 31 | sol_log(&format!("Round account is empty").as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Round account is empty").as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> program/src/mining/checkpoint.rs:31:18 [INFO] [stdout] | [INFO] [stdout] 31 | sol_log(&format!("Round account is empty").as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Round account is empty".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 39 | sol_log(&format!("Round ID: {}", round.id).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Round ID: {}", round.id).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:41:17 [INFO] [stdout] | [INFO] [stdout] 41 | sol_log(&format!("Round not valid").as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Round not valid").as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> program/src/mining/checkpoint.rs:41:18 [INFO] [stdout] | [INFO] [stdout] 41 | sol_log(&format!("Round not valid").as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Round not valid".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:48:17 [INFO] [stdout] | [INFO] [stdout] 48 | sol_log(&format!("Round expired").as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Round expired").as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> program/src/mining/checkpoint.rs:48:18 [INFO] [stdout] | [INFO] [stdout] 48 | sol_log(&format!("Round expired").as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Round expired".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`usize` -> `usize`) [INFO] [stdout] --> program/src/mining/checkpoint.rs:68:30 [INFO] [stdout] | [INFO] [stdout] 68 | let winning_square = round.winning_square(r) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `round.winning_square(r)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:84:21 [INFO] [stdout] | [INFO] [stdout] 84 | sol_log(&format!("Base rewards: {} SOL", lamports_to_sol(rewards_sol)).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Base rewards: {} SOL", lamports_to_sol(rewards_sol)).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:94:17 [INFO] [stdout] | [INFO] [stdout] 94 | / &format!( [INFO] [stdout] 95 | | "Dice: prediction={}, roll={} ({}+{})", [INFO] [stdout] 96 | | dice_prediction, dice_sum, round.dice_results[0], round.dice_results[1] [INFO] [stdout] 97 | | ) [INFO] [stdout] 98 | | .as_str(), [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 94 ~ format!( [INFO] [stdout] 95 + "Dice: prediction={}, roll={} ({}+{})", [INFO] [stdout] 96 + dice_prediction, dice_sum, round.dice_results[0], round.dice_results[1] [INFO] [stdout] 97 + ) [INFO] [stdout] 98 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:116:25 [INFO] [stdout] | [INFO] [stdout] 116 | / &format!( [INFO] [stdout] 117 | | "Safe mode rewards: {} ORE", [INFO] [stdout] 118 | | amount_to_ui_amount(rewards_ore, TOKEN_DECIMALS) [INFO] [stdout] 119 | | ) [INFO] [stdout] 120 | | .as_str(), [INFO] [stdout] | |_________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 116 ~ format!( [INFO] [stdout] 117 + "Safe mode rewards: {} ORE", [INFO] [stdout] 118 + amount_to_ui_amount(rewards_ore, TOKEN_DECIMALS) [INFO] [stdout] 119 + ) [INFO] [stdout] 120 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:124:25 [INFO] [stdout] | [INFO] [stdout] 124 | / &format!( [INFO] [stdout] 125 | | "Dice WIN! (predicted {}, rolled {}) rewards: {} ORE ({}x multiplier)", [INFO] [stdout] 126 | | dice_prediction, [INFO] [stdout] 127 | | dice_sum, [INFO] [stdout] ... | [INFO] [stdout] 131 | | .as_str(), [INFO] [stdout] | |_________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 124 ~ format!( [INFO] [stdout] 125 + "Dice WIN! (predicted {}, rolled {}) rewards: {} ORE ({}x multiplier)", [INFO] [stdout] 126 + dice_prediction, [INFO] [stdout] 127 + dice_sum, [INFO] [stdout] 128 + amount_to_ui_amount(rewards_ore, TOKEN_DECIMALS), [INFO] [stdout] 129 + Round::dice_multiplier(dice_prediction) as f64 / 100.0 [INFO] [stdout] 130 + ) [INFO] [stdout] 131 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:136:21 [INFO] [stdout] | [INFO] [stdout] 136 | / &format!( [INFO] [stdout] 137 | | "Dice MISS: predicted {}, rolled {}. No ORE rewards.", [INFO] [stdout] 138 | | dice_prediction, dice_sum [INFO] [stdout] 139 | | ) [INFO] [stdout] 140 | | .as_str(), [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 136 ~ format!( [INFO] [stdout] 137 + "Dice MISS: predicted {}, rolled {}. No ORE rewards.", [INFO] [stdout] 138 + dice_prediction, dice_sum [INFO] [stdout] 139 + ) [INFO] [stdout] 140 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:150:21 [INFO] [stdout] | [INFO] [stdout] 150 | / &format!( [INFO] [stdout] 151 | | "Motherlode rewards: {} ORE", [INFO] [stdout] 152 | | amount_to_ui_amount(motherload_rewards, TOKEN_DECIMALS) [INFO] [stdout] 153 | | ) [INFO] [stdout] 154 | | .as_str(), [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 150 ~ format!( [INFO] [stdout] 151 + "Motherlode rewards: {} ORE", [INFO] [stdout] 152 + amount_to_ui_amount(motherload_rewards, TOKEN_DECIMALS) [INFO] [stdout] 153 + ) [INFO] [stdout] 154 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:169:17 [INFO] [stdout] | [INFO] [stdout] 169 | sol_log(&format!("Refunding {} SOL", lamports_to_sol(refund_amount)).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Refunding {} SOL", lamports_to_sol(refund_amount)).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:188:38 [INFO] [stdout] | [INFO] [stdout] 188 | round_info.send(rewards_sol, &miner_info); [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `miner_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:191:34 [INFO] [stdout] | [INFO] [stdout] 191 | miner_info.send(bot_fee, &signer_info); [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `signer_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/reset.rs:38:54 [INFO] [stdout] | [INFO] [stdout] 38 | treasury_tokens_info.as_associated_token_account(&treasury_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: change this to: `treasury_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/reset.rs:38:74 [INFO] [stdout] | [INFO] [stdout] 38 | treasury_tokens_info.as_associated_token_account(&treasury_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `mint_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/reset.rs:181:42 [INFO] [stdout] | [INFO] [stdout] 181 | round_info.send(total_admin_fee, &fee_collector_info); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: change this to: `fee_collector_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/reset.rs:182:65 [INFO] [stdout] | [INFO] [stdout] 182 | round_info.send(round.total_deployed - total_admin_fee, &treasury_info); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `treasury_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/reset.rs:288:38 [INFO] [stdout] | [INFO] [stdout] 288 | round_info.send(total_admin_fee, &fee_collector_info); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: change this to: `fee_collector_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/reset.rs:289:35 [INFO] [stdout] | [INFO] [stdout] 289 | round_info.send(vault_amount, &treasury_info); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `treasury_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/automate.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 28 | &signer_info, [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `signer_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/automate.rs:98:44 [INFO] [stdout] | [INFO] [stdout] 98 | miner_info.collect(CHECKPOINT_FEE, &signer_info)?; [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `signer_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/recycle_sol.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | sol_log(&format!("Recycling {} SOL", lamports_to_sol(amount)).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Recycling {} SOL", lamports_to_sol(amount)).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/deposit.rs:24:38 [INFO] [stdout] | [INFO] [stdout] 24 | .as_associated_token_account(&signer_info.key, &MINT_ADDRESS)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: change this to: `signer_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/deposit.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | &payer_info, [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `payer_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/deposit.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | / &format!( [INFO] [stdout] 89 | | "Depositing {} ORE", [INFO] [stdout] 90 | | amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 91 | | ) [INFO] [stdout] 92 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 88 ~ format!( [INFO] [stdout] 89 + "Depositing {} ORE", [INFO] [stdout] 90 + amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 91 + ) [INFO] [stdout] 92 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/withdraw.rs:23:38 [INFO] [stdout] | [INFO] [stdout] 23 | .as_associated_token_account(&signer_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: change this to: `signer_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/withdraw.rs:23:56 [INFO] [stdout] | [INFO] [stdout] 23 | .as_associated_token_account(&signer_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `mint_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/withdraw.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | / &format!( [INFO] [stdout] 62 | | "Withdrawing {} ORE", [INFO] [stdout] 63 | | amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 64 | | ) [INFO] [stdout] 65 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 61 ~ format!( [INFO] [stdout] 62 + "Withdrawing {} ORE", [INFO] [stdout] 63 + amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 64 + ) [INFO] [stdout] 65 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/claim_yield.rs:28:38 [INFO] [stdout] | [INFO] [stdout] 28 | .as_associated_token_account(&treasury_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: change this to: `treasury_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/claim_yield.rs:28:58 [INFO] [stdout] | [INFO] [stdout] 28 | .as_associated_token_account(&treasury_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `mint_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/claim_yield.rs:45:52 [INFO] [stdout] | [INFO] [stdout] 45 | recipient_info.as_associated_token_account(&signer_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: change this to: `signer_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/claim_yield.rs:45:70 [INFO] [stdout] | [INFO] [stdout] 45 | recipient_info.as_associated_token_account(&signer_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `mint_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/claim_yield.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | / &format!( [INFO] [stdout] 64 | | "Claiming {} ORE", [INFO] [stdout] 65 | | amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 66 | | ) [INFO] [stdout] 67 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 63 ~ format!( [INFO] [stdout] 64 + "Claiming {} ORE", [INFO] [stdout] 65 + amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 66 + ) [INFO] [stdout] 67 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/claiming/claim_sol.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | sol_log(&format!("Claiming {} SOL", lamports_to_sol(amount)).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Claiming {} SOL", lamports_to_sol(amount)).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/claiming/claim_ore.rs:22:54 [INFO] [stdout] | [INFO] [stdout] 22 | treasury_tokens_info.as_associated_token_account(&treasury_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: change this to: `treasury_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/claiming/claim_ore.rs:22:74 [INFO] [stdout] | [INFO] [stdout] 22 | treasury_tokens_info.as_associated_token_account(&treasury_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `mint_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/claiming/claim_ore.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | / &format!( [INFO] [stdout] 47 | | "Claiming {} ORE", [INFO] [stdout] 48 | | amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 49 | | ) [INFO] [stdout] 50 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 46 ~ format!( [INFO] [stdout] 47 + "Claiming {} ORE", [INFO] [stdout] 48 + amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 49 + ) [INFO] [stdout] 50 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/admin/bury.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | / &format!( [INFO] [stdout] 104 | | "📈 Swapped {} SOL into {} ORE", [INFO] [stdout] 105 | | lamports_to_sol(pre_swap_sol_balance), [INFO] [stdout] 106 | | amount_to_ui_amount(total_ore, TOKEN_DECIMALS), [INFO] [stdout] 107 | | ) [INFO] [stdout] 108 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 103 ~ format!( [INFO] [stdout] 104 ~ "📈 Swapped {} SOL into {} ORE", [INFO] [stdout] 105 + lamports_to_sol(pre_swap_sol_balance), [INFO] [stdout] 106 + amount_to_ui_amount(total_ore, TOKEN_DECIMALS), [INFO] [stdout] 107 + ) [INFO] [stdout] 108 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/admin/bury.rs:136:9 [INFO] [stdout] | [INFO] [stdout] 136 | / &format!( [INFO] [stdout] 137 | | "🔥 Buried {} ORE", [INFO] [stdout] 138 | | amount_to_ui_amount(burn_amount, TOKEN_DECIMALS) [INFO] [stdout] 139 | | ) [INFO] [stdout] 140 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 136 ~ format!( [INFO] [stdout] 137 ~ "🔥 Buried {} ORE", [INFO] [stdout] 138 + amount_to_ui_amount(burn_amount, TOKEN_DECIMALS) [INFO] [stdout] 139 + ) [INFO] [stdout] 140 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:173:13 [INFO] [stdout] | [INFO] [stdout] 173 | sol_log(&format!("PlaceCrapsBet: type={}, point={}, amount={}", bet_type, point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("PlaceCrapsBet: type={}, point={}, amount={}", bet_type, point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:343:21 [INFO] [stdout] | [INFO] [stdout] 343 | sol_log(&format!("Pass Line bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Pass Line bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:354:21 [INFO] [stdout] | [INFO] [stdout] 354 | sol_log(&format!("Don't Pass bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Don't Pass bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:369:21 [INFO] [stdout] | [INFO] [stdout] 369 | sol_log(&format!("Pass Odds bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Pass Odds bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:384:21 [INFO] [stdout] | [INFO] [stdout] 384 | sol_log(&format!("Don't Pass Odds bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Don't Pass Odds bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:397:25 [INFO] [stdout] | [INFO] [stdout] 397 | sol_log(&format!("Come bet placed on {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Come bet placed on {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:409:25 [INFO] [stdout] | [INFO] [stdout] 409 | sol_log(&format!("Don't Come bet placed on {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Don't Come bet placed on {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:425:25 [INFO] [stdout] | [INFO] [stdout] 425 | sol_log(&format!("Come Odds placed on {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Come Odds placed on {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:441:25 [INFO] [stdout] | [INFO] [stdout] 441 | sol_log(&format!("Don't Come Odds placed on {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Don't Come Odds placed on {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:454:25 [INFO] [stdout] | [INFO] [stdout] 454 | sol_log(&format!("Place bet on {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Place bet on {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:473:25 [INFO] [stdout] | [INFO] [stdout] 473 | sol_log(&format!("Hardway bet on {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Hardway bet on {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:484:21 [INFO] [stdout] | [INFO] [stdout] 484 | sol_log(&format!("Field bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Field bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:491:21 [INFO] [stdout] | [INFO] [stdout] 491 | sol_log(&format!("Any Seven bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Any Seven bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:498:21 [INFO] [stdout] | [INFO] [stdout] 498 | sol_log(&format!("Any Craps bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Any Craps bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:505:21 [INFO] [stdout] | [INFO] [stdout] 505 | sol_log(&format!("Yo Eleven bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Yo Eleven bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:512:21 [INFO] [stdout] | [INFO] [stdout] 512 | sol_log(&format!("Aces (2) bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Aces (2) bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:519:21 [INFO] [stdout] | [INFO] [stdout] 519 | sol_log(&format!("Twelve bet placed: {}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Twelve bet placed: {}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> cli/src/main.rs:141:27 [INFO] [stdout] | [INFO] [stdout] 141 | read_keypair_file(&std::env::var("KEYPAIR").expect("Missing KEYPAIR env var")).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `std::env::var("KEYPAIR").expect("Missing KEYPAIR env var")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] = note: `#[warn(clippy::needless_borrows_for_generic_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:529:29 [INFO] [stdout] | [INFO] [stdout] 529 | sol_log(&format!("Yes bet on sum {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Yes bet on sum {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:547:29 [INFO] [stdout] | [INFO] [stdout] 547 | sol_log(&format!("No bet on sum {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("No bet on sum {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:564:25 [INFO] [stdout] | [INFO] [stdout] 564 | sol_log(&format!("Next bet on sum {}: {}", point, amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Next bet on sum {}: {}", point, amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stdout] --> cli/src/main.rs:161:12 [INFO] [stdout] | [INFO] [stdout] 161 | if let Ok(_) = rpc.get_account(&board_pda.0).await { [INFO] [stdout] | -------^^^^^-------------------------------------- help: try: `if rpc.get_account(&board_pda.0).await.is_ok()` [INFO] [stdout] | [INFO] [stdout] = note: this will change drop order of the result, as well as all temporaries [INFO] [stdout] = note: add `#[allow(clippy::redundant_pattern_matching)]` if this is important [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/place_bet.rs:623:13 [INFO] [stdout] | [INFO] [stdout] 623 | sol_log(&format!("Total wagered: {}, House bankroll: {}, Reserved payouts: {}", [INFO] [stdout] | _____________^ [INFO] [stdout] 624 | | craps_position.total_wagered, [INFO] [stdout] 625 | | craps_game.house_bankroll, [INFO] [stdout] 626 | | craps_game.reserved_payouts [INFO] [stdout] 627 | | ).as_str()); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 623 ~ sol_log(format!("Total wagered: {}, House bankroll: {}, Reserved payouts: {}", [INFO] [stdout] 624 + craps_position.total_wagered, [INFO] [stdout] 625 + craps_game.house_bankroll, [INFO] [stdout] 626 + craps_game.reserved_payouts [INFO] [stdout] 627 ~ ).as_str()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `println!` args [INFO] [stdout] --> cli/src/main.rs:347:41 [INFO] [stdout] | [INFO] [stdout] 347 | stake.rewards_factor.to_i80f48().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] = note: `#[warn(clippy::to_string_in_format_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/settle.rs:71:21 [INFO] [stdout] | [INFO] [stdout] 71 | sol_log(&format!("Winning square mismatch: expected {}, got {}", actual_winning_square, winning_square).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Winning square mismatch: expected {}, got {}", actual_winning_square, winning_square).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> cli/src/main.rs:566:32 [INFO] [stdout] | [INFO] [stdout] 566 | if dice_prediction != 0 && (dice_prediction < 2 || dice_prediction > 12) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(2..=12).contains(&dice_prediction)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/settle.rs:142:21 [INFO] [stdout] | [INFO] [stdout] 142 | sol_log(&format!("Refunded {} lamports from old epoch", total_refund).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Refunded {} lamports from old epoch", total_refund).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> cli/src/main.rs:608:32 [INFO] [stdout] | [INFO] [stdout] 608 | if dice_prediction != 0 && (dice_prediction < 2 || dice_prediction > 12) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(2..=12).contains(&dice_prediction)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stdout] --> cli/src/main.rs:690:13 [INFO] [stdout] | [INFO] [stdout] 690 | / if !expiry_slots.contains_key(&miner.round_id) { [INFO] [stdout] 691 | | if let Ok(round) = get_round(rpc, miner.round_id).await { [INFO] [stdout] 692 | | expiry_slots.insert(miner.round_id, round.expires_at); [INFO] [stdout] 693 | | } [INFO] [stdout] 694 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stdout] = note: `#[warn(clippy::map_entry)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 690 ~ if let std::collections::hash_map::Entry::Vacant(e) = expiry_slots.entry(miner.round_id) { [INFO] [stdout] 691 + if let Ok(round) = get_round(rpc, miner.round_id).await { [INFO] [stdout] 692 + e.insert(round.expires_at); [INFO] [stdout] 693 + } [INFO] [stdout] 694 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to use `.enumerate()` and immediately discard the index [INFO] [stdout] --> cli/src/main.rs:737:49 [INFO] [stdout] | [INFO] [stdout] 737 | for (_i, (_address, round)) in rounds.iter().enumerate() { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_enumerate_index [INFO] [stdout] = note: `#[warn(clippy::unused_enumerate_index)]` on by default [INFO] [stdout] help: remove the `.enumerate()` call [INFO] [stdout] | [INFO] [stdout] 737 - for (_i, (_address, round)) in rounds.iter().enumerate() { [INFO] [stdout] 737 + for (_address, round) in rounds.iter() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `println!` args [INFO] [stdout] --> cli/src/main.rs:826:50 [INFO] [stdout] | [INFO] [stdout] 826 | treasury.miner_rewards_factor.to_i80f48().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `println!` args [INFO] [stdout] --> cli/src/main.rs:830:50 [INFO] [stdout] | [INFO] [stdout] 830 | treasury.stake_rewards_factor.to_i80f48().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> program/src/craps/settle.rs:630:5 [INFO] [stdout] | [INFO] [stdout] 630 | / if craps_position.mugsy_bet > 0 { [INFO] [stdout] 631 | | if dice_sum == 7 { [INFO] [stdout] 632 | | let (num, den) = if craps_position.is_mugsy_comeout() { [INFO] [stdout] 633 | | (MUGSY_COMEOUT_7_PAYOUT_NUM, MUGSY_COMEOUT_7_PAYOUT_DEN) [INFO] [stdout] ... | [INFO] [stdout] 651 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 630 ~ if craps_position.mugsy_bet > 0 [INFO] [stdout] 631 ~ && dice_sum == 7 { [INFO] [stdout] 632 | let (num, den) = if craps_position.is_mugsy_comeout() { [INFO] [stdout] ... [INFO] [stdout] 649 | } [INFO] [stdout] 650 ~ // Note: Mugsy state transitions happen in the LINE BETS section when point is established [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> cli/src/main.rs:893:27 [INFO] [stdout] | [INFO] [stdout] 893 | let miner = get_miner(&rpc, authority).await?; [INFO] [stdout] | ^^^^ help: change this to: `rpc` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> cli/src/main.rs:914:15 [INFO] [stdout] | [INFO] [stdout] 914 | } else if dice_pred >= 2 && dice_pred <= 12 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=12).contains(&dice_pred)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> cli/src/main.rs:935:27 [INFO] [stdout] | [INFO] [stdout] 935 | let clock = get_clock(&rpc).await?; [INFO] [stdout] | ^^^^ help: change this to: `rpc` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> cli/src/main.rs:946:29 [INFO] [stdout] | [INFO] [stdout] 946 | let config = get_config(&rpc).await?; [INFO] [stdout] | ^^^^ help: change this to: `rpc` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> cli/src/main.rs:958:27 [INFO] [stdout] | [INFO] [stdout] 958 | let board = get_board(&rpc).await?; [INFO] [stdout] | ^^^^ help: change this to: `rpc` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> cli/src/main.rs:959:27 [INFO] [stdout] | [INFO] [stdout] 959 | let clock = get_clock(&rpc).await?; [INFO] [stdout] | ^^^^ help: change this to: `rpc` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/settle.rs:1301:25 [INFO] [stdout] | [INFO] [stdout] 1301 | sol_log(&format!( [INFO] [stdout] | _________________________^ [INFO] [stdout] 1302 | | "WARNING: House insolvent. Paid: {}, Debt recorded: {}", [INFO] [stdout] 1303 | | payable_amount, debt_amount [INFO] [stdout] 1304 | | ).as_str()); [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 1301 ~ sol_log(format!( [INFO] [stdout] 1302 + "WARNING: House insolvent. Paid: {}, Debt recorded: {}", [INFO] [stdout] 1303 + payable_amount, debt_amount [INFO] [stdout] 1304 ~ ).as_str()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> cli/src/main.rs:1273:17 [INFO] [stdout] | [INFO] [stdout] 1273 | return Err(anyhow::anyhow!("Failed to get program accounts: {}", err)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1273 - return Err(anyhow::anyhow!("Failed to get program accounts: {}", err)); [INFO] [stdout] 1273 + Err(anyhow::anyhow!("Failed to get program accounts: {}", err)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> cli/src/main.rs:1275:18 [INFO] [stdout] | [INFO] [stdout] 1275 | _ => return Err(anyhow::anyhow!("Failed to get program accounts: {}", err)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1275 - _ => return Err(anyhow::anyhow!("Failed to get program accounts: {}", err)), [INFO] [stdout] 1275 + _ => Err(anyhow::anyhow!("Failed to get program accounts: {}", err)), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/claim.rs:83:13 [INFO] [stdout] | [INFO] [stdout] 83 | sol_log(&format!("Claiming {} CRAP tokens from craps vault", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Claiming {} CRAP tokens from craps vault", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/claim.rs:118:13 [INFO] [stdout] | [INFO] [stdout] 118 | sol_log(&format!("Claimed {} CRAP tokens", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Claimed {} CRAP tokens", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/fund_house.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | sol_log(&format!("FundCrapsHouse: amount={}", amount).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("FundCrapsHouse: amount={}", amount).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/fund_house.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | sol_log(&format!("House bankroll is now: {} CRAP tokens", craps_game.house_bankroll).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("House bankroll is now: {} CRAP tokens", craps_game.house_bankroll).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> cli/src/main.rs:141:27 [INFO] [stdout] | [INFO] [stdout] 141 | read_keypair_file(&std::env::var("KEYPAIR").expect("Missing KEYPAIR env var")).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `std::env::var("KEYPAIR").expect("Missing KEYPAIR env var")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] = note: `#[warn(clippy::needless_borrows_for_generic_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stdout] --> cli/src/main.rs:161:12 [INFO] [stdout] | [INFO] [stdout] 161 | if let Ok(_) = rpc.get_account(&board_pda.0).await { [INFO] [stdout] | -------^^^^^-------------------------------------- help: try: `if rpc.get_account(&board_pda.0).await.is_ok()` [INFO] [stdout] | [INFO] [stdout] = note: this will change drop order of the result, as well as all temporaries [INFO] [stdout] = note: add `#[allow(clippy::redundant_pattern_matching)]` if this is important [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/force_settle.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | sol_log(&format!( [INFO] [stdout] | _____________^ [INFO] [stdout] 191 | | "Force settled: forfeited={}, reserved released", [INFO] [stdout] 192 | | total_forfeited [INFO] [stdout] 193 | | ).as_str()); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 190 ~ sol_log(format!( [INFO] [stdout] 191 + "Force settled: forfeited={}, reserved released", [INFO] [stdout] 192 + total_forfeited [INFO] [stdout] 193 ~ ).as_str()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/craps/claim_debt.rs:121:13 [INFO] [stdout] | [INFO] [stdout] 121 | sol_log(&format!( [INFO] [stdout] | _____________^ [INFO] [stdout] 122 | | "Debt claimed: paid={}, remaining_debt={}", [INFO] [stdout] 123 | | claimable_amount, craps_position.unpaid_debt [INFO] [stdout] 124 | | ).as_str()); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 121 ~ sol_log(format!( [INFO] [stdout] 122 + "Debt claimed: paid={}, remaining_debt={}", [INFO] [stdout] 123 + claimable_amount, craps_position.unpaid_debt [INFO] [stdout] 124 ~ ).as_str()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `.is_multiple_of()` [INFO] [stdout] --> program/src/craps/utils.rs:27:28 [INFO] [stdout] | [INFO] [stdout] 27 | square < BOARD_SIZE && square % 7 == 0 [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: replace with: `square.is_multiple_of(7)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_multiple_of [INFO] [stdout] = note: `#[warn(clippy::manual_is_multiple_of)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> program/src/craps/utils.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 93 | if d2 >= 1 && d2 <= 6 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use: `(1..=6).contains(&d2)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> program/src/craps/utils.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 140 | if sum >= 2 && sum <= 12 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=12).contains(&sum)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> program/src/craps/utils.rs:158:5 [INFO] [stdout] | [INFO] [stdout] 158 | sum >= 2 && sum <= 12 && sum != 7 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=12).contains(&sum)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `println!` args [INFO] [stdout] --> cli/src/main.rs:347:41 [INFO] [stdout] | [INFO] [stdout] 347 | stake.rewards_factor.to_i80f48().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] = note: `#[warn(clippy::to_string_in_format_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> program/src/mining/deploy.rs:20:32 [INFO] [stdout] | [INFO] [stdout] 20 | if dice_prediction != 0 && (dice_prediction < 2 || dice_prediction > 12) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(2..=12).contains(&dice_prediction)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> program/src/mining/deploy.rs:116:44 [INFO] [stdout] | [INFO] [stdout] 116 | match AutomationStrategy::from_u64(automation.strategy as u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `automation.strategy` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `squares` [INFO] [stdout] --> program/src/mining/deploy.rs:119:26 [INFO] [stdout] | [INFO] [stdout] 119 | for i in 0..BOARD_SIZE { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] = note: `#[warn(clippy::needless_range_loop)]` on by default [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 119 - for i in 0..BOARD_SIZE { [INFO] [stdout] 119 + for (i, ) in squares.iter_mut().enumerate().take(BOARD_SIZE) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> program/src/mining/deploy.rs:125:35 [INFO] [stdout] | [INFO] [stdout] 125 | let num_squares = ((automation.mask & 0xFF) as u64).min(BOARD_SIZE as u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `((automation.mask & 0xFF))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `squares` [INFO] [stdout] --> program/src/mining/deploy.rs:133:18 [INFO] [stdout] | [INFO] [stdout] 133 | for i in 0..BOARD_SIZE { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 133 - for i in 0..BOARD_SIZE { [INFO] [stdout] 133 + for (i, ) in squares.iter_mut().enumerate().take(BOARD_SIZE) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/deploy.rs:236:44 [INFO] [stdout] | [INFO] [stdout] 236 | miner_info.collect(CHECKPOINT_FEE, &signer_info)?; [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `signer_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/deploy.rs:246:48 [INFO] [stdout] | [INFO] [stdout] 246 | automation_info.send(total_amount, &round_info); [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `round_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/deploy.rs:247:50 [INFO] [stdout] | [INFO] [stdout] 247 | automation_info.send(automation.fee, &signer_info); [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `signer_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/deploy.rs:277:9 [INFO] [stdout] | [INFO] [stdout] 277 | / &format!( [INFO] [stdout] 278 | | "Round #{}: deploying {:.2} RNG to {} squares", [INFO] [stdout] 279 | | round.id, [INFO] [stdout] 280 | | rng_amount, [INFO] [stdout] ... | [INFO] [stdout] 283 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 277 ~ format!( [INFO] [stdout] 278 + "Round #{}: deploying {:.2} RNG to {} squares", [INFO] [stdout] 279 + round.id, [INFO] [stdout] 280 + rng_amount, [INFO] [stdout] 281 + total_squares, [INFO] [stdout] 282 + ) [INFO] [stdout] 283 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> program/src/mining/deploy.rs:295:32 [INFO] [stdout] | [INFO] [stdout] 295 | let remaining_needed = num_squares as u64 - selected as u64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `num_squares` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> cli/src/main.rs:566:32 [INFO] [stdout] | [INFO] [stdout] 566 | if dice_prediction != 0 && (dice_prediction < 2 || dice_prediction > 12) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(2..=12).contains(&dice_prediction)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] = note: `#[warn(clippy::manual_range_contains)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:31:17 [INFO] [stdout] | [INFO] [stdout] 31 | sol_log(&format!("Round account is empty").as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Round account is empty").as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> program/src/mining/checkpoint.rs:31:18 [INFO] [stdout] | [INFO] [stdout] 31 | sol_log(&format!("Round account is empty").as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Round account is empty".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 39 | sol_log(&format!("Round ID: {}", round.id).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Round ID: {}", round.id).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `!RangeInclusive::contains` implementation [INFO] [stdout] --> cli/src/main.rs:608:32 [INFO] [stdout] | [INFO] [stdout] 608 | if dice_prediction != 0 && (dice_prediction < 2 || dice_prediction > 12) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `!(2..=12).contains(&dice_prediction)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:41:17 [INFO] [stdout] | [INFO] [stdout] 41 | sol_log(&format!("Round not valid").as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Round not valid").as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> program/src/mining/checkpoint.rs:41:18 [INFO] [stdout] | [INFO] [stdout] 41 | sol_log(&format!("Round not valid").as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Round not valid".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:48:17 [INFO] [stdout] | [INFO] [stdout] 48 | sol_log(&format!("Round expired").as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Round expired").as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> program/src/mining/checkpoint.rs:48:18 [INFO] [stdout] | [INFO] [stdout] 48 | sol_log(&format!("Round expired").as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Round expired".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`usize` -> `usize`) [INFO] [stdout] --> program/src/mining/checkpoint.rs:68:30 [INFO] [stdout] | [INFO] [stdout] 68 | let winning_square = round.winning_square(r) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `round.winning_square(r)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:84:21 [INFO] [stdout] | [INFO] [stdout] 84 | sol_log(&format!("Base rewards: {} SOL", lamports_to_sol(rewards_sol)).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Base rewards: {} SOL", lamports_to_sol(rewards_sol)).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:94:17 [INFO] [stdout] | [INFO] [stdout] 94 | / &format!( [INFO] [stdout] 95 | | "Dice: prediction={}, roll={} ({}+{})", [INFO] [stdout] 96 | | dice_prediction, dice_sum, round.dice_results[0], round.dice_results[1] [INFO] [stdout] 97 | | ) [INFO] [stdout] 98 | | .as_str(), [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 94 ~ format!( [INFO] [stdout] 95 + "Dice: prediction={}, roll={} ({}+{})", [INFO] [stdout] 96 + dice_prediction, dice_sum, round.dice_results[0], round.dice_results[1] [INFO] [stdout] 97 + ) [INFO] [stdout] 98 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:116:25 [INFO] [stdout] | [INFO] [stdout] 116 | / &format!( [INFO] [stdout] 117 | | "Safe mode rewards: {} ORE", [INFO] [stdout] 118 | | amount_to_ui_amount(rewards_ore, TOKEN_DECIMALS) [INFO] [stdout] 119 | | ) [INFO] [stdout] 120 | | .as_str(), [INFO] [stdout] | |_________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 116 ~ format!( [INFO] [stdout] 117 + "Safe mode rewards: {} ORE", [INFO] [stdout] 118 + amount_to_ui_amount(rewards_ore, TOKEN_DECIMALS) [INFO] [stdout] 119 + ) [INFO] [stdout] 120 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:124:25 [INFO] [stdout] | [INFO] [stdout] 124 | / &format!( [INFO] [stdout] 125 | | "Dice WIN! (predicted {}, rolled {}) rewards: {} ORE ({}x multiplier)", [INFO] [stdout] 126 | | dice_prediction, [INFO] [stdout] 127 | | dice_sum, [INFO] [stdout] ... | [INFO] [stdout] 131 | | .as_str(), [INFO] [stdout] | |_________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 124 ~ format!( [INFO] [stdout] 125 + "Dice WIN! (predicted {}, rolled {}) rewards: {} ORE ({}x multiplier)", [INFO] [stdout] 126 + dice_prediction, [INFO] [stdout] 127 + dice_sum, [INFO] [stdout] 128 + amount_to_ui_amount(rewards_ore, TOKEN_DECIMALS), [INFO] [stdout] 129 + Round::dice_multiplier(dice_prediction) as f64 / 100.0 [INFO] [stdout] 130 + ) [INFO] [stdout] 131 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:136:21 [INFO] [stdout] | [INFO] [stdout] 136 | / &format!( [INFO] [stdout] 137 | | "Dice MISS: predicted {}, rolled {}. No ORE rewards.", [INFO] [stdout] 138 | | dice_prediction, dice_sum [INFO] [stdout] 139 | | ) [INFO] [stdout] 140 | | .as_str(), [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 136 ~ format!( [INFO] [stdout] 137 + "Dice MISS: predicted {}, rolled {}. No ORE rewards.", [INFO] [stdout] 138 + dice_prediction, dice_sum [INFO] [stdout] 139 + ) [INFO] [stdout] 140 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:150:21 [INFO] [stdout] | [INFO] [stdout] 150 | / &format!( [INFO] [stdout] 151 | | "Motherlode rewards: {} ORE", [INFO] [stdout] 152 | | amount_to_ui_amount(motherload_rewards, TOKEN_DECIMALS) [INFO] [stdout] 153 | | ) [INFO] [stdout] 154 | | .as_str(), [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 150 ~ format!( [INFO] [stdout] 151 + "Motherlode rewards: {} ORE", [INFO] [stdout] 152 + amount_to_ui_amount(motherload_rewards, TOKEN_DECIMALS) [INFO] [stdout] 153 + ) [INFO] [stdout] 154 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:169:17 [INFO] [stdout] | [INFO] [stdout] 169 | sol_log(&format!("Refunding {} SOL", lamports_to_sol(refund_amount)).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Refunding {} SOL", lamports_to_sol(refund_amount)).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stdout] --> cli/src/main.rs:690:13 [INFO] [stdout] | [INFO] [stdout] 690 | / if !expiry_slots.contains_key(&miner.round_id) { [INFO] [stdout] 691 | | if let Ok(round) = get_round(rpc, miner.round_id).await { [INFO] [stdout] 692 | | expiry_slots.insert(miner.round_id, round.expires_at); [INFO] [stdout] 693 | | } [INFO] [stdout] 694 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stdout] = note: `#[warn(clippy::map_entry)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 690 ~ if let std::collections::hash_map::Entry::Vacant(e) = expiry_slots.entry(miner.round_id) { [INFO] [stdout] 691 + if let Ok(round) = get_round(rpc, miner.round_id).await { [INFO] [stdout] 692 + e.insert(round.expires_at); [INFO] [stdout] 693 + } [INFO] [stdout] 694 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:188:38 [INFO] [stdout] | [INFO] [stdout] 188 | round_info.send(rewards_sol, &miner_info); [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `miner_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/checkpoint.rs:191:34 [INFO] [stdout] | [INFO] [stdout] 191 | miner_info.send(bot_fee, &signer_info); [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `signer_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to use `.enumerate()` and immediately discard the index [INFO] [stdout] --> cli/src/main.rs:737:49 [INFO] [stdout] | [INFO] [stdout] 737 | for (_i, (_address, round)) in rounds.iter().enumerate() { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_enumerate_index [INFO] [stdout] = note: `#[warn(clippy::unused_enumerate_index)]` on by default [INFO] [stdout] help: remove the `.enumerate()` call [INFO] [stdout] | [INFO] [stdout] 737 - for (_i, (_address, round)) in rounds.iter().enumerate() { [INFO] [stdout] 737 + for (_address, round) in rounds.iter() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/reset.rs:38:54 [INFO] [stdout] | [INFO] [stdout] 38 | treasury_tokens_info.as_associated_token_account(&treasury_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: change this to: `treasury_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/reset.rs:38:74 [INFO] [stdout] | [INFO] [stdout] 38 | treasury_tokens_info.as_associated_token_account(&treasury_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `mint_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `println!` args [INFO] [stdout] --> cli/src/main.rs:826:50 [INFO] [stdout] | [INFO] [stdout] 826 | treasury.miner_rewards_factor.to_i80f48().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `println!` args [INFO] [stdout] --> cli/src/main.rs:830:50 [INFO] [stdout] | [INFO] [stdout] 830 | treasury.stake_rewards_factor.to_i80f48().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/reset.rs:181:42 [INFO] [stdout] | [INFO] [stdout] 181 | round_info.send(total_admin_fee, &fee_collector_info); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: change this to: `fee_collector_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/reset.rs:182:65 [INFO] [stdout] | [INFO] [stdout] 182 | round_info.send(round.total_deployed - total_admin_fee, &treasury_info); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `treasury_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> cli/src/main.rs:893:27 [INFO] [stdout] | [INFO] [stdout] 893 | let miner = get_miner(&rpc, authority).await?; [INFO] [stdout] | ^^^^ help: change this to: `rpc` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/reset.rs:288:38 [INFO] [stdout] | [INFO] [stdout] 288 | round_info.send(total_admin_fee, &fee_collector_info); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: change this to: `fee_collector_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/reset.rs:289:35 [INFO] [stdout] | [INFO] [stdout] 289 | round_info.send(vault_amount, &treasury_info); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `treasury_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/automate.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 28 | &signer_info, [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `signer_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual `RangeInclusive::contains` implementation [INFO] [stdout] --> cli/src/main.rs:914:15 [INFO] [stdout] | [INFO] [stdout] 914 | } else if dice_pred >= 2 && dice_pred <= 12 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `(2..=12).contains(&dice_pred)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_range_contains [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> cli/src/main.rs:935:27 [INFO] [stdout] | [INFO] [stdout] 935 | let clock = get_clock(&rpc).await?; [INFO] [stdout] | ^^^^ help: change this to: `rpc` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/automate.rs:98:44 [INFO] [stdout] | [INFO] [stdout] 98 | miner_info.collect(CHECKPOINT_FEE, &signer_info)?; [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `signer_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> cli/src/main.rs:946:29 [INFO] [stdout] | [INFO] [stdout] 946 | let config = get_config(&rpc).await?; [INFO] [stdout] | ^^^^ help: change this to: `rpc` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> cli/src/main.rs:958:27 [INFO] [stdout] | [INFO] [stdout] 958 | let board = get_board(&rpc).await?; [INFO] [stdout] | ^^^^ help: change this to: `rpc` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> cli/src/main.rs:959:27 [INFO] [stdout] | [INFO] [stdout] 959 | let clock = get_clock(&rpc).await?; [INFO] [stdout] | ^^^^ help: change this to: `rpc` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/mining/recycle_sol.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | sol_log(&format!("Recycling {} SOL", lamports_to_sol(amount)).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Recycling {} SOL", lamports_to_sol(amount)).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/deposit.rs:24:38 [INFO] [stdout] | [INFO] [stdout] 24 | .as_associated_token_account(&signer_info.key, &MINT_ADDRESS)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: change this to: `signer_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/deposit.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | &payer_info, [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `payer_info` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/deposit.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | / &format!( [INFO] [stdout] 89 | | "Depositing {} ORE", [INFO] [stdout] 90 | | amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 91 | | ) [INFO] [stdout] 92 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 88 ~ format!( [INFO] [stdout] 89 + "Depositing {} ORE", [INFO] [stdout] 90 + amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 91 + ) [INFO] [stdout] 92 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/withdraw.rs:23:38 [INFO] [stdout] | [INFO] [stdout] 23 | .as_associated_token_account(&signer_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: change this to: `signer_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/withdraw.rs:23:56 [INFO] [stdout] | [INFO] [stdout] 23 | .as_associated_token_account(&signer_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `mint_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/withdraw.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | / &format!( [INFO] [stdout] 62 | | "Withdrawing {} ORE", [INFO] [stdout] 63 | | amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 64 | | ) [INFO] [stdout] 65 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 61 ~ format!( [INFO] [stdout] 62 + "Withdrawing {} ORE", [INFO] [stdout] 63 + amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 64 + ) [INFO] [stdout] 65 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/claim_yield.rs:28:38 [INFO] [stdout] | [INFO] [stdout] 28 | .as_associated_token_account(&treasury_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: change this to: `treasury_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/claim_yield.rs:28:58 [INFO] [stdout] | [INFO] [stdout] 28 | .as_associated_token_account(&treasury_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `mint_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/claim_yield.rs:45:52 [INFO] [stdout] | [INFO] [stdout] 45 | recipient_info.as_associated_token_account(&signer_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: change this to: `signer_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/claim_yield.rs:45:70 [INFO] [stdout] | [INFO] [stdout] 45 | recipient_info.as_associated_token_account(&signer_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `mint_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/staking/claim_yield.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | / &format!( [INFO] [stdout] 64 | | "Claiming {} ORE", [INFO] [stdout] 65 | | amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 66 | | ) [INFO] [stdout] 67 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 63 ~ format!( [INFO] [stdout] 64 + "Claiming {} ORE", [INFO] [stdout] 65 + amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 66 + ) [INFO] [stdout] 67 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/claiming/claim_sol.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | sol_log(&format!("Claiming {} SOL", lamports_to_sol(amount)).as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `format!("Claiming {} SOL", lamports_to_sol(amount)).as_str()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/claiming/claim_ore.rs:22:54 [INFO] [stdout] | [INFO] [stdout] 22 | treasury_tokens_info.as_associated_token_account(&treasury_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: change this to: `treasury_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/claiming/claim_ore.rs:22:74 [INFO] [stdout] | [INFO] [stdout] 22 | treasury_tokens_info.as_associated_token_account(&treasury_info.key, &mint_info.key)?; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `mint_info.key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> cli/src/main.rs:1273:17 [INFO] [stdout] | [INFO] [stdout] 1273 | return Err(anyhow::anyhow!("Failed to get program accounts: {}", err)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1273 - return Err(anyhow::anyhow!("Failed to get program accounts: {}", err)); [INFO] [stdout] 1273 + Err(anyhow::anyhow!("Failed to get program accounts: {}", err)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> cli/src/main.rs:1275:18 [INFO] [stdout] | [INFO] [stdout] 1275 | _ => return Err(anyhow::anyhow!("Failed to get program accounts: {}", err)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1275 - _ => return Err(anyhow::anyhow!("Failed to get program accounts: {}", err)), [INFO] [stdout] 1275 + _ => Err(anyhow::anyhow!("Failed to get program accounts: {}", err)), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/claiming/claim_ore.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | / &format!( [INFO] [stdout] 47 | | "Claiming {} ORE", [INFO] [stdout] 48 | | amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 49 | | ) [INFO] [stdout] 50 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 46 ~ format!( [INFO] [stdout] 47 + "Claiming {} ORE", [INFO] [stdout] 48 + amount_to_ui_amount(amount, TOKEN_DECIMALS) [INFO] [stdout] 49 + ) [INFO] [stdout] 50 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/admin/bury.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | / &format!( [INFO] [stdout] 104 | | "📈 Swapped {} SOL into {} ORE", [INFO] [stdout] 105 | | lamports_to_sol(pre_swap_sol_balance), [INFO] [stdout] 106 | | amount_to_ui_amount(total_ore, TOKEN_DECIMALS), [INFO] [stdout] 107 | | ) [INFO] [stdout] 108 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 103 ~ format!( [INFO] [stdout] 104 ~ "📈 Swapped {} SOL into {} ORE", [INFO] [stdout] 105 + lamports_to_sol(pre_swap_sol_balance), [INFO] [stdout] 106 + amount_to_ui_amount(total_ore, TOKEN_DECIMALS), [INFO] [stdout] 107 + ) [INFO] [stdout] 108 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> program/src/admin/bury.rs:136:9 [INFO] [stdout] | [INFO] [stdout] 136 | / &format!( [INFO] [stdout] 137 | | "🔥 Buried {} ORE", [INFO] [stdout] 138 | | amount_to_ui_amount(burn_amount, TOKEN_DECIMALS) [INFO] [stdout] 139 | | ) [INFO] [stdout] 140 | | .as_str(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 136 ~ format!( [INFO] [stdout] 137 ~ "🔥 Buried {} ORE", [INFO] [stdout] 138 + amount_to_ui_amount(burn_amount, TOKEN_DECIMALS) [INFO] [stdout] 139 + ) [INFO] [stdout] 140 ~ .as_str(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4m 48s [INFO] running `Command { std: "docker" "inspect" "d6177be5bb1cba6eee80d80b1c45686863215ce4881188c30bc338ed60c21c67", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d6177be5bb1cba6eee80d80b1c45686863215ce4881188c30bc338ed60c21c67", kill_on_drop: false }` [INFO] [stdout] d6177be5bb1cba6eee80d80b1c45686863215ce4881188c30bc338ed60c21c67