[INFO] cloning repository https://github.com/188950180-gif/toki-node
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/188950180-gif/toki-node" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F188950180-gif%2Ftoki-node", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F188950180-gif%2Ftoki-node'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 233726afda8606fc46f266feddbeec540487816c
[INFO] checking 188950180-gif/toki-node against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F188950180-gif%2Ftoki-node" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/188950180-gif/toki-node
[INFO] finished tweaking git repo https://github.com/188950180-gif/toki-node
[INFO] tweaked toml for git repo https://github.com/188950180-gif/toki-node written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/188950180-gif/toki-node on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/188950180-gif/toki-node 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" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.117
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.117
[INFO] [stderr]   Downloaded asn1-rs-impl v0.2.0
[INFO] [stderr]   Downloaded prometheus-client-derive-encode v0.4.2
[INFO] [stderr]   Downloaded oid-registry v0.7.1
[INFO] [stderr]   Downloaded match-lookup v0.1.2
[INFO] [stderr]   Downloaded libp2p-dns v0.41.1
[INFO] [stderr]   Downloaded lru-cache v0.1.2
[INFO] [stderr]   Downloaded dtoa v1.0.11
[INFO] [stderr]   Downloaded hex_fmt v0.3.0
[INFO] [stderr]   Downloaded futures-executor v0.3.32
[INFO] [stderr]   Downloaded libp2p-metrics v0.14.1
[INFO] [stderr]   Downloaded enum-as-inner v0.6.1
[INFO] [stderr]   Downloaded typemap-ors v1.0.0
[INFO] [stderr]   Downloaded rw-stream-sink v0.4.0
[INFO] [stderr]   Downloaded ipconfig v0.3.4
[INFO] [stderr]   Downloaded resolv-conf v0.7.6
[INFO] [stderr]   Downloaded libp2p-noise v0.44.0
[INFO] [stderr]   Downloaded libp2p-tls v0.4.1
[INFO] [stderr]   Downloaded serde-value v0.7.0
[INFO] [stderr]   Downloaded unsafe-any-ors v1.0.0
[INFO] [stderr]   Downloaded libp2p-allow-block-list v0.3.0
[INFO] [stderr]   Downloaded futures-ticker v0.0.3
[INFO] [stderr]   Downloaded thread-id v5.1.0
[INFO] [stderr]   Downloaded destructure_traitobject v0.2.0
[INFO] [stderr]   Downloaded pathdiff v0.2.3
[INFO] [stderr]   Downloaded ordered-float v2.10.1
[INFO] [stderr]   Downloaded libp2p-connection-limits v0.3.1
[INFO] [stderr]   Downloaded x25519-dalek v2.0.1
[INFO] [stderr]   Downloaded json5 v0.4.1
[INFO] [stderr]   Downloaded log-mdc v0.1.0
[INFO] [stderr]   Downloaded async-io v2.6.0
[INFO] [stderr]   Downloaded convert_case v0.6.0
[INFO] [stderr]   Downloaded libp2p-mdns v0.45.1
[INFO] [stderr]   Downloaded dlv-list v0.5.2
[INFO] [stderr]   Downloaded tokio-tungstenite v0.24.0
[INFO] [stderr]   Downloaded pest_generator v2.8.6
[INFO] [stderr]   Downloaded hyper-rustls v0.27.7
[INFO] [stderr]   Downloaded pest_derive v2.8.6
[INFO] [stderr]   Downloaded ryu v1.0.23
[INFO] [stderr]   Downloaded ucd-trie v0.1.7
[INFO] [stderr]   Downloaded openssl-sys v0.9.112
[INFO] [stderr]   Downloaded pest_meta v2.8.6
[INFO] [stderr]   Downloaded config v0.14.1
[INFO] [stderr]   Downloaded ron v0.8.1
[INFO] [stderr]   Downloaded tower-http v0.5.2
[INFO] [stderr]   Downloaded pest v2.8.6
[INFO] [stderr]   Downloaded iri-string v0.7.12
[INFO] [stderr]   Downloaded reqwest v0.12.28
[INFO] [stderr]   Downloaded rustls v0.23.37
[INFO] [stderr]   Downloaded h2 v0.4.13
[INFO] [stderr]   Downloaded axum v0.7.9
[INFO] [stderr]   Downloaded yaml-rust2 v0.8.1
[INFO] [stderr]   Downloaded sled v0.34.7
[INFO] [stderr]   Downloaded openssl v0.10.76
[INFO] [stderr]   Downloaded tower-http v0.6.8
[INFO] [stderr]   Downloaded hickory-proto v0.24.4
[INFO] [stderr]   Downloaded unicode-segmentation v1.13.2
[INFO] [stderr]   Downloaded security-framework v3.7.0
[INFO] [stderr]   Downloaded widestring v1.2.1
[INFO] [stderr]   Downloaded arc-swap v1.9.1
[INFO] [stderr]   Downloaded snow v0.9.6
[INFO] [stderr]   Downloaded log4rs v1.4.0
[INFO] [stderr]   Downloaded jsonwebtoken v9.3.1
[INFO] [stderr]   Downloaded web-sys v0.3.94
[INFO] [stderr]   Downloaded proptest v1.11.0
[INFO] [stderr]   Downloaded unsafe-libyaml v0.2.11
[INFO] [stderr]   Downloaded serde_yaml v0.9.34+deprecated
[INFO] [stderr]   Downloaded tungstenite v0.24.0
[INFO] [stderr]   Downloaded netlink-packet-route v0.28.0
[INFO] [stderr]   Downloaded libc v0.2.184
[INFO] [stderr]   Downloaded blake3 v1.8.4
[INFO] [stderr]   Downloaded hickory-resolver v0.24.4
[INFO] [stderr]   Downloaded tokio v1.51.0
[INFO] [stderr]   Downloaded native-tls v0.2.18
[INFO] [stderr]   Downloaded aes-gcm v0.10.3
[INFO] [stderr]   Downloaded plotters v0.3.7
[INFO] [stderr]   Downloaded schannel v0.1.29
[INFO] [stderr]   Downloaded libp2p-gossipsub v0.46.1
[INFO] [stderr]   Downloaded security-framework-sys v2.17.0
[INFO] [stderr]   Downloaded axum-core v0.4.5
[INFO] [stderr]   Downloaded simple_asn1 v0.6.4
[INFO] [stderr]   Downloaded libp2p-kad v0.45.3
[INFO] [stderr]   Downloaded criterion v0.5.1
[INFO] [stderr]   Downloaded asn1-rs v0.6.2
[INFO] [stderr]   Downloaded rustls-webpki v0.103.10
[INFO] [stderr]   Downloaded libp2p-swarm v0.44.2
[INFO] [stderr]   Downloaded quick-protobuf v0.8.1
[INFO] [stderr]   Downloaded cc v1.2.59
[INFO] [stderr]   Downloaded ordered-multimap v0.7.3
[INFO] [stderr]   Downloaded rust-ini v0.20.0
[INFO] [stderr]   Downloaded arraydeque v0.5.1
[INFO] [stderr]   Downloaded serde_path_to_error v0.1.20
[INFO] [stderr]   Downloaded prometheus-client v0.22.3
[INFO] [stderr]   Downloaded chacha20poly1305 v0.10.1
[INFO] [stderr]   Downloaded der-parser v9.0.0
[INFO] [stderr]   Downloaded x509-parser v0.16.0
[INFO] [stderr]   Downloaded futures v0.3.32
[INFO] [stderr]   Downloaded libp2p-identity v0.2.13
[INFO] [stderr]   Downloaded clap v4.6.0
[INFO] [stderr]   Downloaded mock_instant v0.6.0
[INFO] [stderr]   Downloaded windows-registry v0.6.1
[INFO] [stderr]   Downloaded rcgen v0.11.3
[INFO] [stderr]   Downloaded rtnetlink v0.20.0
[INFO] [stderr]   Downloaded libp2p v0.53.2
[INFO] [stderr]   Downloaded futures-rustls v0.26.0
[INFO] [stderr]   Downloaded rustls-pki-types v1.14.0
[INFO] [stderr]   Downloaded libp2p-tcp v0.41.0
[INFO] [stderr]   Downloaded multihash v0.19.3
[INFO] [stderr]   Downloaded ciborium v0.2.2
[INFO] [stderr]   Downloaded clap_derive v4.6.0
[INFO] [stderr]   Downloaded cast v0.3.0
[INFO] [stderr]   Downloaded criterion-plot v0.5.0
[INFO] [stderr]   Downloaded chacha20 v0.9.1
[INFO] [stderr]   Downloaded pem v3.0.6
[INFO] [stderr]   Downloaded netlink-proto v0.12.0
[INFO] [stderr]   Downloaded multistream-select v0.13.0
[INFO] [stderr]   Downloaded yamux v0.12.1
[INFO] [stderr]   Downloaded yamux v0.13.10
[INFO] [stderr]   Downloaded multiaddr v0.18.2
[INFO] [stderr]   Downloaded pin-project-internal v1.1.11
[INFO] [stderr]   Downloaded js-sys v0.3.94
[INFO] [stderr]   Downloaded indexmap v2.13.1
[INFO] [stderr]   Downloaded libp2p-identify v0.44.2
[INFO] [stderr]   Downloaded libp2p-quic v0.10.3
[INFO] [stderr]   Downloaded libp2p-request-response v0.26.3
[INFO] [stderr]   Downloaded netlink-packet-core v0.8.1
[INFO] [stderr]   Downloaded netlink-sys v0.8.8
[INFO] [stderr]   Downloaded system-configuration v0.7.0
[INFO] [stderr]   Downloaded const-str v0.4.3
[INFO] [stderr]   Downloaded pin-project v1.1.11
[INFO] [stderr]   Downloaded anes v0.1.6
[INFO] [stderr]   Downloaded is-terminal v0.4.17
[INFO] [stderr]   Downloaded rusty-fork v0.3.1
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.117
[INFO] [stderr]   Downloaded asynchronous-codec v0.7.0
[INFO] [stderr]   Downloaded futures-bounded v0.2.4
[INFO] [stderr]   Downloaded lru v0.12.5
[INFO] [stderr]   Downloaded if-addrs v0.15.0
[INFO] [stderr]   Downloaded unsigned-varint v0.7.2
[INFO] [stderr]   Downloaded base256emoji v1.0.2
[INFO] [stderr]   Downloaded ciborium-io v0.2.2
[INFO] [stderr]   Downloaded asn1-rs-derive v0.5.1
[INFO] [stderr]   Downloaded unsigned-varint v0.8.0
[INFO] [stderr]   Downloaded base58 v0.2.0
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.67
[INFO] [stderr]   Downloaded libp2p-ping v0.44.1
[INFO] [stderr]   Downloaded libp2p-core v0.41.3
[INFO] [stderr]   Downloaded libp2p-yamux v0.45.2
[INFO] [stderr]   Downloaded data-encoding-macro v0.1.19
[INFO] [stderr]   Downloaded ghash v0.5.1
[INFO] [stderr]   Downloaded tinytemplate v1.2.1
[INFO] [stderr]   Downloaded multibase v0.9.2
[INFO] [stderr]   Downloaded data-encoding-macro-internal v0.1.17
[INFO] [stderr]   Downloaded quick-protobuf-codec v0.3.1
[INFO] [stderr]   Downloaded plotters-backend v0.3.7
[INFO] [stderr]   Downloaded wait-timeout v0.2.1
[INFO] [stderr]   Downloaded poly1305 v0.8.0
[INFO] [stderr]   Downloaded ciborium-ll v0.2.2
[INFO] [stderr]   Downloaded plotters-svg v0.3.7
[INFO] [stderr]   Downloaded if-watch v3.2.2
[INFO] [stderr]   Downloaded oorandom v11.1.5
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.117
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fcbf69fa37fa331ff638a4785bf7b3dea87b34f5addb4c8930e41ed1c3406175
[INFO] running `Command { std: "docker" "start" "-a" "fcbf69fa37fa331ff638a4785bf7b3dea87b34f5addb4c8930e41ed1c3406175", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fcbf69fa37fa331ff638a4785bf7b3dea87b34f5addb4c8930e41ed1c3406175", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fcbf69fa37fa331ff638a4785bf7b3dea87b34f5addb4c8930e41ed1c3406175", kill_on_drop: false }`
[INFO] [stdout] fcbf69fa37fa331ff638a4785bf7b3dea87b34f5addb4c8930e41ed1c3406175
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e08ce318d7fc394a21b14973aab67931384ba5d2f6ccdc6e2fad07a4380c0b7c
[INFO] running `Command { std: "docker" "start" "-a" "e08ce318d7fc394a21b14973aab67931384ba5d2f6ccdc6e2fad07a4380c0b7c", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking memchr v2.8.0
[INFO] [stderr]     Checking once_cell v1.21.4
[INFO] [stderr]     Checking pin-project-lite v0.2.17
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking futures-core v0.3.32
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]     Checking futures-sink v0.3.32
[INFO] [stderr]     Checking slab v0.4.12
[INFO] [stderr]     Checking futures-io v0.3.32
[INFO] [stderr]     Checking futures-task v0.3.32
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]     Checking itoa v1.0.18
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]    Compiling semver v1.0.28
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking arrayref v0.3.9
[INFO] [stderr]    Compiling cc v1.2.59
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]     Checking instant v0.1.13
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]     Checking litemap v0.8.2
[INFO] [stderr]     Checking data-encoding v2.10.0
[INFO] [stderr]     Checking writeable v0.6.3
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking unsigned-varint v0.8.0
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]     Checking core2 v0.4.0
[INFO] [stderr]     Checking quick-protobuf v0.8.1
[INFO] [stderr]     Checking iana-time-zone v0.1.65
[INFO] [stderr]     Checking const-str v0.4.3
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]     Checking cpufeatures v0.3.0
[INFO] [stderr]     Checking constant_time_eq v0.4.2
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]     Checking unsigned-varint v0.7.2
[INFO] [stderr]     Checking base58 v0.2.0
[INFO] [stderr]     Checking web-time v1.1.0
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking fxhash v0.2.1
[INFO] [stderr]     Checking opaque-debug v0.3.1
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]     Checking untrusted v0.9.0
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]     Checking ipnet v2.12.0
[INFO] [stderr]     Checking linux-raw-sys v0.12.1
[INFO] [stderr]     Checking fastrand v2.4.1
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking indexmap v2.13.1
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking minimal-lexical v0.2.1
[INFO] [stderr]    Compiling blake3 v1.8.4
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking tinyvec v1.11.0
[INFO] [stderr]     Checking netlink-packet-core v0.8.1
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling openssl-sys v0.9.112
[INFO] [stderr]     Checking pem v3.0.6
[INFO] [stderr]     Checking lru v0.12.5
[INFO] [stderr]     Checking bit-vec v0.8.0
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking bitflags v2.11.0
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking fs2 v0.4.3
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking rusticata-macros v4.1.0
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking sled v0.34.7
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]     Checking quick-error v1.2.3
[INFO] [stderr]     Checking rand_xorshift v0.4.0
[INFO] [stderr]     Checking netlink-packet-route v0.28.0
[INFO] [stderr]     Checking bit-set v0.8.0
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling oid-registry v0.7.1
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking unarray v0.1.4
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]    Compiling quinn-udp v0.5.14
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]     Checking ryu v1.0.23
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking anstyle-parse v1.0.0
[INFO] [stderr]    Compiling quinn v0.11.9
[INFO] [stderr]    Compiling snow v0.9.6
[INFO] [stderr]    Compiling openssl v0.10.76
[INFO] [stderr]     Checking anstyle-query v1.1.5
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]     Checking anstyle v1.0.14
[INFO] [stderr]     Checking colorchoice v1.0.5
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]     Checking nohash-hasher v0.2.0
[INFO] [stderr]    Compiling prometheus-client v0.22.3
[INFO] [stderr]     Checking rustc-hash v2.1.2
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.2
[INFO] [stderr]     Checking lru-slab v0.1.2
[INFO] [stderr]     Checking anstream v1.0.0
[INFO] [stderr]     Checking lru-cache v0.1.2
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking utf-8 v0.7.6
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]     Checking resolv-conf v0.7.6
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling const-random-macro v0.1.16
[INFO] [stderr]     Checking yasna v0.5.2
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking clap_lex v1.1.0
[INFO] [stderr]     Checking dtoa v1.0.11
[INFO] [stderr]     Checking uint v0.9.5
[INFO] [stderr]     Checking openssl-probe v0.2.1
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking rusty-fork v0.3.1
[INFO] [stderr]     Checking hex_fmt v0.3.0
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling pest v2.8.6
[INFO] [stderr]     Checking destructure_traitobject v0.2.0
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]     Checking unicode-segmentation v1.13.2
[INFO] [stderr]     Checking winnow v0.7.15
[INFO] [stderr]     Checking matchit v0.7.3
[INFO] [stderr]     Checking unsafe-any-ors v1.0.0
[INFO] [stderr]     Checking const-random v0.1.18
[INFO] [stderr]     Checking ordered-float v2.10.1
[INFO] [stderr]     Checking dlv-list v0.5.2
[INFO] [stderr]     Checking iri-string v0.7.12
[INFO] [stderr]     Checking unsafe-libyaml v0.2.11
[INFO] [stderr]     Checking arraydeque v0.5.1
[INFO] [stderr]     Checking convert_case v0.6.0
[INFO] [stderr]     Checking typemap-ors v1.0.0
[INFO] [stderr]     Checking arc-swap v1.9.1
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking thread-id v5.1.0
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]     Checking log-mdc v0.1.0
[INFO] [stderr]     Checking mock_instant v0.6.0
[INFO] [stderr]     Checking pathdiff v0.2.3
[INFO] [stderr]     Checking humantime v2.3.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking is-terminal v0.4.17
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling pin-project-internal v1.1.11
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]    Compiling data-encoding-macro-internal v0.1.17
[INFO] [stderr]    Compiling match-lookup v0.1.2
[INFO] [stderr]     Checking data-encoding-macro v0.1.19
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]     Checking base256emoji v1.0.2
[INFO] [stderr]     Checking x25519-dalek v2.0.1
[INFO] [stderr]     Checking multibase v0.9.2
[INFO] [stderr]    Compiling asn1-rs-impl v0.2.0
[INFO] [stderr]     Checking zerofrom v0.1.7
[INFO] [stderr]    Compiling asn1-rs-derive v0.5.1
[INFO] [stderr]    Compiling enum-as-inner v0.6.1
[INFO] [stderr]     Checking pin-project v1.1.11
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling prometheus-client-derive-encode v0.4.2
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]    Compiling pest_meta v2.8.6
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]     Checking rustls-webpki v0.103.10
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]     Checking simple_asn1 v0.6.4
[INFO] [stderr]     Checking asn1-rs v0.6.2
[INFO] [stderr]    Compiling pest_generator v2.8.6
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking rcgen v0.11.3
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking futures-bounded v0.2.4
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]    Compiling pest_derive v2.8.6
[INFO] [stderr]     Checking rw-stream-sink v0.4.0
[INFO] [stderr]     Checking futures-ticker v0.0.3
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking multihash v0.19.3
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking clap v4.6.0
[INFO] [stderr]     Checking jsonwebtoken v9.3.1
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking json5 v0.4.1
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking tracing-serde v0.2.0
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking serde-value v0.7.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking tokio v1.51.0
[INFO] [stderr]     Checking multistream-select v0.13.0
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking netlink-sys v0.8.8
[INFO] [stderr]     Checking asynchronous-codec v0.7.0
[INFO] [stderr]     Checking der-parser v9.0.0
[INFO] [stderr]     Checking netlink-proto v0.12.0
[INFO] [stderr]     Checking quick-protobuf-codec v0.3.1
[INFO] [stderr]     Checking rtnetlink v0.20.0
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking x509-parser v0.16.0
[INFO] [stderr]     Checking if-watch v3.2.2
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking tower-http v0.5.2
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking futures-rustls v0.26.0
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking ordered-multimap v0.7.3
[INFO] [stderr]     Checking hashlink v0.8.4
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking rust-ini v0.20.0
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]     Checking yaml-rust2 v0.8.1
[INFO] [stderr]     Checking libp2p-identity v0.2.13
[INFO] [stderr]     Checking toki-core v0.1.0 (/opt/rustwide/workdir/core)
[INFO] [stderr]     Checking hickory-proto v0.24.4
[INFO] [stderr]     Checking yamux v0.12.1
[INFO] [stderr]     Checking tungstenite v0.24.0
[INFO] [stderr]     Checking proptest v1.11.0
[INFO] [stderr]     Checking quinn-proto v0.11.14
[INFO] [stderr]     Checking yamux v0.13.10
[INFO] [stderr]     Checking log4rs v1.4.0
[INFO] [stderr]     Checking multiaddr v0.18.2
[INFO] [stderr]     Checking tokio-tungstenite v0.24.0
[INFO] [stderr]     Checking config v0.14.1
[INFO] [stdout] warning: unused variable: `message`
[INFO] [stdout]    --> core/src/transaction.rs:159:26
[INFO] [stdout]     |
[INFO] [stdout] 159 |     pub fn verify(&self, message: &[u8]) -> bool {
[INFO] [stdout]     |                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking toki-storage v0.1.0 (/opt/rustwide/workdir/storage)
[INFO] [stderr]     Checking toki-crypto v0.1.0 (/opt/rustwide/workdir/crypto)
[INFO] [stderr]     Checking libp2p-core v0.41.3
[INFO] [stderr]     Checking toki-consensus v0.1.0 (/opt/rustwide/workdir/consensus)
[INFO] [stderr]     Checking toki-governance v0.1.0 (/opt/rustwide/workdir/governance)
[INFO] [stderr]     Checking toki-ai v0.1.0 (/opt/rustwide/workdir/ai)
[INFO] [stderr]     Checking toki-developer v0.1.0 (/opt/rustwide/workdir/developer)
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> consensus/src/fork.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `info`, and `warn`
[INFO] [stdout]  --> consensus/src/fork.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{debug, info, warn};
[INFO] [stdout]   |               ^^^^^  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::Result`
[INFO] [stdout]  --> consensus/src/miner.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use anyhow::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]   --> consensus/src/miner.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tracing::{debug, info, warn};
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TOKI_BASE_UNIT`
[INFO] [stdout]   --> consensus/src/miner.rs:17:65
[INFO] [stdout]    |
[INFO] [stdout] 17 | use toki_core::{Address, Block, BlockHeader, Hash, Transaction, TOKI_BASE_UNIT};
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]   --> consensus/src/mining_broadcast.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::thread;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `Instant`
[INFO] [stdout]   --> consensus/src/mining_broadcast.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::time::{Duration, Instant};
[INFO] [stdout]    |                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Transaction`
[INFO] [stdout]   --> consensus/src/mining_broadcast.rs:16:30
[INFO] [stdout]    |
[INFO] [stdout] 16 | use toki_core::{Block, Hash, Transaction};
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]   --> consensus/src/mining_integration.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::thread;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Instant`
[INFO] [stdout]   --> consensus/src/mining_integration.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::time::{Duration, Instant};
[INFO] [stdout]    |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]   --> consensus/src/mining_integration.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tracing::{debug, info, warn};
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Instant`
[INFO] [stdout]   --> consensus/src/mining_network.rs:12:27
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::time::{Duration, Instant};
[INFO] [stdout]    |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> consensus/src/lib.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use miner::*;
[INFO] [stdout]    |         ^^^^^^^^ the name `MiningTask` in the type namespace is first re-exported here
[INFO] [stdout] 15 | pub use mining_broadcast::*;
[INFO] [stdout] 16 | pub use mining_integration::*;
[INFO] [stdout]    |         --------------------- but the name `MiningTask` in the type namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> consensus/src/lib.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use miner::*;
[INFO] [stdout]    |         ^^^^^^^^ the name `MiningStats` in the type namespace is first re-exported here
[INFO] [stdout] 15 | pub use mining_broadcast::*;
[INFO] [stdout] 16 | pub use mining_integration::*;
[INFO] [stdout]    |         --------------------- but the name `MiningStats` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> consensus/src/lib.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use miner::*;
[INFO] [stdout]    |         ^^^^^^^^ the name `MiningResult` in the type namespace is first re-exported here
[INFO] [stdout] 15 | pub use mining_broadcast::*;
[INFO] [stdout] 16 | pub use mining_integration::*;
[INFO] [stdout]    |         --------------------- but the name `MiningResult` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `Instant`
[INFO] [stdout]  --> governance/src/auto_upgrade.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::{Duration, Instant};
[INFO] [stdout]   |                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error` and `warn`
[INFO] [stdout]  --> governance/src/auto_upgrade.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{debug, error, info, warn};
[INFO] [stdout]   |                      ^^^^^        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Block`
[INFO] [stdout]   --> governance/src/auto_upgrade.rs:11:26
[INFO] [stdout]    |
[INFO] [stdout] 11 | use toki_core::{Address, Block, Hash};
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> governance/src/key_rotation.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `error`
[INFO] [stdout]   --> governance/src/key_rotation.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tracing::{debug, error, info, warn};
[INFO] [stdout]    |               ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Address` and `TOKI_BASE_UNIT`
[INFO] [stdout]   --> governance/src/key_rotation.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | use toki_core::{Address, TOKI_BASE_UNIT};
[INFO] [stdout]    |                 ^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `Instant`
[INFO] [stdout]  --> governance/src/onchain_upgrade.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::{Duration, Instant};
[INFO] [stdout]   |                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::RwLock`
[INFO] [stdout]  --> governance/src/rotation_scheduler.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use parking_lot::RwLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SystemTime`
[INFO] [stdout]   --> governance/src/rotation_scheduler.rs:10:27
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KeyRotationConfig`
[INFO] [stdout]   --> governance/src/rotation_scheduler.rs:14:27
[INFO] [stdout]    |
[INFO] [stdout] 14 | use super::key_rotation::{KeyRotationConfig, KeyRotationManager};
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> governance/src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use auto_upgrade::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ the name `UpgradeProposal` in the type namespace is first re-exported here
[INFO] [stdout] 14 | pub use onchain_upgrade::*;
[INFO] [stdout]    |         ------------------ but the name `UpgradeProposal` in the type namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> governance/src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use auto_upgrade::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ the name `ExecutedUpgrade` in the type namespace is first re-exported here
[INFO] [stdout] 14 | pub use onchain_upgrade::*;
[INFO] [stdout]    |         ------------------ but the name `ExecutedUpgrade` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> governance/src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use auto_upgrade::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ the name `UpgradeAction` in the type namespace is first re-exported here
[INFO] [stdout] 14 | pub use onchain_upgrade::*;
[INFO] [stdout]    |         ------------------ but the name `UpgradeAction` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `warn`
[INFO] [stdout]   --> ai/src/aggregator.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tracing::{debug, info, warn};
[INFO] [stdout]    |               ^^^^^        ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hash`
[INFO] [stdout]   --> ai/src/aggregator.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use toki_core::{Address, Block, Hash, TOKI_BASE_UNIT};
[INFO] [stdout]    |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `warn`
[INFO] [stdout]   --> ai/src/charity.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tracing::{debug, info, warn};
[INFO] [stdout]    |               ^^^^^        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Hash` and `TOKI_BASE_UNIT`
[INFO] [stdout]   --> ai/src/charity.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | use toki_core::{Address, Hash, TOKI_BASE_UNIT};
[INFO] [stdout]    |                          ^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libp2p-swarm v0.44.2
[INFO] [stderr]     Checking libp2p-tls v0.4.1
[INFO] [stderr]     Checking libp2p-noise v0.44.0
[INFO] [stderr]     Checking libp2p-yamux v0.45.2
[INFO] [stderr]     Checking libp2p-tcp v0.41.0
[INFO] [stdout] warning: unused variable: `tx`
[INFO] [stdout]   --> consensus/src/validator.rs:69:36
[INFO] [stdout]    |
[INFO] [stdout] 69 |     fn validate_transaction(&self, tx: &Transaction) -> Result<(), String> {
[INFO] [stdout]    |                                    ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `main_chain_id`, `max_fork_depth`, and `max_rollback_records` are never read
[INFO] [stdout]   --> consensus/src/fork.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct ForkManager {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 57 |     main_chain_id: Option<ChainId>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 58 |     /// 最大分叉深度
[INFO] [stdout] 59 |     max_fork_depth: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     max_rollback_records: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]   --> ai/src/aggregator.rs:87:38
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn calculate_block_reward(&self, block: &Block) -> u64 {
[INFO] [stdout]    |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `with_integrity`
[INFO] [stdout]   --> governance/src/encrypted_storage.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let with_integrity = self.add_integrity_check(&encrypted)?;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_with_integrity`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `phone`
[INFO] [stdout]    --> governance/src/key_rotation.rs:242:25
[INFO] [stdout]     |
[INFO] [stdout] 242 |                     let phone = self.decrypt_data(&key_info.encrypted_phone)?;
[INFO] [stdout]     |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_phone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `email`
[INFO] [stdout]    --> governance/src/key_rotation.rs:248:25
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let email = self.decrypt_data(&key_info.encrypted_email)?;
[INFO] [stdout]     |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_email`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking hickory-resolver v0.24.4
[INFO] [stdout] warning: field `learning_rate` is never read
[INFO] [stdout]   --> ai/src/adaptive.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct AdaptiveController {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 63 |     learning_rate: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `charity_address` is never read
[INFO] [stdout]   --> ai/src/charity.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct CharitySystem {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 55 |     charity_address: Address,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `decrypt_data` is never used
[INFO] [stdout]    --> governance/src/encrypted_storage.rs:194:8
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl EncryptedStorage {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 194 |     fn decrypt_data(&self, encrypted: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Input`
[INFO] [stdout]    --> core/src/block.rs:252:17
[INFO] [stdout]     |
[INFO] [stdout] 252 |     use crate::{Input, Output, RingSignature, TOKI_BASE_UNIT};
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> consensus/src/fork.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `info`, and `warn`
[INFO] [stdout]  --> consensus/src/fork.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{debug, info, warn};
[INFO] [stdout]   |               ^^^^^  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::Result`
[INFO] [stdout]  --> consensus/src/miner.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use anyhow::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]   --> consensus/src/miner.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tracing::{debug, info, warn};
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TOKI_BASE_UNIT`
[INFO] [stdout]   --> consensus/src/miner.rs:17:65
[INFO] [stdout]    |
[INFO] [stdout] 17 | use toki_core::{Address, Block, BlockHeader, Hash, Transaction, TOKI_BASE_UNIT};
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]   --> consensus/src/mining_broadcast.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::thread;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `Instant`
[INFO] [stdout]   --> consensus/src/mining_broadcast.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::time::{Duration, Instant};
[INFO] [stdout]    |                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Transaction`
[INFO] [stdout]   --> consensus/src/mining_broadcast.rs:16:30
[INFO] [stdout]    |
[INFO] [stdout] 16 | use toki_core::{Block, Hash, Transaction};
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]   --> consensus/src/mining_integration.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::thread;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Instant`
[INFO] [stdout]   --> consensus/src/mining_integration.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::time::{Duration, Instant};
[INFO] [stdout]    |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]   --> consensus/src/mining_integration.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tracing::{debug, info, warn};
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Instant`
[INFO] [stdout]   --> consensus/src/mining_network.rs:12:27
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::time::{Duration, Instant};
[INFO] [stdout]    |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Input`
[INFO] [stdout]    --> consensus/src/tx_pool.rs:266:30
[INFO] [stdout]     |
[INFO] [stdout] 266 |     use toki_core::{Address, Input, Output, RingSignature, TOKI_BASE_UNIT};
[INFO] [stdout]     |                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> consensus/src/lib.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use miner::*;
[INFO] [stdout]    |         ^^^^^^^^ the name `MiningTask` in the type namespace is first re-exported here
[INFO] [stdout] 15 | pub use mining_broadcast::*;
[INFO] [stdout] 16 | pub use mining_integration::*;
[INFO] [stdout]    |         --------------------- but the name `MiningTask` in the type namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> consensus/src/lib.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use miner::*;
[INFO] [stdout]    |         ^^^^^^^^ the name `MiningStats` in the type namespace is first re-exported here
[INFO] [stdout] 15 | pub use mining_broadcast::*;
[INFO] [stdout] 16 | pub use mining_integration::*;
[INFO] [stdout]    |         --------------------- but the name `MiningStats` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> consensus/src/lib.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use miner::*;
[INFO] [stdout]    |         ^^^^^^^^ the name `MiningResult` in the type namespace is first re-exported here
[INFO] [stdout] 15 | pub use mining_broadcast::*;
[INFO] [stdout] 16 | pub use mining_integration::*;
[INFO] [stdout]    |         --------------------- but the name `MiningResult` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `warn`
[INFO] [stdout]   --> ai/src/aggregator.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tracing::{debug, info, warn};
[INFO] [stdout]    |               ^^^^^        ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hash`
[INFO] [stdout]   --> ai/src/aggregator.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use toki_core::{Address, Block, Hash, TOKI_BASE_UNIT};
[INFO] [stdout]    |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `warn`
[INFO] [stdout]   --> ai/src/charity.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tracing::{debug, info, warn};
[INFO] [stdout]    |               ^^^^^        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hash`
[INFO] [stdout]   --> ai/src/charity.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 | use toki_core::{Address, Hash, TOKI_BASE_UNIT};
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `storage`
[INFO] [stdout]   --> governance/tests/integration_test.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let storage = Arc::new(EncryptedStorage::new(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_storage`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> governance/tests/integration_test.rs:87:9
[INFO] [stdout]    |
[INFO] [stdout] 87 |     let mut scheduler = RotationScheduler::new(scheduler_config, manager.clone());
[INFO] [stdout]    |         ----^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `Instant`
[INFO] [stdout]  --> governance/src/auto_upgrade.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::{Duration, Instant};
[INFO] [stdout]   |                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error` and `warn`
[INFO] [stdout]  --> governance/src/auto_upgrade.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{debug, error, info, warn};
[INFO] [stdout]   |                      ^^^^^        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Block`
[INFO] [stdout]   --> governance/src/auto_upgrade.rs:11:26
[INFO] [stdout]    |
[INFO] [stdout] 11 | use toki_core::{Address, Block, Hash};
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> governance/src/key_rotation.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `error`
[INFO] [stdout]   --> governance/src/key_rotation.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tracing::{debug, error, info, warn};
[INFO] [stdout]    |               ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Address` and `TOKI_BASE_UNIT`
[INFO] [stdout]   --> governance/src/key_rotation.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | use toki_core::{Address, TOKI_BASE_UNIT};
[INFO] [stdout]    |                 ^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `Instant`
[INFO] [stdout]  --> governance/src/onchain_upgrade.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::time::{Duration, Instant};
[INFO] [stdout]   |                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::RwLock`
[INFO] [stdout]  --> governance/src/rotation_scheduler.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use parking_lot::RwLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SystemTime`
[INFO] [stdout]   --> governance/src/rotation_scheduler.rs:10:27
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::{Duration, SystemTime};
[INFO] [stdout]    |                           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> governance/src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use auto_upgrade::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ the name `UpgradeProposal` in the type namespace is first re-exported here
[INFO] [stdout] 14 | pub use onchain_upgrade::*;
[INFO] [stdout]    |         ------------------ but the name `UpgradeProposal` in the type namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> governance/src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use auto_upgrade::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ the name `ExecutedUpgrade` in the type namespace is first re-exported here
[INFO] [stdout] 14 | pub use onchain_upgrade::*;
[INFO] [stdout]    |         ------------------ but the name `ExecutedUpgrade` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> governance/src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use auto_upgrade::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ the name `UpgradeAction` in the type namespace is first re-exported here
[INFO] [stdout] 14 | pub use onchain_upgrade::*;
[INFO] [stdout]    |         ------------------ but the name `UpgradeAction` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hash1`
[INFO] [stdout]    --> core/src/block.rs:265:13
[INFO] [stdout]     |
[INFO] [stdout] 265 |         let hash1 = block1.hash();
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_hash1`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hash2`
[INFO] [stdout]    --> core/src/block.rs:268:13
[INFO] [stdout]     |
[INFO] [stdout] 268 |         let hash2 = block2.hash();
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_hash2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message`
[INFO] [stdout]    --> core/src/transaction.rs:159:26
[INFO] [stdout]     |
[INFO] [stdout] 159 |     pub fn verify(&self, message: &[u8]) -> bool {
[INFO] [stdout]     |                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libp2p-gossipsub v0.46.1
[INFO] [stderr]     Checking libp2p-mdns v0.45.1
[INFO] [stderr]     Checking libp2p-connection-limits v0.3.1
[INFO] [stderr]     Checking libp2p-dns v0.41.1
[INFO] [stderr]     Checking libp2p-kad v0.45.3
[INFO] [stderr]     Checking libp2p-identify v0.44.2
[INFO] [stderr]     Checking libp2p-allow-block-list v0.3.0
[INFO] [stderr]     Checking libp2p-request-response v0.26.3
[INFO] [stderr]     Checking libp2p-ping v0.44.1
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]   --> ai/src/aggregator.rs:87:38
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn calculate_block_reward(&self, block: &Block) -> u64 {
[INFO] [stdout]    |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `learning_rate` is never read
[INFO] [stdout]   --> ai/src/adaptive.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct AdaptiveController {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 63 |     learning_rate: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `charity_address` is never read
[INFO] [stdout]   --> ai/src/charity.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct CharitySystem {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 55 |     charity_address: Address,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx`
[INFO] [stdout]   --> consensus/src/validator.rs:69:36
[INFO] [stdout]    |
[INFO] [stdout] 69 |     fn validate_transaction(&self, tx: &Transaction) -> Result<(), String> {
[INFO] [stdout]    |                                    ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `main_chain_id`, `max_fork_depth`, and `max_rollback_records` are never read
[INFO] [stdout]   --> consensus/src/fork.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct ForkManager {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 57 |     main_chain_id: Option<ChainId>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 58 |     /// 最大分叉深度
[INFO] [stdout] 59 |     max_fork_depth: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     max_rollback_records: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `with_integrity`
[INFO] [stdout]   --> governance/src/encrypted_storage.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let with_integrity = self.add_integrity_check(&encrypted)?;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_with_integrity`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `phone`
[INFO] [stdout]    --> governance/src/key_rotation.rs:242:25
[INFO] [stdout]     |
[INFO] [stdout] 242 |                     let phone = self.decrypt_data(&key_info.encrypted_phone)?;
[INFO] [stdout]     |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_phone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `email`
[INFO] [stdout]    --> governance/src/key_rotation.rs:248:25
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let email = self.decrypt_data(&key_info.encrypted_email)?;
[INFO] [stdout]     |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_email`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `manager`
[INFO] [stdout]    --> governance/src/key_rotation.rs:406:13
[INFO] [stdout]     |
[INFO] [stdout] 406 |         let manager = KeyRotationManager::new(KeyRotationConfig::default(), vec![0u8; 32]);
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> governance/src/key_rotation.rs:407:13
[INFO] [stdout]     |
[INFO] [stdout] 407 |         let key = vec![1u8; 64];
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libp2p-quic v0.10.3
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stdout] warning: method `decrypt_data` is never used
[INFO] [stdout]    --> governance/src/encrypted_storage.rs:194:8
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl EncryptedStorage {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 194 |     fn decrypt_data(&self, encrypted: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking libp2p v0.53.2
[INFO] [stderr]     Checking toki-network v0.1.0 (/opt/rustwide/workdir/network)
[INFO] [stdout] warning: unused imports: `Behaviour as Gossipsub`, `Behaviour as Ping`, `Config as GossipsubConfig`, `Config as PingConfig`, `IdentTopic`, `MessageAuthenticity`, `Multiaddr`, `SwarmEvent`, `Swarm`, `core::upgrade::Version`, `noise`, `self`, `tcp::Config as TcpConfig`, and `yamux`
[INFO] [stdout]   --> network/src/p2p.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  7 |     core::upgrade::Version,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  8 |     gossipsub::{
[INFO] [stdout]  9 |         self, Behaviour as Gossipsub, Config as GossipsubConfig, IdentTopic, MessageAuthenticity,
[INFO] [stdout]    |         ^^^^  ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     },
[INFO] [stdout] 11 |     identity, noise,
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 12 |     ping::{Behaviour as Ping, Config as PingConfig},
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     swarm::{Swarm, SwarmEvent},
[INFO] [stdout]    |             ^^^^^  ^^^^^^^^^^
[INFO] [stdout] 14 |     tcp::Config as TcpConfig,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     yamux, Multiaddr, PeerId, Transport,
[INFO] [stdout]    |     ^^^^^  ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `de::DeserializeOwned`
[INFO] [stdout]   --> network/src/p2p.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | use serde::{de::DeserializeOwned, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> network/src/p2p.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> network/src/sync_engine.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> network/src/sync_engine.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> network/src/sync_engine.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::{Duration, Instant};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]   --> network/src/sync_engine.rs:11:28
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tracing::{debug, info, warn};
[INFO] [stdout]    |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> network/src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use p2p::*;
[INFO] [stdout]    |         ^^^^^^ the name `NetworkMessage` in the type namespace is first re-exported here
[INFO] [stdout] 14 | pub use p2p_full::*;
[INFO] [stdout]    |         ----------- but the name `NetworkMessage` in the type namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> network/src/lib.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use p2p_full::*;
[INFO] [stdout]    |         ^^^^^^^^^^^ the name `SyncRequest` in the type namespace is first re-exported here
[INFO] [stdout] 15 | pub use sync::*;
[INFO] [stdout]    |         ------- but the name `SyncRequest` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> network/src/lib.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use p2p_full::*;
[INFO] [stdout]    |         ^^^^^^^^^^^ the name `SyncResponse` in the type namespace is first re-exported here
[INFO] [stdout] 15 | pub use sync::*;
[INFO] [stdout]    |         ------- but the name `SyncResponse` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Behaviour as Gossipsub`, `Behaviour as Ping`, `Config as GossipsubConfig`, `Config as PingConfig`, `IdentTopic`, `MessageAuthenticity`, `Multiaddr`, `SwarmEvent`, `Swarm`, `core::upgrade::Version`, `noise`, `self`, `tcp::Config as TcpConfig`, and `yamux`
[INFO] [stdout]   --> network/src/p2p.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  7 |     core::upgrade::Version,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  8 |     gossipsub::{
[INFO] [stdout]  9 |         self, Behaviour as Gossipsub, Config as GossipsubConfig, IdentTopic, MessageAuthenticity,
[INFO] [stdout]    |         ^^^^  ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     },
[INFO] [stdout] 11 |     identity, noise,
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 12 |     ping::{Behaviour as Ping, Config as PingConfig},
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     swarm::{Swarm, SwarmEvent},
[INFO] [stdout]    |             ^^^^^  ^^^^^^^^^^
[INFO] [stdout] 14 |     tcp::Config as TcpConfig,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     yamux, Multiaddr, PeerId, Transport,
[INFO] [stdout]    |     ^^^^^  ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `de::DeserializeOwned`
[INFO] [stdout]   --> network/src/p2p.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | use serde::{de::DeserializeOwned, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> network/src/p2p.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> network/src/sync_engine.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> network/src/sync_engine.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]   --> network/src/sync_engine.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::{Duration, Instant};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]   --> network/src/sync_engine.rs:11:28
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tracing::{debug, info, warn};
[INFO] [stdout]    |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> network/src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use p2p::*;
[INFO] [stdout]    |         ^^^^^^ the name `NetworkMessage` in the type namespace is first re-exported here
[INFO] [stdout] 14 | pub use p2p_full::*;
[INFO] [stdout]    |         ----------- but the name `NetworkMessage` in the type namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> network/src/lib.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use p2p_full::*;
[INFO] [stdout]    |         ^^^^^^^^^^^ the name `SyncRequest` in the type namespace is first re-exported here
[INFO] [stdout] 15 | pub use sync::*;
[INFO] [stdout]    |         ------- but the name `SyncRequest` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> network/src/lib.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use p2p_full::*;
[INFO] [stdout]    |         ^^^^^^^^^^^ the name `SyncResponse` in the type namespace is first re-exported here
[INFO] [stdout] 15 | pub use sync::*;
[INFO] [stdout]    |         ------- but the name `SyncResponse` in the type namespace is also re-exported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stdout] warning: unused import: `Transport`
[INFO] [stdout]   --> network/src/p2p.rs:15:31
[INFO] [stdout]    |
[INFO] [stdout] 15 |     yamux, Multiaddr, PeerId, Transport,
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Transport`
[INFO] [stdout]   --> network/src/p2p.rs:15:31
[INFO] [stdout]    |
[INFO] [stdout] 15 |     yamux, Multiaddr, PeerId, Transport,
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_height`
[INFO] [stdout]    --> network/src/sync_engine.rs:277:35
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn get_blocks_for_sync(&self, start_height: u64, count: u32) -> Vec<Block> {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_height`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]    --> network/src/sync_engine.rs:277:54
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn get_blocks_for_sync(&self, start_height: u64, count: u32) -> Vec<Block> {
[INFO] [stdout]     |                                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_height`
[INFO] [stdout]    --> network/src/sync_engine.rs:277:35
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn get_blocks_for_sync(&self, start_height: u64, count: u32) -> Vec<Block> {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_height`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]    --> network/src/sync_engine.rs:277:54
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn get_blocks_for_sync(&self, start_height: u64, count: u32) -> Vec<Block> {
[INFO] [stdout]     |                                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking toki-api v0.1.0 (/opt/rustwide/workdir/api)
[INFO] [stdout] warning: unused import: `toki_consensus::TransactionPool`
[INFO] [stdout]    --> api/src/handlers.rs:278:9
[INFO] [stdout]     |
[INFO] [stdout] 278 |     use toki_consensus::TransactionPool;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `toki_consensus::TransactionPool`
[INFO] [stdout]    --> api/src/handlers.rs:278:9
[INFO] [stdout]     |
[INFO] [stdout] 278 |     use toki_consensus::TransactionPool;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> api/src/handlers.rs:275:11
[INFO] [stdout]     |
[INFO] [stdout] 275 |     State(state): State<ApiState>,
[INFO] [stdout]     |           ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> api/src/handlers.rs:275:11
[INFO] [stdout]     |
[INFO] [stdout] 275 |     State(state): State<ApiState>,
[INFO] [stdout]     |           ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking toki-node v0.1.0 (/opt/rustwide/workdir/node)
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> node/src/auto_deploy.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{info, warn};
[INFO] [stdout]   |                     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> node/src/mainnet.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::Result`
[INFO] [stdout]  --> node/src/metrics.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use anyhow::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> node/src/metrics.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::info`
[INFO] [stdout]   --> node/src/metrics.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tracing::info;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> node/src/testnet.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> node/src/auto_deploy.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{info, warn};
[INFO] [stdout]   |                     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> node/src/mainnet.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::Result`
[INFO] [stdout]  --> node/src/metrics.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use anyhow::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> node/src/metrics.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::info`
[INFO] [stdout]   --> node/src/metrics.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tracing::info;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> node/src/testnet.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `copy_dir_all` is never used
[INFO] [stdout]   --> node/src/auto_deploy.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn copy_dir_all(src: &Path, dst: &Path) -> Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DeploymentEnv` is never used
[INFO] [stdout]   --> node/src/auto_deploy.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub enum DeploymentEnv {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeploymentConfig` is never constructed
[INFO] [stdout]   --> node/src/auto_deploy.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct DeploymentConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `mainnet` and `testnet` are never used
[INFO] [stdout]   --> node/src/auto_deploy.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | impl DeploymentConfig {
[INFO] [stdout]    | --------------------- associated functions in this implementation
[INFO] [stdout] 76 |     /// 创建主网配置
[INFO] [stdout] 77 |     pub fn mainnet() -> Self {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn testnet() -> Self {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AutoDeployer` is never constructed
[INFO] [stdout]    --> node/src/auto_deploy.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub struct AutoDeployer {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> node/src/auto_deploy.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 113 | impl AutoDeployer {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 114 |     /// 创建新的自动部署器
[INFO] [stdout] 115 |     pub fn new(config: DeploymentConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn deploy(&mut self) -> Result<DeploymentResult> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     fn create_directories(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 |     fn generate_configs(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 217 |     fn generate_node_config(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 |     fn generate_network_config(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 334 |     fn generate_consensus_config(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 356 |     fn init_database(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 365 |     fn create_genesis(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |     fn setup_service(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn check_status(&self) -> DeploymentStatus {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 422 |     pub fn backup(&self) -> Result<PathBuf> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 446 |     pub fn cleanup_old_backups(&self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeploymentResult` is never constructed
[INFO] [stdout]    --> node/src/auto_deploy.rs:467:12
[INFO] [stdout]     |
[INFO] [stdout] 467 | pub struct DeploymentResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeploymentStatus` is never constructed
[INFO] [stdout]    --> node/src/auto_deploy.rs:484:12
[INFO] [stdout]     |
[INFO] [stdout] 484 | pub struct DeploymentStatus {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Version` is never constructed
[INFO] [stdout]   --> node/src/auto_upgrade.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Version {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `parse`, `to_string`, `is_compatible`, and `needs_upgrade` are never used
[INFO] [stdout]   --> node/src/auto_upgrade.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Version {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 25 |     /// 创建新版本
[INFO] [stdout] 26 |     pub fn new(major: u32, minor: u32, patch: u32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn parse(s: &str) -> Option<Self> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn to_string(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn is_compatible(&self, other: &Version) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn needs_upgrade(&self, latest: &Version) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpgradeInfo` is never constructed
[INFO] [stdout]   --> node/src/auto_upgrade.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct UpgradeInfo {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpgradeConfig` is never constructed
[INFO] [stdout]   --> node/src/auto_upgrade.rs:97:12
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub struct UpgradeConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `VersionChecker` is never used
[INFO] [stdout]    --> node/src/auto_upgrade.rs:133:11
[INFO] [stdout]     |
[INFO] [stdout] 133 | pub trait VersionChecker: Send + Sync {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UpgradeState` is never used
[INFO] [stdout]    --> node/src/auto_upgrade.rs:146:10
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum UpgradeState {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AutoUpgrader` is never constructed
[INFO] [stdout]    --> node/src/auto_upgrade.rs:164:12
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct AutoUpgrader {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpgradeRecord` is never constructed
[INFO] [stdout]    --> node/src/auto_upgrade.rs:181:12
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct UpgradeRecord {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> node/src/auto_upgrade.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 194 | impl AutoUpgrader {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 195 |     /// 创建新的自动升级器
[INFO] [stdout] 196 |     pub fn new(config: UpgradeConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn set_checker(&mut self, checker: Box<dyn VersionChecker>) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn current_version(&self) -> &Version {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn state(&self) -> &UpgradeState {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub async fn check_for_updates(&mut self) -> Result<Option<UpgradeInfo>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 244 |     pub async fn upgrade(&mut self, info: &UpgradeInfo) -> Result<bool> {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 329 |     fn backup_current_version(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     async fn install_upgrade(&mut self, package_path: &Path, info: &UpgradeInfo) -> Result<bool> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 375 |     fn update_configs(&self, info: &UpgradeInfo) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |     pub async fn rollback(&mut self) -> Result<bool> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 434 |     pub async fn hot_reload(&mut self, module: &str) -> Result<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 451 |     pub fn get_history(&self) -> &[UpgradeRecord] {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 456 |     pub fn needs_restart(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 461 |     pub fn confirm_restart(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MainnetConfig` is never constructed
[INFO] [stdout]   --> node/src/mainnet.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct MainnetConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SeedNode` is never constructed
[INFO] [stdout]   --> node/src/mainnet.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct SeedNode {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_multiaddr` is never used
[INFO] [stdout]   --> node/src/mainnet.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 51 | impl SeedNode {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 52 |     /// 转换为多地址格式
[INFO] [stdout] 53 |     pub fn to_multiaddr(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BackupConfig` is never constructed
[INFO] [stdout]   --> node/src/mainnet.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub struct BackupConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MainnetDeployer` is never constructed
[INFO] [stdout]    --> node/src/mainnet.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub struct MainnetDeployer {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> node/src/mainnet.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl MainnetDeployer {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] 106 |     /// 创建新的部署器
[INFO] [stdout] 107 |     pub fn new(config: MainnetConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn deploy(&self) -> Result<MainnetDeploymentReport> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn create_directories(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     fn generate_configs(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     fn generate_systemd_service(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     fn generate_scripts(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     fn init_database(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 363 |     fn create_genesis(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |     pub fn generate_instructions(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MainnetDeploymentReport` is never constructed
[INFO] [stdout]    --> node/src/mainnet.rs:426:12
[INFO] [stdout]     |
[INFO] [stdout] 426 | pub struct MainnetDeploymentReport {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MetricType` is never used
[INFO] [stdout]   --> node/src/metrics.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum MetricType {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MetricValue` is never used
[INFO] [stdout]   --> node/src/metrics.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub enum MetricValue {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Metric` is never constructed
[INFO] [stdout]   --> node/src/metrics.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct Metric {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PrometheusMetrics` is never constructed
[INFO] [stdout]   --> node/src/metrics.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct PrometheusMetrics {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> node/src/metrics.rs:67:12
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl PrometheusMetrics {
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout]  66 |     /// 创建新的监控器
[INFO] [stdout]  67 |     pub fn new(namespace: &str, subsystem: &str) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     pub fn register_counter(&mut self, name: &str, help: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn register_gauge(&mut self, name: &str, help: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub fn register_histogram(&mut self, name: &str, help: &str, buckets: Vec<f64>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn inc_counter(&mut self, name: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn add_counter(&mut self, name: &str, delta: f64) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn set_gauge(&mut self, name: &str, value: f64) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn observe_histogram(&mut self, name: &str, value: f64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |     pub fn export(&self) -> String {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     fn full_name(&self, name: &str) -> String {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     pub fn get(&self, name: &str) -> Option<&Metric> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NodeMetrics` is never constructed
[INFO] [stdout]    --> node/src/metrics.rs:248:12
[INFO] [stdout]     |
[INFO] [stdout] 248 | pub struct NodeMetrics {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> node/src/metrics.rs:255:12
[INFO] [stdout]     |
[INFO] [stdout] 253 | impl NodeMetrics {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 254 |     /// 创建节点监控
[INFO] [stdout] 255 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn record_block(&mut self, block_time: f64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 292 |     pub fn record_transaction(&mut self, tx_size: f64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 299 |     pub fn update_height(&mut self, height: u64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub fn update_peers(&mut self, count: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 309 |     pub fn update_mining_threads(&mut self, count: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 314 |     pub fn update_resources(&mut self, memory: u64, cpu: f64, disk: u64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 321 |     pub fn export(&self) -> String {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestnetConfig` is never constructed
[INFO] [stdout]   --> node/src/testnet.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct TestnetConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestAccount` is never constructed
[INFO] [stdout]   --> node/src/testnet.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct TestAccount {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestnetValidator` is never constructed
[INFO] [stdout]   --> node/src/testnet.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct TestnetValidator {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ValidationResult` is never constructed
[INFO] [stdout]   --> node/src/testnet.rs:88:12
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct ValidationResult {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> node/src/testnet.rs:101:12
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl TestnetValidator {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 100 |     /// 创建新的验证器
[INFO] [stdout] 101 |     pub fn new(config: TestnetConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn validate_all(&mut self) -> Result<ValidationReport> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     fn validate_config(&mut self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn validate_data_dir(&mut self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     fn validate_network(&mut self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |     fn validate_genesis(&mut self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     fn validate_accounts(&mut self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 |     fn validate_consensus(&mut self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 272 |     fn generate_report(&self) -> ValidationReport {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ValidationReport` is never constructed
[INFO] [stdout]    --> node/src/testnet.rs:288:12
[INFO] [stdout]     |
[INFO] [stdout] 288 | pub struct ValidationReport {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestnetDeployer` is never constructed
[INFO] [stdout]    --> node/src/testnet.rs:302:12
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub struct TestnetDeployer {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> node/src/testnet.rs:309:12
[INFO] [stdout]     |
[INFO] [stdout] 307 | impl TestnetDeployer {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] 308 |     /// 创建新的部署器
[INFO] [stdout] 309 |     pub fn new(config: TestnetConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 314 |     pub fn deploy(&self) -> Result<DeploymentReport> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 345 |     fn create_directories(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     fn generate_configs(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |     fn init_database(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     fn create_genesis(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 412 |     fn init_test_accounts(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeploymentReport` is never constructed
[INFO] [stdout]    --> node/src/testnet.rs:424:12
[INFO] [stdout]     |
[INFO] [stdout] 424 | pub struct DeploymentReport {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> node/src/main.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 | /     logging::init_logging(logging::LogConfig {
[INFO] [stdout] 103 | |         level: log_level,
[INFO] [stdout] 104 | |         ..Default::default()
[INFO] [stdout] 105 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let _ = logging::init_logging(logging::LogConfig {
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `copy_dir_all` is never used
[INFO] [stdout]   --> node/src/auto_deploy.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn copy_dir_all(src: &Path, dst: &Path) -> Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]    --> node/src/auto_deploy.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub struct AutoDeployer {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 107 |     /// 部署配置
[INFO] [stdout] 108 |     config: DeploymentConfig,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> node/src/auto_deploy.rs:123:12
[INFO] [stdout]     |
[INFO] [stdout] 113 | impl AutoDeployer {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn deploy(&mut self) -> Result<DeploymentResult> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     fn create_directories(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 |     fn generate_configs(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 217 |     fn generate_node_config(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 |     fn generate_network_config(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 334 |     fn generate_consensus_config(&self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 356 |     fn init_database(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 365 |     fn create_genesis(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |     fn setup_service(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn check_status(&self) -> DeploymentStatus {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 422 |     pub fn backup(&self) -> Result<PathBuf> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 446 |     pub fn cleanup_old_backups(&self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeploymentResult` is never constructed
[INFO] [stdout]    --> node/src/auto_deploy.rs:467:12
[INFO] [stdout]     |
[INFO] [stdout] 467 | pub struct DeploymentResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeploymentStatus` is never constructed
[INFO] [stdout]    --> node/src/auto_deploy.rs:484:12
[INFO] [stdout]     |
[INFO] [stdout] 484 | pub struct DeploymentStatus {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_string` is never used
[INFO] [stdout]   --> node/src/auto_upgrade.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Version {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn to_string(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpgradeInfo` is never constructed
[INFO] [stdout]   --> node/src/auto_upgrade.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct UpgradeInfo {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check_latest`, `download`, and `verify` are never used
[INFO] [stdout]    --> node/src/auto_upgrade.rs:135:14
[INFO] [stdout]     |
[INFO] [stdout] 133 | pub trait VersionChecker: Send + Sync {
[INFO] [stdout]     |           -------------- methods in this trait
[INFO] [stdout] 134 |     /// 检查最新版本
[INFO] [stdout] 135 |     async fn check_latest(&self) -> Result<Option<UpgradeInfo>>;
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     async fn download(&self, info: &UpgradeInfo) -> Result<PathBuf>;
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     async fn verify(&self, path: &Path, info: &UpgradeInfo) -> Result<bool>;
[INFO] [stdout]     |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Checking`, `Downloading`, `Verifying`, `Installing`, `RollingBack`, and `NeedRestart` are never constructed
[INFO] [stdout]    --> node/src/auto_upgrade.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum UpgradeState {
[INFO] [stdout]     |          ------------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 150 |     Checking,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 151 |     /// 下载中
[INFO] [stdout] 152 |     Downloading,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 153 |     /// 验证中
[INFO] [stdout] 154 |     Verifying,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 155 |     /// 安装中
[INFO] [stdout] 156 |     Installing,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 157 |     /// 回滚中
[INFO] [stdout] 158 |     RollingBack,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 159 |     /// 需要重启
[INFO] [stdout] 160 |     NeedRestart,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UpgradeState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `checker`, `upgrade_history`, `last_check`, and `pending_upgrade` are never read
[INFO] [stdout]    --> node/src/auto_upgrade.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct AutoUpgrader {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 168 |     checker: Option<Box<dyn VersionChecker>>,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     upgrade_history: Vec<UpgradeRecord>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 173 |     /// 上次检查时间
[INFO] [stdout] 174 |     last_check: Option<Instant>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 175 |     /// 待安装的升级包
[INFO] [stdout] 176 |     pending_upgrade: Option<PathBuf>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from_version`, `to_version`, `timestamp`, `success`, and `note` are never read
[INFO] [stdout]    --> node/src/auto_upgrade.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct UpgradeRecord {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 182 |     /// 从版本
[INFO] [stdout] 183 |     pub from_version: Version,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 184 |     /// 到版本
[INFO] [stdout] 185 |     pub to_version: Version,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 186 |     /// 升级时间
[INFO] [stdout] 187 |     pub timestamp: u64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 188 |     /// 是否成功
[INFO] [stdout] 189 |     pub success: bool,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 190 |     /// 备注
[INFO] [stdout] 191 |     pub note: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UpgradeRecord` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> node/src/auto_upgrade.rs:208:12
[INFO] [stdout]     |
[INFO] [stdout] 194 | impl AutoUpgrader {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn set_checker(&mut self, checker: Box<dyn VersionChecker>) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub async fn check_for_updates(&mut self) -> Result<Option<UpgradeInfo>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 244 |     pub async fn upgrade(&mut self, info: &UpgradeInfo) -> Result<bool> {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 329 |     fn backup_current_version(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     async fn install_upgrade(&mut self, package_path: &Path, info: &UpgradeInfo) -> Result<bool> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 375 |     fn update_configs(&self, info: &UpgradeInfo) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |     pub async fn rollback(&mut self) -> Result<bool> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 434 |     pub async fn hot_reload(&mut self, module: &str) -> Result<bool> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 451 |     pub fn get_history(&self) -> &[UpgradeRecord] {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 456 |     pub fn needs_restart(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 461 |     pub fn confirm_restart(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MainnetDeployer` is never constructed
[INFO] [stdout]    --> node/src/mainnet.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub struct MainnetDeployer {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> node/src/mainnet.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl MainnetDeployer {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] 106 |     /// 创建新的部署器
[INFO] [stdout] 107 |     pub fn new(config: MainnetConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn deploy(&self) -> Result<MainnetDeploymentReport> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn create_directories(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     fn generate_configs(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     fn generate_systemd_service(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     fn generate_scripts(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     fn init_database(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 363 |     fn create_genesis(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |     pub fn generate_instructions(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MainnetDeploymentReport` is never constructed
[INFO] [stdout]    --> node/src/mainnet.rs:426:12
[INFO] [stdout]     |
[INFO] [stdout] 426 | pub struct MainnetDeploymentReport {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `labels` is never read
[INFO] [stdout]   --> node/src/metrics.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct Metric {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub labels: HashMap<String, String>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Metric` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_counter` is never used
[INFO] [stdout]    --> node/src/metrics.rs:141:12
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl PrometheusMetrics {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn add_counter(&mut self, name: &str, delta: f64) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_mining_threads` and `update_resources` are never used
[INFO] [stdout]    --> node/src/metrics.rs:309:12
[INFO] [stdout]     |
[INFO] [stdout] 253 | impl NodeMetrics {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 309 |     pub fn update_mining_threads(&mut self, count: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 314 |     pub fn update_resources(&mut self, memory: u64, cpu: f64, disk: u64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `message`, and `duration_ms` are never read
[INFO] [stdout]   --> node/src/testnet.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct ValidationResult {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 89 |     /// 检查项名称
[INFO] [stdout] 90 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     pub message: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 95 |     /// 耗时（毫秒）
[INFO] [stdout] 96 |     pub duration_ms: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ValidationResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `failed` and `results` are never read
[INFO] [stdout]    --> node/src/testnet.rs:294:9
[INFO] [stdout]     |
[INFO] [stdout] 288 | pub struct ValidationReport {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 294 |     pub failed: usize,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 295 |     /// 详细结果
[INFO] [stdout] 296 |     pub results: Vec<ValidationResult>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ValidationReport` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestnetDeployer` is never constructed
[INFO] [stdout]    --> node/src/testnet.rs:302:12
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub struct TestnetDeployer {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> node/src/testnet.rs:309:12
[INFO] [stdout]     |
[INFO] [stdout] 307 | impl TestnetDeployer {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] 308 |     /// 创建新的部署器
[INFO] [stdout] 309 |     pub fn new(config: TestnetConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 314 |     pub fn deploy(&self) -> Result<DeploymentReport> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 345 |     fn create_directories(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     fn generate_configs(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |     fn init_database(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     fn create_genesis(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 412 |     fn init_test_accounts(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeploymentReport` is never constructed
[INFO] [stdout]    --> node/src/testnet.rs:424:12
[INFO] [stdout]     |
[INFO] [stdout] 424 | pub struct DeploymentReport {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> node/src/main.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 | /     logging::init_logging(logging::LogConfig {
[INFO] [stdout] 103 | |         level: log_level,
[INFO] [stdout] 104 | |         ..Default::default()
[INFO] [stdout] 105 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let _ = logging::init_logging(logging::LogConfig {
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 59.95s
[INFO] running `Command { std: "docker" "inspect" "e08ce318d7fc394a21b14973aab67931384ba5d2f6ccdc6e2fad07a4380c0b7c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e08ce318d7fc394a21b14973aab67931384ba5d2f6ccdc6e2fad07a4380c0b7c", kill_on_drop: false }`
[INFO] [stdout] e08ce318d7fc394a21b14973aab67931384ba5d2f6ccdc6e2fad07a4380c0b7c
