[INFO] fetching crate ant-core 0.1.8...
[INFO] testing ant-core-0.1.8 against master#733b47ea4b1b86216f14ef56e49440c33933f230+rustflags=-Copt-level=3 for pr-138759
[INFO] extracting crate ant-core 0.1.8 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate ant-core 0.1.8
[INFO] finished tweaking crates.io crate ant-core 0.1.8
[INFO] tweaked toml for crates.io crate ant-core 0.1.8 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate ant-core 0.1.8 on toolchain 733b47ea4b1b86216f14ef56e49440c33933f230
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 402 packages to latest compatible versions
[INFO] [stderr]       Adding criterion v0.4.0 (available: v0.7.0)
[INFO] [stderr]       Adding curve25519-dalek v3.2.0 (available: v3.2.1)
[INFO] [stderr]       Adding dirs v5.0.1 (available: v6.0.0)
[INFO] [stderr]       Adding ed25519-dalek v1.0.1 (available: v2.2.0)
[INFO] [stderr]       Adding jsonwebtoken v9.3.1 (available: v10.0.0)
[INFO] [stderr]       Adding libloading v0.8.8 (available: v0.8.9)
[INFO] [stderr]       Adding rand v0.7.3 (available: v0.9.2)
[INFO] [stderr]       Adding rcgen v0.13.2 (available: v0.14.5)
[INFO] [stderr]       Adding reqwest v0.11.27 (available: v0.12.24)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.17)
[INFO] [stderr]       Adding warp v0.3.7 (available: v0.4.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 29945f47daeea81796b84ae7276e54da6e497154bd9493e4f8cdd8247125e787
[INFO] running `Command { std: "docker" "start" "-a" "29945f47daeea81796b84ae7276e54da6e497154bd9493e4f8cdd8247125e787", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "29945f47daeea81796b84ae7276e54da6e497154bd9493e4f8cdd8247125e787", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "29945f47daeea81796b84ae7276e54da6e497154bd9493e4f8cdd8247125e787", kill_on_drop: false }`
[INFO] [stdout] 29945f47daeea81796b84ae7276e54da6e497154bd9493e4f8cdd8247125e787
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 643afc4d26cbc12d75164bb5f45cdaf5921910ee04890536f1d12dd111eb04d6
[INFO] running `Command { std: "docker" "start" "-a" "643afc4d26cbc12d75164bb5f45cdaf5921910ee04890536f1d12dd111eb04d6", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling libloading v0.8.8
[INFO] [stderr]    Compiling cmake v0.1.54
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling aws-lc-rs v1.14.1
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling rustls v0.23.32
[INFO] [stderr]    Compiling time v0.3.44
[INFO] [stderr]    Compiling aws-lc-sys v0.32.2
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling quinn-udp v0.5.14
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling fastbloom v0.14.0
[INFO] [stderr]    Compiling polyval v0.6.2
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling quinn v0.11.9
[INFO] [stderr]    Compiling block-buffer v0.9.0
[INFO] [stderr]    Compiling blake3 v1.8.2
[INFO] [stderr]    Compiling rustc-hash v2.1.1
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling lru-slab v0.1.2
[INFO] [stderr]    Compiling rustls-pemfile v1.0.4
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling sha2 v0.9.9
[INFO] [stderr]    Compiling rustls-pki-types v1.12.0
[INFO] [stderr]    Compiling curve25519-dalek v3.2.0
[INFO] [stderr]    Compiling rustls-native-certs v0.8.1
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling ghash v0.5.1
[INFO] [stderr]    Compiling simple_asn1 v0.6.3
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling yasna v0.5.2
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling sync_wrapper v0.1.2
[INFO] [stderr]    Compiling tracing-subscriber v0.3.20
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling rcgen v0.13.2
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling jsonwebtoken v9.3.1
[INFO] [stderr]    Compiling ed25519-dalek v1.0.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling tokio-util v0.7.16
[INFO] [stderr]    Compiling h2 v0.3.27
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling dirs v5.0.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling hyper v0.14.32
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling reqwest v0.11.27
[INFO] [stderr]    Compiling rustls-webpki v0.103.7
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.1
[INFO] [stderr]    Compiling quinn-proto v0.11.13
[INFO] [stderr]    Compiling ant-core v0.1.8 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `IdentityManager`
[INFO] [stdout]   --> src/network.rs:12:32
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::identity::manager::{IdentityManager, IdentityManagerConfig};
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TransportType`
[INFO] [stdout]    --> src/network.rs:583:32
[INFO] [stdout]     |
[INFO] [stdout] 583 |         use crate::transport::{TransportType, Transport};
[INFO] [stdout]     |                                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Record`
[INFO] [stdout]  --> src/identity/manager.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::dht::{Key, Record};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transport_manager`
[INFO] [stdout]    --> src/network.rs:543:13
[INFO] [stdout]     |
[INFO] [stdout] 543 |         let transport_manager = &self.transport_manager;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport_manager`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peer_id`
[INFO] [stdout]    --> src/network.rs:658:13
[INFO] [stdout]     |
[INFO] [stdout] 658 |         let peer_id = self.peer_id.clone();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transport_manager`
[INFO] [stdout]    --> src/network.rs:660:13
[INFO] [stdout]     |
[INFO] [stdout] 660 |         let transport_manager = Arc::clone(&self.transport_manager);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/security.rs:154:29
[INFO] [stdout]     |
[INFO] [stdout] 154 |         if expected_node_id.as_slice() != &self.node_id {
[INFO] [stdout]     |                             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/identity.rs:488:28
[INFO] [stdout]     |
[INFO] [stdout] 488 |         let nonce = Nonce::from_slice(&nonce_bytes);
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/identity.rs:500:28
[INFO] [stdout]     |
[INFO] [stdout] 500 |         let nonce = Nonce::from_slice(nonce);
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `words`
[INFO] [stdout]    --> src/bootstrap/words.rs:300:39
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn decode_to_multiaddr(&self, words: &ThreeWordAddress) -> Result<Multiaddr> {
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_words`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/bootstrap/mod.rs:174:20
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 if let Ok(multiaddr) = addr_str.parse() {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `quality_calculator` is never read
[INFO] [stdout]   --> src/bootstrap/cache.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct BootstrapCache {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 86 |     quality_calculator: QualityCalculator,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BootstrapCache` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cache_dir` is never read
[INFO] [stdout]   --> src/bootstrap/merge.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct MergeCoordinator {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 17 |     /// Main cache directory path
[INFO] [stdout] 18 |     cache_dir: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MergeCoordinator` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConflictInfo` is never constructed
[INFO] [stdout]   --> src/bootstrap/merge.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 | struct ConflictInfo {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOTAL_COMBINATIONS` is never used
[INFO] [stdout]   --> src/bootstrap/words.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const TOTAL_COMBINATIONS: u64 = (WORDS_PER_POSITION as u64).pow(3);
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/network.rs:261:5
[INFO] [stdout]     |
[INFO] [stdout] 261 |     Message { topic: String, source: PeerId, data: Vec<u8> },
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:31:9
[INFO] [stdout]     |
[INFO] [stdout] 31  | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/network.rs:261:15
[INFO] [stdout]     |
[INFO] [stdout] 261 |     Message { topic: String, source: PeerId, data: Vec<u8> },
[INFO] [stdout]     |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/network.rs:261:30
[INFO] [stdout]     |
[INFO] [stdout] 261 |     Message { topic: String, source: PeerId, data: Vec<u8> },
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/network.rs:261:46
[INFO] [stdout]     |
[INFO] [stdout] 261 |     Message { topic: String, source: PeerId, data: Vec<u8> },
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/network.rs:262:5
[INFO] [stdout]     |
[INFO] [stdout] 262 |     PeerConnected(PeerId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/network.rs:263:5
[INFO] [stdout]     |
[INFO] [stdout] 263 |     PeerDisconnected(PeerId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/network.rs:436:5
[INFO] [stdout]     |
[INFO] [stdout] 436 |     pub fn local_addr(&self) -> Option<String> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/network.rs:440:5
[INFO] [stdout]     |
[INFO] [stdout] 440 |     pub async fn subscribe(&self, topic: &str) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/network.rs:447:5
[INFO] [stdout]     |
[INFO] [stdout] 447 |     pub async fn publish(&self, topic: &str, data: &[u8]) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2044:5
[INFO] [stdout]      |
[INFO] [stdout] 2044 |     pub inbox_id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2045:5
[INFO] [stdout]      |
[INFO] [stdout] 2045 |     pub owner: PeerId,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2046:5
[INFO] [stdout]      |
[INFO] [stdout] 2046 |     pub created_at: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2047:5
[INFO] [stdout]      |
[INFO] [stdout] 2047 |     pub message_count: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2048:5
[INFO] [stdout]      |
[INFO] [stdout] 2048 |     pub max_messages: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2049:5
[INFO] [stdout]      |
[INFO] [stdout] 2049 |     pub is_public: bool,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2050:5
[INFO] [stdout]      |
[INFO] [stdout] 2050 |     pub access_keys: Vec<PeerId>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2056:5
[INFO] [stdout]      |
[INFO] [stdout] 2056 |     pub id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2057:5
[INFO] [stdout]      |
[INFO] [stdout] 2057 |     pub sender: PeerId,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2058:5
[INFO] [stdout]      |
[INFO] [stdout] 2058 |     pub recipient_inbox: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2059:5
[INFO] [stdout]      |
[INFO] [stdout] 2059 |     pub content: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2060:5
[INFO] [stdout]      |
[INFO] [stdout] 2060 |     pub message_type: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2061:5
[INFO] [stdout]      |
[INFO] [stdout] 2061 |     pub timestamp: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2062:5
[INFO] [stdout]      |
[INFO] [stdout] 2062 |     pub attachments: Vec<MessageAttachment>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2068:5
[INFO] [stdout]      |
[INFO] [stdout] 2068 |     pub filename: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2069:5
[INFO] [stdout]      |
[INFO] [stdout] 2069 |     pub content_type: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2070:5
[INFO] [stdout]      |
[INFO] [stdout] 2070 |     pub size: u64,
[INFO] [stdout]      |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2071:5
[INFO] [stdout]      |
[INFO] [stdout] 2071 |     pub hash: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2077:5
[INFO] [stdout]      |
[INFO] [stdout] 2077 |     pub inbox_id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2078:5
[INFO] [stdout]      |
[INFO] [stdout] 2078 |     pub messages: Vec<MessageRef>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2079:5
[INFO] [stdout]      |
[INFO] [stdout] 2079 |     pub last_updated: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2085:5
[INFO] [stdout]      |
[INFO] [stdout] 2085 |     pub message_id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2086:5
[INFO] [stdout]      |
[INFO] [stdout] 2086 |     pub sender: PeerId,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2087:5
[INFO] [stdout]      |
[INFO] [stdout] 2087 |     pub timestamp: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2088:5
[INFO] [stdout]      |
[INFO] [stdout] 2088 |     pub message_type: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2094:5
[INFO] [stdout]      |
[INFO] [stdout] 2094 |     pub inbox_id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2095:5
[INFO] [stdout]      |
[INFO] [stdout] 2095 |     pub three_word_address: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2096:5
[INFO] [stdout]      |
[INFO] [stdout] 2096 |     pub owner: PeerId,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2097:5
[INFO] [stdout]      |
[INFO] [stdout] 2097 |     pub created_at: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2098:5
[INFO] [stdout]      |
[INFO] [stdout] 2098 |     pub message_count: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2099:5
[INFO] [stdout]      |
[INFO] [stdout] 2099 |     pub is_accessible: bool,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/bootstrap/discovery.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub enum FallbackBehavior {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/bootstrap/words.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub first: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/bootstrap/words.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub second: String, 
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/bootstrap/words.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub third: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 36s
[INFO] running `Command { std: "docker" "inspect" "643afc4d26cbc12d75164bb5f45cdaf5921910ee04890536f1d12dd111eb04d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "643afc4d26cbc12d75164bb5f45cdaf5921910ee04890536f1d12dd111eb04d6", kill_on_drop: false }`
[INFO] [stdout] 643afc4d26cbc12d75164bb5f45cdaf5921910ee04890536f1d12dd111eb04d6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 262b02b5de871c81ffdefb6092bc4dacc89857c19d4373ce865abe0436bd68ad
[INFO] running `Command { std: "docker" "start" "-a" "262b02b5de871c81ffdefb6092bc4dacc89857c19d4373ce865abe0436bd68ad", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]    Compiling zerocopy-derive v0.8.27
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling os_str_bytes v6.6.1
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling clap_lex v0.2.4
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling textwrap v0.16.2
[INFO] [stderr]    Compiling sdd v3.0.10
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling scc v2.4.0
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling simple_asn1 v0.6.3
[INFO] [stderr]    Compiling tracing-subscriber v0.3.20
[INFO] [stderr]    Compiling jsonwebtoken v9.3.1
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling clap v3.2.25
[INFO] [stderr]    Compiling reqwest v0.11.27
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling serial_test_derive v3.2.0
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling half v2.7.0
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling fastbloom v0.14.0
[INFO] [stderr]    Compiling quinn-proto v0.11.13
[INFO] [stderr]    Compiling ed25519-dalek v1.0.1
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling diff v0.1.13
[INFO] [stderr]    Compiling criterion v0.4.0
[INFO] [stderr]    Compiling tempfile v3.23.0
[INFO] [stderr]    Compiling pretty_assertions v1.4.1
[INFO] [stderr]    Compiling serial_test v3.2.0
[INFO] [stderr]    Compiling quinn v0.11.9
[INFO] [stderr]    Compiling ant-core v0.1.8 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `IdentityManager`
[INFO] [stdout]   --> src/network.rs:12:32
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::identity::manager::{IdentityManager, IdentityManagerConfig};
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TransportType`
[INFO] [stdout]    --> src/network.rs:583:32
[INFO] [stdout]     |
[INFO] [stdout] 583 |         use crate::transport::{TransportType, Transport};
[INFO] [stdout]     |                                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Record`
[INFO] [stdout]  --> src/identity/manager.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::dht::{Key, Record};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transport_manager`
[INFO] [stdout]    --> src/network.rs:543:13
[INFO] [stdout]     |
[INFO] [stdout] 543 |         let transport_manager = &self.transport_manager;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport_manager`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peer_id`
[INFO] [stdout]    --> src/network.rs:658:13
[INFO] [stdout]     |
[INFO] [stdout] 658 |         let peer_id = self.peer_id.clone();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transport_manager`
[INFO] [stdout]    --> src/network.rs:660:13
[INFO] [stdout]     |
[INFO] [stdout] 660 |         let transport_manager = Arc::clone(&self.transport_manager);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/security.rs:154:29
[INFO] [stdout]     |
[INFO] [stdout] 154 |         if expected_node_id.as_slice() != &self.node_id {
[INFO] [stdout]     |                             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/identity.rs:488:28
[INFO] [stdout]     |
[INFO] [stdout] 488 |         let nonce = Nonce::from_slice(&nonce_bytes);
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/identity.rs:500:28
[INFO] [stdout]     |
[INFO] [stdout] 500 |         let nonce = Nonce::from_slice(nonce);
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IdentityManager`
[INFO] [stdout]   --> src/network.rs:12:32
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::identity::manager::{IdentityManager, IdentityManagerConfig};
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TransportType`
[INFO] [stdout]    --> src/network.rs:583:32
[INFO] [stdout]     |
[INFO] [stdout] 583 |         use crate::transport::{TransportType, Transport};
[INFO] [stdout]     |                                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Record`
[INFO] [stdout]  --> src/identity/manager.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::dht::{Key, Record};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]    --> src/identity.rs:707:9
[INFO] [stdout]     |
[INFO] [stdout] 707 |     use std::str::FromStr;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `words`
[INFO] [stdout]    --> src/bootstrap/words.rs:300:39
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn decode_to_multiaddr(&self, words: &ThreeWordAddress) -> Result<Multiaddr> {
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_words`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/bootstrap/mod.rs:174:20
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 if let Ok(multiaddr) = addr_str.parse() {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `quality_calculator` is never read
[INFO] [stdout]   --> src/bootstrap/cache.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct BootstrapCache {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 86 |     quality_calculator: QualityCalculator,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BootstrapCache` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cache_dir` is never read
[INFO] [stdout]   --> src/bootstrap/merge.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct MergeCoordinator {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 17 |     /// Main cache directory path
[INFO] [stdout] 18 |     cache_dir: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MergeCoordinator` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConflictInfo` is never constructed
[INFO] [stdout]   --> src/bootstrap/merge.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 | struct ConflictInfo {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOTAL_COMBINATIONS` is never used
[INFO] [stdout]   --> src/bootstrap/words.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const TOTAL_COMBINATIONS: u64 = (WORDS_PER_POSITION as u64).pow(3);
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/network.rs:261:5
[INFO] [stdout]     |
[INFO] [stdout] 261 |     Message { topic: String, source: PeerId, data: Vec<u8> },
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:31:9
[INFO] [stdout]     |
[INFO] [stdout] 31  | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/network.rs:261:15
[INFO] [stdout]     |
[INFO] [stdout] 261 |     Message { topic: String, source: PeerId, data: Vec<u8> },
[INFO] [stdout]     |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/network.rs:261:30
[INFO] [stdout]     |
[INFO] [stdout] 261 |     Message { topic: String, source: PeerId, data: Vec<u8> },
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/network.rs:261:46
[INFO] [stdout]     |
[INFO] [stdout] 261 |     Message { topic: String, source: PeerId, data: Vec<u8> },
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/network.rs:262:5
[INFO] [stdout]     |
[INFO] [stdout] 262 |     PeerConnected(PeerId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/network.rs:263:5
[INFO] [stdout]     |
[INFO] [stdout] 263 |     PeerDisconnected(PeerId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/network.rs:436:5
[INFO] [stdout]     |
[INFO] [stdout] 436 |     pub fn local_addr(&self) -> Option<String> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/network.rs:440:5
[INFO] [stdout]     |
[INFO] [stdout] 440 |     pub async fn subscribe(&self, topic: &str) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/network.rs:447:5
[INFO] [stdout]     |
[INFO] [stdout] 447 |     pub async fn publish(&self, topic: &str, data: &[u8]) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2044:5
[INFO] [stdout]      |
[INFO] [stdout] 2044 |     pub inbox_id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2045:5
[INFO] [stdout]      |
[INFO] [stdout] 2045 |     pub owner: PeerId,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2046:5
[INFO] [stdout]      |
[INFO] [stdout] 2046 |     pub created_at: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2047:5
[INFO] [stdout]      |
[INFO] [stdout] 2047 |     pub message_count: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2048:5
[INFO] [stdout]      |
[INFO] [stdout] 2048 |     pub max_messages: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2049:5
[INFO] [stdout]      |
[INFO] [stdout] 2049 |     pub is_public: bool,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2050:5
[INFO] [stdout]      |
[INFO] [stdout] 2050 |     pub access_keys: Vec<PeerId>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2056:5
[INFO] [stdout]      |
[INFO] [stdout] 2056 |     pub id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2057:5
[INFO] [stdout]      |
[INFO] [stdout] 2057 |     pub sender: PeerId,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2058:5
[INFO] [stdout]      |
[INFO] [stdout] 2058 |     pub recipient_inbox: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2059:5
[INFO] [stdout]      |
[INFO] [stdout] 2059 |     pub content: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2060:5
[INFO] [stdout]      |
[INFO] [stdout] 2060 |     pub message_type: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2061:5
[INFO] [stdout]      |
[INFO] [stdout] 2061 |     pub timestamp: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2062:5
[INFO] [stdout]      |
[INFO] [stdout] 2062 |     pub attachments: Vec<MessageAttachment>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2068:5
[INFO] [stdout]      |
[INFO] [stdout] 2068 |     pub filename: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2069:5
[INFO] [stdout]      |
[INFO] [stdout] 2069 |     pub content_type: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2070:5
[INFO] [stdout]      |
[INFO] [stdout] 2070 |     pub size: u64,
[INFO] [stdout]      |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2071:5
[INFO] [stdout]      |
[INFO] [stdout] 2071 |     pub hash: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2077:5
[INFO] [stdout]      |
[INFO] [stdout] 2077 |     pub inbox_id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2078:5
[INFO] [stdout]      |
[INFO] [stdout] 2078 |     pub messages: Vec<MessageRef>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2079:5
[INFO] [stdout]      |
[INFO] [stdout] 2079 |     pub last_updated: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2085:5
[INFO] [stdout]      |
[INFO] [stdout] 2085 |     pub message_id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2086:5
[INFO] [stdout]      |
[INFO] [stdout] 2086 |     pub sender: PeerId,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2087:5
[INFO] [stdout]      |
[INFO] [stdout] 2087 |     pub timestamp: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2088:5
[INFO] [stdout]      |
[INFO] [stdout] 2088 |     pub message_type: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2094:5
[INFO] [stdout]      |
[INFO] [stdout] 2094 |     pub inbox_id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2095:5
[INFO] [stdout]      |
[INFO] [stdout] 2095 |     pub three_word_address: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2096:5
[INFO] [stdout]      |
[INFO] [stdout] 2096 |     pub owner: PeerId,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2097:5
[INFO] [stdout]      |
[INFO] [stdout] 2097 |     pub created_at: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2098:5
[INFO] [stdout]      |
[INFO] [stdout] 2098 |     pub message_count: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2099:5
[INFO] [stdout]      |
[INFO] [stdout] 2099 |     pub is_accessible: bool,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/bootstrap/discovery.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub enum FallbackBehavior {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/bootstrap/words.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub first: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/bootstrap/words.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub second: String, 
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/bootstrap/words.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub third: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transport_manager`
[INFO] [stdout]    --> src/network.rs:543:13
[INFO] [stdout]     |
[INFO] [stdout] 543 |         let transport_manager = &self.transport_manager;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport_manager`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peer_id`
[INFO] [stdout]    --> src/network.rs:658:13
[INFO] [stdout]     |
[INFO] [stdout] 658 |         let peer_id = self.peer_id.clone();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transport_manager`
[INFO] [stdout]    --> src/network.rs:660:13
[INFO] [stdout]     |
[INFO] [stdout] 660 |         let transport_manager = Arc::clone(&self.transport_manager);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/security.rs:154:29
[INFO] [stdout]     |
[INFO] [stdout] 154 |         if expected_node_id.as_slice() != &self.node_id {
[INFO] [stdout]     |                             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/identity.rs:488:28
[INFO] [stdout]     |
[INFO] [stdout] 488 |         let nonce = Nonce::from_slice(&nonce_bytes);
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/identity.rs:500:28
[INFO] [stdout]     |
[INFO] [stdout] 500 |         let nonce = Nonce::from_slice(nonce);
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `words`
[INFO] [stdout]    --> src/bootstrap/words.rs:300:39
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn decode_to_multiaddr(&self, words: &ThreeWordAddress) -> Result<Multiaddr> {
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_words`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/bootstrap/mod.rs:174:20
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 if let Ok(multiaddr) = addr_str.parse() {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_test_dht` is never used
[INFO] [stdout]     --> src/mcp.rs:2008:14
[INFO] [stdout]      |
[INFO] [stdout] 2008 |     async fn create_test_dht() -> DHT {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `quality_calculator` is never read
[INFO] [stdout]   --> src/bootstrap/cache.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct BootstrapCache {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 86 |     quality_calculator: QualityCalculator,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BootstrapCache` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cache_dir` is never read
[INFO] [stdout]   --> src/bootstrap/merge.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct MergeCoordinator {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 17 |     /// Main cache directory path
[INFO] [stdout] 18 |     cache_dir: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MergeCoordinator` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConflictInfo` is never constructed
[INFO] [stdout]   --> src/bootstrap/merge.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 | struct ConflictInfo {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOTAL_COMBINATIONS` is never used
[INFO] [stdout]   --> src/bootstrap/words.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const TOTAL_COMBINATIONS: u64 = (WORDS_PER_POSITION as u64).pow(3);
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/network.rs:261:5
[INFO] [stdout]     |
[INFO] [stdout] 261 |     Message { topic: String, source: PeerId, data: Vec<u8> },
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:31:9
[INFO] [stdout]     |
[INFO] [stdout] 31  | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/network.rs:261:15
[INFO] [stdout]     |
[INFO] [stdout] 261 |     Message { topic: String, source: PeerId, data: Vec<u8> },
[INFO] [stdout]     |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/network.rs:261:30
[INFO] [stdout]     |
[INFO] [stdout] 261 |     Message { topic: String, source: PeerId, data: Vec<u8> },
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/network.rs:261:46
[INFO] [stdout]     |
[INFO] [stdout] 261 |     Message { topic: String, source: PeerId, data: Vec<u8> },
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/network.rs:262:5
[INFO] [stdout]     |
[INFO] [stdout] 262 |     PeerConnected(PeerId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/network.rs:263:5
[INFO] [stdout]     |
[INFO] [stdout] 263 |     PeerDisconnected(PeerId),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/network.rs:436:5
[INFO] [stdout]     |
[INFO] [stdout] 436 |     pub fn local_addr(&self) -> Option<String> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/network.rs:440:5
[INFO] [stdout]     |
[INFO] [stdout] 440 |     pub async fn subscribe(&self, topic: &str) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/network.rs:447:5
[INFO] [stdout]     |
[INFO] [stdout] 447 |     pub async fn publish(&self, topic: &str, data: &[u8]) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2044:5
[INFO] [stdout]      |
[INFO] [stdout] 2044 |     pub inbox_id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2045:5
[INFO] [stdout]      |
[INFO] [stdout] 2045 |     pub owner: PeerId,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2046:5
[INFO] [stdout]      |
[INFO] [stdout] 2046 |     pub created_at: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2047:5
[INFO] [stdout]      |
[INFO] [stdout] 2047 |     pub message_count: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2048:5
[INFO] [stdout]      |
[INFO] [stdout] 2048 |     pub max_messages: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2049:5
[INFO] [stdout]      |
[INFO] [stdout] 2049 |     pub is_public: bool,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2050:5
[INFO] [stdout]      |
[INFO] [stdout] 2050 |     pub access_keys: Vec<PeerId>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2056:5
[INFO] [stdout]      |
[INFO] [stdout] 2056 |     pub id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2057:5
[INFO] [stdout]      |
[INFO] [stdout] 2057 |     pub sender: PeerId,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2058:5
[INFO] [stdout]      |
[INFO] [stdout] 2058 |     pub recipient_inbox: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2059:5
[INFO] [stdout]      |
[INFO] [stdout] 2059 |     pub content: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2060:5
[INFO] [stdout]      |
[INFO] [stdout] 2060 |     pub message_type: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2061:5
[INFO] [stdout]      |
[INFO] [stdout] 2061 |     pub timestamp: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2062:5
[INFO] [stdout]      |
[INFO] [stdout] 2062 |     pub attachments: Vec<MessageAttachment>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2068:5
[INFO] [stdout]      |
[INFO] [stdout] 2068 |     pub filename: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2069:5
[INFO] [stdout]      |
[INFO] [stdout] 2069 |     pub content_type: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2070:5
[INFO] [stdout]      |
[INFO] [stdout] 2070 |     pub size: u64,
[INFO] [stdout]      |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2071:5
[INFO] [stdout]      |
[INFO] [stdout] 2071 |     pub hash: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2077:5
[INFO] [stdout]      |
[INFO] [stdout] 2077 |     pub inbox_id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2078:5
[INFO] [stdout]      |
[INFO] [stdout] 2078 |     pub messages: Vec<MessageRef>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2079:5
[INFO] [stdout]      |
[INFO] [stdout] 2079 |     pub last_updated: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2085:5
[INFO] [stdout]      |
[INFO] [stdout] 2085 |     pub message_id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2086:5
[INFO] [stdout]      |
[INFO] [stdout] 2086 |     pub sender: PeerId,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2087:5
[INFO] [stdout]      |
[INFO] [stdout] 2087 |     pub timestamp: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2088:5
[INFO] [stdout]      |
[INFO] [stdout] 2088 |     pub message_type: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2094:5
[INFO] [stdout]      |
[INFO] [stdout] 2094 |     pub inbox_id: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2095:5
[INFO] [stdout]      |
[INFO] [stdout] 2095 |     pub three_word_address: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2096:5
[INFO] [stdout]      |
[INFO] [stdout] 2096 |     pub owner: PeerId,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2097:5
[INFO] [stdout]      |
[INFO] [stdout] 2097 |     pub created_at: SystemTime,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2098:5
[INFO] [stdout]      |
[INFO] [stdout] 2098 |     pub message_count: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/dht.rs:2099:5
[INFO] [stdout]      |
[INFO] [stdout] 2099 |     pub is_accessible: bool,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/bootstrap/discovery.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub enum FallbackBehavior {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/bootstrap/words.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub first: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/bootstrap/words.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub second: String, 
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/bootstrap/words.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub third: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ant-core` (lib test); 61 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/733b47ea4b1b86216f14ef56e49440c33933f230/bin/rustc --crate-name ant_core --edition=2021 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,link -C embed-bitcode=no -C debuginfo=2 --test --cfg 'feature="default"' --cfg 'feature="dht"' --cfg 'feature="mcp"' --cfg 'feature="three-word-addresses"' --cfg 'feature="tunneling"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("clap", "cli", "default", "dht", "include_dir", "mcp", "mime_guess", "three-word-addresses", "tunneling", "warp"))' -C metadata=367cffa078c03103 -C extra-filename=-de85e219d5af480e --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern aes_gcm=/opt/rustwide/target/debug/deps/libaes_gcm-e140ba6d197ebc12.rlib --extern anyhow=/opt/rustwide/target/debug/deps/libanyhow-a1b757f0b737aed9.rlib --extern async_trait=/opt/rustwide/target/debug/deps/libasync_trait-51731b9508a4227f.so --extern base64=/opt/rustwide/target/debug/deps/libbase64-0bc9384ee703098c.rlib --extern blake3=/opt/rustwide/target/debug/deps/libblake3-f3778870b9ccc122.rlib --extern bytes=/opt/rustwide/target/debug/deps/libbytes-ac1de41d75287ad9.rlib --extern chrono=/opt/rustwide/target/debug/deps/libchrono-1e49c61ec4d1734e.rlib --extern criterion=/opt/rustwide/target/debug/deps/libcriterion-76712bf846add53f.rlib --extern dirs=/opt/rustwide/target/debug/deps/libdirs-7c68d7949571a050.rlib --extern ed25519_dalek=/opt/rustwide/target/debug/deps/libed25519_dalek-17ab4bb17fa900f4.rlib --extern fastrand=/opt/rustwide/target/debug/deps/libfastrand-28aa0b45135fee0d.rlib --extern futures=/opt/rustwide/target/debug/deps/libfutures-db161cad7526b547.rlib --extern hex=/opt/rustwide/target/debug/deps/libhex-f8780b52ba33bd3a.rlib --extern jsonwebtoken=/opt/rustwide/target/debug/deps/libjsonwebtoken-c5d088902570d3c9.rlib --extern pretty_assertions=/opt/rustwide/target/debug/deps/libpretty_assertions-4a9df14c8523af3f.rlib --extern quinn=/opt/rustwide/target/debug/deps/libquinn-820bbec1f1410429.rlib --extern rand=/opt/rustwide/target/debug/deps/librand-686e1a242aaf3051.rlib --extern rcgen=/opt/rustwide/target/debug/deps/librcgen-fb1b41d5fde7f321.rlib --extern reqwest=/opt/rustwide/target/debug/deps/libreqwest-00c85d2bcb6ad1c7.rlib --extern rustls=/opt/rustwide/target/debug/deps/librustls-7f23118ed0d301d9.rlib --extern serde=/opt/rustwide/target/debug/deps/libserde-2574ec549d2e6b01.rlib --extern serde_json=/opt/rustwide/target/debug/deps/libserde_json-20f2582ee5671eb4.rlib --extern serial_test=/opt/rustwide/target/debug/deps/libserial_test-431cab3f41a183da.rlib --extern sha2=/opt/rustwide/target/debug/deps/libsha2-54b6dd7514892345.rlib --extern tempfile=/opt/rustwide/target/debug/deps/libtempfile-22e2d414adef38ed.rlib --extern thiserror=/opt/rustwide/target/debug/deps/libthiserror-d7adaa4cfaaf9fdd.rlib --extern tokio=/opt/rustwide/target/debug/deps/libtokio-25879335ba98f7b6.rlib --extern tracing=/opt/rustwide/target/debug/deps/libtracing-5f6f3a7af003682b.rlib --extern tracing_subscriber=/opt/rustwide/target/debug/deps/libtracing_subscriber-08ef1e38208ac738.rlib --extern uuid=/opt/rustwide/target/debug/deps/libuuid-9be4f1367749067d.rlib --cap-lints=forbid -Copt-level=3 -L native=/opt/rustwide/target/debug/build/blake3-f4fb42745723ecbf/out -L native=/opt/rustwide/target/debug/build/blake3-f4fb42745723ecbf/out -L native=/opt/rustwide/target/debug/build/ring-3797714a69307994/out -L native=/opt/rustwide/target/debug/build/aws-lc-sys-af0157ef3d33df3b/out` (signal: 9, SIGKILL: kill)
[INFO] running `Command { std: "docker" "inspect" "262b02b5de871c81ffdefb6092bc4dacc89857c19d4373ce865abe0436bd68ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "262b02b5de871c81ffdefb6092bc4dacc89857c19d4373ce865abe0436bd68ad", kill_on_drop: false }`
[INFO] [stdout] 262b02b5de871c81ffdefb6092bc4dacc89857c19d4373ce865abe0436bd68ad
