[INFO] cloning repository https://github.com/simsekgokhan/my-blockchain
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/simsekgokhan/my-blockchain" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsimsekgokhan%2Fmy-blockchain", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsimsekgokhan%2Fmy-blockchain'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 89c719897acde2eb64b82951646d7e992be7d63b
[INFO] checking simsekgokhan/my-blockchain/89c719897acde2eb64b82951646d7e992be7d63b against master#57f772f25c5ce2bd870d6f8c3ab318eaee5a3326 for pr-133502-22
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsimsekgokhan%2Fmy-blockchain" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-4-tc1/source/rust-toolchain
[INFO] started tweaking git repo https://github.com/simsekgokhan/my-blockchain
[INFO] finished tweaking git repo https://github.com/simsekgokhan/my-blockchain
[INFO] tweaked toml for git repo https://github.com/simsekgokhan/my-blockchain written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/simsekgokhan/my-blockchain on toolchain 57f772f25c5ce2bd870d6f8c3ab318eaee5a3326
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+57f772f25c5ce2bd870d6f8c3ab318eaee5a3326" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/simsekgokhan/my-blockchain 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" "+57f772f25c5ce2bd870d6f8c3ab318eaee5a3326" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_derive v1.0.193
[INFO] [stderr]   Downloaded pretty_env_logger v0.5.0
[INFO] [stderr]   Downloaded serde v1.0.193
[INFO] [stderr]   Downloaded proc-macro2 v1.0.69
[INFO] [stderr]   Downloaded generic-array v0.8.4
[INFO] [stderr]   Downloaded block-buffer v0.2.0
[INFO] [stderr]   Downloaded libp2p-yamux v0.33.0
[INFO] [stderr]   Downloaded prost-derive v0.8.0
[INFO] [stderr]   Downloaded thiserror-impl v1.0.55
[INFO] [stderr]   Downloaded digest v0.6.1
[INFO] [stderr]   Downloaded unsigned-varint v0.7.2
[INFO] [stderr]   Downloaded libp2p-websocket v0.30.0
[INFO] [stderr]   Downloaded libp2p-wasm-ext v0.29.0
[INFO] [stderr]   Downloaded fixedbitset v0.2.0
[INFO] [stderr]   Downloaded libp2p-uds v0.29.0
[INFO] [stderr]   Downloaded thiserror v1.0.55
[INFO] [stderr]   Downloaded sha2 v0.6.0
[INFO] [stderr]   Downloaded prost-types v0.8.0
[INFO] [stderr]   Downloaded asn1_der v0.7.6
[INFO] [stderr]   Downloaded waker-fn v1.1.1
[INFO] [stderr]   Downloaded value-bag v1.8.0
[INFO] [stderr]   Downloaded pin-project v0.4.30
[INFO] [stderr]   Downloaded pin-project-internal v0.4.30
[INFO] [stderr]   Downloaded prost v0.8.0
[INFO] [stderr]   Downloaded soketto v0.4.2
[INFO] [stderr]   Downloaded libp2p v0.39.1
[INFO] [stderr]   Downloaded libp2p-swarm-derive v0.24.0
[INFO] [stderr]   Downloaded libp2p-tcp v0.29.0
[INFO] [stderr]   Downloaded minicbor-derive v0.6.4
[INFO] [stderr]   Downloaded libp2p-ping v0.30.0
[INFO] [stderr]   Downloaded salsa20 v0.8.1
[INFO] [stderr]   Downloaded libp2p-plaintext v0.29.0
[INFO] [stderr]   Downloaded libp2p-floodsub v0.30.0
[INFO] [stderr]   Downloaded universal-hash v0.4.0
[INFO] [stderr]   Downloaded libp2p-pnet v0.21.0
[INFO] [stderr]   Downloaded libp2p-mdns v0.31.0
[INFO] [stderr]   Downloaded libp2p-dns v0.29.0
[INFO] [stderr]   Downloaded futures-lite v2.2.0
[INFO] [stderr]   Downloaded libp2p-identify v0.30.0
[INFO] [stderr]   Downloaded libp2p-deflate v0.29.0
[INFO] [stderr]   Downloaded libp2p-request-response v0.12.0
[INFO] [stderr]   Downloaded async-trait v0.1.76
[INFO] [stderr]   Downloaded libp2p-noise v0.32.0
[INFO] [stderr]   Downloaded ctr v0.7.0
[INFO] [stderr]   Downloaded libp2p-mplex v0.29.0
[INFO] [stderr]   Downloaded libp2p-swarm v0.30.0
[INFO] [stderr]   Downloaded chacha20 v0.7.3
[INFO] [stderr]   Downloaded polling v3.4.0
[INFO] [stderr]   Downloaded minicbor v0.8.1
[INFO] [stderr]   Downloaded ucd-trie v0.1.6
[INFO] [stderr]   Downloaded libp2p-relay v0.3.0
[INFO] [stderr]   Downloaded libp2p-core v0.29.0
[INFO] [stderr]   Downloaded serde_json v1.0.109
[INFO] [stderr]   Downloaded petgraph v0.5.1
[INFO] [stderr]   Downloaded x25519-dalek v1.2.0
[INFO] [stderr]   Downloaded chacha20poly1305 v0.8.2
[INFO] [stderr]   Downloaded libp2p-kad v0.31.0
[INFO] [stderr]   Downloaded pest v2.7.8
[INFO] [stderr]   Downloaded libp2p-gossipsub v0.32.0
[INFO] [stderr]   Downloaded syn v2.0.39
[INFO] [stderr]   Downloaded aes-gcm v0.9.2
[INFO] [stderr]   Downloaded async-std v1.12.0
[INFO] [stderr]   Downloaded libc v0.2.150
[INFO] [stderr]   Downloaded tokio v1.34.0
[INFO] [stderr]   Downloaded libz-sys v1.1.15
[INFO] [stderr]   Downloaded prost-build v0.8.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+57f772f25c5ce2bd870d6f8c3ab318eaee5a3326" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7a48ef64fc77fa994c154fe75a749d4d157dd412d9a268a18ecc3472b4d74bb0
[INFO] running `Command { std: "docker" "start" "-a" "7a48ef64fc77fa994c154fe75a749d4d157dd412d9a268a18ecc3472b4d74bb0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7a48ef64fc77fa994c154fe75a749d4d157dd412d9a268a18ecc3472b4d74bb0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7a48ef64fc77fa994c154fe75a749d4d157dd412d9a268a18ecc3472b4d74bb0", kill_on_drop: false }`
[INFO] [stdout] 7a48ef64fc77fa994c154fe75a749d4d157dd412d9a268a18ecc3472b4d74bb0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+57f772f25c5ce2bd870d6f8c3ab318eaee5a3326" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8d31d3e5eb05f0b0137c921b86e5d4419f41f8b813f299efe2a8263e0f698cf8
[INFO] running `Command { std: "docker" "start" "-a" "8d31d3e5eb05f0b0137c921b86e5d4419f41f8b813f299efe2a8263e0f698cf8", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.69
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling libc v0.2.150
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking pin-project-lite v0.2.13
[INFO] [stderr]     Checking futures-core v0.3.30
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking futures-io v0.3.30
[INFO] [stderr]    Compiling either v1.10.0
[INFO] [stderr]     Checking memchr v2.6.4
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling rustix v0.38.28
[INFO] [stderr]    Compiling anyhow v1.0.81
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling linux-raw-sys v0.4.13
[INFO] [stderr]    Compiling bitflags v2.4.2
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling home v0.5.9
[INFO] [stderr]    Compiling bytes v1.5.0
[INFO] [stderr]    Compiling fastrand v2.0.1
[INFO] [stderr]     Checking futures-sink v0.3.30
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling fixedbitset v0.2.0
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]    Compiling syn v2.0.39
[INFO] [stderr]     Checking value-bag v1.8.0
[INFO] [stderr]    Compiling petgraph v0.5.1
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]    Compiling multimap v0.8.3
[INFO] [stderr]     Checking futures-channel v0.3.30
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]     Checking futures-task v0.3.30
[INFO] [stderr]     Checking digest v0.9.0
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling thiserror v1.0.55
[INFO] [stderr]     Checking getrandom v0.1.16
[INFO] [stderr]     Checking block-padding v0.2.1
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking block-buffer v0.9.0
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling which v4.4.2
[INFO] [stderr]    Compiling tempfile v3.9.0
[INFO] [stderr]     Checking subtle v2.5.0
[INFO] [stderr]     Checking tinyvec v1.6.0
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]     Checking smallvec v1.13.1
[INFO] [stderr]    Compiling prost-build v0.8.0
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking unicode-bidi v0.3.15
[INFO] [stderr]     Checking unicode-normalization v0.1.23
[INFO] [stderr]    Compiling serde v1.0.193
[INFO] [stderr]     Checking cpufeatures v0.2.12
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking instant v0.1.12
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling hashbrown v0.14.3
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling toml_datetime v0.6.5
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking url v2.5.0
[INFO] [stderr]    Compiling libsecp256k1-core v0.2.2
[INFO] [stderr]    Compiling indexmap v2.2.5
[INFO] [stderr]     Checking sha2 v0.9.9
[INFO] [stderr]    Compiling pin-project-internal v0.4.30
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]     Checking data-encoding v2.5.0
[INFO] [stderr]    Compiling libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]     Checking crypto-mac v0.8.0
[INFO] [stderr]    Compiling libsecp256k1 v0.5.0
[INFO] [stderr]     Checking signature v1.6.4
[INFO] [stderr]     Checking arrayref v0.3.7
[INFO] [stderr]     Checking hmac v0.8.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]     Checking ed25519 v1.5.3
[INFO] [stderr]     Checking hmac-drbg v0.3.0
[INFO] [stderr]     Checking bs58 v0.4.0
[INFO] [stderr]     Checking parking v2.2.0
[INFO] [stderr]     Checking futures-timer v3.0.3
[INFO] [stderr]     Checking asn1_der v0.7.6
[INFO] [stderr]     Checking concurrent-queue v2.4.0
[INFO] [stderr]     Checking getrandom v0.2.12
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking event-listener v4.0.3
[INFO] [stderr]    Compiling polling v2.8.0
[INFO] [stderr]    Compiling rustix v0.37.27
[INFO] [stderr]     Checking event-listener-strategy v0.4.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking io-lifetimes v1.0.11
[INFO] [stderr]    Compiling async-io v1.13.0
[INFO] [stderr]     Checking waker-fn v1.1.1
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.92
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking futures-lite v1.13.0
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking async-lock v3.3.0
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]     Checking futures-lite v2.2.0
[INFO] [stderr]     Checking event-listener v5.2.0
[INFO] [stderr]     Checking socket2 v0.4.10
[INFO] [stderr]    Compiling ucd-trie v0.1.6
[INFO] [stderr]     Checking event-listener-strategy v0.5.0
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling thiserror-impl v1.0.55
[INFO] [stderr]    Compiling serde_derive v1.0.193
[INFO] [stderr]    Compiling prost-derive v0.8.0
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]    Compiling multihash-derive v0.7.2
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]     Checking zeroize v1.3.0
[INFO] [stderr]     Checking curve25519-dalek v3.2.1
[INFO] [stderr]    Compiling pest v2.7.8
[INFO] [stderr]    Compiling async-trait v0.1.76
[INFO] [stderr]     Checking pin-project v1.1.5
[INFO] [stderr]    Compiling pkg-config v0.3.30
[INFO] [stderr]     Checking ipnet v2.9.0
[INFO] [stderr]    Compiling prost v0.8.0
[INFO] [stderr]    Compiling bumpalo v3.15.4
[INFO] [stderr]    Compiling prost-types v0.8.0
[INFO] [stderr]     Checking async-task v4.7.0
[INFO] [stderr]     Checking pin-project v0.4.30
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.92
[INFO] [stderr]    Compiling libz-sys v1.1.15
[INFO] [stderr]    Compiling semver-parser v0.10.2
[INFO] [stderr]     Checking piper v0.2.1
[INFO] [stderr]     Checking async-channel v2.2.0
[INFO] [stderr]    Compiling crc32fast v1.4.0
[INFO] [stderr]     Checking blocking v1.5.1
[INFO] [stderr]    Compiling semver v0.11.0
[INFO] [stderr]     Checking async-executor v1.8.0
[INFO] [stderr]     Checking futures-executor v0.3.30
[INFO] [stderr]     Checking asynchronous-codec v0.6.2
[INFO] [stderr]     Checking aho-corasick v1.1.2
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.92
[INFO] [stderr]     Checking futures v0.3.30
[INFO] [stderr]     Checking unsigned-varint v0.7.2
[INFO] [stderr]     Checking rw-stream-sink v0.2.1
[INFO] [stderr]     Checking wasm-timer v0.2.5
[INFO] [stderr]     Checking multihash v0.14.0
[INFO] [stderr]     Checking multistream-select v0.10.4
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]     Checking regex-syntax v0.8.2
[INFO] [stderr]    Compiling wasm-bindgen v0.2.92
[INFO] [stderr]     Checking matches v0.1.10
[INFO] [stderr]     Checking idna v0.2.3
[INFO] [stderr]    Compiling enum-as-inner v0.3.4
[INFO] [stderr]     Checking miniz_oxide v0.7.1
[INFO] [stderr]     Checking polling v3.4.0
[INFO] [stderr]    Compiling libp2p-core v0.29.0
[INFO] [stderr]     Checking hostname v0.3.1
[INFO] [stderr]     Checking async-io v2.3.2
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.92
[INFO] [stderr]    Compiling rustc_version v0.3.3
[INFO] [stderr]     Checking async-channel v1.9.0
[INFO] [stderr]     Checking webpki v0.21.4
[INFO] [stderr]     Checking kv-log-macro v1.0.7
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]    Compiling httparse v1.8.0
[INFO] [stderr]    Compiling snow v0.8.0
[INFO] [stderr]     Checking flate2 v1.0.28
[INFO] [stderr]     Checking trust-dns-proto v0.20.4
[INFO] [stderr]     Checking async-global-executor v2.4.1
[INFO] [stderr]     Checking lru-cache v0.1.2
[INFO] [stderr]     Checking resolv-conf v0.7.0
[INFO] [stderr]     Checking async-std v1.12.0
[INFO] [stderr]     Checking sct v0.6.1
[INFO] [stderr]     Checking nodrop v0.1.14
[INFO] [stderr]     Checking generic-array v0.8.4
[INFO] [stderr]     Checking rustls v0.19.1
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking js-sys v0.3.69
[INFO] [stderr]    Compiling libp2p-identify v0.30.0
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]    Compiling libp2p-floodsub v0.30.0
[INFO] [stderr]    Compiling libp2p-plaintext v0.29.0
[INFO] [stderr]     Checking trust-dns-resolver v0.20.4
[INFO] [stderr]    Compiling libp2p-gossipsub v0.32.0
[INFO] [stderr]    Compiling libp2p-relay v0.3.0
[INFO] [stderr]    Compiling libp2p-kad v0.31.0
[INFO] [stderr]    Compiling libp2p-noise v0.32.0
[INFO] [stderr]     Checking if-watch v0.2.2
[INFO] [stderr]    Compiling minicbor-derive v0.6.4
[INFO] [stderr]     Checking multiaddr v0.13.0
[INFO] [stderr]     Checking ed25519-dalek v1.0.1
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]     Checking sha-1 v0.9.8
[INFO] [stderr]     Checking cipher v0.3.0
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking socket2 v0.5.6
[INFO] [stderr]     Checking pin-project-lite v0.1.12
[INFO] [stderr]     Checking quicksink v0.1.2
[INFO] [stderr]     Checking soketto v0.4.2
[INFO] [stderr]     Checking uint v0.9.5
[INFO] [stderr]     Checking sha3 v0.9.1
[INFO] [stderr]     Checking salsa20 v0.8.1
[INFO] [stderr]     Checking tokio v1.34.0
[INFO] [stderr]     Checking async-std-resolver v0.20.4
[INFO] [stderr]     Checking futures-rustls v0.21.1
[INFO] [stderr]     Checking lru v0.6.6
[INFO] [stderr]     Checking yamux v0.9.0
[INFO] [stderr]     Checking webpki-roots v0.21.1
[INFO] [stderr]     Checking dns-parser v0.8.0
[INFO] [stderr]     Checking regex v1.10.3
[INFO] [stderr]     Checking minicbor v0.8.1
[INFO] [stderr]     Checking x25519-dalek v1.2.0
[INFO] [stderr]     Checking cuckoofilter v0.5.0
[INFO] [stderr]     Checking if-addrs v0.6.7
[INFO] [stderr]     Checking is-terminal v0.4.12
[INFO] [stderr]     Checking byte-tools v0.2.0
[INFO] [stderr]     Checking humantime v2.1.0
[INFO] [stderr]     Checking hex_fmt v0.3.0
[INFO] [stderr]     Checking arrayvec v0.5.2
[INFO] [stderr]     Checking parity-send-wrapper v0.1.0
[INFO] [stderr]    Compiling serde_json v1.0.109
[INFO] [stderr]     Checking block-buffer v0.2.0
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.42
[INFO] [stderr]     Checking libp2p-pnet v0.21.0
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking digest v0.6.1
[INFO] [stderr]    Compiling libp2p-swarm-derive v0.24.0
[INFO] [stderr]     Checking env_logger v0.10.2
[INFO] [stderr]     Checking iana-time-zone v0.1.60
[INFO] [stderr]     Checking itoa v1.0.11
[INFO] [stderr]     Checking fake-simd v0.1.2
[INFO] [stderr]     Checking atomic v0.5.3
[INFO] [stderr]     Checking sha2 v0.6.0
[INFO] [stderr]     Checking num-bigint v0.4.5
[INFO] [stderr]     Checking pretty_env_logger v0.5.0
[INFO] [stderr]     Checking chrono v0.4.38
[INFO] [stderr]     Checking uuid v0.8.2
[INFO] [stderr]     Checking libp2p-swarm v0.30.0
[INFO] [stderr]     Checking libp2p-dns v0.29.0
[INFO] [stderr]     Checking libp2p-yamux v0.33.0
[INFO] [stderr]     Checking libp2p-uds v0.29.0
[INFO] [stderr]     Checking libp2p-websocket v0.30.0
[INFO] [stderr]     Checking libp2p-mplex v0.29.0
[INFO] [stderr]     Checking libp2p-deflate v0.29.0
[INFO] [stderr]     Checking libp2p-tcp v0.29.0
[INFO] [stderr]     Checking libp2p-wasm-ext v0.29.0
[INFO] [stderr]     Checking libp2p-mdns v0.31.0
[INFO] [stderr]     Checking libp2p-request-response v0.12.0
[INFO] [stderr]     Checking libp2p-ping v0.30.0
[INFO] [stderr]     Checking libp2p v0.39.1
[INFO] [stderr]     Checking my-blockchain v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `error` and `warn`
[INFO] [stdout]   --> src/main.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::{error, 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: `process::exit`
[INFO] [stdout]   --> src/main.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::{process::exit, time::Duration};
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::warn`
[INFO] [stdout]  --> src/mempool.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use log::warn;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error` and `warn`
[INFO] [stdout]   --> src/main.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::{error, 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: `process::exit`
[INFO] [stdout]   --> src/main.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::{process::exit, time::Duration};
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::warn`
[INFO] [stdout]  --> src/mempool.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use log::warn;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ed25519::Error`
[INFO] [stdout]  --> src/util.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ed25519_dalek::{ed25519::Error, PublicKey, Signature, Verifier};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::warn`
[INFO] [stdout]  --> src/util.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::warn;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ed25519::Error`
[INFO] [stdout]  --> src/util.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ed25519_dalek::{ed25519::Error, PublicKey, Signature, Verifier};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::warn`
[INFO] [stdout]  --> src/util.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::warn;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/blockchain.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |             todo!(), // self.mempool.transactions.clone(),
[INFO] [stdout]     |             ------- any code following this expression is unreachable
[INFO] [stdout] 137 |             self.get_difficulty(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/blockchain.rs:178:13
[INFO] [stdout]     |
[INFO] [stdout] 177 |             todo!(), // self.stakes.get_balance(&block.validator).clone(),
[INFO] [stdout]     |             ------- any code following this expression is unreachable
[INFO] [stdout] 178 |             block.difficulty,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/blockchain.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |             return false;
[INFO] [stdout]     |             ------------ any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 187 |         self.add_new_block(block);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/blockchain.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |             todo!(), // self.mempool.transactions.clone(),
[INFO] [stdout]     |             ------- any code following this expression is unreachable
[INFO] [stdout] 137 |             self.get_difficulty(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/blockchain.rs:178:13
[INFO] [stdout]     |
[INFO] [stdout] 177 |             todo!(), // self.stakes.get_balance(&block.validator).clone(),
[INFO] [stdout]     |             ------- any code following this expression is unreachable
[INFO] [stdout] 178 |             block.difficulty,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/blockchain.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |             return false;
[INFO] [stdout]     |             ------------ any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 187 |         self.add_new_block(block);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::prelude`
[INFO] [stdout]  --> src/blockchain.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]   --> src/blockchain.rs:50:33
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn txn_exist(&mut self, txn: &Transaction) -> bool {
[INFO] [stdout]    |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]   --> src/blockchain.rs:54:31
[INFO] [stdout]    |
[INFO] [stdout] 54 |     pub fn add_txn(&mut self, txn: Transaction) {
[INFO] [stdout]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `public_key`
[INFO] [stdout]    --> src/blockchain.rs:297:35
[INFO] [stdout]     |
[INFO] [stdout] 297 |     pub fn get_balance(&mut self, public_key: &String) -> &f64 {
[INFO] [stdout]     |                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_public_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:48:27
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let (response_sender, mut response_rcv) = mpsc::unbounded_channel();
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut stdin = BufReader::new(stdin()).lines();
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `response_rcv`
[INFO] [stdout]   --> src/main.rs:48:27
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let (response_sender, mut response_rcv) = mpsc::unbounded_channel();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_response_rcv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos_mining_sender`
[INFO] [stdout]   --> src/main.rs:50:10
[INFO] [stdout]    |
[INFO] [stdout] 50 |     let (pos_mining_sender, mut pos_mining_rcv) = mpsc::unbounded_channel::<bool>();
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pos_mining_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stdin`
[INFO] [stdout]   --> src/main.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut stdin = BufReader::new(stdin()).lines();
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stdin`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/block.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Block {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 26 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLOCK_GENERATION_INTERVAL_SECONDS` is never used
[INFO] [stdout]   --> src/blockchain.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const BLOCK_GENERATION_INTERVAL_SECONDS: usize = 30;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DIFFICULTY_ADJUSTMENT_INTERVAL_BLOCKS` is never used
[INFO] [stdout]   --> src/blockchain.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 | const DIFFICULTY_ADJUSTMENT_INTERVAL_BLOCKS: usize = 2;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `wallet` is never read
[INFO] [stdout]   --> src/blockchain.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Blockchain {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub wallet: Wallet,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create_txn`, `get_difficulty`, `create_block`, and `get_balance` are never used
[INFO] [stdout]    --> src/blockchain.rs:41:12
[INFO] [stdout]     |
[INFO] [stdout]  28 | impl Blockchain {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  41 |     pub fn create_txn(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  58 |     pub fn get_difficulty(&mut self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn create_block(&mut self, timestamp: i64) -> Block {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 297 |     pub fn get_balance(&mut self, public_key: &String) -> &f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_transaction`, `transaction_exists`, and `clear` are never used
[INFO] [stdout]   --> src/mempool.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl Mempool {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn add_transaction(&mut self, txn: Transaction) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn transaction_exists(&mut self, txn: &Transaction) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Input` is never constructed
[INFO] [stdout]   --> src/p2p.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub enum EventType {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] 38 |     Input(String),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `response_sender` and `init_sender` are never read
[INFO] [stdout]   --> src/p2p.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct AppBehaviour {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub response_sender: mpsc::UnboundedSender<ChainResponse>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 49 |     #[behaviour(ignore)]
[INFO] [stdout] 50 |     pub init_sender: mpsc::UnboundedSender<bool>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_print_peers` is never used
[INFO] [stdout]    --> src/p2p.rs:164:8
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub fn handle_print_peers(swarm: &Swarm<AppBehaviour>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_print_chain` is never used
[INFO] [stdout]    --> src/p2p.rs:169:8
[INFO] [stdout]     |
[INFO] [stdout] 169 | pub fn handle_print_chain(swarm: &Swarm<AppBehaviour>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_set_wallet` is never used
[INFO] [stdout]    --> src/p2p.rs:198:8
[INFO] [stdout]     |
[INFO] [stdout] 198 | pub fn handle_set_wallet(cmd: &str, swarm: &mut Swarm<AppBehaviour>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_print_wallet` is never used
[INFO] [stdout]    --> src/p2p.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub fn handle_print_wallet(swarm: &mut Swarm<AppBehaviour>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_create_txn` is never used
[INFO] [stdout]    --> src/p2p.rs:219:8
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub fn handle_create_txn(cmd: &str, swarm: &mut Swarm<AppBehaviour>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSACTION_FEE` is never used
[INFO] [stdout]  --> src/transaction.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const TRANSACTION_FEE: f64 = 1.0;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/transaction.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl TransactionInput {
[INFO] [stdout]    | --------------------- associated function in this implementation
[INFO] [stdout] 23 |     pub fn new(sender_wallet: &mut Wallet, txn_output: &String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/transaction.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl TransactionOutput {
[INFO] [stdout]    | ---------------------- associated function in this implementation
[INFO] [stdout] 40 |     pub fn new(to: String, amount: f64, fee: f64) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/transaction.rs:64:19
[INFO] [stdout]    |
[INFO] [stdout] 64 |     DecodeJsonErr(serde_json::Error),
[INFO] [stdout]    |     ------------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 64 -     DecodeJsonErr(serde_json::Error),
[INFO] [stdout] 64 +     DecodeJsonErr(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `VerifySigErr` is never constructed
[INFO] [stdout]   --> src/transaction.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub enum VerifyTxnError {
[INFO] [stdout]    |          -------------- variant in this enum
[INFO] [stdout] 64 |     DecodeJsonErr(serde_json::Error),
[INFO] [stdout] 65 |     VerifySigErr(VerifySigErr),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/transaction.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl Transaction {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 69 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/util.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 |     DecodeStrError(FromHexError),
[INFO] [stdout]    |     -------------- ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 10 -     DecodeStrError(FromHexError),
[INFO] [stdout] 10 +     DecodeStrError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/util.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |     DecodeHexError(ed25519_dalek::ed25519::Error),
[INFO] [stdout]    |     -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 11 -     DecodeHexError(ed25519_dalek::ed25519::Error),
[INFO] [stdout] 11 +     DecodeHexError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `id` is never used
[INFO] [stdout]   --> src/util.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Util {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 27 |     pub fn id() -> Uuid {
[INFO] [stdout]    |            ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `generate_wallet`, `get_keypair`, `get_wallet`, `sign`, `get_public_key`, and `get_balance` are never used
[INFO] [stdout]   --> src/wallet.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Wallet {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn generate_wallet() {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn get_keypair(keypair_str: &String) -> Keypair {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn get_wallet(keypair: String) -> Wallet {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn sign(&mut self, data_hash: &String) -> String {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn get_public_key(&mut self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn get_balance<'a>(&mut self, blockchain: &'a mut Blockchain) -> &'a f64 {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::prelude`
[INFO] [stdout]  --> src/blockchain.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]   --> src/blockchain.rs:50:33
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn txn_exist(&mut self, txn: &Transaction) -> bool {
[INFO] [stdout]    |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]   --> src/blockchain.rs:54:31
[INFO] [stdout]    |
[INFO] [stdout] 54 |     pub fn add_txn(&mut self, txn: Transaction) {
[INFO] [stdout]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `public_key`
[INFO] [stdout]    --> src/blockchain.rs:297:35
[INFO] [stdout]     |
[INFO] [stdout] 297 |     pub fn get_balance(&mut self, public_key: &String) -> &f64 {
[INFO] [stdout]     |                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_public_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:48:27
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let (response_sender, mut response_rcv) = mpsc::unbounded_channel();
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut stdin = BufReader::new(stdin()).lines();
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `response_rcv`
[INFO] [stdout]   --> src/main.rs:48:27
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let (response_sender, mut response_rcv) = mpsc::unbounded_channel();
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_response_rcv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos_mining_sender`
[INFO] [stdout]   --> src/main.rs:50:10
[INFO] [stdout]    |
[INFO] [stdout] 50 |     let (pos_mining_sender, mut pos_mining_rcv) = mpsc::unbounded_channel::<bool>();
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pos_mining_sender`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stdin`
[INFO] [stdout]   --> src/main.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut stdin = BufReader::new(stdin()).lines();
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stdin`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/block.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Block {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 26 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLOCK_GENERATION_INTERVAL_SECONDS` is never used
[INFO] [stdout]   --> src/blockchain.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const BLOCK_GENERATION_INTERVAL_SECONDS: usize = 30;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DIFFICULTY_ADJUSTMENT_INTERVAL_BLOCKS` is never used
[INFO] [stdout]   --> src/blockchain.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 | const DIFFICULTY_ADJUSTMENT_INTERVAL_BLOCKS: usize = 2;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `wallet` is never read
[INFO] [stdout]   --> src/blockchain.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Blockchain {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub wallet: Wallet,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create_txn`, `get_difficulty`, `create_block`, and `get_balance` are never used
[INFO] [stdout]    --> src/blockchain.rs:41:12
[INFO] [stdout]     |
[INFO] [stdout]  28 | impl Blockchain {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  41 |     pub fn create_txn(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  58 |     pub fn get_difficulty(&mut self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn create_block(&mut self, timestamp: i64) -> Block {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 297 |     pub fn get_balance(&mut self, public_key: &String) -> &f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_transaction`, `transaction_exists`, and `clear` are never used
[INFO] [stdout]   --> src/mempool.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl Mempool {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn add_transaction(&mut self, txn: Transaction) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn transaction_exists(&mut self, txn: &Transaction) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Input` is never constructed
[INFO] [stdout]   --> src/p2p.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub enum EventType {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] 38 |     Input(String),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `response_sender` and `init_sender` are never read
[INFO] [stdout]   --> src/p2p.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct AppBehaviour {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub response_sender: mpsc::UnboundedSender<ChainResponse>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 49 |     #[behaviour(ignore)]
[INFO] [stdout] 50 |     pub init_sender: mpsc::UnboundedSender<bool>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_print_peers` is never used
[INFO] [stdout]    --> src/p2p.rs:164:8
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub fn handle_print_peers(swarm: &Swarm<AppBehaviour>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_print_chain` is never used
[INFO] [stdout]    --> src/p2p.rs:169:8
[INFO] [stdout]     |
[INFO] [stdout] 169 | pub fn handle_print_chain(swarm: &Swarm<AppBehaviour>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_set_wallet` is never used
[INFO] [stdout]    --> src/p2p.rs:198:8
[INFO] [stdout]     |
[INFO] [stdout] 198 | pub fn handle_set_wallet(cmd: &str, swarm: &mut Swarm<AppBehaviour>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_print_wallet` is never used
[INFO] [stdout]    --> src/p2p.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub fn handle_print_wallet(swarm: &mut Swarm<AppBehaviour>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_create_txn` is never used
[INFO] [stdout]    --> src/p2p.rs:219:8
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub fn handle_create_txn(cmd: &str, swarm: &mut Swarm<AppBehaviour>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSACTION_FEE` is never used
[INFO] [stdout]  --> src/transaction.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const TRANSACTION_FEE: f64 = 1.0;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/transaction.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl TransactionInput {
[INFO] [stdout]    | --------------------- associated function in this implementation
[INFO] [stdout] 23 |     pub fn new(sender_wallet: &mut Wallet, txn_output: &String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/transaction.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl TransactionOutput {
[INFO] [stdout]    | ---------------------- associated function in this implementation
[INFO] [stdout] 40 |     pub fn new(to: String, amount: f64, fee: f64) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/transaction.rs:64:19
[INFO] [stdout]    |
[INFO] [stdout] 64 |     DecodeJsonErr(serde_json::Error),
[INFO] [stdout]    |     ------------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 64 -     DecodeJsonErr(serde_json::Error),
[INFO] [stdout] 64 +     DecodeJsonErr(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `VerifySigErr` is never constructed
[INFO] [stdout]   --> src/transaction.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub enum VerifyTxnError {
[INFO] [stdout]    |          -------------- variant in this enum
[INFO] [stdout] 64 |     DecodeJsonErr(serde_json::Error),
[INFO] [stdout] 65 |     VerifySigErr(VerifySigErr),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/transaction.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl Transaction {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 69 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/util.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 |     DecodeStrError(FromHexError),
[INFO] [stdout]    |     -------------- ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 10 -     DecodeStrError(FromHexError),
[INFO] [stdout] 10 +     DecodeStrError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/util.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |     DecodeHexError(ed25519_dalek::ed25519::Error),
[INFO] [stdout]    |     -------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 11 -     DecodeHexError(ed25519_dalek::ed25519::Error),
[INFO] [stdout] 11 +     DecodeHexError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `id` is never used
[INFO] [stdout]   --> src/util.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Util {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 27 |     pub fn id() -> Uuid {
[INFO] [stdout]    |            ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `generate_wallet`, `get_keypair`, `get_wallet`, `sign`, `get_public_key`, and `get_balance` are never used
[INFO] [stdout]   --> src/wallet.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Wallet {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn generate_wallet() {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn get_keypair(keypair_str: &String) -> Keypair {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn get_wallet(keypair: String) -> Wallet {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn sign(&mut self, data_hash: &String) -> String {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn get_public_key(&mut self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn get_balance<'a>(&mut self, blockchain: &'a mut Blockchain) -> &'a f64 {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 29s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: snow v0.8.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "8d31d3e5eb05f0b0137c921b86e5d4419f41f8b813f299efe2a8263e0f698cf8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8d31d3e5eb05f0b0137c921b86e5d4419f41f8b813f299efe2a8263e0f698cf8", kill_on_drop: false }`
[INFO] [stdout] 8d31d3e5eb05f0b0137c921b86e5d4419f41f8b813f299efe2a8263e0f698cf8
