[INFO] cloning repository https://github.com/tiksupply/tik-cli [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tiksupply/tik-cli" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftiksupply%2Ftik-cli", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftiksupply%2Ftik-cli'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 38c4fa0dd571cf4fb0a7cc883a3b40722c8053c0 [INFO] linting tiksupply/tik-cli against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftiksupply%2Ftik-cli" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/tiksupply/tik-cli [INFO] finished tweaking git repo https://github.com/tiksupply/tik-cli [INFO] tweaked toml for git repo https://github.com/tiksupply/tik-cli written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/tiksupply/tik-cli 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/tiksupply/tik-cli 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] warning: unused manifest key: build [INFO] [stderr] help: build is a valid .cargo/config.toml key [INFO] [stderr] Updating crates.io index [INFO] [stderr] Updating git repository `https://github.com/MystenLabs/fastcrypto` [INFO] [stderr] Updating git repository `https://github.com/MystenLabs/sui/` [INFO] [stderr] Updating git repository `https://github.com/mystenlabs/anemo.git` [INFO] [stderr] Updating git repository `https://github.com/zhiburt/tabled/` [INFO] [stderr] Updating git repository `https://github.com/wlmyng/jsonrpsee.git` [INFO] [stderr] Updating git repository `https://github.com/MystenLabs/mysten-sim.git` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 1 package to latest compatible version [INFO] [stderr] Adding async-recursion v1.1.1 [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded schemars_derive v0.8.19 [INFO] [stderr] Downloaded darling_macro v0.20.8 [INFO] [stderr] Downloaded variant_count v1.1.0 [INFO] [stderr] Downloaded prost-derive v0.12.5 [INFO] [stderr] Downloaded darling_core v0.20.8 [INFO] [stderr] Downloaded ff_derive v0.13.0 [INFO] [stderr] Downloaded tonic-health v0.11.0 [INFO] [stderr] Downloaded hmac-sha512 v0.1.9 [INFO] [stderr] Downloaded better_any v0.1.1 [INFO] [stderr] Downloaded async-compression v0.3.15 [INFO] [stderr] Downloaded object_store v0.7.1 [INFO] [stderr] Downloaded k256 v0.11.6 [INFO] [stderr] Downloaded bip32 v0.4.0 [INFO] [stderr] Downloaded papergrid v0.9.1 [INFO] [stderr] Downloaded iri-string v0.4.1 [INFO] [stderr] Downloaded pest v2.7.10 [INFO] [stderr] Downloaded roaring v0.10.4 [INFO] [stderr] Downloaded rsa v0.8.2 [INFO] [stderr] Downloaded insta v1.38.0 [INFO] [stderr] Downloaded nonempty v0.9.0 [INFO] [stderr] Downloaded bitcoin_hashes v0.12.0 [INFO] [stderr] Downloaded pest_meta v2.7.10 [INFO] [stderr] Downloaded bellpepper-core v0.4.0 [INFO] [stderr] Downloaded pest_derive v2.7.10 [INFO] [stderr] Downloaded parity-scale-codec-derive v2.3.1 [INFO] [stderr] Downloaded parity-scale-codec v2.3.1 [INFO] [stderr] Downloaded slip10_ed25519 v0.1.3 [INFO] [stderr] Downloaded ark-crypto-primitives v0.4.0 [INFO] [stderr] Downloaded ark-relations v0.4.0 [INFO] [stderr] Downloaded bellpepper v0.4.1 [INFO] [stderr] Downloaded dunce v1.0.4 [INFO] [stderr] Downloaded bitcoin-private v0.1.0 [INFO] [stderr] Downloaded vfs v0.10.0 [INFO] [stderr] Downloaded match_opt v0.1.2 [INFO] [stderr] Downloaded displaydoc v0.2.4 [INFO] [stderr] Downloaded readonly v0.2.12 [INFO] [stderr] Downloaded pest_generator v2.7.10 [INFO] [stderr] Downloaded similar v2.5.0 [INFO] [stderr] Downloaded bstr v1.9.1 [INFO] [stderr] Downloaded ethnum v1.5.0 [INFO] [stderr] Downloaded versions v4.1.0 [INFO] [stderr] Downloaded unescape v0.1.0 [INFO] [stderr] Downloaded tabled_derive v0.6.0 [INFO] [stderr] Downloaded tabled v0.12.2 [INFO] [stderr] Downloaded better_typeid_derive v0.1.1 [INFO] [stderr] Downloaded ark-groth16 v0.4.0 [INFO] [stderr] Downloaded ark-snark v0.4.0 [INFO] [stderr] Downloaded codespan v0.11.1 [INFO] [stderr] Downloaded matchit v0.5.0 [INFO] [stderr] Downloaded quinn-udp v0.4.1 [INFO] [stderr] Downloaded auto_ops v0.3.0 [INFO] [stderr] Downloaded terminal_size v0.3.0 [INFO] [stderr] Downloaded blst v0.3.11 [INFO] [stderr] Downloaded ark-secp256r1 v0.4.0 [INFO] [stderr] Downloaded serde_derive_internals v0.29.0 [INFO] [stderr] Downloaded schemars v0.8.19 [INFO] [stderr] Downloaded darling v0.20.8 [INFO] [stderr] Downloaded prost v0.12.4 [INFO] [stderr] Downloaded neptune v13.0.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] ecf13a0a9969cbce273f7f6a051f7255194eeee1ca31f89a7ac6e2b25dadde47 [INFO] running `Command { std: "docker" "start" "-a" "ecf13a0a9969cbce273f7f6a051f7255194eeee1ca31f89a7ac6e2b25dadde47", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ecf13a0a9969cbce273f7f6a051f7255194eeee1ca31f89a7ac6e2b25dadde47", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ecf13a0a9969cbce273f7f6a051f7255194eeee1ca31f89a7ac6e2b25dadde47", kill_on_drop: false }` [INFO] [stdout] ecf13a0a9969cbce273f7f6a051f7255194eeee1ca31f89a7ac6e2b25dadde47 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 4c33a925359a0cef3b1f38b14f6d7c6ef0e1e42a0e5345227c6f135565669751 [INFO] running `Command { std: "docker" "start" "-a" "4c33a925359a0cef3b1f38b14f6d7c6ef0e1e42a0e5345227c6f135565669751", kill_on_drop: false }` [INFO] [stderr] warning: unused manifest key: build [INFO] [stderr] help: build is a valid .cargo/config.toml key [INFO] [stderr] Compiling proc-macro2 v1.0.82 [INFO] [stderr] Compiling libc v0.2.154 [INFO] [stderr] Compiling serde v1.0.201 [INFO] [stderr] Compiling cc v1.0.97 [INFO] [stderr] Compiling thiserror v1.0.60 [INFO] [stderr] Checking memchr v2.7.2 [INFO] [stderr] Checking ppv-lite86 v0.2.17 [INFO] [stderr] Checking subtle v2.5.0 [INFO] [stderr] Compiling libm v0.2.8 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking const-oid v0.9.6 [INFO] [stderr] Checking cpufeatures v0.2.12 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling ahash v0.7.8 [INFO] [stderr] Checking lock_api v0.4.12 [INFO] [stderr] Checking miniz_oxide v0.7.2 [INFO] [stderr] Checking gimli v0.28.1 [INFO] [stderr] Checking futures-core v0.3.30 [INFO] [stderr] Compiling anyhow v1.0.83 [INFO] [stderr] Compiling serde_json v1.0.117 [INFO] [stderr] Checking futures-io v0.3.30 [INFO] [stderr] Checking futures-task v0.3.30 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Compiling linked-hash-map v0.5.6 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Compiling radium v0.6.2 [INFO] [stderr] Compiling yaml-rust v0.4.5 [INFO] [stderr] Compiling num-bigint v0.3.3 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Checking byte-slice-cast v1.2.2 [INFO] [stderr] Checking funty v1.1.0 [INFO] [stderr] Checking wyz v0.2.0 [INFO] [stderr] Checking pem-rfc7468 v0.6.0 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking rustc-hex v2.1.0 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Checking bitvec v1.0.1 [INFO] [stderr] Checking object v0.32.2 [INFO] [stderr] Checking ethnum v1.5.0 [INFO] [stderr] Checking zerocopy v0.7.34 [INFO] [stderr] Checking bitvec v0.20.4 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking parking_lot_core v0.9.10 [INFO] [stderr] Compiling syn v2.0.63 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking parking_lot v0.12.2 [INFO] [stderr] Checking socket2 v0.5.7 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking hashbrown v0.12.3 [INFO] [stderr] Compiling backtrace v0.3.71 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling ring v0.17.8 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling ring v0.16.20 [INFO] [stderr] Checking pem-rfc7468 v0.7.0 [INFO] [stderr] Checking num-complex v0.4.6 [INFO] [stderr] Checking hashbrown v0.13.2 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Checking num-iter v0.1.45 [INFO] [stderr] Compiling num-bigint v0.4.5 [INFO] [stderr] Checking unicode-normalization v0.1.23 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling rustversion v1.0.16 [INFO] [stderr] Checking untrusted v0.7.1 [INFO] [stderr] Compiling unicode-xid v0.2.4 [INFO] [stderr] Checking ark-std v0.4.0 [INFO] [stderr] Checking fixed-hash v0.7.0 [INFO] [stderr] Checking base64 v0.13.1 [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Checking base16ct v0.2.0 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Compiling schemars v0.8.19 [INFO] [stderr] Compiling bitcoin-private v0.1.0 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Checking addr2line v0.21.0 [INFO] [stderr] Checking hdrhistogram v7.5.4 [INFO] [stderr] Compiling secp256k1-sys v0.8.1 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Checking dyn-clone v1.0.17 [INFO] [stderr] Compiling num-bigint-dig v0.8.4 [INFO] [stderr] Checking regex-syntax v0.8.3 [INFO] [stderr] Checking url v2.5.0 [INFO] [stderr] Compiling time-macros v0.2.18 [INFO] [stderr] Compiling phf_shared v0.11.2 [INFO] [stderr] Checking num-rational v0.4.2 [INFO] [stderr] Compiling blst v0.3.11 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling addchain v0.2.0 [INFO] [stderr] Compiling tap v1.0.1 [INFO] [stderr] Checking num v0.4.3 [INFO] [stderr] Checking bitflags v2.5.0 [INFO] [stderr] Checking arrayref v0.3.7 [INFO] [stderr] Checking linux-raw-sys v0.4.13 [INFO] [stderr] Checking subtle-ng v2.5.0 [INFO] [stderr] Compiling wyz v0.5.1 [INFO] [stderr] Checking bitcoin_hashes v0.12.0 [INFO] [stderr] Compiling phf_generator v0.11.2 [INFO] [stderr] Checking threadpool v1.8.1 [INFO] [stderr] Compiling radium v0.7.0 [INFO] [stderr] Compiling unicase v2.7.0 [INFO] [stderr] Compiling either v1.11.0 [INFO] [stderr] Compiling funty v2.0.0 [INFO] [stderr] Compiling axum-core v0.3.4 [INFO] [stderr] Checking dirs-sys-next v0.1.2 [INFO] [stderr] Checking rustls-pki-types v1.7.0 [INFO] [stderr] Checking time v0.3.36 [INFO] [stderr] Checking hex-literal v0.4.1 [INFO] [stderr] Checking bech32 v0.9.1 [INFO] [stderr] Checking auto_ops v0.3.0 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Checking unicode-width v0.1.12 [INFO] [stderr] Checking regex-automata v0.4.6 [INFO] [stderr] Checking dirs-next v2.0.0 [INFO] [stderr] Compiling axum v0.6.20 [INFO] [stderr] Compiling rand_xorshift v0.3.0 [INFO] [stderr] Compiling rustls v0.22.4 [INFO] [stderr] Checking difference v2.0.0 [INFO] [stderr] Checking vfs v0.10.0 [INFO] [stderr] Compiling rustls v0.20.9 [INFO] [stderr] Checking rusticata-macros v4.1.0 [INFO] [stderr] Checking anstyle-parse v0.2.4 [INFO] [stderr] Checking sct v0.7.1 [INFO] [stderr] Checking rustls-webpki v0.101.7 [INFO] [stderr] Checking webpki v0.22.4 [INFO] [stderr] Checking rustls-webpki v0.102.3 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Checking bstr v1.9.1 [INFO] [stderr] Checking colorchoice v1.0.1 [INFO] [stderr] Checking constant_time_eq v0.3.0 [INFO] [stderr] Checking anstyle-query v1.0.3 [INFO] [stderr] Compiling eyre v0.6.12 [INFO] [stderr] Compiling oid-registry v0.6.1 [INFO] [stderr] Checking anstyle v1.0.7 [INFO] [stderr] Compiling data-encoding v2.6.0 [INFO] [stderr] Checking is_terminal_polyfill v1.70.0 [INFO] [stderr] Compiling mime_guess v2.0.4 [INFO] [stderr] Checking anstream v0.6.14 [INFO] [stderr] Checking brotli-decompressor v2.5.1 [INFO] [stderr] Compiling ucd-trie v0.1.6 [INFO] [stderr] Checking fixedbitset v0.2.0 [INFO] [stderr] Compiling once_cell v1.19.0 [INFO] [stderr] Checking terminal_size v0.3.0 [INFO] [stderr] Compiling arrayvec v0.7.4 [INFO] [stderr] Checking indenter v0.3.3 [INFO] [stderr] Compiling spin v0.5.2 [INFO] [stderr] Checking rustls-native-certs v0.6.3 [INFO] [stderr] Checking petgraph v0.5.1 [INFO] [stderr] Compiling darling_core v0.20.8 [INFO] [stderr] Compiling serde_derive_internals v0.29.0 [INFO] [stderr] Checking clap_builder v4.5.2 [INFO] [stderr] Compiling blake2b_simd v1.0.2 [INFO] [stderr] Checking rustls-pemfile v2.1.2 [INFO] [stderr] Checking flate2 v1.0.30 [INFO] [stderr] Checking yasna v0.5.2 [INFO] [stderr] Compiling impl-trait-for-tuples v0.2.2 [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 ff_derive v0.13.0 [INFO] [stderr] Compiling derivative v2.2.0 [INFO] [stderr] Compiling variant_count v1.1.0 [INFO] [stderr] Compiling derive_more v0.99.17 [INFO] [stderr] Compiling asn1-rs-derive v0.4.0 [INFO] [stderr] Compiling asn1-rs-impl v0.1.0 [INFO] [stderr] Compiling fastcrypto-derive v0.1.3 (https://github.com/MystenLabs/fastcrypto?rev=4988a4744fcaf8bc7f60bf660d9a223ed0f54cc6#4988a474) [INFO] [stderr] Compiling data-encoding-macro-internal v0.1.13 [INFO] [stderr] Compiling ff v0.13.0 [INFO] [stderr] Checking secp256k1 v0.27.0 [INFO] [stderr] Checking brotli v3.5.0 [INFO] [stderr] Compiling group v0.13.0 [INFO] [stderr] Checking webpki-roots v0.22.6 [INFO] [stderr] Checking pem v1.1.1 [INFO] [stderr] Checking uuid v1.8.0 [INFO] [stderr] Compiling psm v0.1.21 [INFO] [stderr] Checking core2 v0.4.0 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling pairing v0.23.0 [INFO] [stderr] Compiling snap v1.1.1 [INFO] [stderr] Checking unsigned-varint v0.7.2 [INFO] [stderr] Compiling protobuf v2.28.0 [INFO] [stderr] Checking base-x v0.2.11 [INFO] [stderr] Checking data-encoding-macro v0.1.15 [INFO] [stderr] Checking fastrand v2.1.0 [INFO] [stderr] Checking multibase v0.9.1 [INFO] [stderr] Checking rcgen v0.9.3 [INFO] [stderr] Checking tempfile v3.10.1 [INFO] [stderr] Checking blake2s_simd v1.0.2 [INFO] [stderr] Checking iri-string v0.4.1 [INFO] [stderr] Compiling stacker v0.1.15 [INFO] [stderr] Checking similar v2.5.0 [INFO] [stderr] Checking matchit v0.5.0 [INFO] [stderr] Checking aliasable v0.1.3 [INFO] [stderr] Compiling prometheus v0.13.4 [INFO] [stderr] Checking http-range-header v0.3.1 [INFO] [stderr] Compiling im v15.1.0 [INFO] [stderr] Checking bytemuck v1.15.0 [INFO] [stderr] Checking move-borrow-graph v0.0.1 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Compiling serde_derive v1.0.201 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling thiserror-impl v1.0.60 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Compiling tokio-macros v2.2.0 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling ref-cast-impl v1.0.23 [INFO] [stderr] Compiling async-trait v0.1.80 [INFO] [stderr] Compiling pin-project-internal v1.1.5 [INFO] [stderr] Compiling schemars_derive v0.8.19 [INFO] [stderr] Compiling readonly v0.2.12 [INFO] [stderr] Checking ref-cast v1.0.23 [INFO] [stderr] Checking zeroize v1.7.0 [INFO] [stderr] Compiling phf_macros v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.4 [INFO] [stderr] Compiling darling_macro v0.20.8 [INFO] [stderr] Checking der v0.6.1 [INFO] [stderr] Checking der v0.7.9 [INFO] [stderr] Checking pin-project v1.1.5 [INFO] [stderr] Compiling darling v0.20.8 [INFO] [stderr] Compiling serde_with_macros v2.3.3 [INFO] [stderr] Compiling prost-derive v0.12.5 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Compiling async-stream-impl v0.3.5 [INFO] [stderr] Compiling clap_derive v4.5.4 [INFO] [stderr] Checking phf v0.11.2 [INFO] [stderr] Checking spki v0.6.0 [INFO] [stderr] Compiling pest v2.7.10 [INFO] [stderr] Checking async-stream v0.3.5 [INFO] [stderr] Checking pkcs8 v0.9.0 [INFO] [stderr] Compiling ouroboros_macro v0.17.2 [INFO] [stderr] Compiling serde_repr v0.1.19 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Checking asn1-rs v0.5.2 [INFO] [stderr] Checking pkcs1 v0.4.1 [INFO] [stderr] Checking move-abstract-stack v0.0.1 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Checking roaring v0.10.4 [INFO] [stderr] Checking regex v1.10.4 [INFO] [stderr] Compiling trait-set v0.3.0 [INFO] [stderr] Compiling mysten-util-mem-derive v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking spki v0.7.3 [INFO] [stderr] Checking pkcs8 v0.10.2 [INFO] [stderr] Checking rand_xoshiro v0.6.0 [INFO] [stderr] Checking wait-timeout v0.2.0 [INFO] [stderr] Checking console v0.15.8 [INFO] [stderr] Checking colored v2.1.0 [INFO] [stderr] Checking dunce v1.0.4 [INFO] [stderr] Checking rusty-fork v0.3.0 [INFO] [stderr] Compiling strum_macros v0.24.3 [INFO] [stderr] Compiling better_typeid_derive v0.1.1 [INFO] [stderr] Checking ouroboros v0.17.2 [INFO] [stderr] Compiling sui-protocol-config-macros v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking dashmap v5.5.3 [INFO] [stderr] Checking unarray v0.1.4 [INFO] [stderr] Checking match_opt v0.1.2 [INFO] [stderr] Compiling enum_dispatch v0.3.13 [INFO] [stderr] Checking lru v0.10.1 [INFO] [stderr] Checking proptest v1.4.0 [INFO] [stderr] Checking nonempty v0.9.0 [INFO] [stderr] Checking der-parser v8.2.0 [INFO] [stderr] Checking ff v0.12.1 [INFO] [stderr] Checking base16ct v0.1.1 [INFO] [stderr] Checking group v0.12.1 [INFO] [stderr] Checking better_any v0.1.1 [INFO] [stderr] Compiling pest_meta v2.7.10 [INFO] [stderr] Checking bytecount v0.6.8 [INFO] [stderr] Compiling tabled_derive v0.6.0 [INFO] [stderr] Compiling snafu-derive v0.7.5 [INFO] [stderr] Checking papergrid v0.9.1 [INFO] [stderr] Checking hmac-sha512 v0.1.9 [INFO] [stderr] Compiling derive-syn-parse v0.1.5 [INFO] [stderr] Checking slip10_ed25519 v0.1.3 [INFO] [stderr] Checking versions v4.1.0 [INFO] [stderr] Checking x509-parser v0.14.0 [INFO] [stderr] Checking futures-executor v0.3.30 [INFO] [stderr] Checking dirs-sys v0.3.7 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] Checking csv-core v0.1.11 [INFO] [stderr] Checking itertools v0.11.0 [INFO] [stderr] Compiling arrayvec v0.4.12 [INFO] [stderr] Compiling unescape v0.1.0 [INFO] [stderr] Checking dirs v4.0.0 [INFO] [stderr] Checking nodrop v0.1.14 [INFO] [stderr] Checking tabled v0.12.2 [INFO] [stderr] Compiling fastcrypto-derive v0.1.3 (https://github.com/MystenLabs/fastcrypto#4988a474) [INFO] [stderr] Compiling async-recursion v1.1.1 [INFO] [stderr] Compiling pest_generator v2.7.10 [INFO] [stderr] Checking strum v0.24.1 [INFO] [stderr] Checking clap v4.5.4 [INFO] [stderr] Checking blake2-rfc v0.2.18 [INFO] [stderr] Checking snafu v0.7.5 [INFO] [stderr] Compiling pest_derive v2.7.10 [INFO] [stderr] Compiling sui-open-rpc-macros v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Compiling proptest-derive v0.3.0 [INFO] [stderr] Checking log v0.4.21 [INFO] [stderr] Checking bytes v1.6.0 [INFO] [stderr] Checking indexmap v2.2.6 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Checking bcs v0.1.6 [INFO] [stderr] Checking serde_yaml v0.8.26 [INFO] [stderr] Checking impl-serde v0.3.2 [INFO] [stderr] Checking serde_bytes v0.11.14 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking serde_path_to_error v0.1.16 [INFO] [stderr] Checking beef v0.5.2 [INFO] [stderr] Checking move-symbol-pool v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking codespan-reporting v0.11.1 [INFO] [stderr] Checking bellpepper-core v0.4.0 [INFO] [stderr] Checking uint v0.9.5 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking serde_with v2.3.3 [INFO] [stderr] Checking globset v0.4.14 [INFO] [stderr] Checking pasta_curves v0.5.1 [INFO] [stderr] Checking chrono v0.4.38 [INFO] [stderr] Checking tokio v1.37.0 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Checking http v0.2.12 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking digest v0.9.0 [INFO] [stderr] Checking block-buffer v0.9.0 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking enum-compat-util v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking sha2 v0.9.9 [INFO] [stderr] Checking block-padding v0.3.3 [INFO] [stderr] Checking ark-serialize v0.4.2 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Checking sha2 v0.10.8 [INFO] [stderr] Checking inout v0.1.3 [INFO] [stderr] Checking ark-ff v0.4.2 [INFO] [stderr] Checking crypto-bigint v0.5.5 [INFO] [stderr] Checking sec1 v0.7.3 [INFO] [stderr] Checking cipher v0.4.4 [INFO] [stderr] Checking signature v2.2.0 [INFO] [stderr] Checking rfc6979 v0.4.0 [INFO] [stderr] Checking sha3 v0.10.8 [INFO] [stderr] Checking http-body v0.4.6 [INFO] [stderr] Checking blake2 v0.10.6 [INFO] [stderr] Checking universal-hash v0.5.1 [INFO] [stderr] Checking bs58 v0.4.0 [INFO] [stderr] Checking sha1 v0.10.6 [INFO] [stderr] Checking curve25519-dalek-ng v4.1.1 [INFO] [stderr] Checking aes v0.8.4 [INFO] [stderr] Compiling proc-macro-crate v1.1.3 [INFO] [stderr] Checking polyval v0.6.2 [INFO] [stderr] Checking ctr v0.9.2 [INFO] [stderr] Checking rsa v0.8.2 [INFO] [stderr] Checking ghash v0.5.1 [INFO] [stderr] Checking hkdf v0.12.4 [INFO] [stderr] Checking aead v0.5.2 [INFO] [stderr] Checking tungstenite v0.20.1 [INFO] [stderr] Checking headers-core v0.2.0 [INFO] [stderr] Checking cbc v0.1.2 [INFO] [stderr] Checking signature v1.6.4 [INFO] [stderr] Checking ed25519-consensus v2.1.0 [INFO] [stderr] Checking headers v0.3.9 [INFO] [stderr] Checking elliptic-curve v0.13.8 [INFO] [stderr] Checking sha-1 v0.9.8 [INFO] [stderr] Checking jsonrpsee-types v0.16.2 (https://github.com/wlmyng/jsonrpsee.git?rev=b1b300784795f6a64d0fcdf8f03081a9bc38bde8#b1b30078) [INFO] [stderr] Compiling move-proc-macros v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking aes-gcm v0.10.3 [INFO] [stderr] Checking quinn-proto v0.10.6 [INFO] [stderr] Compiling parity-scale-codec-derive v2.3.1 [INFO] [stderr] Compiling multihash-derive v0.8.1 [INFO] [stderr] Checking soketto v0.7.1 [INFO] [stderr] Checking quinn-udp v0.4.1 [INFO] [stderr] Checking prost v0.12.4 [INFO] [stderr] Checking ecdsa v0.16.9 [INFO] [stderr] Checking primeorder v0.13.6 [INFO] [stderr] Checking ed25519 v1.5.3 [INFO] [stderr] Compiling blstrs v0.7.1 [INFO] [stderr] Compiling sui-enum-compat-util v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking bellpepper v0.4.1 [INFO] [stderr] Checking codespan v0.11.1 [INFO] [stderr] Compiling sui-proc-macros v0.7.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Compiling num_enum_derive v0.6.1 [INFO] [stderr] Checking multihash v0.17.0 [INFO] [stderr] Checking p256 v0.13.2 [INFO] [stderr] Checking multiaddr v0.17.1 [INFO] [stderr] Compiling jsonrpsee-proc-macros v0.16.2 (https://github.com/wlmyng/jsonrpsee.git?rev=b1b300784795f6a64d0fcdf8f03081a9bc38bde8#b1b30078) [INFO] [stderr] Checking serde-reflection v0.3.6 [INFO] [stderr] Checking insta v1.38.0 [INFO] [stderr] Checking serde-name v0.2.1 [INFO] [stderr] Checking typed-store-error v0.4.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking crypto-bigint v0.4.9 [INFO] [stderr] Checking sec1 v0.3.0 [INFO] [stderr] Checking pbkdf2 v0.11.0 [INFO] [stderr] Checking json_to_table v0.6.0 (https://github.com/zhiburt/tabled/?rev=e449317a1c02eb6b29e409ad6617e5d9eb7b3bd4#e449317a) [INFO] [stderr] Checking ripemd v0.1.3 [INFO] [stderr] Checking tiny-bip39 v1.0.0 [INFO] [stderr] Checking quick-xml v0.30.0 [INFO] [stderr] Checking sui-open-rpc v1.26.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking csv v1.3.0 [INFO] [stderr] Checking parity-scale-codec v2.3.1 [INFO] [stderr] Checking num_enum v0.6.1 [INFO] [stderr] Checking rfc6979 v0.3.1 [INFO] [stderr] Checking elliptic-curve v0.12.3 [INFO] [stderr] Compiling neptune v13.0.0 [INFO] [stderr] Checking ecdsa v0.14.8 [INFO] [stderr] Checking impl-codec v0.5.1 [INFO] [stderr] Checking k256 v0.11.6 [INFO] [stderr] Checking primitive-types v0.10.1 [INFO] [stderr] Checking sui-macros v0.7.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking bip32 v0.4.0 [INFO] [stderr] Checking move-core-types v0.0.4 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking tokio-util v0.7.11 [INFO] [stderr] Checking tokio-tungstenite v0.20.1 [INFO] [stderr] Checking tokio-io-timeout v1.2.0 [INFO] [stderr] Checking tokio-rustls v0.25.0 [INFO] [stderr] Checking tokio-rustls v0.23.4 [INFO] [stderr] Checking tokio-rustls v0.24.1 [INFO] [stderr] Checking quinn v0.10.2 [INFO] [stderr] Checking async-compression v0.3.15 [INFO] [stderr] Checking prometheus-closure-metric v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking h2 v0.3.26 [INFO] [stderr] Checking tower v0.4.13 [INFO] [stderr] Checking tokio-stream v0.1.15 [INFO] [stderr] Checking move-binary-format v0.0.3 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-command-line-common v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-ir-types v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking ark-poly v0.4.2 [INFO] [stderr] Checking ark-relations v0.4.0 [INFO] [stderr] Checking move-ir-to-bytecode-syntax v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking ark-snark v0.4.0 [INFO] [stderr] Checking anemo v0.0.0 (https://github.com/mystenlabs/anemo.git?rev=26d415eb9aa6a2417be3c03c57d6e93c30bd1ad7#26d415eb) [INFO] [stderr] Checking tower-http v0.3.5 [INFO] [stderr] Checking ark-ec v0.4.2 [INFO] [stderr] Checking move-vm-config v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-bytecode-source-map v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-bytecode-utils v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-bytecode-verifier-meter v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-vm-profiler v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking sui-protocol-config v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-vm-types v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-ir-to-bytecode v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-abstract-interpreter v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-bytecode-verifier v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-coverage v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-vm-test-utils v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking move-compiler v0.0.1 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking ark-secp256r1 v0.4.0 [INFO] [stderr] Checking ark-crypto-primitives v0.4.0 [INFO] [stderr] Checking ark-bls12-381 v0.4.0 [INFO] [stderr] Checking ark-bn254 v0.4.0 [INFO] [stderr] Checking ark-groth16 v0.4.0 [INFO] [stderr] Checking fastcrypto v0.1.8 (https://github.com/MystenLabs/fastcrypto?rev=4988a4744fcaf8bc7f60bf660d9a223ed0f54cc6#4988a474) [INFO] [stderr] Checking fastcrypto v0.1.8 (https://github.com/MystenLabs/fastcrypto#4988a474) [INFO] [stderr] Checking hyper v0.14.28 [INFO] [stderr] Checking shared-crypto v0.0.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking fastcrypto-tbls v0.1.0 (https://github.com/MystenLabs/fastcrypto?rev=4988a4744fcaf8bc7f60bf660d9a223ed0f54cc6#4988a474) [INFO] [stderr] Checking narwhal-crypto v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking mysten-util-mem v0.11.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking jsonrpsee-core v0.16.2 (https://github.com/wlmyng/jsonrpsee.git?rev=b1b300784795f6a64d0fcdf8f03081a9bc38bde8#b1b30078) [INFO] [stderr] Checking hyper-timeout v0.4.1 [INFO] [stderr] Checking hyper-rustls v0.24.2 [INFO] [stderr] Checking hyper-rustls v0.23.2 [INFO] [stderr] Checking reqwest v0.11.27 [INFO] [stderr] Checking fastcrypto-zkp v0.1.3 (https://github.com/MystenLabs/fastcrypto?rev=4988a4744fcaf8bc7f60bf660d9a223ed0f54cc6#4988a474) [INFO] [stderr] Checking object_store v0.7.1 [INFO] [stderr] Checking jsonrpsee-client-transport v0.16.2 (https://github.com/wlmyng/jsonrpsee.git?rev=b1b300784795f6a64d0fcdf8f03081a9bc38bde8#b1b30078) [INFO] [stderr] Checking jsonrpsee-http-client v0.16.2 (https://github.com/wlmyng/jsonrpsee.git?rev=b1b300784795f6a64d0fcdf8f03081a9bc38bde8#b1b30078) [INFO] [stderr] Checking jsonrpsee-server v0.16.2 (https://github.com/wlmyng/jsonrpsee.git?rev=b1b300784795f6a64d0fcdf8f03081a9bc38bde8#b1b30078) [INFO] [stderr] Checking jsonrpsee-ws-client v0.16.2 (https://github.com/wlmyng/jsonrpsee.git?rev=b1b300784795f6a64d0fcdf8f03081a9bc38bde8#b1b30078) [INFO] [stderr] Checking jsonrpsee v0.16.2 (https://github.com/wlmyng/jsonrpsee.git?rev=b1b300784795f6a64d0fcdf8f03081a9bc38bde8#b1b30078) [INFO] [stderr] Checking move-disassembler v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking tonic v0.11.0 [INFO] [stderr] Checking mysten-metrics v0.7.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking tonic-health v0.11.0 [INFO] [stderr] Checking mysten-network v0.2.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking consensus-config v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking narwhal-config v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking sui-types v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking sui-rest-api v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking sui-json v0.0.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking sui-keys v0.0.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking sui-config v0.0.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking sui-package-resolver v0.1.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking sui-json-rpc-types v0.0.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking sui-transaction-builder v0.0.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking sui-json-rpc-api v0.0.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking sui-sdk v1.26.0 (https://github.com/MystenLabs/sui/#061b25cf) [INFO] [stderr] Checking tik v1.0.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: digits grouped inconsistently by underscores [INFO] [stdout] --> src/conf.rs:63:28 [INFO] [stdout] | [INFO] [stdout] 63 | pub const EPOCH_REWARD:f64=0.000277_777_778; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: consider: `0.000_277_777_778` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inconsistent_digit_grouping [INFO] [stdout] = note: `#[warn(clippy::inconsistent_digit_grouping)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `command` [INFO] [stdout] --> src/main.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | use clap::{command, Parser, Subcommand}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: digits grouped inconsistently by underscores [INFO] [stdout] --> src/conf.rs:63:28 [INFO] [stdout] | [INFO] [stdout] 63 | pub const EPOCH_REWARD:f64=0.000277_777_778; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: consider: `0.000_277_777_778` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inconsistent_digit_grouping [INFO] [stdout] = note: `#[warn(clippy::inconsistent_digit_grouping)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `command` [INFO] [stdout] --> src/main.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | use clap::{command, Parser, Subcommand}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty string literal in `println!` [INFO] [stdout] --> src/mine.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | println!(""); [INFO] [stdout] | ^^^^^^^^^--^ [INFO] [stdout] | | [INFO] [stdout] | help: remove the empty string [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stdout] = note: `#[warn(clippy::println_empty_string)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/mine.rs:72:39 [INFO] [stdout] | [INFO] [stdout] 72 | let current_epoch_clone = self.current_epoch.clone(); // Clone current_epoch [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.current_epoch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/mine.rs:79:17 [INFO] [stdout] | [INFO] [stdout] 79 | self.current_epoch=self.current_epoch+1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.current_epoch += 1` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] = note: `#[warn(clippy::assign_op_pattern)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/mine.rs:85:16 [INFO] [stdout] | [INFO] [stdout] 85 | if unsafe { conf::IS_CLAIMING } ==false{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `!unsafe { conf::IS_CLAIMING }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] = note: `#[warn(clippy::bool_comparison)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `SuiAddress` which implements the `Copy` trait [INFO] [stdout] --> src/mine.rs:87:35 [INFO] [stdout] | [INFO] [stdout] 87 | let address_clone=self.address.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.address` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if let` can be collapsed into the outer `if let` [INFO] [stdout] --> src/mine.rs:122:33 [INFO] [stdout] | [INFO] [stdout] 122 | / ... if let SuiParsedData::MoveObject(move_object) = content { [INFO] [stdout] 123 | | ... if let SuiMoveStruct::WithFields(fields) = move_object.fields { [INFO] [stdout] 124 | | ... if let Some(shares_miners) = fields.get("shares_miners") { [INFO] [stdout] 125 | | ... if let SuiMoveValue::Vector(shares_miners_vector) = shares_miners { [INFO] [stdout] ... | [INFO] [stdout] 145 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/mine.rs:121:41 [INFO] [stdout] | [INFO] [stdout] 121 | ... if let Some(content) = sui_object_data.content { [INFO] [stdout] | ^^^^^^^ replace this binding [INFO] [stdout] 122 | ... if let SuiParsedData::MoveObject(move_object) = content { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] = note: `#[warn(clippy::collapsible_match)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if let` can be collapsed into the outer `if let` [INFO] [stdout] --> src/mine.rs:125:45 [INFO] [stdout] | [INFO] [stdout] 125 | / ... if let SuiMoveValue::Vector(shares_miners_vector) = shares_miners { [INFO] [stdout] 126 | | ... if let SuiMoveValue::String(share_string) = &shares_miners_vector[1] { [INFO] [stdout] 127 | | ... [INFO] [stdout] 128 | | ... match share_string.parse::() { [INFO] [stdout] ... | [INFO] [stdout] 141 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/mine.rs:124:53 [INFO] [stdout] | [INFO] [stdout] 124 | ... if let Some(shares_miners) = fields.get("shares_miners") { [INFO] [stdout] | ^^^^^^^^^^^^^ replace this binding [INFO] [stdout] 125 | ... if let SuiMoveValue::Vector(shares_miners_vector) = shares_miners { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/mine.rs:131:66 [INFO] [stdout] | [INFO] [stdout] 131 | ... diff=diff+value/1000 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `diff += value/1000` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/mine.rs:149:32 [INFO] [stdout] | [INFO] [stdout] 149 | ... diff=diff+value/1000 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `diff += value/1000` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `.is_multiple_of()` [INFO] [stdout] --> src/mine.rs:160:24 [INFO] [stdout] | [INFO] [stdout] 160 | if result % diff==0 [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace with: `result.is_multiple_of(diff)` [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 implementation of an assign operation [INFO] [stdout] --> src/mine.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | self.current_epoch=self.current_epoch+1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.current_epoch += 1` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/mine.rs:191:53 [INFO] [stdout] | [INFO] [stdout] 191 | let package_id = ObjectID::from_hex_literal(&packageid).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `packageid` [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: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> src/mine.rs:209:54 [INFO] [stdout] | [INFO] [stdout] 209 | let lockdays_arg=pt_builder.pure(lockdays as u64).expect("Err lockdaysId"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `lockdays` [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 implementation of an assign operation [INFO] [stdout] --> src/mine.rs:220:21 [INFO] [stdout] | [INFO] [stdout] 220 | gas_budget = gas_budget+ 12_000_000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `gas_budget += 12_000_000` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/mine.rs:234:13 [INFO] [stdout] | [INFO] [stdout] 234 | gasbalance=gasbalance+coin.balance; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `gasbalance += coin.balance` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> src/mine.rs:239:23 [INFO] [stdout] | [INFO] [stdout] 239 | if gasbalance<(gas_budget as u64) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try: `gas_budget` [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: unneeded `return` statement [INFO] [stdout] --> src/mine.rs:356:9 [INFO] [stdout] | [INFO] [stdout] 356 | return bytes [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] 356 - return bytes [INFO] [stdout] 356 + bytes [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/mine.rs:352:13 [INFO] [stdout] | [INFO] [stdout] 352 | num = num / 10; // remove the last digit [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `num /= 10` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/register.rs:18:59 [INFO] [stdout] | [INFO] [stdout] 18 | let parent_object_id = ObjectID::from_hex_literal(&miner_id).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `miner_id` [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] --> src/register.rs:39:65 [INFO] [stdout] | [INFO] [stdout] 39 | let package_id = ObjectID::from_hex_literal(&packageid).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `packageid` [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] --> src/rewards.rs:209:13 [INFO] [stdout] | [INFO] [stdout] 209 | return claimable; [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] 209 - return claimable; [INFO] [stdout] 209 + claimable [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` can be collapsed into the outer `if let` [INFO] [stdout] --> src/rewards.rs:67:33 [INFO] [stdout] | [INFO] [stdout] 67 | / ... match idd { [INFO] [stdout] 68 | | ... SuiMoveValue::Vector(idds) => { [INFO] [stdout] 69 | | ... let mut bytes = Vec::new(); [INFO] [stdout] 70 | | ... for number in idds { [INFO] [stdout] ... | [INFO] [stdout] 89 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/rewards.rs:66:42 [INFO] [stdout] | [INFO] [stdout] 66 | ... if let Some(idd) = fields.get("euid") { [INFO] [stdout] | ^^^ replace this binding [INFO] [stdout] 67 | ... match idd { [INFO] [stdout] 68 | ... SuiMoveValue::Vector(idds) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/rewards.rs:67:33 [INFO] [stdout] | [INFO] [stdout] 67 | / ... match idd { [INFO] [stdout] 68 | | ... SuiMoveValue::Vector(idds) => { [INFO] [stdout] 69 | | ... let mut bytes = Vec::new(); [INFO] [stdout] 70 | | ... for number in idds { [INFO] [stdout] ... | [INFO] [stdout] 89 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 67 ~ if let SuiMoveValue::Vector(idds) = idd { [INFO] [stdout] 68 + let mut bytes = Vec::new(); [INFO] [stdout] 69 + for number in idds { [INFO] [stdout] 70 + match number { [INFO] [stdout] 71 + SuiMoveValue::Number(js) => { [INFO] [stdout] 72 + bytes.push(*js as u8); [INFO] [stdout] 73 + [INFO] [stdout] 74 + }, [INFO] [stdout] 75 + _ => { [INFO] [stdout] 76 + [INFO] [stdout] 77 + } [INFO] [stdout] 78 + [INFO] [stdout] 79 + } [INFO] [stdout] 80 + } [INFO] [stdout] 81 + redata.id=ObjectID::from_bytes(bytes).unwrap(); [INFO] [stdout] 82 + reward_oids.push(redata.id) [INFO] [stdout] 83 + [INFO] [stdout] 84 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/rewards.rs:71:45 [INFO] [stdout] | [INFO] [stdout] 71 | / ... match number { [INFO] [stdout] 72 | | ... SuiMoveValue::Number(js) => { [INFO] [stdout] 73 | | ... bytes.push(*js as u8); [INFO] [stdout] ... | [INFO] [stdout] 80 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 71 ~ if let SuiMoveValue::Number(js) = number { [INFO] [stdout] 72 + bytes.push(*js as u8); [INFO] [stdout] 73 + [INFO] [stdout] 74 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` can be collapsed into the outer `if let` [INFO] [stdout] --> src/rewards.rs:93:33 [INFO] [stdout] | [INFO] [stdout] 93 | / ... match shares { [INFO] [stdout] 94 | | ... SuiMoveValue::String(js) => { [INFO] [stdout] 95 | | ... _share=js.parse().unwrap(); [INFO] [stdout] 96 | | ... redata.share=_share; [INFO] [stdout] ... | [INFO] [stdout] 102 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/rewards.rs:92:42 [INFO] [stdout] | [INFO] [stdout] 92 | ... if let Some(shares) = fields.get("share") { [INFO] [stdout] | ^^^^^^ replace this binding [INFO] [stdout] 93 | ... match shares { [INFO] [stdout] 94 | ... SuiMoveValue::String(js) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/rewards.rs:93:33 [INFO] [stdout] | [INFO] [stdout] 93 | / ... match shares { [INFO] [stdout] 94 | | ... SuiMoveValue::String(js) => { [INFO] [stdout] 95 | | ... _share=js.parse().unwrap(); [INFO] [stdout] 96 | | ... redata.share=_share; [INFO] [stdout] ... | [INFO] [stdout] 102 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 93 ~ if let SuiMoveValue::String(js) = shares { [INFO] [stdout] 94 + _share=js.parse().unwrap(); [INFO] [stdout] 95 + redata.share=_share; [INFO] [stdout] 96 + [INFO] [stdout] 97 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` can be collapsed into the outer `if let` [INFO] [stdout] --> src/rewards.rs:106:33 [INFO] [stdout] | [INFO] [stdout] 106 | / ... match unl { [INFO] [stdout] 107 | | ... SuiMoveValue::String(js) => { [INFO] [stdout] 108 | | ... _unlock=js.parse().unwrap(); [INFO] [stdout] 109 | | ... redata.unlock=_unlock; [INFO] [stdout] ... | [INFO] [stdout] 115 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/rewards.rs:105:42 [INFO] [stdout] | [INFO] [stdout] 105 | ... if let Some(unl) = fields.get("unlock") { [INFO] [stdout] | ^^^ replace this binding [INFO] [stdout] 106 | ... match unl { [INFO] [stdout] 107 | ... SuiMoveValue::String(js) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/rewards.rs:106:33 [INFO] [stdout] | [INFO] [stdout] 106 | / ... match unl { [INFO] [stdout] 107 | | ... SuiMoveValue::String(js) => { [INFO] [stdout] 108 | | ... _unlock=js.parse().unwrap(); [INFO] [stdout] 109 | | ... redata.unlock=_unlock; [INFO] [stdout] ... | [INFO] [stdout] 115 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 106 ~ if let SuiMoveValue::String(js) = unl { [INFO] [stdout] 107 + _unlock=js.parse().unwrap(); [INFO] [stdout] 108 + redata.unlock=_unlock; [INFO] [stdout] 109 + [INFO] [stdout] 110 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` can be collapsed into the outer `if let` [INFO] [stdout] --> src/rewards.rs:119:33 [INFO] [stdout] | [INFO] [stdout] 119 | / ... match ep { [INFO] [stdout] 120 | | ... SuiMoveValue::String(js) => { [INFO] [stdout] 121 | | ... _eid=js.parse().unwrap(); [INFO] [stdout] 122 | | ... redata.eid=_eid; [INFO] [stdout] ... | [INFO] [stdout] 128 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/rewards.rs:118:42 [INFO] [stdout] | [INFO] [stdout] 118 | ... if let Some(ep) = fields.get("eid") { [INFO] [stdout] | ^^ replace this binding [INFO] [stdout] 119 | ... match ep { [INFO] [stdout] 120 | ... SuiMoveValue::String(js) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/rewards.rs:119:33 [INFO] [stdout] | [INFO] [stdout] 119 | / ... match ep { [INFO] [stdout] 120 | | ... SuiMoveValue::String(js) => { [INFO] [stdout] 121 | | ... _eid=js.parse().unwrap(); [INFO] [stdout] 122 | | ... redata.eid=_eid; [INFO] [stdout] ... | [INFO] [stdout] 128 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 119 ~ if let SuiMoveValue::String(js) = ep { [INFO] [stdout] 120 + _eid=js.parse().unwrap(); [INFO] [stdout] 121 + redata.eid=_eid; [INFO] [stdout] 122 + [INFO] [stdout] 123 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` can be collapsed into the outer `if let` [INFO] [stdout] --> src/rewards.rs:149:33 [INFO] [stdout] | [INFO] [stdout] 149 | / ... match sha_min { [INFO] [stdout] 150 | | ... SuiMoveValue::Vector(sha_min_vec) => { [INFO] [stdout] 151 | | ... let all_share:u64=sha_min_vec[0].to_string().parse().unwrap(); [INFO] [stdout] 152 | | ... epdatamap.insert(item.object_id().unwrap(), all_share); [INFO] [stdout] ... | [INFO] [stdout] 159 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/rewards.rs:147:41 [INFO] [stdout] | [INFO] [stdout] 147 | ... if let Some(sha_min) = fields.get("shares_miners") { [INFO] [stdout] | ^^^^^^^ replace this binding [INFO] [stdout] ... [INFO] [stdout] 150 | ... SuiMoveValue::Vector(sha_min_vec) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/rewards.rs:149:33 [INFO] [stdout] | [INFO] [stdout] 149 | / ... match sha_min { [INFO] [stdout] 150 | | ... SuiMoveValue::Vector(sha_min_vec) => { [INFO] [stdout] 151 | | ... let all_share:u64=sha_min_vec[0].to_string().parse().unwrap(); [INFO] [stdout] 152 | | ... epdatamap.insert(item.object_id().unwrap(), all_share); [INFO] [stdout] ... | [INFO] [stdout] 159 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 149 ~ if let SuiMoveValue::Vector(sha_min_vec) = sha_min { [INFO] [stdout] 150 + let all_share:u64=sha_min_vec[0].to_string().parse().unwrap(); [INFO] [stdout] 151 + epdatamap.insert(item.object_id().unwrap(), all_share); [INFO] [stdout] 152 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/rewards.rs:175:25 [INFO] [stdout] | [INFO] [stdout] 175 | claimable=claimable+rwd; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `claimable += rwd` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> src/rewards.rs:176:112 [INFO] [stdout] | [INFO] [stdout] 176 | ...tal share: {:?} Reward: {} ",item.eid,item.share as u64,allshare as u64, Self::format_float(rwd * conf::MINER_SHARE, 12) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try: `{ item.share }` [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 implementation of an assign operation [INFO] [stdout] --> src/rewards.rs:178:25 [INFO] [stdout] | [INFO] [stdout] 178 | locked=locked+rwd; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace it with: `locked += rwd` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this pattern reimplements `Option::unwrap_or` [INFO] [stdout] --> src/rewards.rs:179:39 [INFO] [stdout] | [INFO] [stdout] 179 | let seconds = if let Some(value) = (item.unlock).checked_sub(30+now) { [INFO] [stdout] | _______________________________________^ [INFO] [stdout] 180 | | value [INFO] [stdout] 181 | | } else { [INFO] [stdout] 182 | | 30 [INFO] [stdout] 183 | | }; [INFO] [stdout] | |_________________________^ help: replace with: `(item.unlock).checked_sub(30+now).unwrap_or(30)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_unwrap_or [INFO] [stdout] = note: `#[warn(clippy::manual_unwrap_or)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> src/rewards.rs:190:136 [INFO] [stdout] | [INFO] [stdout] 190 | ...: {} Unlock: {}D {}H {}M {}S ",item.eid,item.share as u64,allshare as u64, Self::format_float(rwd* conf::MINER_SHARE,12),days... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try: `{ item.share }` [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] --> src/claim.rs:27:57 [INFO] [stdout] | [INFO] [stdout] 27 | let package_id = ObjectID::from_hex_literal(&packageid).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `packageid` [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 implementation of an assign operation [INFO] [stdout] --> src/claim.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | gasbalance=gasbalance+coin.balance; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `gasbalance += coin.balance` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> src/claim.rs:62:27 [INFO] [stdout] | [INFO] [stdout] 62 | if gasbalance<(gas_budget as u64) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try: `gas_budget` [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 `if let` can be collapsed into the outer `if let` [INFO] [stdout] --> src/claim.rs:93:45 [INFO] [stdout] | [INFO] [stdout] 93 | / ... if let TypeTag::Struct(rs) = coin_type { [INFO] [stdout] 94 | | ... if let Some(name) = rs.name.into() { [INFO] [stdout] 95 | | ... if name.to_string()=="SUI" [INFO] [stdout] ... | [INFO] [stdout] 104 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/claim.rs:92:53 [INFO] [stdout] | [INFO] [stdout] 92 | ... if let Some(coin_type) = item.coin_type.clone().into(){ [INFO] [stdout] | ^^^^^^^^^ replace this binding [INFO] [stdout] 93 | ... if let TypeTag::Struct(rs) = coin_type { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:103:21 [INFO] [stdout] | [INFO] [stdout] 103 | return Ok(checkpoint.timestamp_ms / 1000); [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] 103 - return Ok(checkpoint.timestamp_ms / 1000); [INFO] [stdout] 103 + Ok(checkpoint.timestamp_ms / 1000) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:107:21 [INFO] [stdout] | [INFO] [stdout] 107 | return Err("Network Error".into()); [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] 107 - return Err("Network Error".into()); [INFO] [stdout] 107 + Err("Network Error".into()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | return Err("Network Error".into()); [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] 113 - return Err("Network Error".into()); [INFO] [stdout] 113 + Err("Network Error".into()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 122 | return get_genesis_value(rstdata); [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] 122 - return get_genesis_value(rstdata); [INFO] [stdout] 122 + get_genesis_value(rstdata) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` can be collapsed into the outer `if let` [INFO] [stdout] --> src/conf.rs:132:17 [INFO] [stdout] | [INFO] [stdout] 132 | / match gen { [INFO] [stdout] 133 | | SuiMoveValue::String(js) => { [INFO] [stdout] 134 | | rst=js.parse().unwrap(); [INFO] [stdout] 135 | | }, [INFO] [stdout] ... | [INFO] [stdout] 139 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/conf.rs:131:25 [INFO] [stdout] | [INFO] [stdout] 131 | if let Some(gen) = fields.get("Genesis") { [INFO] [stdout] | ^^^ replace this binding [INFO] [stdout] 132 | match gen { [INFO] [stdout] 133 | SuiMoveValue::String(js) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/conf.rs:132:17 [INFO] [stdout] | [INFO] [stdout] 132 | / match gen { [INFO] [stdout] 133 | | SuiMoveValue::String(js) => { [INFO] [stdout] 134 | | rst=js.parse().unwrap(); [INFO] [stdout] 135 | | }, [INFO] [stdout] ... | [INFO] [stdout] 139 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 132 ~ if let SuiMoveValue::String(js) = gen { [INFO] [stdout] 133 + rst=js.parse().unwrap(); [INFO] [stdout] 134 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | return TESTNET_DATA.package_id(); [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] 155 - return TESTNET_DATA.package_id(); [INFO] [stdout] 155 + TESTNET_DATA.package_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | return MAINNET_DATA.package_id(); [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] 158 - return MAINNET_DATA.package_id(); [INFO] [stdout] 158 + MAINNET_DATA.package_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | return TESTNET_DATA.treasury_id(); [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] 165 - return TESTNET_DATA.treasury_id(); [INFO] [stdout] 165 + TESTNET_DATA.treasury_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:168:9 [INFO] [stdout] | [INFO] [stdout] 168 | return MAINNET_DATA.treasury_id(); [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] 168 - return MAINNET_DATA.treasury_id(); [INFO] [stdout] 168 + MAINNET_DATA.treasury_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:175:9 [INFO] [stdout] | [INFO] [stdout] 175 | return TESTNET_DATA.miner_id(); [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] 175 - return TESTNET_DATA.miner_id(); [INFO] [stdout] 175 + TESTNET_DATA.miner_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | return MAINNET_DATA.miner_id(); [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] 178 - return MAINNET_DATA.miner_id(); [INFO] [stdout] 178 + MAINNET_DATA.miner_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:186:9 [INFO] [stdout] | [INFO] [stdout] 186 | return TESTNET_DATA.epochs_id(); [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] 186 - return TESTNET_DATA.epochs_id(); [INFO] [stdout] 186 + TESTNET_DATA.epochs_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:189:9 [INFO] [stdout] | [INFO] [stdout] 189 | return MAINNET_DATA.epochs_id(); [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] 189 - return MAINNET_DATA.epochs_id(); [INFO] [stdout] 189 + MAINNET_DATA.epochs_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:196:9 [INFO] [stdout] | [INFO] [stdout] 196 | return TESTNET_DATA.coin_type(); [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] 196 - return TESTNET_DATA.coin_type(); [INFO] [stdout] 196 + TESTNET_DATA.coin_type() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | return MAINNET_DATA.coin_type(); [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] 199 - return MAINNET_DATA.coin_type(); [INFO] [stdout] 199 + MAINNET_DATA.coin_type() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:206:9 [INFO] [stdout] | [INFO] [stdout] 206 | return TESTNET_DATA.init_ver(); [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] 206 - return TESTNET_DATA.init_ver(); [INFO] [stdout] 206 + TESTNET_DATA.init_ver() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:209:9 [INFO] [stdout] | [INFO] [stdout] 209 | return MAINNET_DATA.init_ver(); [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] 209 - return MAINNET_DATA.init_ver(); [INFO] [stdout] 209 + MAINNET_DATA.init_ver() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:227:5 [INFO] [stdout] | [INFO] [stdout] 227 | return Ok(balance.total_balance as f64/decif64); [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] 227 - return Ok(balance.total_balance as f64/decif64); [INFO] [stdout] 227 + Ok(balance.total_balance as f64/decif64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/conf.rs:243:13 [INFO] [stdout] | [INFO] [stdout] 243 | gasbalance=gasbalance+coin.balance; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `gasbalance += coin.balance` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/main.rs:138:38 [INFO] [stdout] | [INFO] [stdout] 138 | let _ = Command::new("cmd").args(&["/c", "cls"]).status(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `["/c", "cls"]` [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: empty string literal in `println!` [INFO] [stdout] --> src/main.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | println!(""); [INFO] [stdout] | ^^^^^^^^^--^ [INFO] [stdout] | | [INFO] [stdout] | help: remove the empty string [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/main.rs:174:49 [INFO] [stdout] | [INFO] [stdout] 174 | let treasury_oid=ObjectID::from_hex_literal(&miner.get_treasury_id()).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `miner.get_treasury_id()` [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] --> src/main.rs:175:48 [INFO] [stdout] | [INFO] [stdout] 175 | let miner_oid = ObjectID::from_hex_literal(&miner.get_miner_id()).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: change this to: `miner.get_miner_id()` [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] --> src/main.rs:176:47 [INFO] [stdout] | [INFO] [stdout] 176 | let epochs_oid=ObjectID::from_hex_literal(&miner.get_epochs_id()).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `miner.get_epochs_id()` [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 function has too many arguments (9/7) [INFO] [stdout] --> src/main.rs:242:5 [INFO] [stdout] | [INFO] [stdout] 242 | pub fn new(sui_client :SuiClient , keypair_filepath: String, address:SuiAddress,treasury_obj:ObjectArg,miner_obj:ObjectArg ,epochs_obj:ObjectArg,clock_obj:ObjectArg,current_epoch:u64,testnet:bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty string literal in `println!` [INFO] [stdout] --> src/mine.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | println!(""); [INFO] [stdout] | ^^^^^^^^^--^ [INFO] [stdout] | | [INFO] [stdout] | help: remove the empty string [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stdout] = note: `#[warn(clippy::println_empty_string)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/mine.rs:72:39 [INFO] [stdout] | [INFO] [stdout] 72 | let current_epoch_clone = self.current_epoch.clone(); // Clone current_epoch [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.current_epoch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/mine.rs:79:17 [INFO] [stdout] | [INFO] [stdout] 79 | self.current_epoch=self.current_epoch+1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.current_epoch += 1` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] = note: `#[warn(clippy::assign_op_pattern)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/mine.rs:85:16 [INFO] [stdout] | [INFO] [stdout] 85 | if unsafe { conf::IS_CLAIMING } ==false{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `!unsafe { conf::IS_CLAIMING }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] = note: `#[warn(clippy::bool_comparison)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `SuiAddress` which implements the `Copy` trait [INFO] [stdout] --> src/mine.rs:87:35 [INFO] [stdout] | [INFO] [stdout] 87 | let address_clone=self.address.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.address` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if let` can be collapsed into the outer `if let` [INFO] [stdout] --> src/mine.rs:122:33 [INFO] [stdout] | [INFO] [stdout] 122 | / ... if let SuiParsedData::MoveObject(move_object) = content { [INFO] [stdout] 123 | | ... if let SuiMoveStruct::WithFields(fields) = move_object.fields { [INFO] [stdout] 124 | | ... if let Some(shares_miners) = fields.get("shares_miners") { [INFO] [stdout] 125 | | ... if let SuiMoveValue::Vector(shares_miners_vector) = shares_miners { [INFO] [stdout] ... | [INFO] [stdout] 145 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/mine.rs:121:41 [INFO] [stdout] | [INFO] [stdout] 121 | ... if let Some(content) = sui_object_data.content { [INFO] [stdout] | ^^^^^^^ replace this binding [INFO] [stdout] 122 | ... if let SuiParsedData::MoveObject(move_object) = content { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] = note: `#[warn(clippy::collapsible_match)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if let` can be collapsed into the outer `if let` [INFO] [stdout] --> src/mine.rs:125:45 [INFO] [stdout] | [INFO] [stdout] 125 | / ... if let SuiMoveValue::Vector(shares_miners_vector) = shares_miners { [INFO] [stdout] 126 | | ... if let SuiMoveValue::String(share_string) = &shares_miners_vector[1] { [INFO] [stdout] 127 | | ... [INFO] [stdout] 128 | | ... match share_string.parse::() { [INFO] [stdout] ... | [INFO] [stdout] 141 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/mine.rs:124:53 [INFO] [stdout] | [INFO] [stdout] 124 | ... if let Some(shares_miners) = fields.get("shares_miners") { [INFO] [stdout] | ^^^^^^^^^^^^^ replace this binding [INFO] [stdout] 125 | ... if let SuiMoveValue::Vector(shares_miners_vector) = shares_miners { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/mine.rs:131:66 [INFO] [stdout] | [INFO] [stdout] 131 | ... diff=diff+value/1000 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `diff += value/1000` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/mine.rs:149:32 [INFO] [stdout] | [INFO] [stdout] 149 | ... diff=diff+value/1000 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `diff += value/1000` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `.is_multiple_of()` [INFO] [stdout] --> src/mine.rs:160:24 [INFO] [stdout] | [INFO] [stdout] 160 | if result % diff==0 [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace with: `result.is_multiple_of(diff)` [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 implementation of an assign operation [INFO] [stdout] --> src/mine.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | self.current_epoch=self.current_epoch+1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.current_epoch += 1` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/mine.rs:191:53 [INFO] [stdout] | [INFO] [stdout] 191 | let package_id = ObjectID::from_hex_literal(&packageid).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `packageid` [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: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> src/mine.rs:209:54 [INFO] [stdout] | [INFO] [stdout] 209 | let lockdays_arg=pt_builder.pure(lockdays as u64).expect("Err lockdaysId"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `lockdays` [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 implementation of an assign operation [INFO] [stdout] --> src/mine.rs:220:21 [INFO] [stdout] | [INFO] [stdout] 220 | gas_budget = gas_budget+ 12_000_000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `gas_budget += 12_000_000` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/mine.rs:234:13 [INFO] [stdout] | [INFO] [stdout] 234 | gasbalance=gasbalance+coin.balance; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `gasbalance += coin.balance` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> src/mine.rs:239:23 [INFO] [stdout] | [INFO] [stdout] 239 | if gasbalance<(gas_budget as u64) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try: `gas_budget` [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: unneeded `return` statement [INFO] [stdout] --> src/mine.rs:356:9 [INFO] [stdout] | [INFO] [stdout] 356 | return bytes [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] 356 - return bytes [INFO] [stdout] 356 + bytes [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/mine.rs:352:13 [INFO] [stdout] | [INFO] [stdout] 352 | num = num / 10; // remove the last digit [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `num /= 10` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/register.rs:18:59 [INFO] [stdout] | [INFO] [stdout] 18 | let parent_object_id = ObjectID::from_hex_literal(&miner_id).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `miner_id` [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] --> src/register.rs:39:65 [INFO] [stdout] | [INFO] [stdout] 39 | let package_id = ObjectID::from_hex_literal(&packageid).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `packageid` [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] --> src/rewards.rs:209:13 [INFO] [stdout] | [INFO] [stdout] 209 | return claimable; [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] 209 - return claimable; [INFO] [stdout] 209 + claimable [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` can be collapsed into the outer `if let` [INFO] [stdout] --> src/rewards.rs:67:33 [INFO] [stdout] | [INFO] [stdout] 67 | / ... match idd { [INFO] [stdout] 68 | | ... SuiMoveValue::Vector(idds) => { [INFO] [stdout] 69 | | ... let mut bytes = Vec::new(); [INFO] [stdout] 70 | | ... for number in idds { [INFO] [stdout] ... | [INFO] [stdout] 89 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/rewards.rs:66:42 [INFO] [stdout] | [INFO] [stdout] 66 | ... if let Some(idd) = fields.get("euid") { [INFO] [stdout] | ^^^ replace this binding [INFO] [stdout] 67 | ... match idd { [INFO] [stdout] 68 | ... SuiMoveValue::Vector(idds) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/rewards.rs:67:33 [INFO] [stdout] | [INFO] [stdout] 67 | / ... match idd { [INFO] [stdout] 68 | | ... SuiMoveValue::Vector(idds) => { [INFO] [stdout] 69 | | ... let mut bytes = Vec::new(); [INFO] [stdout] 70 | | ... for number in idds { [INFO] [stdout] ... | [INFO] [stdout] 89 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 67 ~ if let SuiMoveValue::Vector(idds) = idd { [INFO] [stdout] 68 + let mut bytes = Vec::new(); [INFO] [stdout] 69 + for number in idds { [INFO] [stdout] 70 + match number { [INFO] [stdout] 71 + SuiMoveValue::Number(js) => { [INFO] [stdout] 72 + bytes.push(*js as u8); [INFO] [stdout] 73 + [INFO] [stdout] 74 + }, [INFO] [stdout] 75 + _ => { [INFO] [stdout] 76 + [INFO] [stdout] 77 + } [INFO] [stdout] 78 + [INFO] [stdout] 79 + } [INFO] [stdout] 80 + } [INFO] [stdout] 81 + redata.id=ObjectID::from_bytes(bytes).unwrap(); [INFO] [stdout] 82 + reward_oids.push(redata.id) [INFO] [stdout] 83 + [INFO] [stdout] 84 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/rewards.rs:71:45 [INFO] [stdout] | [INFO] [stdout] 71 | / ... match number { [INFO] [stdout] 72 | | ... SuiMoveValue::Number(js) => { [INFO] [stdout] 73 | | ... bytes.push(*js as u8); [INFO] [stdout] ... | [INFO] [stdout] 80 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 71 ~ if let SuiMoveValue::Number(js) = number { [INFO] [stdout] 72 + bytes.push(*js as u8); [INFO] [stdout] 73 + [INFO] [stdout] 74 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` can be collapsed into the outer `if let` [INFO] [stdout] --> src/rewards.rs:93:33 [INFO] [stdout] | [INFO] [stdout] 93 | / ... match shares { [INFO] [stdout] 94 | | ... SuiMoveValue::String(js) => { [INFO] [stdout] 95 | | ... _share=js.parse().unwrap(); [INFO] [stdout] 96 | | ... redata.share=_share; [INFO] [stdout] ... | [INFO] [stdout] 102 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/rewards.rs:92:42 [INFO] [stdout] | [INFO] [stdout] 92 | ... if let Some(shares) = fields.get("share") { [INFO] [stdout] | ^^^^^^ replace this binding [INFO] [stdout] 93 | ... match shares { [INFO] [stdout] 94 | ... SuiMoveValue::String(js) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/rewards.rs:93:33 [INFO] [stdout] | [INFO] [stdout] 93 | / ... match shares { [INFO] [stdout] 94 | | ... SuiMoveValue::String(js) => { [INFO] [stdout] 95 | | ... _share=js.parse().unwrap(); [INFO] [stdout] 96 | | ... redata.share=_share; [INFO] [stdout] ... | [INFO] [stdout] 102 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 93 ~ if let SuiMoveValue::String(js) = shares { [INFO] [stdout] 94 + _share=js.parse().unwrap(); [INFO] [stdout] 95 + redata.share=_share; [INFO] [stdout] 96 + [INFO] [stdout] 97 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` can be collapsed into the outer `if let` [INFO] [stdout] --> src/rewards.rs:106:33 [INFO] [stdout] | [INFO] [stdout] 106 | / ... match unl { [INFO] [stdout] 107 | | ... SuiMoveValue::String(js) => { [INFO] [stdout] 108 | | ... _unlock=js.parse().unwrap(); [INFO] [stdout] 109 | | ... redata.unlock=_unlock; [INFO] [stdout] ... | [INFO] [stdout] 115 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/rewards.rs:105:42 [INFO] [stdout] | [INFO] [stdout] 105 | ... if let Some(unl) = fields.get("unlock") { [INFO] [stdout] | ^^^ replace this binding [INFO] [stdout] 106 | ... match unl { [INFO] [stdout] 107 | ... SuiMoveValue::String(js) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/rewards.rs:106:33 [INFO] [stdout] | [INFO] [stdout] 106 | / ... match unl { [INFO] [stdout] 107 | | ... SuiMoveValue::String(js) => { [INFO] [stdout] 108 | | ... _unlock=js.parse().unwrap(); [INFO] [stdout] 109 | | ... redata.unlock=_unlock; [INFO] [stdout] ... | [INFO] [stdout] 115 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 106 ~ if let SuiMoveValue::String(js) = unl { [INFO] [stdout] 107 + _unlock=js.parse().unwrap(); [INFO] [stdout] 108 + redata.unlock=_unlock; [INFO] [stdout] 109 + [INFO] [stdout] 110 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` can be collapsed into the outer `if let` [INFO] [stdout] --> src/rewards.rs:119:33 [INFO] [stdout] | [INFO] [stdout] 119 | / ... match ep { [INFO] [stdout] 120 | | ... SuiMoveValue::String(js) => { [INFO] [stdout] 121 | | ... _eid=js.parse().unwrap(); [INFO] [stdout] 122 | | ... redata.eid=_eid; [INFO] [stdout] ... | [INFO] [stdout] 128 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/rewards.rs:118:42 [INFO] [stdout] | [INFO] [stdout] 118 | ... if let Some(ep) = fields.get("eid") { [INFO] [stdout] | ^^ replace this binding [INFO] [stdout] 119 | ... match ep { [INFO] [stdout] 120 | ... SuiMoveValue::String(js) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/rewards.rs:119:33 [INFO] [stdout] | [INFO] [stdout] 119 | / ... match ep { [INFO] [stdout] 120 | | ... SuiMoveValue::String(js) => { [INFO] [stdout] 121 | | ... _eid=js.parse().unwrap(); [INFO] [stdout] 122 | | ... redata.eid=_eid; [INFO] [stdout] ... | [INFO] [stdout] 128 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 119 ~ if let SuiMoveValue::String(js) = ep { [INFO] [stdout] 120 + _eid=js.parse().unwrap(); [INFO] [stdout] 121 + redata.eid=_eid; [INFO] [stdout] 122 + [INFO] [stdout] 123 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` can be collapsed into the outer `if let` [INFO] [stdout] --> src/rewards.rs:149:33 [INFO] [stdout] | [INFO] [stdout] 149 | / ... match sha_min { [INFO] [stdout] 150 | | ... SuiMoveValue::Vector(sha_min_vec) => { [INFO] [stdout] 151 | | ... let all_share:u64=sha_min_vec[0].to_string().parse().unwrap(); [INFO] [stdout] 152 | | ... epdatamap.insert(item.object_id().unwrap(), all_share); [INFO] [stdout] ... | [INFO] [stdout] 159 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/rewards.rs:147:41 [INFO] [stdout] | [INFO] [stdout] 147 | ... if let Some(sha_min) = fields.get("shares_miners") { [INFO] [stdout] | ^^^^^^^ replace this binding [INFO] [stdout] ... [INFO] [stdout] 150 | ... SuiMoveValue::Vector(sha_min_vec) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/rewards.rs:149:33 [INFO] [stdout] | [INFO] [stdout] 149 | / ... match sha_min { [INFO] [stdout] 150 | | ... SuiMoveValue::Vector(sha_min_vec) => { [INFO] [stdout] 151 | | ... let all_share:u64=sha_min_vec[0].to_string().parse().unwrap(); [INFO] [stdout] 152 | | ... epdatamap.insert(item.object_id().unwrap(), all_share); [INFO] [stdout] ... | [INFO] [stdout] 159 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 149 ~ if let SuiMoveValue::Vector(sha_min_vec) = sha_min { [INFO] [stdout] 150 + let all_share:u64=sha_min_vec[0].to_string().parse().unwrap(); [INFO] [stdout] 151 + epdatamap.insert(item.object_id().unwrap(), all_share); [INFO] [stdout] 152 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/rewards.rs:175:25 [INFO] [stdout] | [INFO] [stdout] 175 | claimable=claimable+rwd; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `claimable += rwd` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> src/rewards.rs:176:112 [INFO] [stdout] | [INFO] [stdout] 176 | ...tal share: {:?} Reward: {} ",item.eid,item.share as u64,allshare as u64, Self::format_float(rwd * conf::MINER_SHARE, 12) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try: `{ item.share }` [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 implementation of an assign operation [INFO] [stdout] --> src/rewards.rs:178:25 [INFO] [stdout] | [INFO] [stdout] 178 | locked=locked+rwd; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace it with: `locked += rwd` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this pattern reimplements `Option::unwrap_or` [INFO] [stdout] --> src/rewards.rs:179:39 [INFO] [stdout] | [INFO] [stdout] 179 | let seconds = if let Some(value) = (item.unlock).checked_sub(30+now) { [INFO] [stdout] | _______________________________________^ [INFO] [stdout] 180 | | value [INFO] [stdout] 181 | | } else { [INFO] [stdout] 182 | | 30 [INFO] [stdout] 183 | | }; [INFO] [stdout] | |_________________________^ help: replace with: `(item.unlock).checked_sub(30+now).unwrap_or(30)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_unwrap_or [INFO] [stdout] = note: `#[warn(clippy::manual_unwrap_or)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> src/rewards.rs:190:136 [INFO] [stdout] | [INFO] [stdout] 190 | ...: {} Unlock: {}D {}H {}M {}S ",item.eid,item.share as u64,allshare as u64, Self::format_float(rwd* conf::MINER_SHARE,12),days... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try: `{ item.share }` [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] --> src/claim.rs:27:57 [INFO] [stdout] | [INFO] [stdout] 27 | let package_id = ObjectID::from_hex_literal(&packageid).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `packageid` [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 implementation of an assign operation [INFO] [stdout] --> src/claim.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | gasbalance=gasbalance+coin.balance; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `gasbalance += coin.balance` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u64` -> `u64`) [INFO] [stdout] --> src/claim.rs:62:27 [INFO] [stdout] | [INFO] [stdout] 62 | if gasbalance<(gas_budget as u64) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try: `gas_budget` [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 `if let` can be collapsed into the outer `if let` [INFO] [stdout] --> src/claim.rs:93:45 [INFO] [stdout] | [INFO] [stdout] 93 | / ... if let TypeTag::Struct(rs) = coin_type { [INFO] [stdout] 94 | | ... if let Some(name) = rs.name.into() { [INFO] [stdout] 95 | | ... if name.to_string()=="SUI" [INFO] [stdout] ... | [INFO] [stdout] 104 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/claim.rs:92:53 [INFO] [stdout] | [INFO] [stdout] 92 | ... if let Some(coin_type) = item.coin_type.clone().into(){ [INFO] [stdout] | ^^^^^^^^^ replace this binding [INFO] [stdout] 93 | ... if let TypeTag::Struct(rs) = coin_type { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:103:21 [INFO] [stdout] | [INFO] [stdout] 103 | return Ok(checkpoint.timestamp_ms / 1000); [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] 103 - return Ok(checkpoint.timestamp_ms / 1000); [INFO] [stdout] 103 + Ok(checkpoint.timestamp_ms / 1000) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:107:21 [INFO] [stdout] | [INFO] [stdout] 107 | return Err("Network Error".into()); [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] 107 - return Err("Network Error".into()); [INFO] [stdout] 107 + Err("Network Error".into()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | return Err("Network Error".into()); [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] 113 - return Err("Network Error".into()); [INFO] [stdout] 113 + Err("Network Error".into()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 122 | return get_genesis_value(rstdata); [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] 122 - return get_genesis_value(rstdata); [INFO] [stdout] 122 + get_genesis_value(rstdata) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` can be collapsed into the outer `if let` [INFO] [stdout] --> src/conf.rs:132:17 [INFO] [stdout] | [INFO] [stdout] 132 | / match gen { [INFO] [stdout] 133 | | SuiMoveValue::String(js) => { [INFO] [stdout] 134 | | rst=js.parse().unwrap(); [INFO] [stdout] 135 | | }, [INFO] [stdout] ... | [INFO] [stdout] 139 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/conf.rs:131:25 [INFO] [stdout] | [INFO] [stdout] 131 | if let Some(gen) = fields.get("Genesis") { [INFO] [stdout] | ^^^ replace this binding [INFO] [stdout] 132 | match gen { [INFO] [stdout] 133 | SuiMoveValue::String(js) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/conf.rs:132:17 [INFO] [stdout] | [INFO] [stdout] 132 | / match gen { [INFO] [stdout] 133 | | SuiMoveValue::String(js) => { [INFO] [stdout] 134 | | rst=js.parse().unwrap(); [INFO] [stdout] 135 | | }, [INFO] [stdout] ... | [INFO] [stdout] 139 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 132 ~ if let SuiMoveValue::String(js) = gen { [INFO] [stdout] 133 + rst=js.parse().unwrap(); [INFO] [stdout] 134 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | return TESTNET_DATA.package_id(); [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] 155 - return TESTNET_DATA.package_id(); [INFO] [stdout] 155 + TESTNET_DATA.package_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | return MAINNET_DATA.package_id(); [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] 158 - return MAINNET_DATA.package_id(); [INFO] [stdout] 158 + MAINNET_DATA.package_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | return TESTNET_DATA.treasury_id(); [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] 165 - return TESTNET_DATA.treasury_id(); [INFO] [stdout] 165 + TESTNET_DATA.treasury_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:168:9 [INFO] [stdout] | [INFO] [stdout] 168 | return MAINNET_DATA.treasury_id(); [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] 168 - return MAINNET_DATA.treasury_id(); [INFO] [stdout] 168 + MAINNET_DATA.treasury_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:175:9 [INFO] [stdout] | [INFO] [stdout] 175 | return TESTNET_DATA.miner_id(); [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] 175 - return TESTNET_DATA.miner_id(); [INFO] [stdout] 175 + TESTNET_DATA.miner_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | return MAINNET_DATA.miner_id(); [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] 178 - return MAINNET_DATA.miner_id(); [INFO] [stdout] 178 + MAINNET_DATA.miner_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:186:9 [INFO] [stdout] | [INFO] [stdout] 186 | return TESTNET_DATA.epochs_id(); [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] 186 - return TESTNET_DATA.epochs_id(); [INFO] [stdout] 186 + TESTNET_DATA.epochs_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:189:9 [INFO] [stdout] | [INFO] [stdout] 189 | return MAINNET_DATA.epochs_id(); [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] 189 - return MAINNET_DATA.epochs_id(); [INFO] [stdout] 189 + MAINNET_DATA.epochs_id() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:196:9 [INFO] [stdout] | [INFO] [stdout] 196 | return TESTNET_DATA.coin_type(); [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] 196 - return TESTNET_DATA.coin_type(); [INFO] [stdout] 196 + TESTNET_DATA.coin_type() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | return MAINNET_DATA.coin_type(); [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] 199 - return MAINNET_DATA.coin_type(); [INFO] [stdout] 199 + MAINNET_DATA.coin_type() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:206:9 [INFO] [stdout] | [INFO] [stdout] 206 | return TESTNET_DATA.init_ver(); [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] 206 - return TESTNET_DATA.init_ver(); [INFO] [stdout] 206 + TESTNET_DATA.init_ver() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:209:9 [INFO] [stdout] | [INFO] [stdout] 209 | return MAINNET_DATA.init_ver(); [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] 209 - return MAINNET_DATA.init_ver(); [INFO] [stdout] 209 + MAINNET_DATA.init_ver() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/conf.rs:227:5 [INFO] [stdout] | [INFO] [stdout] 227 | return Ok(balance.total_balance as f64/decif64); [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] 227 - return Ok(balance.total_balance as f64/decif64); [INFO] [stdout] 227 + Ok(balance.total_balance as f64/decif64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/conf.rs:243:13 [INFO] [stdout] | [INFO] [stdout] 243 | gasbalance=gasbalance+coin.balance; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `gasbalance += coin.balance` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/main.rs:138:38 [INFO] [stdout] | [INFO] [stdout] 138 | let _ = Command::new("cmd").args(&["/c", "cls"]).status(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `["/c", "cls"]` [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: empty string literal in `println!` [INFO] [stdout] --> src/main.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | println!(""); [INFO] [stdout] | ^^^^^^^^^--^ [INFO] [stdout] | | [INFO] [stdout] | help: remove the empty string [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/main.rs:174:49 [INFO] [stdout] | [INFO] [stdout] 174 | let treasury_oid=ObjectID::from_hex_literal(&miner.get_treasury_id()).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `miner.get_treasury_id()` [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] --> src/main.rs:175:48 [INFO] [stdout] | [INFO] [stdout] 175 | let miner_oid = ObjectID::from_hex_literal(&miner.get_miner_id()).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: change this to: `miner.get_miner_id()` [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] --> src/main.rs:176:47 [INFO] [stdout] | [INFO] [stdout] 176 | let epochs_oid=ObjectID::from_hex_literal(&miner.get_epochs_id()).expect("Failed to parse ObjectID"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `miner.get_epochs_id()` [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 function has too many arguments (9/7) [INFO] [stdout] --> src/main.rs:242:5 [INFO] [stdout] | [INFO] [stdout] 242 | pub fn new(sui_client :SuiClient , keypair_filepath: String, address:SuiAddress,treasury_obj:ObjectArg,miner_obj:ObjectArg ,epochs_obj:ObjectArg,clock_obj:ObjectArg,current_epoch:u64,testnet:bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 11s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: num-bigint-dig v0.8.4 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "4c33a925359a0cef3b1f38b14f6d7c6ef0e1e42a0e5345227c6f135565669751", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4c33a925359a0cef3b1f38b14f6d7c6ef0e1e42a0e5345227c6f135565669751", kill_on_drop: false }` [INFO] [stdout] 4c33a925359a0cef3b1f38b14f6d7c6ef0e1e42a0e5345227c6f135565669751