[INFO] cloning repository https://github.com/ANAVHEOBA/p2pmesh [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ANAVHEOBA/p2pmesh" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FANAVHEOBA%2Fp2pmesh", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FANAVHEOBA%2Fp2pmesh'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 10557b712b1aad75aa24858bd23518c9b1b3d84e [INFO] testing ANAVHEOBA/p2pmesh against 1.99.0-beta.8 for beta-1.100-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FANAVHEOBA%2Fp2pmesh" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/ANAVHEOBA/p2pmesh [INFO] finished tweaking git repo https://github.com/ANAVHEOBA/p2pmesh [INFO] tweaked toml for git repo https://github.com/ANAVHEOBA/p2pmesh written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/ANAVHEOBA/p2pmesh on toolchain 1.99.0-beta.8 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/ANAVHEOBA/p2pmesh 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.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded bitcoin-io v0.1.4 [INFO] [stderr] Downloaded rw-stream-sink v0.4.0 [INFO] [stderr] Downloaded data-encoding-macro v0.1.18 [INFO] [stderr] Downloaded multibase v0.9.2 [INFO] [stderr] Downloaded data-encoding-macro-internal v0.1.16 [INFO] [stderr] Downloaded multiaddr v0.18.2 [INFO] [stderr] Downloaded unsigned-varint v0.8.0 [INFO] [stderr] Downloaded match-lookup v0.1.1 [INFO] [stderr] Downloaded base256emoji v1.0.2 [INFO] [stderr] Downloaded multihash v0.19.3 [INFO] [stderr] Downloaded const-str v0.4.3 [INFO] [stderr] Downloaded libp2p-yamux v0.47.0 [INFO] [stderr] Downloaded unsigned-varint v0.7.2 [INFO] [stderr] Downloaded multistream-select v0.13.0 [INFO] [stderr] Downloaded libp2p v0.56.0 [INFO] [stderr] Downloaded libp2p-identity v0.2.13 [INFO] [stderr] Downloaded libp2p-swarm-derive v0.35.1 [INFO] [stderr] Downloaded xmltree v0.10.3 [INFO] [stderr] Downloaded yamux v0.13.8 [INFO] [stderr] Downloaded yamux v0.12.1 [INFO] [stderr] Downloaded quick-protobuf v0.8.1 [INFO] [stderr] Downloaded libp2p-core v0.43.2 [INFO] [stderr] Downloaded libp2p-upnp v0.5.0 [INFO] [stderr] Downloaded igd-next v0.16.2 [INFO] [stderr] Downloaded secp256k1 v0.29.1 [INFO] [stderr] Downloaded attohttpc v0.30.1 [INFO] [stderr] Downloaded libp2p-tcp v0.44.0 [INFO] [stderr] Downloaded libp2p-swarm v0.47.0 [INFO] [stderr] Downloaded portable-atomic v1.12.0 [INFO] [stderr] Downloaded sled v0.34.7 [INFO] [stderr] Downloaded if-watch v3.2.1 [INFO] [stderr] Downloaded windows-core v0.53.0 [INFO] [stderr] Downloaded rtnetlink v0.13.1 [INFO] [stderr] Downloaded netlink-sys v0.8.7 [INFO] [stderr] Downloaded netlink-proto v0.11.5 [INFO] [stderr] Downloaded if-addrs v0.10.2 [INFO] [stderr] Downloaded netlink-packet-route v0.17.1 [INFO] [stderr] Downloaded secp256k1-sys v0.10.1 [INFO] [stderr] Downloaded libp2p-quic v0.13.0 [INFO] [stderr] Downloaded libp2p-tls v0.6.2 [INFO] [stderr] Downloaded x509-parser v0.17.0 [INFO] [stderr] Downloaded asn1-rs v0.7.1 [INFO] [stderr] Downloaded windows v0.53.0 [INFO] [stderr] Downloaded rcgen v0.13.2 [INFO] [stderr] Downloaded libp2p-noise v0.46.1 [INFO] [stderr] Downloaded snow v0.9.6 [INFO] [stderr] Downloaded asynchronous-codec v0.7.0 [INFO] [stderr] Downloaded libp2p-metrics v0.17.0 [INFO] [stderr] Downloaded quick-protobuf-codec v0.3.1 [INFO] [stderr] Downloaded prometheus-client v0.23.1 [INFO] [stderr] Downloaded libp2p-identify v0.47.0 [INFO] [stderr] Downloaded futures-bounded v0.2.4 [INFO] [stderr] Downloaded hex_fmt v0.3.0 [INFO] [stderr] Downloaded libp2p-mdns v0.48.0 [INFO] [stderr] Downloaded libp2p-gossipsub v0.49.2 [INFO] [stderr] Downloaded libp2p-dns v0.44.0 [INFO] [stderr] Downloaded ipconfig v0.3.2 [INFO] [stderr] Downloaded hickory-proto v0.25.2 [INFO] [stderr] Downloaded moka v0.12.12 [INFO] [stderr] Downloaded libp2p-connection-limits v0.6.0 [INFO] [stderr] Downloaded libp2p-allow-block-list v0.6.0 [INFO] [stderr] Downloaded hickory-resolver v0.25.2 [INFO] [stderr] Downloaded bitcoin-units v0.1.2 [INFO] [stderr] Downloaded bech32 v0.11.1 [INFO] [stderr] Downloaded hex_lit v0.1.1 [INFO] [stderr] Downloaded bitcoin-internals v0.3.0 [INFO] [stderr] Downloaded bitcoin v0.32.8 [INFO] [stderr] Downloaded base58ck v0.1.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c [INFO] running `Command { std: "docker" "start" "1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.103 [INFO] [stderr] Compiling unicode-ident v1.0.22 [INFO] [stderr] Compiling quote v1.0.42 [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling pin-project-lite v0.2.16 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling zerocopy v0.8.31 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling futures-core v0.3.31 [INFO] [stderr] Compiling futures-sink v0.3.31 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling futures-io v0.3.31 [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling slab v0.4.11 [INFO] [stderr] Compiling futures-task v0.3.31 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling portable-atomic v1.12.0 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling critical-section v1.2.0 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling bytes v1.11.0 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling cpufeatures v0.2.17 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling data-encoding v2.9.0 [INFO] [stderr] Compiling unsigned-varint v0.8.0 [INFO] [stderr] Compiling signature v2.2.0 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling utf8_iter v1.0.4 [INFO] [stderr] Compiling ed25519 v2.2.3 [INFO] [stderr] Compiling core2 v0.4.0 [INFO] [stderr] Compiling quick-protobuf v0.8.1 [INFO] [stderr] Compiling const-str v0.4.3 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Compiling find-msvc-tools v0.1.6 [INFO] [stderr] Compiling bs58 v0.5.1 [INFO] [stderr] Compiling multihash v0.19.3 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling base-x v0.2.11 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling cc v1.2.51 [INFO] [stderr] Compiling unsigned-varint v0.7.2 [INFO] [stderr] Compiling web-time v1.1.0 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling arrayref v0.3.9 [INFO] [stderr] Compiling futures-timer v3.0.3 [INFO] [stderr] Compiling anyhow v1.0.100 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling socket2 v0.6.1 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling bitcoin-io v0.1.4 [INFO] [stderr] Compiling hkdf v0.12.4 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling tinyvec_macros v0.1.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling tinyvec v1.10.0 [INFO] [stderr] Compiling nix v0.26.4 [INFO] [stderr] Compiling ipnet v2.11.0 [INFO] [stderr] Compiling bitcoin-internals v0.3.0 [INFO] [stderr] Compiling concurrent-queue v2.5.0 [INFO] [stderr] Compiling hex-conservative v0.2.2 [INFO] [stderr] Compiling parking v2.2.1 [INFO] [stderr] Compiling socket2 v0.5.10 [INFO] [stderr] Compiling event-listener v5.4.1 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling snow v0.9.6 [INFO] [stderr] Compiling bitcoin_hashes v0.14.1 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling untrusted v0.9.0 [INFO] [stderr] Compiling nohash-hasher v0.2.0 [INFO] [stderr] Compiling parking_lot_core v0.8.6 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling secp256k1-sys v0.10.1 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling lru v0.12.5 [INFO] [stderr] Compiling event-listener-strategy v0.5.4 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling heapless v0.7.17 [INFO] [stderr] Compiling instant v0.1.13 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling hex_lit v0.1.1 [INFO] [stderr] Compiling colorchoice v1.0.4 [INFO] [stderr] Compiling anstream v0.6.21 [INFO] [stderr] Compiling async-channel v2.5.0 [INFO] [stderr] Compiling spin v0.9.8 [INFO] [stderr] Compiling hash32 v0.2.1 [INFO] [stderr] Compiling hex_fmt v0.3.0 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling base64 v0.22.1 [INFO] [stderr] Compiling bitcoin v0.32.8 [INFO] [stderr] Compiling clap_lex v0.7.6 [INFO] [stderr] Compiling sharded-slab v0.1.7 [INFO] [stderr] Compiling parking_lot v0.11.2 [INFO] [stderr] Compiling hashlink v0.9.1 [INFO] [stderr] Compiling clap_builder v4.5.53 [INFO] [stderr] Compiling base58ck v0.1.0 [INFO] [stderr] Compiling bitcoin-units v0.1.2 [INFO] [stderr] Compiling unicode-normalization v0.1.25 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling fs2 v0.4.3 [INFO] [stderr] Compiling fxhash v0.2.1 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling bech32 v0.11.1 [INFO] [stderr] Compiling iana-time-zone v0.1.64 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling keccak v0.1.5 [INFO] [stderr] Compiling sled v0.34.7 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling sha3 v0.10.8 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling match-lookup v0.1.1 [INFO] [stderr] Compiling base256emoji v1.0.2 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling pin-project-internal v1.1.10 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling data-encoding-macro-internal v0.1.16 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling data-encoding-macro v0.1.18 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling multibase v0.9.2 [INFO] [stderr] Compiling libp2p-swarm-derive v0.35.1 [INFO] [stderr] Compiling tokio v1.48.0 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling pin-project v1.1.10 [INFO] [stderr] Compiling enum-as-inner v0.6.1 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling cobs v0.3.0 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Compiling secp256k1 v0.29.1 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling ed25519-dalek v2.2.0 [INFO] [stderr] Compiling libp2p-identity v0.2.13 [INFO] [stderr] Compiling netlink-packet-utils v0.5.2 [INFO] [stderr] Compiling x25519-dalek v2.0.1 [INFO] [stderr] Compiling netlink-packet-core v0.7.0 [INFO] [stderr] Compiling netlink-packet-route v0.17.1 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.22 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling bip39 v2.2.2 [INFO] [stderr] Compiling clap v4.5.53 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling postcard v1.1.3 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling asynchronous-codec v0.7.0 [INFO] [stderr] Compiling futures-bounded v0.2.4 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling rw-stream-sink v0.4.0 [INFO] [stderr] Compiling multistream-select v0.13.0 [INFO] [stderr] Compiling yamux v0.13.8 [INFO] [stderr] Compiling yamux v0.12.1 [INFO] [stderr] Compiling quick-protobuf-codec v0.3.1 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling url v2.5.7 [INFO] [stderr] Compiling multiaddr v0.18.2 [INFO] [stderr] Compiling hickory-proto v0.25.2 [INFO] [stderr] Compiling netlink-sys v0.8.7 [INFO] [stderr] Compiling netlink-proto v0.11.5 [INFO] [stderr] Compiling libp2p-core v0.43.2 [INFO] [stderr] Compiling rtnetlink v0.13.1 [INFO] [stderr] Compiling libp2p-swarm v0.47.0 [INFO] [stderr] Compiling libp2p-yamux v0.47.0 [INFO] [stderr] Compiling libp2p-noise v0.46.1 [INFO] [stderr] Compiling if-watch v3.2.1 [INFO] [stderr] Compiling libp2p-tcp v0.44.0 [INFO] [stderr] Compiling libp2p-identify v0.47.0 [INFO] [stderr] Compiling libp2p-mdns v0.48.0 [INFO] [stderr] Compiling libp2p-gossipsub v0.49.2 [INFO] [stderr] Compiling libp2p-connection-limits v0.6.0 [INFO] [stderr] Compiling libp2p-allow-block-list v0.6.0 [INFO] [stderr] Compiling libp2p v0.56.0 [INFO] [stderr] Compiling p2pmesh v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/transport/lora.rs:647:13 [INFO] [stdout] | [INFO] [stdout] 647 | let mut info = ConnectionInfo::new(address.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: value assigned to `last_error` is never read [INFO] [stdout] --> src/gateway/settler.rs:524:30 [INFO] [stdout] | [INFO] [stdout] 524 | let mut last_error = String::new(); [INFO] [stdout] | ^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 558 | last_error = e; [INFO] [stdout] | ---------- `last_error` is overwritten here before the previous value is read [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `conn_id_write` [INFO] [stdout] --> src/transport/tcp.rs:155:13 [INFO] [stdout] | [INFO] [stdout] 155 | let conn_id_write = conn_id.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_conn_id_write` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frequency` [INFO] [stdout] --> src/transport/lora.rs:519:25 [INFO] [stdout] | [INFO] [stdout] 519 | let (device_id, frequency) = match address { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frequency` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `header_bytes` [INFO] [stdout] --> src/transport/lora.rs:541:13 [INFO] [stdout] | [INFO] [stdout] 541 | let header_bytes = header.to_bytes(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_header_bytes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `inner` is never used [INFO] [stdout] --> src/identity/keypair.rs:142:19 [INFO] [stdout] | [INFO] [stdout] 118 | impl SecretKey { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 142 | pub(crate) fn inner(&self) -> &SigningKey { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `rssi` are never read [INFO] [stdout] --> src/transport/ble.rs:212:5 [INFO] [stdout] | [INFO] [stdout] 210 | struct DiscoveredDevice { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 211 | address: PeerAddress, [INFO] [stdout] 212 | name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 213 | rssi: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DiscoveredDevice` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 32s [INFO] running `Command { std: "docker" "inspect" "1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling linux-raw-sys v0.11.0 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/transport/lora.rs:647:13 [INFO] [stdout] | [INFO] [stdout] 647 | let mut info = ConnectionInfo::new(address.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: value assigned to `last_error` is never read [INFO] [stdout] --> src/gateway/settler.rs:524:30 [INFO] [stdout] | [INFO] [stdout] 524 | let mut last_error = String::new(); [INFO] [stdout] | ^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 558 | last_error = e; [INFO] [stdout] | ---------- `last_error` is overwritten here before the previous value is read [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `conn_id_write` [INFO] [stdout] --> src/transport/tcp.rs:155:13 [INFO] [stdout] | [INFO] [stdout] 155 | let conn_id_write = conn_id.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_conn_id_write` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frequency` [INFO] [stdout] --> src/transport/lora.rs:519:25 [INFO] [stdout] | [INFO] [stdout] 519 | let (device_id, frequency) = match address { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frequency` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `header_bytes` [INFO] [stdout] --> src/transport/lora.rs:541:13 [INFO] [stdout] | [INFO] [stdout] 541 | let header_bytes = header.to_bytes(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_header_bytes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `inner` is never used [INFO] [stdout] --> src/identity/keypair.rs:142:19 [INFO] [stdout] | [INFO] [stdout] 118 | impl SecretKey { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 142 | pub(crate) fn inner(&self) -> &SigningKey { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `rssi` are never read [INFO] [stdout] --> src/transport/ble.rs:212:5 [INFO] [stdout] | [INFO] [stdout] 210 | struct DiscoveredDevice { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 211 | address: PeerAddress, [INFO] [stdout] 212 | name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 213 | rssi: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DiscoveredDevice` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stderr] Compiling p2pmesh v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Vault` [INFO] [stdout] --> tests/ledger/conflict_test.rs:10:22 [INFO] [stdout] | [INFO] [stdout] 10 | use p2pmesh::vault::{Vault, UTXOId}; [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: `MergeResult` [INFO] [stdout] --> tests/ledger/crdt_test.rs:6:39 [INFO] [stdout] | [INFO] [stdout] 6 | use p2pmesh::ledger::{GSet, IOUEntry, MergeResult}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GossipEvent` [INFO] [stdout] --> tests/sync/gossip_test.rs:8:33 [INFO] [stdout] | [INFO] [stdout] 8 | GossipConfig, GossipEngine, GossipEvent, SyncRequest, SyncResponse, [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: `PublicKey` [INFO] [stdout] --> tests/identity/did_test.rs:1:39 [INFO] [stdout] | [INFO] [stdout] 1 | use p2pmesh::identity::{Keypair, Did, PublicKey}; [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: `SignedIOU` [INFO] [stdout] --> tests/vault/balance_test.rs:4:32 [INFO] [stdout] | [INFO] [stdout] 4 | use p2pmesh::iou::{IOUBuilder, SignedIOU}; [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: `VaultError` [INFO] [stdout] --> tests/vault/critical_fixes_test.rs:8:29 [INFO] [stdout] | [INFO] [stdout] 8 | use p2pmesh::vault::{Vault, VaultError, UTXOType}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SignedIOU` [INFO] [stdout] --> tests/vault/spending_test.rs:4:32 [INFO] [stdout] | [INFO] [stdout] 4 | use p2pmesh::iou::{IOUBuilder, SignedIOU, IOUId}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SignedIOU` [INFO] [stdout] --> tests/vault/utxo_test.rs:4:32 [INFO] [stdout] | [INFO] [stdout] 4 | use p2pmesh::iou::{IOUBuilder, SignedIOU, IOUId}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NetPosition` [INFO] [stdout] --> tests/gateway/collector_test.rs:10:22 [INFO] [stdout] | [INFO] [stdout] 10 | SettlementEntry, NetPosition, [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: `SignedIOU` [INFO] [stdout] --> tests/iou/builder_test.rs:2:32 [INFO] [stdout] | [INFO] [stdout] 2 | use p2pmesh::iou::{IOUBuilder, SignedIOU, IOUError}; [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: `Signer` [INFO] [stdout] --> tests/iou/edge_cases_test.rs:1:39 [INFO] [stdout] | [INFO] [stdout] 1 | use p2pmesh::identity::{Keypair, Did, Signer, Signature}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CollectorError` and `SettlerError` [INFO] [stdout] --> tests/gateway/edge_cases_test.rs:8:33 [INFO] [stdout] | [INFO] [stdout] 8 | Collector, CollectorConfig, CollectorError, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 9 | Settler, SettlerConfig, SettlerError, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `p2pmesh::sync::Message` [INFO] [stdout] --> tests/transport/traits_test.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use p2pmesh::sync::Message; [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: `p2pmesh::sync::Message` [INFO] [stdout] --> tests/transport/tcp_test.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use p2pmesh::sync::Message; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `p2pmesh::ledger::NodeId` [INFO] [stdout] --> tests/transport/tcp_test.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use p2pmesh::ledger::NodeId; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `p2pmesh::ledger::NodeId` [INFO] [stdout] --> tests/transport/ble_test.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use p2pmesh::ledger::NodeId; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ConnectionId` [INFO] [stdout] --> tests/transport/lora_test.rs:8:50 [INFO] [stdout] | [INFO] [stdout] 8 | TransportEvent, TransportState, PeerAddress, ConnectionId, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `p2pmesh::ledger::NodeId` [INFO] [stdout] --> tests/transport/lora_test.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use p2pmesh::ledger::NodeId; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `p2pmesh::sync::Message` [INFO] [stdout] --> tests/transport/edge_cases_test.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use p2pmesh::sync::Message; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `p2pmesh::ledger::NodeId` [INFO] [stdout] --> tests/transport/edge_cases_test.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use p2pmesh::ledger::NodeId; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recipient_kp` [INFO] [stdout] --> tests/iou/validator_test.rs:36:33 [INFO] [stdout] | [INFO] [stdout] 36 | let (signed_iou, sender_kp, recipient_kp) = create_valid_signed_iou(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recipient_kp` [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] --> tests/vault/balance_test.rs:170:9 [INFO] [stdout] | [INFO] [stdout] 170 | let mut vault = Vault::new(bob.public_key()); [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 variable: `vault` [INFO] [stdout] --> tests/vault/balance_test.rs:170:9 [INFO] [stdout] | [INFO] [stdout] 170 | let mut vault = Vault::new(bob.public_key()); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vault` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `alice` [INFO] [stdout] --> tests/vault/balance_test.rs:537:9 [INFO] [stdout] | [INFO] [stdout] 537 | let alice = Keypair::generate(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_alice` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `batch_id` [INFO] [stdout] --> tests/gateway/settler_test.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | let batch_id = batch.id().clone(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_id` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> tests/vault/edge_cases_test.rs:171:9 [INFO] [stdout] | [INFO] [stdout] 171 | for i in 0..num_senders { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r1` [INFO] [stdout] --> tests/vault/edge_cases_test.rs:439:9 [INFO] [stdout] | [INFO] [stdout] 439 | let r1 = vault.reserve_balance(30).unwrap(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_r1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r3` [INFO] [stdout] --> tests/vault/edge_cases_test.rs:441:9 [INFO] [stdout] | [INFO] [stdout] 441 | let r3 = vault.reserve_balance(40).unwrap(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_r3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `incoming_id` [INFO] [stdout] --> tests/vault/spending_test.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | let incoming_id = incoming.id(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_incoming_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `outgoing_charlie` [INFO] [stdout] --> tests/vault/spending_test.rs:191:9 [INFO] [stdout] | [INFO] [stdout] 191 | let outgoing_charlie = IOUBuilder::new() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outgoing_charlie` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> tests/vault/edge_cases_test.rs:566:37 [INFO] [stdout] | [INFO] [stdout] 566 | assert!(utxos.is_empty() || change >= 0); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> tests/vault/spending_test.rs:349:5 [INFO] [stdout] | [INFO] [stdout] 349 | set.add(spent); [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] 349 | let _ = set.add(spent); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `settlement_result` [INFO] [stdout] --> tests/gateway/edge_cases_test.rs:380:9 [INFO] [stdout] | [INFO] [stdout] 380 | let settlement_result = result.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_settlement_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> tests/gateway/collector_test.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | assert!(config.min_iou_age_secs >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Transport` [INFO] [stdout] --> tests/transport/traits_test.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | Transport, TransportConfig, TransportError, TransportEvent, TransportState, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `conn_id` [INFO] [stdout] --> tests/transport/tcp_test.rs:215:9 [INFO] [stdout] | [INFO] [stdout] 215 | let conn_id = result.unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_conn_id` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `conn_id` [INFO] [stdout] --> tests/transport/tcp_test.rs:433:9 [INFO] [stdout] | [INFO] [stdout] 433 | let conn_id = client.connect(server_addr).await.unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_conn_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `transport` [INFO] [stdout] --> tests/transport/ble_test.rs:449:9 [INFO] [stdout] | [INFO] [stdout] 449 | let transport = BleTransport::new(config); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/transport/lora.rs:647:13 [INFO] [stdout] | [INFO] [stdout] 647 | let mut info = ConnectionInfo::new(address.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: value assigned to `last_error` is never read [INFO] [stdout] --> src/gateway/settler.rs:524:30 [INFO] [stdout] | [INFO] [stdout] 524 | let mut last_error = String::new(); [INFO] [stdout] | ^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 558 | last_error = e; [INFO] [stdout] | ---------- `last_error` is overwritten here before the previous value is read [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `conn_id_write` [INFO] [stdout] --> src/transport/tcp.rs:155:13 [INFO] [stdout] | [INFO] [stdout] 155 | let conn_id_write = conn_id.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_conn_id_write` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frequency` [INFO] [stdout] --> src/transport/lora.rs:519:25 [INFO] [stdout] | [INFO] [stdout] 519 | let (device_id, frequency) = match address { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frequency` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `header_bytes` [INFO] [stdout] --> src/transport/lora.rs:541:13 [INFO] [stdout] | [INFO] [stdout] 541 | let header_bytes = header.to_bytes(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_header_bytes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `inner` is never used [INFO] [stdout] --> src/identity/keypair.rs:142:19 [INFO] [stdout] | [INFO] [stdout] 118 | impl SecretKey { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 142 | pub(crate) fn inner(&self) -> &SigningKey { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `rssi` are never read [INFO] [stdout] --> src/transport/ble.rs:212:5 [INFO] [stdout] | [INFO] [stdout] 210 | struct DiscoveredDevice { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 211 | address: PeerAddress, [INFO] [stdout] 212 | name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 213 | rssi: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DiscoveredDevice` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 12.77s [INFO] running `Command { std: "docker" "inspect" "1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/transport/lora.rs:647:13 [INFO] [stderr] | [INFO] [stderr] 647 | let mut info = ConnectionInfo::new(address.clone()); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `last_error` is never read [INFO] [stderr] --> src/gateway/settler.rs:524:30 [INFO] [stderr] | [INFO] [stderr] 524 | let mut last_error = String::new(); [INFO] [stderr] | ^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stderr] ... [INFO] [stderr] 558 | last_error = e; [INFO] [stderr] | ---------- `last_error` is overwritten here before the previous value is read [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `conn_id_write` [INFO] [stderr] --> src/transport/tcp.rs:155:13 [INFO] [stderr] | [INFO] [stderr] 155 | let conn_id_write = conn_id.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_conn_id_write` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `frequency` [INFO] [stderr] --> src/transport/lora.rs:519:25 [INFO] [stderr] | [INFO] [stderr] 519 | let (device_id, frequency) = match address { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frequency` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `header_bytes` [INFO] [stderr] --> src/transport/lora.rs:541:13 [INFO] [stderr] | [INFO] [stderr] 541 | let header_bytes = header.to_bytes(); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_header_bytes` [INFO] [stderr] [INFO] [stderr] warning: method `inner` is never used [INFO] [stderr] --> src/identity/keypair.rs:142:19 [INFO] [stderr] | [INFO] [stderr] 118 | impl SecretKey { [INFO] [stderr] | -------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 142 | pub(crate) fn inner(&self) -> &SigningKey { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: fields `name` and `rssi` are never read [INFO] [stderr] --> src/transport/ble.rs:212:5 [INFO] [stderr] | [INFO] [stderr] 210 | struct DiscoveredDevice { [INFO] [stderr] | ---------------- fields in this struct [INFO] [stderr] 211 | address: PeerAddress, [INFO] [stderr] 212 | name: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] 213 | rssi: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DiscoveredDevice` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: `p2pmesh` (lib) generated 7 warnings (run `cargo fix --lib -p p2pmesh` to apply 4 suggestions) [INFO] [stderr] warning: unused import: `PublicKey` [INFO] [stderr] --> tests/identity/did_test.rs:1:39 [INFO] [stderr] | [INFO] [stderr] 1 | use p2pmesh::identity::{Keypair, Did, PublicKey}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Vault` [INFO] [stderr] --> tests/ledger/conflict_test.rs:10:22 [INFO] [stderr] | [INFO] [stderr] 10 | use p2pmesh::vault::{Vault, UTXOId}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `MergeResult` [INFO] [stderr] --> tests/ledger/crdt_test.rs:6:39 [INFO] [stderr] | [INFO] [stderr] 6 | use p2pmesh::ledger::{GSet, IOUEntry, MergeResult}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `GossipEvent` [INFO] [stderr] --> tests/sync/gossip_test.rs:8:33 [INFO] [stderr] | [INFO] [stderr] 8 | GossipConfig, GossipEngine, GossipEvent, SyncRequest, SyncResponse, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `NetPosition` [INFO] [stderr] --> tests/gateway/collector_test.rs:10:22 [INFO] [stderr] | [INFO] [stderr] 10 | SettlementEntry, NetPosition, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `CollectorError` and `SettlerError` [INFO] [stderr] --> tests/gateway/edge_cases_test.rs:8:33 [INFO] [stderr] | [INFO] [stderr] 8 | Collector, CollectorConfig, CollectorError, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 9 | Settler, SettlerConfig, SettlerError, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `batch_id` [INFO] [stderr] --> tests/gateway/settler_test.rs:122:9 [INFO] [stderr] | [INFO] [stderr] 122 | let batch_id = batch.id().clone(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_id` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `settlement_result` [INFO] [stderr] --> tests/gateway/edge_cases_test.rs:380:9 [INFO] [stderr] | [INFO] [stderr] 380 | let settlement_result = result.unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_settlement_result` [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> tests/gateway/collector_test.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | assert!(config.min_iou_age_secs >= 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `SignedIOU` [INFO] [stderr] --> tests/vault/balance_test.rs:4:32 [INFO] [stderr] | [INFO] [stderr] 4 | use p2pmesh::iou::{IOUBuilder, SignedIOU}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `VaultError` [INFO] [stderr] --> tests/vault/critical_fixes_test.rs:8:29 [INFO] [stderr] | [INFO] [stderr] 8 | use p2pmesh::vault::{Vault, VaultError, UTXOType}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `SignedIOU` [INFO] [stderr] --> tests/vault/spending_test.rs:4:32 [INFO] [stderr] | [INFO] [stderr] 4 | use p2pmesh::iou::{IOUBuilder, SignedIOU, IOUId}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `SignedIOU` [INFO] [stderr] --> tests/vault/utxo_test.rs:4:32 [INFO] [stderr] | [INFO] [stderr] 4 | use p2pmesh::iou::{IOUBuilder, SignedIOU, IOUId}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> tests/vault/balance_test.rs:170:9 [INFO] [stderr] | [INFO] [stderr] 170 | let mut vault = Vault::new(bob.public_key()); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `vault` [INFO] [stderr] --> tests/vault/balance_test.rs:170:9 [INFO] [stderr] | [INFO] [stderr] 170 | let mut vault = Vault::new(bob.public_key()); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vault` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `alice` [INFO] [stderr] --> tests/vault/balance_test.rs:537:9 [INFO] [stderr] | [INFO] [stderr] 537 | let alice = Keypair::generate(); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_alice` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> tests/vault/edge_cases_test.rs:171:9 [INFO] [stderr] | [INFO] [stderr] 171 | for i in 0..num_senders { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `r1` [INFO] [stderr] --> tests/vault/edge_cases_test.rs:439:9 [INFO] [stderr] | [INFO] [stderr] 439 | let r1 = vault.reserve_balance(30).unwrap(); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_r1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `r3` [INFO] [stderr] --> tests/vault/edge_cases_test.rs:441:9 [INFO] [stderr] | [INFO] [stderr] 441 | let r3 = vault.reserve_balance(40).unwrap(); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_r3` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `incoming_id` [INFO] [stderr] --> tests/vault/spending_test.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | let incoming_id = incoming.id(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_incoming_id` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `outgoing_charlie` [INFO] [stderr] --> tests/vault/spending_test.rs:191:9 [INFO] [stderr] | [INFO] [stderr] 191 | let outgoing_charlie = IOUBuilder::new() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outgoing_charlie` [INFO] [stderr] [INFO] [stderr] warning: comparison is useless due to type limits [INFO] [stderr] --> tests/vault/edge_cases_test.rs:566:37 [INFO] [stderr] | [INFO] [stderr] 566 | assert!(utxos.is_empty() || change >= 0); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> tests/vault/spending_test.rs:349:5 [INFO] [stderr] | [INFO] [stderr] 349 | set.add(spent); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 349 | let _ = set.add(spent); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused import: `SignedIOU` [INFO] [stderr] --> tests/iou/builder_test.rs:2:32 [INFO] [stderr] | [INFO] [stderr] 2 | use p2pmesh::iou::{IOUBuilder, SignedIOU, IOUError}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Signer` [INFO] [stderr] --> tests/iou/edge_cases_test.rs:1:39 [INFO] [stderr] | [INFO] [stderr] 1 | use p2pmesh::identity::{Keypair, Did, Signer, Signature}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `recipient_kp` [INFO] [stderr] --> tests/iou/validator_test.rs:36:33 [INFO] [stderr] | [INFO] [stderr] 36 | let (signed_iou, sender_kp, recipient_kp) = create_valid_signed_iou(); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recipient_kp` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `p2pmesh::sync::Message` [INFO] [stderr] --> tests/transport/traits_test.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use p2pmesh::sync::Message; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `p2pmesh::sync::Message` [INFO] [stderr] --> tests/transport/tcp_test.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use p2pmesh::sync::Message; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `p2pmesh::ledger::NodeId` [INFO] [stderr] --> tests/transport/tcp_test.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use p2pmesh::ledger::NodeId; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `p2pmesh::ledger::NodeId` [INFO] [stderr] --> tests/transport/ble_test.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use p2pmesh::ledger::NodeId; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ConnectionId` [INFO] [stderr] --> tests/transport/lora_test.rs:8:50 [INFO] [stderr] | [INFO] [stderr] 8 | TransportEvent, TransportState, PeerAddress, ConnectionId, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `p2pmesh::ledger::NodeId` [INFO] [stderr] --> tests/transport/lora_test.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use p2pmesh::ledger::NodeId; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `p2pmesh::sync::Message` [INFO] [stderr] --> tests/transport/edge_cases_test.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use p2pmesh::sync::Message; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `p2pmesh::ledger::NodeId` [INFO] [stderr] --> tests/transport/edge_cases_test.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use p2pmesh::ledger::NodeId; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Transport` [INFO] [stderr] --> tests/transport/traits_test.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | Transport, TransportConfig, TransportError, TransportEvent, TransportState, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `conn_id` [INFO] [stderr] --> tests/transport/tcp_test.rs:215:9 [INFO] [stderr] | [INFO] [stderr] 215 | let conn_id = result.unwrap(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_conn_id` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `conn_id` [INFO] [stderr] --> tests/transport/tcp_test.rs:433:9 [INFO] [stderr] | [INFO] [stderr] 433 | let conn_id = client.connect(server_addr).await.unwrap(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_conn_id` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `transport` [INFO] [stderr] --> tests/transport/ble_test.rs:449:9 [INFO] [stderr] | [INFO] [stderr] 449 | let transport = BleTransport::new(config); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport` [INFO] [stderr] [INFO] [stderr] warning: `p2pmesh` (test "identity_tests") generated 1 warning (run `cargo fix --test "identity_tests" -p p2pmesh` to apply 1 suggestion) [INFO] [stderr] warning: `p2pmesh` (test "ledger_tests") generated 2 warnings (run `cargo fix --test "ledger_tests" -p p2pmesh` to apply 2 suggestions) [INFO] [stderr] warning: `p2pmesh` (test "sync_tests") generated 1 warning (run `cargo fix --test "sync_tests" -p p2pmesh` to apply 1 suggestion) [INFO] [stderr] warning: `p2pmesh` (test "gateway_tests") generated 5 warnings (run `cargo fix --test "gateway_tests" -p p2pmesh` to apply 4 suggestions) [INFO] [stderr] warning: `p2pmesh` (lib test) generated 7 warnings (7 duplicates) [INFO] [stderr] warning: `p2pmesh` (test "vault_tests") generated 14 warnings (run `cargo fix --test "vault_tests" -p p2pmesh` to apply 12 suggestions) [INFO] [stderr] warning: `p2pmesh` (test "iou_tests") generated 3 warnings (run `cargo fix --test "iou_tests" -p p2pmesh` to apply 3 suggestions) [INFO] [stderr] warning: `p2pmesh` (test "transport_tests") generated 12 warnings (run `cargo fix --test "transport_tests" -p p2pmesh` to apply 11 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.32s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/p2pmesh-3d69ecaf10cb40dd) [INFO] [stdout] [INFO] [stdout] running 23 tests [INFO] [stdout] test identity::did::tests::test_did_roundtrip ... ok [INFO] [stdout] test ledger::crdt::tests::test_gset_merge ... ok [INFO] [stdout] test ledger::crdt::tests::test_gset_basic_operations ... ok [INFO] [stdout] test sync::gossip::tests::test_gossip_engine_basic ... ok [INFO] [stdout] test ledger::conflict::tests::test_spending_claim_creation ... ok [INFO] [stdout] test sync::peer::tests::test_peer_registry_add_remove ... ok [INFO] [stdout] test sync::protocol::tests::test_message_id_uniqueness ... ok [INFO] [stdout] test sync::protocol::tests::test_message_serialization ... ok [INFO] [stdout] test ledger::conflict::tests::test_double_spend_detection ... ok [INFO] [stdout] test ledger::crdt::tests::test_gset_delta ... ok [INFO] [stdout] test ledger::state::tests::test_mesh_state_basic ... ok [INFO] [stdout] test sync::peer::tests::test_peer_registry_cannot_add_self ... ok [INFO] [stdout] test ledger::conflict::tests::test_conflict_detector_basic ... ok [INFO] [stdout] test sync::peer::tests::test_peer_info_basic ... ok [INFO] [stdout] test identity::keypair::tests::test_generate_keypair ... ok [INFO] [stdout] test sync::gossip::tests::test_gossip_announce_and_collect ... ok [INFO] [stdout] test ledger::state::tests::test_add_iou ... ok [INFO] [stdout] test ledger::state::tests::test_merge_states ... ok [INFO] [stdout] test sync::gossip::tests::test_gossip_process_iou_announcement ... ok [INFO] [stdout] test identity::signer::tests::test_sign_and_verify ... ok [INFO] [stdout] test identity::signer::tests::test_wrong_message_fails ... ok [INFO] [stdout] test storage::store::tests::test_store_basic ... ok [INFO] [stdout] test storage::store::tests::test_store_persistence ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 23 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.20s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/mesh-b05654fbd3593cfd) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/gateway_tests.rs (/opt/rustwide/target/debug/deps/gateway_tests-8ea9ff40e95bccf2) [INFO] [stdout] [INFO] [stdout] running 103 tests [INFO] [stdout] test gateway::collector_test::test_batch_id_from_bytes ... ok [INFO] [stdout] test gateway::collector_test::test_collector_collect_from_empty_state ... ok [INFO] [stdout] test gateway::collector_test::test_batch_id_display ... ok [INFO] [stdout] test gateway::collector_test::test_batch_id_generation ... ok [INFO] [stdout] test gateway::collector_test::test_collector_config_default ... ok [INFO] [stdout] test gateway::collector_test::test_collector_create_batch_empty ... ok [INFO] [stdout] test gateway::collector_test::test_collector_config_custom ... ok [INFO] [stdout] test gateway::collector_test::test_collector_config_with_settlement_threshold ... ok [INFO] [stdout] test gateway::collector_test::test_collector_new ... ok [INFO] [stdout] test gateway::collector_test::test_collector_config_validation ... ok [INFO] [stdout] test gateway::collector_test::test_collector_with_config ... ok [INFO] [stdout] test gateway::collector_test::test_net_position_bidirectional ... ok [INFO] [stdout] test gateway::collector_test::test_net_position_perfectly_balanced ... ok [INFO] [stdout] test gateway::collector_test::test_net_position_single_direction ... ok [INFO] [stdout] test gateway::collector_test::test_net_position_three_parties ... ok [INFO] [stdout] test gateway::collector_test::test_collector_collect_single_iou ... ok [INFO] [stdout] test gateway::collector_test::test_settlement_batch_created_at ... ok [INFO] [stdout] test gateway::collector_test::test_settlement_batch_creation ... ok [INFO] [stdout] test gateway::collector_test::test_settlement_batch_has_id ... ok [INFO] [stdout] test gateway::collector_test::test_collector_reset_stats ... ok [INFO] [stdout] test gateway::collector_test::test_settlement_batch_add_entry ... ok [INFO] [stdout] test gateway::collector_test::test_settlement_batch_status_transitions ... ok [INFO] [stdout] test gateway::collector_test::test_collector_update_batch_status ... ok [INFO] [stdout] test gateway::collector_test::test_settlement_entry_from_iou ... ok [INFO] [stdout] test gateway::collector_test::test_collector_skips_already_collected ... ok [INFO] [stdout] test gateway::collector_test::test_settlement_batch_multiple_entries ... ok [INFO] [stdout] test gateway::edge_cases_test::test_batch_id_all_ones ... ok [INFO] [stdout] test gateway::collector_test::test_settlement_entry_serialization ... ok [INFO] [stdout] test gateway::edge_cases_test::test_batch_id_all_zeros ... ok [INFO] [stdout] test gateway::edge_cases_test::test_batch_status_all_states ... ok [INFO] [stdout] test gateway::edge_cases_test::test_batch_id_serialization ... ok [INFO] [stdout] test gateway::edge_cases_test::test_batch_status_display ... ok [INFO] [stdout] test gateway::edge_cases_test::test_collector_invalid_config ... ok [INFO] [stdout] test gateway::edge_cases_test::test_collector_max_batch_size_boundary ... ok [INFO] [stdout] test gateway::collector_test::test_collector_remove_batch ... ok [INFO] [stdout] test gateway::collector_test::test_collector_get_batch ... ok [INFO] [stdout] test gateway::collector_test::test_collector_stats ... ok [INFO] [stdout] test gateway::edge_cases_test::test_net_position_circular_debt ... ok [INFO] [stdout] test gateway::edge_cases_test::test_net_position_empty_batch ... ok [INFO] [stdout] test gateway::edge_cases_test::test_collector_min_batch_size_one ... ok [INFO] [stdout] test gateway::collector_test::test_collector_filters_by_min_amount ... ok [INFO] [stdout] test gateway::edge_cases_test::test_net_position_single_entry ... ok [INFO] [stdout] test gateway::edge_cases_test::test_collector_state_after_clear ... ok [INFO] [stdout] test gateway::edge_cases_test::test_settlement_batch_large_amounts ... ok [INFO] [stdout] test gateway::collector_test::test_collector_create_batch_min_size_not_met ... ok [INFO] [stdout] test gateway::edge_cases_test::test_settlement_batch_serialization ... ok [INFO] [stdout] test gateway::edge_cases_test::test_settler_config_zero_retries ... ok [INFO] [stdout] test gateway::edge_cases_test::test_settlement_entry_preserves_iou_id ... ok [INFO] [stdout] test gateway::edge_cases_test::test_net_position_star_topology ... ok [INFO] [stdout] test gateway::edge_cases_test::test_settler_recovery_after_failure ... ok [INFO] [stdout] test gateway::edge_cases_test::test_settler_process_all_batches ... ok [INFO] [stdout] test gateway::collector_test::test_collector_create_batch ... ok [INFO] [stdout] test gateway::settler_test::test_mock_target_failure ... ok [INFO] [stdout] test gateway::collector_test::test_collector_collect_by_sender ... ok [INFO] [stdout] test gateway::settler_test::test_settlement_receipt_creation ... ok [INFO] [stdout] test gateway::settler_test::test_settlement_receipt_serialization ... ok [INFO] [stdout] test gateway::settler_test::test_settlement_receipt_with_metadata ... ok [INFO] [stdout] test gateway::settler_test::test_settlement_result_failure ... ok [INFO] [stdout] test gateway::settler_test::test_settlement_result_success ... ok [INFO] [stdout] test gateway::settler_test::test_settlement_result_with_attempts ... ok [INFO] [stdout] test gateway::settler_test::test_settlement_result_with_receipt ... ok [INFO] [stdout] test gateway::settler_test::test_mock_target_success ... ok [INFO] [stdout] test gateway::settler_test::test_settler_cancel_not_found ... ok [INFO] [stdout] test gateway::settler_test::test_settler_cancel_already_processed ... ok [INFO] [stdout] test gateway::settler_test::test_settler_config_custom ... ok [INFO] [stdout] test gateway::settler_test::test_settler_cancel_pending ... ok [INFO] [stdout] test gateway::settler_test::test_settler_config_default ... ok [INFO] [stdout] test gateway::settler_test::test_settler_config_validation ... ok [INFO] [stdout] test gateway::settler_test::test_settler_config_with_api_key ... ok [INFO] [stdout] test gateway::settler_test::test_settler_config_with_endpoint ... ok [INFO] [stdout] test gateway::settler_test::test_settler_event_settlement_complete ... ok [INFO] [stdout] test gateway::settler_test::test_settler_event_batch_submitted ... ok [INFO] [stdout] test gateway::collector_test::test_collector_collect_by_recipient ... ok [INFO] [stdout] test gateway::settler_test::test_settler_events ... ok [INFO] [stdout] test gateway::settler_test::test_settler_get_status ... ok [INFO] [stdout] test gateway::edge_cases_test::test_batch_id_uniqueness ... ok [INFO] [stdout] test gateway::settler_test::test_settler_new ... ok [INFO] [stdout] test gateway::settler_test::test_settler_event_settlement_failed ... ok [INFO] [stdout] test gateway::settler_test::test_settler_process_max_retries_exceeded ... ok [INFO] [stdout] test gateway::settler_test::test_settler_process_success ... ok [INFO] [stdout] test gateway::settler_test::test_mock_target_delay ... ok [INFO] [stdout] test gateway::settler_test::test_settler_process_not_found ... ok [INFO] [stdout] test gateway::settler_test::test_settler_process_with_retry ... ok [INFO] [stdout] test gateway::settler_test::test_settler_stats_with_failures ... ok [INFO] [stdout] test gateway::settler_test::test_settler_submit_duplicate_batch ... ok [INFO] [stdout] test gateway::settler_test::test_settler_list_by_status ... ok [INFO] [stdout] test gateway::settler_test::test_settler_submit_empty_batch ... ok [INFO] [stdout] test gateway::edge_cases_test::test_settler_many_batches ... ok [INFO] [stdout] test gateway::settler_test::test_settler_submit_batch ... ok [INFO] [stdout] test gateway::settler_test::test_settler_submit_without_target ... ok [INFO] [stdout] test gateway::settler_test::test_settler_stats ... ok [INFO] [stdout] test gateway::settler_test::test_settler_with_mock_target ... ok [INFO] [stdout] test gateway::collector_test::test_collector_pending_batches ... ok [INFO] [stdout] test gateway::collector_test::test_collector_collect_multiple_ious ... ok [INFO] [stdout] test gateway::collector_test::test_collector_create_batch_respects_max_size ... ok [INFO] [stdout] test gateway::edge_cases_test::test_net_position_many_small_transactions ... ok [INFO] [stdout] test gateway::edge_cases_test::test_collector_sequential_operations ... ok [INFO] [stdout] test gateway::edge_cases_test::test_settlement_batch_max_entries ... ok [INFO] [stdout] test gateway::edge_cases_test::test_collector_many_different_parties ... ok [INFO] [stdout] test gateway::edge_cases_test::test_collector_rapid_batch_creation ... ok [INFO] [stdout] test gateway::edge_cases_test::test_collector_many_ious_same_parties ... ok [INFO] [stdout] test gateway::settler_test::test_settler_process_failure ... ok [INFO] [stdout] test gateway::edge_cases_test::test_settler_timeout ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 103 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 34.29s [INFO] [stdout] [INFO] [stderr] Running tests/identity_tests.rs (/opt/rustwide/target/debug/deps/identity_tests-899fb79e232c65e5) [INFO] [stdout] [INFO] [stdout] running 30 tests [INFO] [stdout] test identity::did_test::test_did_deterministic ... ok [INFO] [stdout] test identity::keypair_test::test_invalid_public_key_bytes_fails ... ok [INFO] [stdout] test identity::keypair_test::test_keypairs_are_unique ... ok [INFO] [stdout] test identity::keypair_test::test_keypair_from_secret_key ... ok [INFO] [stdout] test identity::keypair_test::test_generate_keypair ... ok [INFO] [stdout] test identity::did_test::test_did_hashable ... ok [INFO] [stdout] test identity::keypair_test::test_keypair_serialization ... ok [INFO] [stdout] test identity::did_test::test_did_format ... ok [INFO] [stdout] test identity::did_test::test_did_parse ... ok [INFO] [stdout] test identity::signer_test::test_sign_message ... ok [INFO] [stdout] test identity::signer_test::test_invalid_signature_bytes_fails ... ok [INFO] [stdout] test identity::did_test::test_did_equality ... ok [INFO] [stdout] test identity::did_test::test_did_from_public_key ... ok [INFO] [stdout] test identity::keypair_test::test_public_key_length ... ok [INFO] [stdout] test identity::did_test::test_did_case_sensitive ... ok [INFO] [stdout] test identity::signer_test::test_different_messages_different_signatures ... ok [INFO] [stdout] test identity::did_test::test_different_keys_different_dids ... ok [INFO] [stdout] test identity::did_test::test_invalid_did_format_fails ... ok [INFO] [stdout] test identity::did_test::test_did_to_public_key ... ok [INFO] [stdout] test identity::signer_test::test_signing_deterministic ... ok [INFO] [stdout] test identity::keypair_test::test_public_key_serialization ... ok [INFO] [stdout] test identity::keypair_test::test_invalid_keypair_bytes_fails ... ok [INFO] [stdout] test identity::signer_test::test_wrong_public_key_fails ... ok [INFO] [stdout] test identity::signer_test::test_signature_serialization ... ok [INFO] [stdout] test identity::signer_test::test_corrupted_signature_fails ... ok [INFO] [stdout] test identity::signer_test::test_sign_binary_data ... ok [INFO] [stdout] test identity::signer_test::test_empty_message ... ok [INFO] [stdout] test identity::signer_test::test_tampered_message_fails ... ok [INFO] [stdout] test identity::signer_test::test_verify_valid_signature ... ok [INFO] [stdout] test identity::signer_test::test_large_message ... ok [INFO] [stderr] Running tests/iou_tests.rs (/opt/rustwide/target/debug/deps/iou_tests-5f2c743f012b37d8) [INFO] [stdout] [INFO] [stdout] test result: ok. 30 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.59s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 81 tests [INFO] [stdout] test iou::builder_test::test_builder_fails_without_recipient ... ok [INFO] [stdout] test iou::builder_test::test_builder_fails_without_sender ... ok [INFO] [stdout] test iou::builder_test::test_builder_produces_unique_ious ... ok [INFO] [stdout] test iou::builder_test::test_builder_auto_generates_timestamp ... ok [INFO] [stdout] test iou::builder_test::test_builder_auto_generates_nonce ... ok [INFO] [stdout] test iou::builder_test::test_builder_max_amount ... ok [INFO] [stdout] test iou::builder_test::test_builder_rejects_self_payment ... ok [INFO] [stdout] test iou::codec_test::test_corrupted_bytes_fail ... ok [INFO] [stdout] test iou::builder_test::test_builder_derives_sender_did ... ok [INFO] [stdout] test iou::codec_test::test_decode_from_hex ... ok [INFO] [stdout] test iou::codec_test::test_decode_from_base64 ... ok [INFO] [stdout] test iou::builder_test::test_builder_custom_timestamp ... ok [INFO] [stdout] test iou::builder_test::test_builder_same_nonce_same_id ... ok [INFO] [stdout] test iou::codec_test::test_deserialize_from_bytes ... ok [INFO] [stdout] test iou::codec_test::test_different_ious_different_bytes ... ok [INFO] [stdout] test iou::codec_test::test_empty_bytes_fail ... ok [INFO] [stdout] test iou::builder_test::test_builder_chainable ... ok [INFO] [stdout] test iou::codec_test::test_invalid_bytes_fail ... ok [INFO] [stdout] test iou::builder_test::test_build_basic_iou ... ok [INFO] [stdout] test iou::codec_test::test_invalid_hex_fails ... ok [INFO] [stdout] test iou::codec_test::test_encode_to_hex ... ok [INFO] [stdout] test iou::codec_test::test_max_amount_serializes ... ok [INFO] [stdout] test iou::codec_test::test_roundtrip_preserves_all_fields ... ok [INFO] [stdout] test iou::codec_test::test_encode_deterministic ... ok [INFO] [stdout] test iou::builder_test::test_builder_fails_without_amount ... ok [INFO] [stdout] test iou::builder_test::test_builder_signs_iou ... ok [INFO] [stdout] test iou::codec_test::test_serialize_to_bytes ... ok [INFO] [stdout] test iou::codec_test::test_encode_to_base64 ... ok [INFO] [stdout] test iou::edge_cases_test::test_different_content_different_signature ... ok [INFO] [stdout] test iou::edge_cases_test::test_max_nonce_handling ... ok [INFO] [stdout] test iou::edge_cases_test::test_error_messages_descriptive ... ok [INFO] [stdout] test iou::codec_test::test_extra_bytes_handling ... ok [INFO] [stdout] test iou::edge_cases_test::test_id_includes_all_fields ... ok [INFO] [stdout] test iou::edge_cases_test::test_min_amount_handling ... ok [INFO] [stdout] test iou::edge_cases_test::test_iou_id_can_detect_replay ... ok [INFO] [stdout] test iou::edge_cases_test::test_signing_is_deterministic ... ok [INFO] [stdout] test iou::edge_cases_test::test_did_format_consistency ... ok [INFO] [stdout] test iou::edge_cases_test::test_max_timestamp_handling ... ok [INFO] [stdout] test iou::edge_cases_test::test_zero_nonce_valid ... ok [INFO] [stdout] test iou::edge_cases_test::test_zero_timestamp_valid ... ok [INFO] [stdout] test iou::edge_cases_test::test_concurrent_ious_distinguishable ... ok [INFO] [stdout] test iou::model_test::test_different_amount_different_id ... ok [INFO] [stdout] test iou::model_test::test_different_nonce_different_id ... ok [INFO] [stdout] test iou::model_test::test_different_recipient_different_id ... ok [INFO] [stdout] test iou::model_test::test_different_sender_different_id ... ok [INFO] [stdout] test iou::model_test::test_iou_has_unique_id ... ok [INFO] [stdout] test iou::model_test::test_iou_has_required_fields ... ok [INFO] [stdout] test iou::model_test::test_different_timestamp_different_id ... ok [INFO] [stdout] test iou::builder_test::test_builder_rejects_zero_amount ... ok [INFO] [stdout] test iou::codec_test::test_truncated_bytes_fail ... ok [INFO] [stdout] test iou::model_test::test_iou_id_hashable ... ok [INFO] [stdout] test iou::codec_test::test_serialized_size_is_compact ... ok [INFO] [stdout] test iou::edge_cases_test::test_max_amount_handling ... ok [INFO] [stdout] test iou::codec_test::test_zero_nonce_serializes ... ok [INFO] [stdout] test iou::builder_test::test_builder_custom_nonce ... ok [INFO] [stdout] test iou::model_test::test_iou_clone ... ok [INFO] [stdout] test iou::model_test::test_iou_equality ... ok [INFO] [stdout] test iou::model_test::test_iou_id_deterministic ... ok [INFO] [stdout] test iou::model_test::test_iou_inequality ... ok [INFO] [stdout] test iou::validator_test::test_tampered_sender_fails ... ok [INFO] [stdout] test iou::validator_test::test_sender_did_must_match_public_key ... ok [INFO] [stdout] test iou::builder_test::test_builder_signature_is_valid ... ok [INFO] [stdout] test iou::validator_test::test_expired_iou_rejected ... ok [INFO] [stdout] test iou::validator_test::test_corrupted_signature_fails ... ok [INFO] [stdout] test iou::codec_test::test_serialization_preserves_signature ... ok [INFO] [stdout] test iou::validator_test::test_wrong_public_key_fails ... ok [INFO] [stdout] test iou::validator_test::test_tampered_nonce_fails ... ok [INFO] [stdout] test iou::validator_test::test_basic_validation_ignores_timestamp ... ok [INFO] [stdout] test iou::validator_test::test_tampered_amount_fails ... ok [INFO] [stdout] test iou::validator_test::test_tampered_recipient_fails ... ok [INFO] [stdout] test iou::validator_test::test_future_timestamp_rejected ... ok [INFO] [stdout] test iou::validator_test::test_valid_iou_passes ... ok [INFO] [stdout] test iou::validator_test::test_self_payment_fails_validation ... ok [INFO] [stdout] test iou::validator_test::test_tampered_timestamp_fails ... ok [INFO] [stdout] test iou::validator_test::test_timestamp_within_tolerance_accepted ... ok [INFO] [stdout] test iou::validator_test::test_sender_did_matches_public_key_succeeds ... ok [INFO] [stdout] test iou::validator_test::test_validate_returns_iou_on_success ... ok [INFO] [stdout] test iou::validator_test::test_zero_amount_fails_validation ... ok [INFO] [stdout] test iou::edge_cases_test::test_unique_ids_for_different_transactions ... ok [INFO] [stdout] test iou::edge_cases_test::test_large_batch_handling ... ok [INFO] [stderr] Running tests/ledger_tests.rs (/opt/rustwide/target/debug/deps/ledger_tests-74fea954a947d273) [INFO] [stdout] test iou::edge_cases_test::test_signature_not_malleable ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 81 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.44s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 63 tests [INFO] [stdout] test ledger::conflict_test::test_merge_detectors_from_different_nodes ... ok [INFO] [stdout] test ledger::conflict_test::test_get_conflicting_claims ... ok [INFO] [stdout] test ledger::conflict_test::test_spending_claim_creation ... ok [INFO] [stdout] test ledger::conflict_test::test_empty_detector_merge ... ok [INFO] [stdout] test ledger::conflict_test::test_spending_claim_with_witnesses ... ok [INFO] [stdout] test ledger::conflict_test::test_different_utxos_no_conflict ... ok [INFO] [stdout] test ledger::conflict_test::test_merge_detectors_finds_conflict ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_delta_empty_when_subset ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_does_not_contain_missing ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_empty_serialization ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_insert ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_insert_duplicate_no_change ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_insert_multiple ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_merge_disjoint ... ok [INFO] [stdout] test ledger::conflict_test::test_resolve_nonexistent_conflict ... ok [INFO] [stdout] test ledger::conflict_test::test_conflict_detector_new ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_merge_identical ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_iter ... ok [INFO] [stdout] test ledger::conflict_test::test_register_same_claim_twice_ok ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_delta ... ok [INFO] [stdout] test ledger::conflict_test::test_conflict_type_double_spend ... ok [INFO] [stdout] test ledger::conflict_test::test_register_spending_claim ... ok [INFO] [stdout] test ledger::conflict_test::test_conflict_detector_serialization ... ok [INFO] [stdout] test ledger::conflict_test::test_witness_deduplication ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_merge_empty_into_full ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_merge_full_into_empty ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_merge_is_associative ... ok [INFO] [stdout] test ledger::conflict_test::test_resolve_by_witness_count ... ok [INFO] [stdout] test ledger::conflict_test::test_detect_double_spend ... ok [INFO] [stdout] test ledger::conflict_test::test_spending_claim_serialization ... ok [INFO] [stdout] test ledger::conflict_test::test_resolve_by_first_seen ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_new_is_empty ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_serialization_roundtrip ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_merge_is_commutative ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_merge_is_idempotent ... ok [INFO] [stdout] test ledger::crdt_test::test_iou_entry_gset_insert ... ok [INFO] [stdout] test ledger::crdt_test::test_gset_merge_overlapping ... ok [INFO] [stdout] test ledger::crdt_test::test_iou_entry_gset_merge_from_different_nodes ... ok [INFO] [stdout] test ledger::crdt_test::test_iou_entry_gset_duplicate_detection ... ok [INFO] [stdout] test ledger::crdt_test::test_iou_entry_has_timestamp ... ok [INFO] [stdout] test ledger::crdt_test::test_merge_result_reports_new_entries ... ok [INFO] [stdout] test ledger::crdt_test::test_iou_entry_gset_different_ious ... ok [INFO] [stdout] test ledger::crdt_test::test_merge_result_no_new_entries ... ok [INFO] [stdout] test ledger::state_test::test_mesh_state_new ... ok [INFO] [stdout] test ledger::state_test::test_node_id_from_keypair ... ok [INFO] [stdout] test ledger::state_test::test_node_id_generate_unique ... ok [INFO] [stdout] test ledger::crdt_test::test_iou_entry_ordering_by_timestamp ... ok [INFO] [stdout] test ledger::state_test::test_add_iou_wrong_sender_pubkey_fails ... ok [INFO] [stdout] test ledger::state_test::test_get_iou_by_id ... ok [INFO] [stdout] test ledger::state_test::test_state_serialization_roundtrip ... ok [INFO] [stdout] test ledger::state_test::test_state_version_increments_on_merge ... ok [INFO] [stdout] test ledger::state_test::test_state_version_increments ... ok [INFO] [stdout] test ledger::conflict_test::test_validate_iou_against_detector ... ok [INFO] [stdout] test ledger::state_test::test_merge_identical_states ... ok [INFO] [stdout] test ledger::state_test::test_merge_states ... ok [INFO] [stdout] test ledger::state_test::test_add_duplicate_iou_fails ... ok [INFO] [stdout] test ledger::state_test::test_compute_balance_for_did ... ok [INFO] [stdout] test ledger::state_test::test_add_iou_to_state ... ok [INFO] [stdout] test ledger::state_test::test_get_ious_by_recipient ... ok [INFO] [stdout] test ledger::state_test::test_get_delta_for_sync ... ok [INFO] [stdout] test ledger::state_test::test_state_statistics ... ok [INFO] [stdout] test ledger::state_test::test_add_multiple_ious ... ok [INFO] [stdout] test ledger::state_test::test_get_ious_by_sender ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 63 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.36s [INFO] [stdout] [INFO] [stderr] Running tests/storage_tests.rs (/opt/rustwide/target/debug/deps/storage_tests-8cf155b299b2917b) [INFO] [stdout] [INFO] [stdout] running 26 tests [INFO] [stdout] test storage::store_test::test_delete_with_prefix ... ok [INFO] [stdout] test storage::store_test::test_get_or_create_node_id ... ok [INFO] [stdout] test storage::store_test::test_corrupted_data_returns_error ... ok [INFO] [stdout] test storage::store_test::test_list_keys_with_prefix ... ok [INFO] [stdout] test storage::store_test::test_save_load_node_id ... ok [INFO] [stdout] test storage::store_test::test_load_keypair_none_when_empty ... ok [INFO] [stdout] test storage::store_test::test_store_delete ... ok [INFO] [stdout] test storage::store_test::test_load_mesh_state_none_when_empty ... ok [INFO] [stdout] test storage::store_test::test_load_vault_none_when_empty ... ok [INFO] [stdout] test storage::store_test::test_flush_persists_immediately ... ok [INFO] [stdout] test storage::store_test::test_store_get_nonexistent ... ok [INFO] [stdout] test storage::store_test::test_save_keypair_with_label ... ok [INFO] [stdout] test storage::store_test::test_save_load_keypair ... ok [INFO] [stdout] test storage::store_test::test_store_overwrite ... ok [INFO] [stdout] test storage::store_test::test_store_open_new ... ok [INFO] [stdout] test storage::store_test::test_store_put_get_raw ... ok [INFO] [stdout] test storage::store_test::test_keypair_persists_across_reopens ... ok [INFO] [stdout] test storage::store_test::test_store_open_existing ... ok [INFO] [stdout] test storage::store_test::test_save_load_mesh_state ... ok [INFO] [stdout] test storage::store_test::test_save_load_vault ... ok [INFO] [stdout] test storage::store_test::test_vault_persists_across_reopens ... ok [INFO] [stdout] test storage::store_test::test_vault_update_persists ... ok [INFO] [stdout] test storage::store_test::test_storage_stats ... ok [INFO] [stdout] test storage::store_test::test_mesh_state_persists_across_reopens ... ok [INFO] [stdout] test storage::store_test::test_mesh_state_indexes_rebuilt_on_load ... ok [INFO] [stdout] test storage::store_test::test_save_all_state ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 26 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.24s [INFO] [stdout] [INFO] [stderr] Running tests/sync_tests.rs (/opt/rustwide/target/debug/deps/sync_tests-ecf623deab3a1d28) [INFO] [stdout] [INFO] [stdout] running 65 tests [INFO] [stdout] test sync::gossip_test::test_gossip_config_defaults ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_engine_new ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_handle_sync_request_empty ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_config_custom ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_generate_sync_request ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_duplicate_announcement_ignored ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_announce_new_iou ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_process_heartbeat ... ok [INFO] [stdout] test sync::peer_test::test_peer_info_rtt_tracking ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_generate_heartbeat ... ok [INFO] [stdout] test sync::peer_test::test_peer_info_creation ... ok [INFO] [stdout] test sync::peer_test::test_peer_info_is_stale ... ok [INFO] [stdout] test sync::peer_test::test_peer_info_update_state ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_stats ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_collect_outgoing_messages ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_receive_invalid_iou_rejected ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_add_duplicate ... ok [INFO] [stdout] test sync::peer_test::test_peer_info_version_tracking ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_add_peer ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_remove_stale ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_get_peer_mut ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_new ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_remove_peer ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_add_self_rejected ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_select_random_fewer_available ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_get_peer ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_apply_sync_response ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_select_by_state ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_select_random ... ok [INFO] [stdout] test sync::peer_test::test_peer_info_last_seen ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_all_peers ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_get_outdated_peers ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_stats ... ok [INFO] [stdout] test sync::protocol_test::test_heartbeat_serialization_roundtrip ... ok [INFO] [stdout] test sync::peer_test::test_peer_registry_serialization_roundtrip ... ok [INFO] [stdout] test sync::protocol_test::test_invalid_message_bytes ... ok [INFO] [stdout] test sync::protocol_test::test_heartbeat_creation ... ok [INFO] [stdout] test sync::protocol_test::test_message_has_unique_id ... ok [INFO] [stdout] test sync::protocol_test::test_heartbeat_timestamp ... ok [INFO] [stdout] test sync::protocol_test::test_message_type_peer_announcement ... ok [INFO] [stdout] test sync::protocol_test::test_iou_announcement_creation ... ok [INFO] [stdout] test sync::protocol_test::test_iou_announcement_max_hops ... ok [INFO] [stdout] test sync::protocol_test::test_message_type_sync_request ... ok [INFO] [stdout] test sync::protocol_test::test_message_type_sync_response ... ok [INFO] [stdout] test sync::protocol_test::test_peer_announcement_creation ... ok [INFO] [stdout] test sync::protocol_test::test_peer_announcement_serialization_roundtrip ... ok [INFO] [stdout] test sync::protocol_test::test_message_type_heartbeat ... ok [INFO] [stdout] test sync::protocol_test::test_peer_announcement_capabilities ... ok [INFO] [stdout] test sync::protocol_test::test_message_type_iou_announcement ... ok [INFO] [stdout] test sync::protocol_test::test_iou_announcement_hop_count ... ok [INFO] [stdout] test sync::protocol_test::test_sync_request_creation ... ok [INFO] [stdout] test sync::protocol_test::test_sync_response_empty ... ok [INFO] [stdout] test sync::protocol_test::test_peer_announcement_with_address ... ok [INFO] [stdout] test sync::protocol_test::test_sync_response_serialization_roundtrip ... ok [INFO] [stdout] test sync::protocol_test::test_sync_request_with_filter ... ok [INFO] [stdout] test sync::protocol_test::test_iou_announcement_serialization_roundtrip ... ok [INFO] [stdout] test sync::protocol_test::test_sync_request_serialization_roundtrip ... ok [INFO] [stdout] test sync::protocol_test::test_sync_response_with_entries ... ok [INFO] [stdout] test sync::protocol_test::test_same_content_same_id ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_process_message ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_state_access ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_tracks_seen_messages ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_receive_iou_announcement ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_handle_sync_request_with_delta ... ok [INFO] [stdout] test sync::gossip_test::test_gossip_prune_seen_messages ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 65 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.34s [INFO] [stdout] [INFO] [stderr] Running tests/transport_tests.rs (/opt/rustwide/target/debug/deps/transport_tests-b77dc8058bf2a440) [INFO] [stdout] [INFO] [stdout] running 238 tests [INFO] [stdout] test transport::ble_test::test_ble_address_display ... ok [INFO] [stdout] test transport::ble_test::test_ble_characteristic_full ... ok [INFO] [stdout] test transport::ble_test::test_ble_characteristic_read_only ... ok [INFO] [stdout] test transport::ble_test::test_ble_config_base_config ... ok [INFO] [stdout] test transport::ble_test::test_ble_config_dual_mode ... ok [INFO] [stdout] test transport::ble_test::test_ble_address_lowercase ... ok [INFO] [stdout] test transport::ble_test::test_ble_config_peripheral_mode ... ok [INFO] [stdout] test transport::ble_test::test_ble_config_advertise_name ... ok [INFO] [stdout] test transport::ble_test::test_ble_address_equality ... ok [INFO] [stdout] test transport::ble_test::test_ble_config_central_mode ... ok [INFO] [stdout] test transport::ble_test::test_ble_config_custom_service ... ok [INFO] [stdout] test transport::ble_test::test_ble_config_default ... ok [INFO] [stdout] test transport::ble_test::test_ble_config_scan_duration ... ok [INFO] [stdout] test transport::ble_test::test_ble_characteristic_write_only ... ok [INFO] [stdout] test transport::ble_test::test_ble_address_valid_format ... ok [INFO] [stdout] test transport::ble_test::test_ble_service_creation ... ok [INFO] [stdout] test transport::ble_test::test_ble_default_mtu ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_connect_invalid_address ... ok [INFO] [stdout] test transport::ble_test::test_ble_service_with_characteristics ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_advertise_not_peripheral ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_new_central ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_auto_reconnect_config ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_device_discovered_event ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_disconnect ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_new ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_discovered_devices ... ok [INFO] [stdout] test transport::ble_test::test_ble_characteristic_notify ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_new_peripheral ... ok [INFO] [stdout] test transport::ble_test::test_ble_config_mtu ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_connect_not_running ... ok [INFO] [stdout] test transport::ble_test::test_ble_config_min_mtu ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_poll_events_empty ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_start_advertising ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_rssi ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_scan_not_central ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_send_exceeds_mtu ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_start_scan ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_send_not_connected ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_stop_when_stopped ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_start_peripheral ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_start_central ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_stop ... ok [INFO] [stdout] test transport::edge_cases_test::test_address_type_string_representation ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_stats ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_stop_scan ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_requires_permissions ... ok [INFO] [stdout] test transport::ble_test::test_ble_transport_stop_advertising ... ok [INFO] [stdout] test transport::edge_cases_test::test_address_type_mismatch_detection ... ok [INFO] [stdout] test transport::edge_cases_test::test_config_builder_chain ... ok [INFO] [stdout] test transport::edge_cases_test::test_config_override_values ... ok [INFO] [stdout] test transport::edge_cases_test::test_ble_address_all_zeros ... ok [INFO] [stdout] test transport::edge_cases_test::test_connection_id_all_zeros ... ok [INFO] [stdout] test transport::edge_cases_test::test_connection_info_latency_updates ... ok [INFO] [stdout] test transport::edge_cases_test::test_config_all_defaults ... ok [INFO] [stdout] test transport::edge_cases_test::test_connection_id_clone_equality ... ok [INFO] [stdout] test transport::edge_cases_test::test_connection_info_serializable ... ok [INFO] [stdout] test transport::edge_cases_test::test_connection_info_bytes_overflow ... ok [INFO] [stdout] test transport::edge_cases_test::test_binary_message_data ... ok [INFO] [stdout] test transport::edge_cases_test::test_ble_address_all_fs ... ok [INFO] [stdout] test transport::edge_cases_test::test_connection_state_error_empty_message ... ok [INFO] [stdout] test transport::edge_cases_test::test_connection_id_all_ones ... ok [INFO] [stdout] test transport::edge_cases_test::test_connection_state_error_message ... ok [INFO] [stdout] test transport::edge_cases_test::test_double_disconnect ... ok [INFO] [stdout] test transport::ble_test::test_ble_mtu_negotiation_ready ... ok [INFO] [stdout] test transport::edge_cases_test::test_drop_cleans_up_resources ... ok [INFO] [stdout] test transport::edge_cases_test::test_empty_message_data ... ok [INFO] [stdout] test transport::edge_cases_test::test_event_accumulation ... ok [INFO] [stdout] test transport::edge_cases_test::test_lora_address_device_id_max ... ok [INFO] [stdout] test transport::edge_cases_test::test_max_connections_boundary ... ok [INFO] [stdout] test transport::edge_cases_test::test_lora_address_frequency_boundaries ... ok [INFO] [stdout] test transport::edge_cases_test::test_tcp_address_ipv6 ... ok [INFO] [stdout] test transport::edge_cases_test::test_large_message_data ... ok [INFO] [stdout] test transport::edge_cases_test::test_large_buffer_size ... ok [INFO] [stdout] test transport::edge_cases_test::test_tcp_address_ipv6_full ... ok [INFO] [stdout] test transport::edge_cases_test::test_min_connections_boundary ... ok [INFO] [stdout] test transport::edge_cases_test::test_send_after_disconnect ... ok [INFO] [stdout] test transport::edge_cases_test::test_many_rapid_sends ... ok [INFO] [stdout] test transport::edge_cases_test::test_max_timeout_value ... ok [INFO] [stdout] test transport::edge_cases_test::test_stop_with_pending_connections ... ok [INFO] [stdout] test transport::edge_cases_test::test_lora_address_device_id_zero ... ok [INFO] [stdout] test transport::lora_test::test_lora_address_broadcast ... ok [INFO] [stdout] test transport::lora_test::test_lora_address_components ... ok [INFO] [stdout] test transport::lora_test::test_lora_address_creation ... ok [INFO] [stdout] test transport::edge_cases_test::test_transport_error_empty_message ... ok [INFO] [stdout] test transport::lora_test::test_lora_address_equality ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_all_bandwidths ... ok [INFO] [stdout] test transport::edge_cases_test::test_transport_error_long_message ... ok [INFO] [stdout] test transport::lora_test::test_lora_address_display ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_all_spreading_factors ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_crc_enabled ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_default ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_duty_cycle ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_frequency_as923 ... ok [INFO] [stdout] test transport::edge_cases_test::test_tcp_address_port_max ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_all_coding_rates ... ok [INFO] [stdout] test transport::edge_cases_test::test_zero_timeout_handled ... ok [INFO] [stdout] test transport::edge_cases_test::test_tcp_address_port_zero ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_implicit_header ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_low_power_mode ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_sync_word ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_tx_power ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_base_config ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_coding_rate ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_device_id ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_bandwidth ... ok [INFO] [stdout] test transport::lora_test::test_lora_mesh_header_broadcast ... ok [INFO] [stdout] test transport::lora_test::test_lora_mesh_header_increment_hop ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_frequency_eu868 ... ok [INFO] [stdout] test transport::edge_cases_test::test_transport_error_unicode_message ... ok [INFO] [stdout] test transport::lora_test::test_lora_mesh_header_serialization ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_frequency_us915 ... ok [INFO] [stdout] test transport::edge_cases_test::test_zero_buffer_size ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_spreading_factor ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_tx_power_limits ... ok [INFO] [stdout] test transport::lora_test::test_lora_mesh_header ... ok [INFO] [stdout] test transport::lora_test::test_lora_config_preamble_length ... ok [INFO] [stdout] test transport::lora_test::test_lora_modulation_max_payload ... ok [INFO] [stdout] test transport::lora_test::test_lora_modulation_time_on_air ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_can_transmit ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_battery_voltage ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_channel_activity_detection ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_broadcast ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_new ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_receive_mode ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_error_timeout ... ok [INFO] [stdout] test transport::lora_test::test_lora_packet_received_event ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_poll_events_empty ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_rssi ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_send_exceeds_max_payload ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_set_frequency ... ok [INFO] [stdout] test transport::edge_cases_test::test_simultaneous_connect_disconnect ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_send_invalid_address ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_error_channel_busy ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_sleep_mode ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_error_crc_mismatch ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_snr ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_send_not_running ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_set_spreading_factor ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_start ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_config_base_config ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_time_until_transmit ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_config_with_nodelay ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_config_default ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_config_with_port ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_stats ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_stop ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_stop_when_stopped ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_config_with_keepalive ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_set_tx_power ... ok [INFO] [stdout] test transport::lora_test::test_lora_modulation_creation ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_broadcast ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_config_with_reuse_address ... ok [INFO] [stdout] test transport::lora_test::test_lora_modulation_data_rate ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_connect ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_connect_unreachable ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_connection_count ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_connect_when_stopped ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_broadcast_no_connections ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_disconnect ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_new ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_local_address_when_stopped ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_local_address ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_get_connection_info ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_listening_event ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_max_connections ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_restart ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_send_large_message ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_send_message ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_stats ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_send_empty_message ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_stop_when_stopped ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_start ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_start_twice_fails ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_send_to_unknown_connection ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_with_random_port ... ok [INFO] [stdout] test transport::traits_test::mock_transport::test_mock_transport_disconnect ... ok [INFO] [stdout] test transport::traits_test::mock_transport::test_mock_transport_connect ... ok [INFO] [stdout] test transport::traits_test::mock_transport::test_mock_transport_max_connections ... ok [INFO] [stdout] test transport::traits_test::mock_transport::test_mock_transport_connect_when_stopped ... ok [INFO] [stdout] test transport::traits_test::mock_transport::test_mock_transport_disconnect_unknown ... ok [INFO] [stdout] test transport::traits_test::mock_transport::test_mock_transport_start_stop ... ok [INFO] [stdout] test transport::traits_test::mock_transport::test_mock_transport_poll_events ... ok [INFO] [stdout] test transport::traits_test::test_connection_id_generation ... ok [INFO] [stdout] test transport::traits_test::test_connection_id_display ... ok [INFO] [stdout] test transport::traits_test::test_connection_id_from_bytes ... ok [INFO] [stdout] test transport::traits_test::test_connection_id_hashable ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_with_spi_device ... ok [INFO] [stdout] test transport::traits_test::test_connection_info_latency ... ok [INFO] [stdout] test transport::traits_test::test_connection_info_creation ... ok [INFO] [stdout] test transport::traits_test::test_connection_info_bytes_tracking ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_stats_after_activity ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_connect_invalid_address ... ok [INFO] [stdout] test transport::lora_test::test_lora_transport_standby_mode ... ok [INFO] [stdout] test transport::traits_test::test_connection_info_timestamps ... ok [INFO] [stdout] test transport::traits_test::test_connection_state_initial ... ok [INFO] [stdout] test transport::traits_test::test_connection_state_transitions ... ok [INFO] [stdout] test transport::traits_test::mock_transport::test_mock_transport_send ... ok [INFO] [stdout] test transport::traits_test::test_peer_address_clone ... ok [INFO] [stdout] test transport::traits_test::mock_transport::test_mock_transport_send_to_unknown ... ok [INFO] [stdout] test transport::traits_test::test_connection_info_update_activity ... ok [INFO] [stdout] test transport::traits_test::test_connection_info_with_node_id ... ok [INFO] [stdout] test transport::traits_test::mock_transport::test_mock_transport_stop_clears_connections ... ok [INFO] [stdout] test transport::traits_test::test_connection_state_is_active ... ok [INFO] [stdout] test transport::traits_test::test_peer_address_ble_creation ... ok [INFO] [stdout] test transport::traits_test::test_transport_config_validation ... ok [INFO] [stdout] test transport::traits_test::test_peer_address_equality ... ok [INFO] [stdout] test transport::traits_test::test_peer_address_hashable ... ok [INFO] [stdout] test transport::traits_test::test_peer_address_lora_creation ... ok [INFO] [stdout] test transport::traits_test::test_transport_error_display ... ok [INFO] [stdout] test transport::traits_test::test_transport_error_invalid_address ... ok [INFO] [stdout] test transport::traits_test::test_transport_error_is_retryable ... ok [INFO] [stdout] test transport::traits_test::test_transport_error_not_connected ... ok [INFO] [stdout] test transport::traits_test::test_transport_error_receive_failed ... ok [INFO] [stdout] test transport::traits_test::test_transport_error_send_failed ... ok [INFO] [stdout] test transport::traits_test::test_transport_error_already_connected ... ok [INFO] [stdout] test transport::traits_test::test_transport_error_connection_failed ... ok [INFO] [stdout] test transport::traits_test::test_transport_error_timeout ... ok [INFO] [stdout] test transport::traits_test::test_transport_event_error ... ok [INFO] [stdout] test transport::traits_test::test_transport_event_connected ... ok [INFO] [stdout] test transport::traits_test::test_transport_config_custom ... ok [INFO] [stdout] test transport::traits_test::test_transport_config_zero_connections_invalid ... ok [INFO] [stdout] test transport::traits_test::test_transport_state_is_running ... ok [INFO] [stdout] test transport::traits_test::test_transport_state_initial ... ok [INFO] [stdout] test transport::traits_test::test_transport_error_max_connections ... ok [INFO] [stdout] test transport::traits_test::test_transport_config_default ... ok [INFO] [stdout] test transport::traits_test::test_transport_state_is_transitioning ... ok [INFO] [stdout] test transport::traits_test::test_transport_state_transitions ... ok [INFO] [stdout] test transport::traits_test::test_transport_event_disconnected ... ok [INFO] [stdout] test transport::traits_test::test_transport_event_listening ... ok [INFO] [stdout] test transport::traits_test::test_transport_event_message_received ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_stop ... ok [INFO] [stdout] test transport::traits_test::test_peer_address_tcp_creation ... ok [INFO] [stdout] test transport::edge_cases_test::test_many_rapid_connections ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_connected_event ... ok [INFO] [stdout] test transport::traits_test::test_peer_address_display ... ok [INFO] [stdout] test transport::tcp_test::test_tcp_transport_receive_message ... ok [INFO] [stdout] test transport::edge_cases_test::test_connection_id_uniqueness_stress ... ok [INFO] [stdout] test transport::edge_cases_test::test_connect_after_server_restart ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 238 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s [INFO] [stdout] [INFO] [stderr] Running tests/vault_tests.rs (/opt/rustwide/target/debug/deps/vault_tests-b84825ee98336b0d) [INFO] [stdout] [INFO] [stdout] running 114 tests [INFO] [stdout] test vault::balance_test::test_new_vault_has_zero_balance ... ok [INFO] [stdout] test vault::balance_test::test_receive_iou_zero_amount_fails ... ok [INFO] [stdout] test vault::balance_test::test_balance_from_unknown_sender_is_zero ... ok [INFO] [stdout] test vault::balance_test::test_receive_iou_wrong_recipient_fails ... ok [INFO] [stdout] test vault::balance_test::test_new_vault_has_no_transactions ... ok [INFO] [stdout] test vault::balance_test::test_receive_iou_invalid_signature_fails ... ok [INFO] [stdout] test vault::balance_test::test_send_iou_insufficient_balance_fails ... ok [INFO] [stdout] test vault::balance_test::test_get_received_transactions_only ... ok [INFO] [stdout] test vault::balance_test::test_vault_owner_matches_public_key ... ok [INFO] [stdout] test vault::balance_test::test_available_balance_excludes_pending ... ok [INFO] [stdout] test vault::balance_test::test_send_exact_balance_succeeds ... ok [INFO] [stdout] test vault::critical_fixes_test::test_get_lock_info ... ok [INFO] [stdout] test vault::balance_test::test_balance_from_specific_sender ... ok [INFO] [stdout] test vault::balance_test::test_reserve_more_than_available_fails ... ok [INFO] [stdout] test vault::balance_test::test_receive_duplicate_iou_fails ... ok [INFO] [stdout] test vault::balance_test::test_release_reserved_balance ... ok [INFO] [stdout] test vault::balance_test::test_send_iou_wrong_sender_fails ... ok [INFO] [stdout] test vault::critical_fixes_test::test_change_utxo_has_unique_id ... ok [INFO] [stdout] test vault::balance_test::test_commit_reservation_releases_hold ... ok [INFO] [stdout] test vault::balance_test::test_get_transaction_history ... ok [INFO] [stdout] test vault::balance_test::test_get_sent_transactions_only ... ok [INFO] [stdout] test vault::balance_test::test_receive_iou_increases_balance ... ok [INFO] [stdout] test vault::balance_test::test_send_iou_decreases_balance ... ok [INFO] [stdout] test vault::balance_test::test_receive_iou_from_different_senders ... ok [INFO] [stdout] test vault::critical_fixes_test::test_lock_persists_before_timeout ... ok [INFO] [stdout] test vault::edge_cases_test::test_empty_vault_balance_is_zero ... ok [INFO] [stdout] test vault::edge_cases_test::test_empty_vault_can_afford_zero ... ok [INFO] [stdout] test vault::critical_fixes_test::test_sequential_change_utxos_unique ... ok [INFO] [stdout] test vault::edge_cases_test::test_empty_vault_cannot_spend ... ok [INFO] [stdout] test vault::critical_fixes_test::test_utxo_type_distinguishable ... ok [INFO] [stdout] test vault::edge_cases_test::test_empty_vault_transaction_history_empty ... ok [INFO] [stdout] test vault::edge_cases_test::test_empty_vault_utxo_set_empty ... ok [INFO] [stdout] test vault::edge_cases_test::test_commit_already_released_reservation_fails ... ok [INFO] [stdout] test vault::balance_test::test_receive_multiple_ious_accumulates_balance ... ok [INFO] [stdout] test vault::critical_fixes_test::test_full_lifecycle_with_fixes ... ok [INFO] [stdout] test vault::edge_cases_test::test_failed_operations_dont_affect_state ... ok [INFO] [stdout] test vault::critical_fixes_test::test_lock_expires_after_timeout ... ok [INFO] [stdout] test vault::edge_cases_test::test_balance_overflow_protection ... ok [INFO] [stdout] test vault::edge_cases_test::test_multiple_reservations ... ok [INFO] [stdout] test vault::edge_cases_test::test_release_invalid_reservation_fails ... ok [INFO] [stdout] test vault::edge_cases_test::test_maximum_amount_value ... ok [INFO] [stdout] test vault::edge_cases_test::test_self_payment_rejected_at_builder ... ok [INFO] [stdout] test vault::edge_cases_test::test_minimum_nonzero_amount ... ok [INFO] [stdout] test vault::balance_test::test_transaction_count_increases ... ok [INFO] [stdout] test vault::edge_cases_test::test_utxo_id_equality ... ok [INFO] [stdout] test vault::edge_cases_test::test_utxo_id_from_all_ones ... ok [INFO] [stdout] test vault::edge_cases_test::test_utxo_id_from_all_zeros ... ok [INFO] [stdout] test vault::edge_cases_test::test_utxo_id_hash_consistency ... ok [INFO] [stdout] test vault::edge_cases_test::test_utxo_set_add_duplicate_id_fails ... ok [INFO] [stdout] test vault::edge_cases_test::test_utxo_set_select_empty ... ok [INFO] [stdout] test vault::edge_cases_test::test_utxo_set_select_zero_amount ... ok [INFO] [stdout] test vault::edge_cases_test::test_reserve_zero_amount ... ok [INFO] [stdout] test vault::edge_cases_test::test_same_nonce_same_timestamp_rejected ... ok [INFO] [stdout] test vault::edge_cases_test::test_spend_exact_max_balance ... ok [INFO] [stdout] test vault::edge_cases_test::test_vault_state_serializable ... ok [INFO] [stdout] test vault::critical_fixes_test::test_recent_iou_protected_from_prune ... ok [INFO] [stdout] test vault::spending_test::test_cannot_spend_more_than_balance ... ok [INFO] [stdout] test vault::spending_test::test_can_spend_received_funds ... ok [INFO] [stdout] test vault::spending_test::test_can_afford_considers_pending ... ok [INFO] [stdout] test vault::spending_test::test_concurrent_spend_attempt_fails ... ok [INFO] [stdout] test vault::spending_test::test_estimate_utxos_needed_insufficient ... ok [INFO] [stdout] test vault::edge_cases_test::test_same_amount_different_nonce_accepted ... ok [INFO] [stdout] test vault::spending_test::test_check_double_spend_by_iou_id ... ok [INFO] [stdout] test vault::edge_cases_test::test_transaction_count_consistency ... ok [INFO] [stdout] test vault::critical_fixes_test::test_multiple_locks_different_timeouts ... ok [INFO] [stdout] test vault::spending_test::test_double_spend_detection_across_sync ... ok [INFO] [stdout] test vault::spending_test::test_spend_nonexistent_utxo_fails ... ok [INFO] [stdout] test vault::spending_test::test_same_iou_cannot_be_received_twice ... ok [INFO] [stdout] test vault::spending_test::test_spent_output_records_spending_transaction ... ok [INFO] [stdout] test vault::edge_cases_test::test_balance_equals_utxo_sum ... ok [INFO] [stdout] test vault::spending_test::test_spent_output_set_add ... ok [INFO] [stdout] test vault::spending_test::test_spent_output_set_duplicate_rejected ... ok [INFO] [stdout] test vault::spending_test::test_spending_tracks_consumed_utxos ... ok [INFO] [stdout] test vault::spending_test::test_spent_output_set_get ... ok [INFO] [stdout] test vault::spending_test::test_spent_output_set_new_is_empty ... ok [INFO] [stdout] test vault::utxo_test::test_get_nonexistent_utxo_returns_none ... ok [INFO] [stdout] test vault::spending_test::test_spend_specific_utxo ... ok [INFO] [stdout] test vault::utxo_test::test_lock_nonexistent_utxo_fails ... ok [INFO] [stdout] test vault::spending_test::test_spend_specific_utxo_insufficient_fails ... ok [INFO] [stdout] test vault::utxo_test::test_get_utxo_by_id ... ok [INFO] [stdout] test vault::spending_test::test_spent_utxo_cannot_be_spent_again ... ok [INFO] [stdout] test vault::spending_test::test_spent_output_records_timestamp ... ok [INFO] [stdout] test vault::spending_test::test_get_all_spent_outputs ... ok [INFO] [stdout] test vault::spending_test::test_validate_spending_amount_check ... ok [INFO] [stdout] test vault::utxo_test::test_lock_utxo_prevents_spending ... ok [INFO] [stdout] test vault::utxo_test::test_locked_utxos_excluded_from_available_balance ... ok [INFO] [stdout] test vault::utxo_test::test_partial_spend_creates_change_utxo ... ok [INFO] [stdout] test vault::utxo_test::test_unlock_utxo_allows_spending ... ok [INFO] [stdout] test vault::utxo_test::test_spending_removes_utxo ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_owner_matches_recipient ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_created_from_received_iou ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_set_add ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_set_contains ... ok [INFO] [stdout] test vault::spending_test::test_estimate_utxos_needed ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_set_new_is_empty ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_set_remove ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_references_source_iou ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_set_select_for_amount_exact ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_set_select_for_amount_with_change ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_set_select_insufficient_returns_none ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_set_select_multiple_utxos ... ok [INFO] [stdout] test vault::edge_cases_test::test_rapid_receive_send_cycles ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_has_unique_id ... ok [INFO] [stdout] test vault::utxo_test::test_spending_selects_optimal_utxos ... ok [INFO] [stdout] test vault::utxo_test::test_total_utxo_value_equals_balance ... ok [INFO] [stdout] test vault::utxo_test::test_utxo_set_is_ordered_by_amount ... ok [INFO] [stdout] test vault::utxo_test::test_spending_consolidates_small_utxos ... ok [INFO] [stdout] test vault::edge_cases_test::test_fragmented_balance_consolidation ... ok [INFO] [stdout] test vault::critical_fixes_test::test_memory_stats ... ok [INFO] [stdout] test vault::edge_cases_test::test_many_senders ... ok [INFO] [stdout] test vault::edge_cases_test::test_vault_handles_many_utxos ... ok [INFO] [stdout] test vault::critical_fixes_test::test_prune_old_processed_ious ... ok [INFO] [stdout] test vault::edge_cases_test::test_spend_consolidates_many_small_utxos ... ok [INFO] [stdout] test vault::critical_fixes_test::test_prune_to_max_count ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 114 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.09s [INFO] [stdout] [INFO] [stderr] Doc-tests p2pmesh [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c", kill_on_drop: false }` [INFO] [stdout] 1073cdfc70442d69e48be1ca94ed4fdb5a4dc84b7cb44d7811ba728e307e602c