[INFO] cloning repository https://github.com/str4d/ire [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/str4d/ire" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstr4d%2Fire", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstr4d%2Fire'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 76a1c0920aece97ac5d355e277fead0230ef242c [INFO] testing str4d/ire against 1.52.1 for beta-1.52-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstr4d%2Fire" "/workspace/builds/worker-8/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-8/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/str4d/ire on toolchain 1.52.1 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.52.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/str4d/ire [INFO] finished tweaking git repo https://github.com/str4d/ire [INFO] tweaked toml for git repo https://github.com/str4d/ire written to /workspace/builds/worker-8/source/Cargo.toml [INFO] crate git repo https://github.com/str4d/ire already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.52.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+1.52.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ecc7e4a815c750cc1ab20fc4f1ba4da92838c8fab0f254ed55e1e18d83fd58fd [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "ecc7e4a815c750cc1ab20fc4f1ba4da92838c8fab0f254ed55e1e18d83fd58fd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ecc7e4a815c750cc1ab20fc4f1ba4da92838c8fab0f254ed55e1e18d83fd58fd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ecc7e4a815c750cc1ab20fc4f1ba4da92838c8fab0f254ed55e1e18d83fd58fd", kill_on_drop: false }` [INFO] [stdout] ecc7e4a815c750cc1ab20fc4f1ba4da92838c8fab0f254ed55e1e18d83fd58fd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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=warn" "-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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+1.52.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 893a888a0817a6fa3cfda7183003ddb509c60de03e43e64d952a39b250edd7c9 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "893a888a0817a6fa3cfda7183003ddb509c60de03e43e64d952a39b250edd7c9", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.66 [INFO] [stderr] Compiling byteorder v1.3.2 [INFO] [stderr] Compiling cc v1.0.48 [INFO] [stderr] Compiling typenum v1.11.2 [INFO] [stderr] Compiling rand_core v0.4.2 [INFO] [stderr] Compiling log v0.4.10 [INFO] [stderr] Compiling futures v0.1.29 [INFO] [stderr] Compiling subtle v2.2.2 [INFO] [stderr] Compiling scopeguard v1.0.0 [INFO] [stderr] Compiling getrandom v0.1.13 [INFO] [stderr] Compiling proc-macro2 v1.0.6 [INFO] [stderr] Compiling syn v1.0.11 [INFO] [stderr] Compiling failure_derive v0.1.6 [INFO] [stderr] Compiling fnv v1.0.6 [INFO] [stderr] Compiling zeroize v1.1.0 [INFO] [stderr] Compiling ryu v1.0.2 [INFO] [stderr] Compiling memchr v2.2.1 [INFO] [stderr] Compiling openssl v0.10.26 [INFO] [stderr] Compiling serde v1.0.104 [INFO] [stderr] Compiling constant_time_eq v0.1.4 [INFO] [stderr] Compiling adler32 v1.0.4 [INFO] [stderr] Compiling native-tls v0.2.3 [INFO] [stderr] Compiling ppv-lite86 v0.2.6 [INFO] [stderr] Compiling untrusted v0.7.0 [INFO] [stderr] Compiling static_slice v0.0.3 [INFO] [stderr] Compiling bit-vec v0.5.1 [INFO] [stderr] Compiling podio v0.1.6 [INFO] [stderr] Compiling arrayref v0.3.5 [INFO] [stderr] Compiling either v1.5.3 [INFO] [stderr] Compiling cookie-factory v0.2.4 [INFO] [stderr] Compiling siphasher v0.3.1 [INFO] [stderr] Compiling data-encoding v2.1.2 [INFO] [stderr] Compiling crossbeam-utils v0.6.6 [INFO] [stderr] Compiling crossbeam-utils v0.7.0 [INFO] [stderr] Compiling crossbeam-epoch v0.8.0 [INFO] [stderr] Compiling num-traits v0.2.10 [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling num-bigint v0.2.3 [INFO] [stderr] Compiling nom v5.0.1 [INFO] [stderr] Compiling nom v4.2.3 [INFO] [stderr] Compiling lock_api v0.3.2 [INFO] [stderr] Compiling subtle-encoding v0.4.1 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling chacha20-poly1305-aead v0.1.2 [INFO] [stderr] Compiling miniz_oxide v0.3.5 [INFO] [stderr] Compiling itertools v0.8.2 [INFO] [stderr] Compiling c2-chacha v0.2.3 [INFO] [stderr] Compiling crossbeam-queue v0.1.2 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling memoffset v0.5.3 [INFO] [stderr] Compiling lexical-core v0.4.6 [INFO] [stderr] Compiling i2p_snow v0.5.1 [INFO] [stderr] Compiling smallvec v0.6.13 [INFO] [stderr] Compiling blake2-rfc v0.2.18 [INFO] [stderr] Compiling tokio-executor v0.1.9 [INFO] [stderr] Compiling tokio-sync v0.1.7 [INFO] [stderr] Compiling clear_on_drop v0.2.3 [INFO] [stderr] Compiling backtrace-sys v0.1.32 [INFO] [stderr] Compiling openssl-sys v0.9.53 [INFO] [stderr] Compiling ring v0.16.9 (https://github.com/str4d/ring.git?branch=i2p-0.16.9#dfae5720) [INFO] [stderr] Compiling tokio-timer v0.2.12 [INFO] [stderr] Compiling tokio-current-thread v0.1.6 [INFO] [stderr] Compiling murmur3 v0.4.1 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling num_cpus v1.11.1 [INFO] [stderr] Compiling net2 v0.2.33 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling time v0.1.42 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling flate2 v1.0.13 [INFO] [stderr] Compiling rand v0.5.6 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Compiling generic-array v0.12.3 [INFO] [stderr] Compiling bloom-filter-rs v0.1.0 [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling mio v0.6.21 [INFO] [stderr] Compiling rand_chacha v0.2.1 [INFO] [stderr] Compiling zip v0.5.3 [INFO] [stderr] Compiling digest v0.8.1 [INFO] [stderr] Compiling block-buffer v0.7.3 [INFO] [stderr] Compiling elliptic-curve v0.2.0 [INFO] [stderr] Compiling block-cipher-trait v0.6.2 [INFO] [stderr] Compiling rand v0.3.23 [INFO] [stderr] Compiling tokio-io v0.1.12 [INFO] [stderr] Compiling rand v0.7.2 [INFO] [stderr] Compiling chrono v0.4.10 [INFO] [stderr] Compiling signature v1.0.0-pre.1 [INFO] [stderr] Compiling crossbeam-deque v0.7.2 [INFO] [stderr] Compiling sha2 v0.8.0 [INFO] [stderr] Compiling sha-1 v0.8.1 [INFO] [stderr] Compiling curve25519-dalek v1.2.3 [INFO] [stderr] Compiling backtrace v0.3.40 [INFO] [stderr] Compiling rust-crypto v0.2.36 [INFO] [stderr] Compiling aes-soft v0.3.3 [INFO] [stderr] Compiling block-modes v0.2.0 [INFO] [stderr] Compiling mio-uds v0.6.7 [INFO] [stderr] Compiling ed25519 v1.0.0-pre.1 [INFO] [stderr] Compiling tokio-threadpool v0.1.17 [INFO] [stderr] Compiling ecdsa v0.3.0 [INFO] [stderr] Compiling tokio-reactor v0.1.11 [INFO] [stderr] Compiling tokio-codec v0.1.1 [INFO] [stderr] Compiling aes v0.3.2 [INFO] [stderr] Compiling signatory v0.17.1 [INFO] [stderr] Compiling tokio-tcp v0.1.3 [INFO] [stderr] Compiling tokio-udp v0.1.5 [INFO] [stderr] Compiling tokio-uds v0.2.5 [INFO] [stderr] Compiling tokio-fs v0.1.6 [INFO] [stderr] Compiling tokio v0.1.22 [INFO] [stderr] Compiling x25519-dalek v0.4.5 [INFO] [stderr] Compiling toml v0.5.5 [INFO] [stderr] Compiling signatory-ring v0.17.0 [INFO] [stderr] Compiling tokio-tls v0.2.1 [INFO] [stderr] Compiling config v0.10.1 [INFO] [stderr] Compiling synstructure v0.12.3 [INFO] [stderr] Compiling failure v0.1.6 [INFO] [stderr] Compiling ed25519-dalek v1.0.0-pre.2 [INFO] [stderr] Compiling signatory-dalek v0.17.0 [INFO] [stderr] Compiling ire v0.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: lint `intra_doc_link_resolution_failure` has been removed: use `rustdoc::broken_intra_doc_links` instead [INFO] [stdout] --> src/lib.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | #![deny(intra_doc_link_resolution_failure)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/crypto/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unknown_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/crypto/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/data/mod.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `double_parens` [INFO] [stdout] --> src/i2np/mod.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | #[allow(double_parens)] [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/i2np/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/transport/ntcp/mod.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `double_parens` [INFO] [stdout] --> src/transport/ntcp/handshake/mod.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | #[allow(double_parens)] [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/transport/ntcp/handshake/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `enum_variant_names` [INFO] [stdout] --> src/transport/ntcp/handshake/mod.rs:528:9 [INFO] [stdout] | [INFO] [stdout] 528 | #[allow(enum_variant_names)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `enum_variant_names` [INFO] [stdout] --> src/transport/ntcp/handshake/mod.rs:695:9 [INFO] [stdout] | [INFO] [stdout] 695 | #[allow(enum_variant_names)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/transport/ntcp2/mod.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `enum_variant_names` [INFO] [stdout] --> src/transport/ntcp2/handshake/mod.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | #[allow(enum_variant_names)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/transport/ntcp2/frame.rs:282:30 [INFO] [stdout] | [INFO] [stdout] 282 | named!(pub session_confirmed<(Frame)>, call!(frame)); [INFO] [stdout] | ^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/transport/session.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 133 | type Item = (SessionRefs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> src/netdb/mock.rs:18:16 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn new(ctx: Arc, client_rx: mpsc::UnboundedReceiver) -> Self { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `timeout_ms` [INFO] [stdout] --> src/netdb/mock.rs:38:50 [INFO] [stdout] | [INFO] [stdout] 38 | Query::LookupRouterInfo(key, timeout_ms, from_peer, ret) => ret [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeout_ms` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `from_peer` [INFO] [stdout] --> src/netdb/mock.rs:38:62 [INFO] [stdout] | [INFO] [stdout] 38 | Query::LookupRouterInfo(key, timeout_ms, from_peer, ret) => ret [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `DsaPrivateKey` [INFO] [stdout] --> src/crypto/dsa.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | struct DsaPrivateKey(BigUint); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/crypto/dsa.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sign` [INFO] [stdout] --> src/crypto/dsa.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | fn sign(&self, msg: &[u8]) -> DsaSignature { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `from_private` [INFO] [stdout] --> src/crypto/dsa.rs:107:8 [INFO] [stdout] | [INFO] [stdout] 107 | fn from_private(sk: &DsaPrivateKey) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `private_key` [INFO] [stdout] --> src/data/dest.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | private_key: PrivateKey, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `validate_build_response_record` [INFO] [stdout] --> src/i2np/frame.rs:123:4 [INFO] [stdout] | [INFO] [stdout] 123 | fn validate_build_response_record<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TUNNEL_REJECT_PROBABALISTIC_REJECT` [INFO] [stdout] --> src/tunnel/acceptor.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | const TUNNEL_REJECT_PROBABALISTIC_REJECT: u8 = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TUNNEL_REJECT_TRANSIENT_OVERLOAD` [INFO] [stdout] --> src/tunnel/acceptor.rs:36:1 [INFO] [stdout] | [INFO] [stdout] 36 | const TUNNEL_REJECT_TRANSIENT_OVERLOAD: u8 = 20; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TUNNEL_REJECT_BANDWIDTH` [INFO] [stdout] --> src/tunnel/acceptor.rs:37:1 [INFO] [stdout] | [INFO] [stdout] 37 | const TUNNEL_REJECT_BANDWIDTH: u8 = 30; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `decrypt_layer` [INFO] [stdout] --> src/tunnel/encryption.rs:55:12 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn decrypt_layer(&self, td: &mut TunnelData) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `checksum` [INFO] [stdout] --> src/tunnel/frame.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn checksum(buf: &[u8], iv: &[u8]) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `validate_checksum` [INFO] [stdout] --> src/tunnel/frame.rs:23:4 [INFO] [stdout] | [INFO] [stdout] 23 | fn validate_checksum<'a>(input: &'a [u8], cs: u32, buf: &[u8], iv: &[u8]) -> IResult<&'a [u8], ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_checksum` [INFO] [stdout] --> src/tunnel/frame.rs:31:4 [INFO] [stdout] | [INFO] [stdout] 31 | fn gen_checksum<'a>( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_nonzero_padding` [INFO] [stdout] --> src/tunnel/frame.rs:42:4 [INFO] [stdout] | [INFO] [stdout] 42 | fn gen_nonzero_padding<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DELIVERY_TYPE_LOCAL` [INFO] [stdout] --> src/tunnel/frame.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | const DELIVERY_TYPE_LOCAL: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DELIVERY_TYPE_TUNNEL` [INFO] [stdout] --> src/tunnel/frame.rs:53:1 [INFO] [stdout] | [INFO] [stdout] 53 | const DELIVERY_TYPE_TUNNEL: u8 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DELIVERY_TYPE_ROUTER` [INFO] [stdout] --> src/tunnel/frame.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | const DELIVERY_TYPE_ROUTER: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_first_frag_di` [INFO] [stdout] --> src/tunnel/frame.rs:89:4 [INFO] [stdout] | [INFO] [stdout] 89 | fn gen_first_frag_di<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_follow_on_frag_di` [INFO] [stdout] --> src/tunnel/frame.rs:145:4 [INFO] [stdout] | [INFO] [stdout] 145 | fn gen_follow_on_frag_di<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_tmdi` [INFO] [stdout] --> src/tunnel/frame.rs:174:4 [INFO] [stdout] | [INFO] [stdout] 174 | fn gen_tmdi<'a>( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_tmdi_fragment_pair` [INFO] [stdout] --> src/tunnel/frame.rs:199:4 [INFO] [stdout] | [INFO] [stdout] 199 | fn gen_tmdi_fragment_pair<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_tunnel_message` [INFO] [stdout] --> src/tunnel/frame.rs:209:4 [INFO] [stdout] | [INFO] [stdout] 209 | fn gen_tunnel_message<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Local` [INFO] [stdout] --> src/tunnel.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | Local, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Tunnel` [INFO] [stdout] --> src/tunnel.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | Tunnel(TunnelId, Hash), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Router` [INFO] [stdout] --> src/tunnel.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | Router(Hash), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `First` [INFO] [stdout] --> src/tunnel.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | First(FirstFragmentDeliveryInstructions), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `FollowOn` [INFO] [stdout] --> src/tunnel.rs:75:5 [INFO] [stdout] | [INFO] [stdout] 75 | FollowOn(FollowOnFragmentDeliveryInstructions), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `byte_len` [INFO] [stdout] --> src/tunnel.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 79 | fn byte_len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `byte_len` [INFO] [stdout] --> src/tunnel.rs:105:8 [INFO] [stdout] | [INFO] [stdout] 105 | fn byte_len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/router/builder.rs:114:34 [INFO] [stdout] | [INFO] [stdout] 114 | Err(e) => panic!(e), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_fmt_panic)]` on by default [INFO] [stdout] = note: this is no longer accepted in Rust 2021 [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 114 | Err(e) => panic!("{}", e), [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 114 | Err(e) => std::panic::panic_any(e), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/router/builder.rs:169:30 [INFO] [stdout] | [INFO] [stdout] 169 | Err(e) => panic!(e), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this is no longer accepted in Rust 2021 [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 169 | Err(e) => panic!("{}", e), [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 169 | Err(e) => std::panic::panic_any(e), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 49 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 3m 03s [INFO] running `Command { std: "docker" "inspect" "893a888a0817a6fa3cfda7183003ddb509c60de03e43e64d952a39b250edd7c9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "893a888a0817a6fa3cfda7183003ddb509c60de03e43e64d952a39b250edd7c9", kill_on_drop: false }` [INFO] [stdout] 893a888a0817a6fa3cfda7183003ddb509c60de03e43e64d952a39b250edd7c9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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=warn" "-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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+1.52.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 12ff48626f271c60a4b91b7852bbe02ae169b629ae14e5de4a0adba11b3910f1 [INFO] running `Command { std: "docker" "start" "-a" "12ff48626f271c60a4b91b7852bbe02ae169b629ae14e5de4a0adba11b3910f1", kill_on_drop: false }` [INFO] [stderr] Compiling remove_dir_all v0.5.2 [INFO] [stderr] Compiling difference v2.0.0 [INFO] [stdout] warning: lint `intra_doc_link_resolution_failure` has been removed: use `rustdoc::broken_intra_doc_links` instead [INFO] [stdout] --> src/lib.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | #![deny(intra_doc_link_resolution_failure)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/crypto/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unknown_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/crypto/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/data/mod.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `double_parens` [INFO] [stdout] --> src/i2np/mod.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | #[allow(double_parens)] [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/i2np/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/transport/ntcp/mod.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `double_parens` [INFO] [stdout] --> src/transport/ntcp/handshake/mod.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | #[allow(double_parens)] [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/transport/ntcp/handshake/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `enum_variant_names` [INFO] [stdout] --> src/transport/ntcp/handshake/mod.rs:528:9 [INFO] [stdout] | [INFO] [stdout] 528 | #[allow(enum_variant_names)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `enum_variant_names` [INFO] [stdout] --> src/transport/ntcp/handshake/mod.rs:695:9 [INFO] [stdout] | [INFO] [stdout] 695 | #[allow(enum_variant_names)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/transport/ntcp2/mod.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `enum_variant_names` [INFO] [stdout] --> src/transport/ntcp2/handshake/mod.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | #[allow(enum_variant_names)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/transport/ntcp2/frame.rs:282:30 [INFO] [stdout] | [INFO] [stdout] 282 | named!(pub session_confirmed<(Frame)>, call!(frame)); [INFO] [stdout] | ^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/transport/session.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 133 | type Item = (SessionRefs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> src/netdb/mock.rs:18:16 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn new(ctx: Arc, client_rx: mpsc::UnboundedReceiver) -> Self { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `timeout_ms` [INFO] [stdout] --> src/netdb/mock.rs:38:50 [INFO] [stdout] | [INFO] [stdout] 38 | Query::LookupRouterInfo(key, timeout_ms, from_peer, ret) => ret [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeout_ms` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `from_peer` [INFO] [stdout] --> src/netdb/mock.rs:38:62 [INFO] [stdout] | [INFO] [stdout] 38 | Query::LookupRouterInfo(key, timeout_ms, from_peer, ret) => ret [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `DsaPrivateKey` [INFO] [stdout] --> src/crypto/dsa.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | struct DsaPrivateKey(BigUint); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/crypto/dsa.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sign` [INFO] [stdout] --> src/crypto/dsa.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | fn sign(&self, msg: &[u8]) -> DsaSignature { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `from_private` [INFO] [stdout] --> src/crypto/dsa.rs:107:8 [INFO] [stdout] | [INFO] [stdout] 107 | fn from_private(sk: &DsaPrivateKey) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `private_key` [INFO] [stdout] --> src/data/dest.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | private_key: PrivateKey, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `validate_build_response_record` [INFO] [stdout] --> src/i2np/frame.rs:123:4 [INFO] [stdout] | [INFO] [stdout] 123 | fn validate_build_response_record<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TUNNEL_REJECT_PROBABALISTIC_REJECT` [INFO] [stdout] --> src/tunnel/acceptor.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | const TUNNEL_REJECT_PROBABALISTIC_REJECT: u8 = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TUNNEL_REJECT_TRANSIENT_OVERLOAD` [INFO] [stdout] --> src/tunnel/acceptor.rs:36:1 [INFO] [stdout] | [INFO] [stdout] 36 | const TUNNEL_REJECT_TRANSIENT_OVERLOAD: u8 = 20; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TUNNEL_REJECT_BANDWIDTH` [INFO] [stdout] --> src/tunnel/acceptor.rs:37:1 [INFO] [stdout] | [INFO] [stdout] 37 | const TUNNEL_REJECT_BANDWIDTH: u8 = 30; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `decrypt_layer` [INFO] [stdout] --> src/tunnel/encryption.rs:55:12 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn decrypt_layer(&self, td: &mut TunnelData) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `checksum` [INFO] [stdout] --> src/tunnel/frame.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn checksum(buf: &[u8], iv: &[u8]) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `validate_checksum` [INFO] [stdout] --> src/tunnel/frame.rs:23:4 [INFO] [stdout] | [INFO] [stdout] 23 | fn validate_checksum<'a>(input: &'a [u8], cs: u32, buf: &[u8], iv: &[u8]) -> IResult<&'a [u8], ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_checksum` [INFO] [stdout] --> src/tunnel/frame.rs:31:4 [INFO] [stdout] | [INFO] [stdout] 31 | fn gen_checksum<'a>( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_nonzero_padding` [INFO] [stdout] --> src/tunnel/frame.rs:42:4 [INFO] [stdout] | [INFO] [stdout] 42 | fn gen_nonzero_padding<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DELIVERY_TYPE_LOCAL` [INFO] [stdout] --> src/tunnel/frame.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | const DELIVERY_TYPE_LOCAL: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DELIVERY_TYPE_TUNNEL` [INFO] [stdout] --> src/tunnel/frame.rs:53:1 [INFO] [stdout] | [INFO] [stdout] 53 | const DELIVERY_TYPE_TUNNEL: u8 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DELIVERY_TYPE_ROUTER` [INFO] [stdout] --> src/tunnel/frame.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | const DELIVERY_TYPE_ROUTER: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_first_frag_di` [INFO] [stdout] --> src/tunnel/frame.rs:89:4 [INFO] [stdout] | [INFO] [stdout] 89 | fn gen_first_frag_di<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_follow_on_frag_di` [INFO] [stdout] --> src/tunnel/frame.rs:145:4 [INFO] [stdout] | [INFO] [stdout] 145 | fn gen_follow_on_frag_di<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_tmdi` [INFO] [stdout] --> src/tunnel/frame.rs:174:4 [INFO] [stdout] | [INFO] [stdout] 174 | fn gen_tmdi<'a>( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_tmdi_fragment_pair` [INFO] [stdout] --> src/tunnel/frame.rs:199:4 [INFO] [stdout] | [INFO] [stdout] 199 | fn gen_tmdi_fragment_pair<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gen_tunnel_message` [INFO] [stdout] --> src/tunnel/frame.rs:209:4 [INFO] [stdout] | [INFO] [stdout] 209 | fn gen_tunnel_message<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Local` [INFO] [stdout] --> src/tunnel.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | Local, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Tunnel` [INFO] [stdout] --> src/tunnel.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | Tunnel(TunnelId, Hash), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Router` [INFO] [stdout] --> src/tunnel.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | Router(Hash), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `First` [INFO] [stdout] --> src/tunnel.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | First(FirstFragmentDeliveryInstructions), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `FollowOn` [INFO] [stdout] --> src/tunnel.rs:75:5 [INFO] [stdout] | [INFO] [stdout] 75 | FollowOn(FollowOnFragmentDeliveryInstructions), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `byte_len` [INFO] [stdout] --> src/tunnel.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 79 | fn byte_len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `byte_len` [INFO] [stdout] --> src/tunnel.rs:105:8 [INFO] [stdout] | [INFO] [stdout] 105 | fn byte_len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/router/builder.rs:114:34 [INFO] [stdout] | [INFO] [stdout] 114 | Err(e) => panic!(e), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_fmt_panic)]` on by default [INFO] [stdout] = note: this is no longer accepted in Rust 2021 [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 114 | Err(e) => panic!("{}", e), [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 114 | Err(e) => std::panic::panic_any(e), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/router/builder.rs:169:30 [INFO] [stdout] | [INFO] [stdout] 169 | Err(e) => panic!(e), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this is no longer accepted in Rust 2021 [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 169 | Err(e) => panic!("{}", e), [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 169 | Err(e) => std::panic::panic_any(e), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 49 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling tempfile v3.1.0 [INFO] [stderr] Compiling pretty_assertions v0.5.1 [INFO] [stderr] Compiling ire v0.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: lint `intra_doc_link_resolution_failure` has been removed: use `rustdoc::broken_intra_doc_links` instead [INFO] [stdout] --> src/lib.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | #![deny(intra_doc_link_resolution_failure)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/crypto/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unknown_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/crypto/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/data/mod.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `double_parens` [INFO] [stdout] --> src/i2np/mod.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | #[allow(double_parens)] [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/i2np/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/transport/ntcp/mod.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `double_parens` [INFO] [stdout] --> src/transport/ntcp/handshake/mod.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | #[allow(double_parens)] [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/transport/ntcp/handshake/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `enum_variant_names` [INFO] [stdout] --> src/transport/ntcp/handshake/mod.rs:528:9 [INFO] [stdout] | [INFO] [stdout] 528 | #[allow(enum_variant_names)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `enum_variant_names` [INFO] [stdout] --> src/transport/ntcp/handshake/mod.rs:695:9 [INFO] [stdout] | [INFO] [stdout] 695 | #[allow(enum_variant_names)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `needless_pass_by_value` [INFO] [stdout] --> src/transport/ntcp2/mod.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | #[allow(needless_pass_by_value)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unknown lint: `enum_variant_names` [INFO] [stdout] --> src/transport/ntcp2/handshake/mod.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | #[allow(enum_variant_names)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/crypto/elgamal.rs:286:10 [INFO] [stdout] | [INFO] [stdout] 286 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/crypto/mod.rs:666:10 [INFO] [stdout] | [INFO] [stdout] 666 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/transport/ntcp2/frame.rs:282:30 [INFO] [stdout] | [INFO] [stdout] 282 | named!(pub session_confirmed<(Frame)>, call!(frame)); [INFO] [stdout] | ^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/transport/session.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 133 | type Item = (SessionRefs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/data/dest.rs:176:13 [INFO] [stdout] | [INFO] [stdout] 176 | let key = dest.hash(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ctx` [INFO] [stdout] --> src/netdb/mock.rs:18:16 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn new(ctx: Arc, client_rx: mpsc::UnboundedReceiver) -> Self { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `timeout_ms` [INFO] [stdout] --> src/netdb/mock.rs:38:50 [INFO] [stdout] | [INFO] [stdout] 38 | Query::LookupRouterInfo(key, timeout_ms, from_peer, ret) => ret [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeout_ms` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `from_peer` [INFO] [stdout] --> src/netdb/mock.rs:38:62 [INFO] [stdout] | [INFO] [stdout] 38 | Query::LookupRouterInfo(key, timeout_ms, from_peer, ret) => ret [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `private_key` [INFO] [stdout] --> src/data/dest.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | private_key: PrivateKey, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TUNNEL_REJECT_PROBABALISTIC_REJECT` [INFO] [stdout] --> src/tunnel/acceptor.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | const TUNNEL_REJECT_PROBABALISTIC_REJECT: u8 = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TUNNEL_REJECT_TRANSIENT_OVERLOAD` [INFO] [stdout] --> src/tunnel/acceptor.rs:36:1 [INFO] [stdout] | [INFO] [stdout] 36 | const TUNNEL_REJECT_TRANSIENT_OVERLOAD: u8 = 20; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `TUNNEL_REJECT_BANDWIDTH` [INFO] [stdout] --> src/tunnel/acceptor.rs:37:1 [INFO] [stdout] | [INFO] [stdout] 37 | const TUNNEL_REJECT_BANDWIDTH: u8 = 30; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/router/builder.rs:114:34 [INFO] [stdout] | [INFO] [stdout] 114 | Err(e) => panic!(e), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_fmt_panic)]` on by default [INFO] [stdout] = note: this is no longer accepted in Rust 2021 [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 114 | Err(e) => panic!("{}", e), [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 114 | Err(e) => std::panic::panic_any(e), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/router/builder.rs:169:30 [INFO] [stdout] | [INFO] [stdout] 169 | Err(e) => panic!(e), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this is no longer accepted in Rust 2021 [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 169 | Err(e) => panic!("{}", e), [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 169 | Err(e) => std::panic::panic_any(e), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 27 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 29.17s [INFO] running `Command { std: "docker" "inspect" "12ff48626f271c60a4b91b7852bbe02ae169b629ae14e5de4a0adba11b3910f1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "12ff48626f271c60a4b91b7852bbe02ae169b629ae14e5de4a0adba11b3910f1", kill_on_drop: false }` [INFO] [stdout] 12ff48626f271c60a4b91b7852bbe02ae169b629ae14e5de4a0adba11b3910f1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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=warn" "-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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+1.52.1" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] f4ea62de1aa8a31a7d46a35d1666894bbce2966250ab853000d81442a306023d [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "f4ea62de1aa8a31a7d46a35d1666894bbce2966250ab853000d81442a306023d", kill_on_drop: false }` [INFO] [stderr] warning: lint `intra_doc_link_resolution_failure` has been removed: use `rustdoc::broken_intra_doc_links` instead [INFO] [stderr] --> src/lib.rs:6:9 [INFO] [stderr] | [INFO] [stderr] 6 | #![deny(intra_doc_link_resolution_failure)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/crypto/mod.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unknown_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/crypto/mod.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/data/mod.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 25 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `double_parens` [INFO] [stderr] --> src/i2np/mod.rs:22:9 [INFO] [stderr] | [INFO] [stderr] 22 | #[allow(double_parens)] [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/i2np/mod.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 23 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/transport/ntcp/mod.rs:37:9 [INFO] [stderr] | [INFO] [stderr] 37 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `double_parens` [INFO] [stderr] --> src/transport/ntcp/handshake/mod.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 19 | #[allow(double_parens)] [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/transport/ntcp/handshake/mod.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `enum_variant_names` [INFO] [stderr] --> src/transport/ntcp/handshake/mod.rs:528:9 [INFO] [stderr] | [INFO] [stderr] 528 | #[allow(enum_variant_names)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `enum_variant_names` [INFO] [stderr] --> src/transport/ntcp/handshake/mod.rs:695:9 [INFO] [stderr] | [INFO] [stderr] 695 | #[allow(enum_variant_names)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/transport/ntcp2/mod.rs:70:9 [INFO] [stderr] | [INFO] [stderr] 70 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `enum_variant_names` [INFO] [stderr] --> src/transport/ntcp2/handshake/mod.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | #[allow(enum_variant_names)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/transport/ntcp2/frame.rs:282:30 [INFO] [stderr] | [INFO] [stderr] 282 | named!(pub session_confirmed<(Frame)>, call!(frame)); [INFO] [stderr] | ^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/transport/session.rs:133:17 [INFO] [stderr] | [INFO] [stderr] 133 | type Item = (SessionRefs); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ctx` [INFO] [stderr] --> src/netdb/mock.rs:18:16 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn new(ctx: Arc, client_rx: mpsc::UnboundedReceiver) -> Self { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `timeout_ms` [INFO] [stderr] --> src/netdb/mock.rs:38:50 [INFO] [stderr] | [INFO] [stderr] 38 | Query::LookupRouterInfo(key, timeout_ms, from_peer, ret) => ret [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeout_ms` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `from_peer` [INFO] [stderr] --> src/netdb/mock.rs:38:62 [INFO] [stderr] | [INFO] [stderr] 38 | Query::LookupRouterInfo(key, timeout_ms, from_peer, ret) => ret [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_peer` [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `DsaPrivateKey` [INFO] [stderr] --> src/crypto/dsa.rs:24:8 [INFO] [stderr] | [INFO] [stderr] 24 | struct DsaPrivateKey(BigUint); [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/crypto/dsa.rs:56:8 [INFO] [stderr] | [INFO] [stderr] 56 | fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `sign` [INFO] [stderr] --> src/crypto/dsa.rs:71:8 [INFO] [stderr] | [INFO] [stderr] 71 | fn sign(&self, msg: &[u8]) -> DsaSignature { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `from_private` [INFO] [stderr] --> src/crypto/dsa.rs:107:8 [INFO] [stderr] | [INFO] [stderr] 107 | fn from_private(sk: &DsaPrivateKey) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `private_key` [INFO] [stderr] --> src/data/dest.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | private_key: PrivateKey, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `validate_build_response_record` [INFO] [stderr] --> src/i2np/frame.rs:123:4 [INFO] [stderr] | [INFO] [stderr] 123 | fn validate_build_response_record<'a>( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `TUNNEL_REJECT_PROBABALISTIC_REJECT` [INFO] [stderr] --> src/tunnel/acceptor.rs:35:1 [INFO] [stderr] | [INFO] [stderr] 35 | const TUNNEL_REJECT_PROBABALISTIC_REJECT: u8 = 10; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `TUNNEL_REJECT_TRANSIENT_OVERLOAD` [INFO] [stderr] --> src/tunnel/acceptor.rs:36:1 [INFO] [stderr] | [INFO] [stderr] 36 | const TUNNEL_REJECT_TRANSIENT_OVERLOAD: u8 = 20; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `TUNNEL_REJECT_BANDWIDTH` [INFO] [stderr] --> src/tunnel/acceptor.rs:37:1 [INFO] [stderr] | [INFO] [stderr] 37 | const TUNNEL_REJECT_BANDWIDTH: u8 = 30; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `decrypt_layer` [INFO] [stderr] --> src/tunnel/encryption.rs:55:12 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn decrypt_layer(&self, td: &mut TunnelData) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `checksum` [INFO] [stderr] --> src/tunnel/frame.rs:14:4 [INFO] [stderr] | [INFO] [stderr] 14 | fn checksum(buf: &[u8], iv: &[u8]) -> u32 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `validate_checksum` [INFO] [stderr] --> src/tunnel/frame.rs:23:4 [INFO] [stderr] | [INFO] [stderr] 23 | fn validate_checksum<'a>(input: &'a [u8], cs: u32, buf: &[u8], iv: &[u8]) -> IResult<&'a [u8], ()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gen_checksum` [INFO] [stderr] --> src/tunnel/frame.rs:31:4 [INFO] [stderr] | [INFO] [stderr] 31 | fn gen_checksum<'a>( [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gen_nonzero_padding` [INFO] [stderr] --> src/tunnel/frame.rs:42:4 [INFO] [stderr] | [INFO] [stderr] 42 | fn gen_nonzero_padding<'a>( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DELIVERY_TYPE_LOCAL` [INFO] [stderr] --> src/tunnel/frame.rs:52:1 [INFO] [stderr] | [INFO] [stderr] 52 | const DELIVERY_TYPE_LOCAL: u8 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DELIVERY_TYPE_TUNNEL` [INFO] [stderr] --> src/tunnel/frame.rs:53:1 [INFO] [stderr] | [INFO] [stderr] 53 | const DELIVERY_TYPE_TUNNEL: u8 = 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DELIVERY_TYPE_ROUTER` [INFO] [stderr] --> src/tunnel/frame.rs:54:1 [INFO] [stderr] | [INFO] [stderr] 54 | const DELIVERY_TYPE_ROUTER: u8 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gen_first_frag_di` [INFO] [stderr] --> src/tunnel/frame.rs:89:4 [INFO] [stderr] | [INFO] [stderr] 89 | fn gen_first_frag_di<'a>( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gen_follow_on_frag_di` [INFO] [stderr] --> src/tunnel/frame.rs:145:4 [INFO] [stderr] | [INFO] [stderr] 145 | fn gen_follow_on_frag_di<'a>( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gen_tmdi` [INFO] [stderr] --> src/tunnel/frame.rs:174:4 [INFO] [stderr] | [INFO] [stderr] 174 | fn gen_tmdi<'a>( [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gen_tmdi_fragment_pair` [INFO] [stderr] --> src/tunnel/frame.rs:199:4 [INFO] [stderr] | [INFO] [stderr] 199 | fn gen_tmdi_fragment_pair<'a>( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gen_tunnel_message` [INFO] [stderr] --> src/tunnel/frame.rs:209:4 [INFO] [stderr] | [INFO] [stderr] 209 | fn gen_tunnel_message<'a>( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Local` [INFO] [stderr] --> src/tunnel.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | Local, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Tunnel` [INFO] [stderr] --> src/tunnel.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | Tunnel(TunnelId, Hash), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Router` [INFO] [stderr] --> src/tunnel.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | Router(Hash), [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `First` [INFO] [stderr] --> src/tunnel.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | First(FirstFragmentDeliveryInstructions), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `FollowOn` [INFO] [stderr] --> src/tunnel.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | FollowOn(FollowOnFragmentDeliveryInstructions), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `byte_len` [INFO] [stderr] --> src/tunnel.rs:79:8 [INFO] [stderr] | [INFO] [stderr] 79 | fn byte_len(&self) -> usize { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `byte_len` [INFO] [stderr] --> src/tunnel.rs:105:8 [INFO] [stderr] | [INFO] [stderr] 105 | fn byte_len(&self) -> usize { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/router/builder.rs:114:34 [INFO] [stderr] | [INFO] [stderr] 114 | Err(e) => panic!(e), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_fmt_panic)]` on by default [INFO] [stderr] = note: this is no longer accepted in Rust 2021 [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 114 | Err(e) => panic!("{}", e), [INFO] [stderr] | ^^^^^ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 114 | Err(e) => std::panic::panic_any(e), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/router/builder.rs:169:30 [INFO] [stderr] | [INFO] [stderr] 169 | Err(e) => panic!(e), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this is no longer accepted in Rust 2021 [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 169 | Err(e) => panic!("{}", e), [INFO] [stderr] | ^^^^^ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 169 | Err(e) => std::panic::panic_any(e), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 49 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: lint `intra_doc_link_resolution_failure` has been removed: use `rustdoc::broken_intra_doc_links` instead [INFO] [stderr] --> src/lib.rs:6:9 [INFO] [stderr] | [INFO] [stderr] 6 | #![deny(intra_doc_link_resolution_failure)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/crypto/mod.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unknown_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/crypto/mod.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/data/mod.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 25 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `double_parens` [INFO] [stderr] --> src/i2np/mod.rs:22:9 [INFO] [stderr] | [INFO] [stderr] 22 | #[allow(double_parens)] [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/i2np/mod.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 23 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/transport/ntcp/mod.rs:37:9 [INFO] [stderr] | [INFO] [stderr] 37 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `double_parens` [INFO] [stderr] --> src/transport/ntcp/handshake/mod.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 19 | #[allow(double_parens)] [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/transport/ntcp/handshake/mod.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `enum_variant_names` [INFO] [stderr] --> src/transport/ntcp/handshake/mod.rs:528:9 [INFO] [stderr] | [INFO] [stderr] 528 | #[allow(enum_variant_names)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `enum_variant_names` [INFO] [stderr] --> src/transport/ntcp/handshake/mod.rs:695:9 [INFO] [stderr] | [INFO] [stderr] 695 | #[allow(enum_variant_names)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> src/transport/ntcp2/mod.rs:70:9 [INFO] [stderr] | [INFO] [stderr] 70 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `enum_variant_names` [INFO] [stderr] --> src/transport/ntcp2/handshake/mod.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | #[allow(enum_variant_names)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> src/crypto/elgamal.rs:286:10 [INFO] [stderr] | [INFO] [stderr] 286 | }; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> src/crypto/mod.rs:666:10 [INFO] [stderr] | [INFO] [stderr] 666 | }; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/transport/ntcp2/frame.rs:282:30 [INFO] [stderr] | [INFO] [stderr] 282 | named!(pub session_confirmed<(Frame)>, call!(frame)); [INFO] [stderr] | ^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> src/transport/session.rs:133:17 [INFO] [stderr] | [INFO] [stderr] 133 | type Item = (SessionRefs); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key` [INFO] [stderr] --> src/data/dest.rs:176:13 [INFO] [stderr] | [INFO] [stderr] 176 | let key = dest.hash(); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ctx` [INFO] [stderr] --> src/netdb/mock.rs:18:16 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn new(ctx: Arc, client_rx: mpsc::UnboundedReceiver) -> Self { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_ctx` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `timeout_ms` [INFO] [stderr] --> src/netdb/mock.rs:38:50 [INFO] [stderr] | [INFO] [stderr] 38 | Query::LookupRouterInfo(key, timeout_ms, from_peer, ret) => ret [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timeout_ms` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `from_peer` [INFO] [stderr] --> src/netdb/mock.rs:38:62 [INFO] [stderr] | [INFO] [stderr] 38 | Query::LookupRouterInfo(key, timeout_ms, from_peer, ret) => ret [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_peer` [INFO] [stderr] [INFO] [stderr] warning: field is never read: `private_key` [INFO] [stderr] --> src/data/dest.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | private_key: PrivateKey, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `TUNNEL_REJECT_PROBABALISTIC_REJECT` [INFO] [stderr] --> src/tunnel/acceptor.rs:35:1 [INFO] [stderr] | [INFO] [stderr] 35 | const TUNNEL_REJECT_PROBABALISTIC_REJECT: u8 = 10; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `TUNNEL_REJECT_TRANSIENT_OVERLOAD` [INFO] [stderr] --> src/tunnel/acceptor.rs:36:1 [INFO] [stderr] | [INFO] [stderr] 36 | const TUNNEL_REJECT_TRANSIENT_OVERLOAD: u8 = 20; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `TUNNEL_REJECT_BANDWIDTH` [INFO] [stderr] --> src/tunnel/acceptor.rs:37:1 [INFO] [stderr] | [INFO] [stderr] 37 | const TUNNEL_REJECT_BANDWIDTH: u8 = 30; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/router/builder.rs:114:34 [INFO] [stderr] | [INFO] [stderr] 114 | Err(e) => panic!(e), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_fmt_panic)]` on by default [INFO] [stderr] = note: this is no longer accepted in Rust 2021 [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 114 | Err(e) => panic!("{}", e), [INFO] [stderr] | ^^^^^ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 114 | Err(e) => std::panic::panic_any(e), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/router/builder.rs:169:30 [INFO] [stderr] | [INFO] [stderr] 169 | Err(e) => panic!(e), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this is no longer accepted in Rust 2021 [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 169 | Err(e) => panic!("{}", e), [INFO] [stderr] | ^^^^^ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 169 | Err(e) => std::panic::panic_any(e), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 27 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.29s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/ire-e8374f7d816e8c51) [INFO] [stdout] [INFO] [stdout] running 71 tests [INFO] [stdout] test crypto::math::tests::rectify_one ... ok [INFO] [stdout] test crypto::math::tests::rectify_value ... ok [INFO] [stdout] test crypto::math::tests::rectify_zero ... ok [INFO] [stdout] test data::dest::tests::dest_hash ... ok [INFO] [stdout] test data::tests::router_identity_hash ... ok [INFO] [stdout] test data::tests::i2pstring_to_csv ... ok [INFO] [stdout] test crypto::tests::test_sig_type_extra_data_len ... ok [INFO] [stdout] test data::tests::router_address_options ... ok [INFO] [stdout] test data::frame::tests::test_router_info ... ok [INFO] [stdout] test data::tests::hash_xor ... ok [INFO] [stdout] test crypto::tests::test_sig_type_pad_len ... ok [INFO] [stdout] test crypto::tests::aes_256_cbc_test_vectors ... ok [INFO] [stdout] test i2np::frame::tests::test_build_request_record_flags ... ok [INFO] [stdout] test file::tests::reseed_http_errors ... ok [INFO] [stdout] test data::tests::router_info_verify_sigtype_1 ... ok [INFO] [stdout] test data::tests::router_info_verify_sigtype_7 ... ok [INFO] [stdout] test i2np::frame::tests::test_build_request_record ... ok [INFO] [stdout] test i2np::frame::tests::test_database_lookup_flags ... ok [INFO] [stdout] test i2np::frame::tests::test_validate_checksum ... ok [INFO] [stdout] test i2np::frame::tests::test_ntcp2_message ... ok [INFO] [stdout] test data::tests::router_info_verify_sigtype_2 ... ok [INFO] [stdout] test i2np::frame::tests::test_build_response_record ... ok [INFO] [stdout] test i2np::frame::tests::test_gen_checksum ... ok [INFO] [stdout] test i2np::tests::message_ntcp2_size ... ok [INFO] [stdout] test i2np::tests::message_size ... ok [INFO] [stdout] test transport::ntcp2::frame::tests::test_message ... ok [INFO] [stdout] test transport::ntcp2::frame::tests::test_options ... ok [INFO] [stdout] test transport::ntcp2::frame::tests::test_padding ... ok [INFO] [stdout] test netdb::tests::xor_metric ... ok [INFO] [stdout] test transport::ntcp2::frame::tests::test_datetime ... ok [INFO] [stdout] test transport::ntcp2::frame::tests::test_router_info ... ok [INFO] [stdout] test transport::ntcp2::frame::tests::test_session_created ... ok [INFO] [stdout] test transport::ntcp2::frame::tests::test_termination ... ok [INFO] [stdout] test transport::ntcp2::frame::tests::test_session_request ... ok [INFO] [stdout] test transport::ntcp2::frame::tests::test_unknown ... ok [INFO] [stdout] test i2np::frame::tests::test_message ... ok [INFO] [stdout] test transport::ntcp::frame::tests::gen_timestamp_frame_small_buffer ... ok [INFO] [stdout] test transport::ntcp::frame::tests::gen_timestamp_frame_valid ... ok [INFO] [stdout] test transport::ntcp::frame::tests::get_adler_standard ... ok [INFO] [stdout] test transport::ntcp::frame::tests::get_adler_standard_long ... ok [INFO] [stdout] test transport::ntcp::frame::tests::get_adler_timesync ... ok [INFO] [stdout] test transport::ntcp::frame::tests::test_adler ... ok [INFO] [stdout] test file::tests::reseed_file ... ok [INFO] [stdout] test data::tests::router_info_sign ... ok [INFO] [stdout] test netdb::tests::ri_expiry ... ok [INFO] [stdout] test transport::tests::manager_addresses ... ok [INFO] [stdout] test tunnel::acceptor::tests::accepted_intermediate_build_request ... ignored [INFO] [stdout] test tunnel::acceptor::tests::build_request_loop_detection_adjacent ... ignored [INFO] [stdout] test tunnel::acceptor::tests::build_request_loop_detection_cycle ... ignored [INFO] [stdout] test tunnel::encryption::tests::round_trip ... ok [INFO] [stdout] test tunnel::frame::tests::test_first_frag_di ... ok [INFO] [stdout] test tunnel::frame::tests::test_follow_on_frag_di ... ok [INFO] [stdout] test data::tests::router_info_address ... ok [INFO] [stdout] test tunnel::frame::tests::test_gen_checksum ... ok [INFO] [stdout] test tunnel::frame::tests::test_validate_checksum ... ok [INFO] [stdout] test util::tests::decaying_bloom_filter ... ok [INFO] [stdout] test tunnel::frame::tests::test_tunnel_message ... ok [INFO] [stdout] test transport::ntcp2::tests::session_receive ... ok [INFO] [stdout] test transport::ntcp2::tests::session_send ... ok [INFO] [stdout] test transport::ntcp::tests::session_receive ... ok [INFO] [stdout] test crypto::dh::tests::build_session_key ... ok [INFO] [stdout] test transport::ntcp::tests::session_send ... ok [INFO] [stdout] test netdb::tests::store_and_retrieve ... ok [INFO] [stdout] test data::dest::tests::ls_sign ... ok [INFO] [stdout] test transport::ntcp2::handshake::tests::ntcp2_handshake ... ok [INFO] [stdout] test i2np::tests::build_request_record_encryption ... ok [INFO] [stdout] test crypto::dsa::tests::random_signatures has been running for over 60 seconds [INFO] [stdout] test crypto::elgamal::tests::round_trip has been running for over 60 seconds [INFO] [stdout] test crypto::elgamal::tests::round_trip_basic has been running for over 60 seconds [INFO] [stdout] test crypto::elgamal::tests::test_vectors has been running for over 60 seconds [INFO] [stdout] test transport::ntcp::handshake::tests::ntcp_handshake has been running for over 60 seconds [INFO] [stdout] test transport::ntcp::handshake::tests::ntcp_handshake ... ok [INFO] [stdout] test crypto::elgamal::tests::round_trip_basic ... ok [INFO] [stdout] test crypto::elgamal::tests::round_trip ... ok [INFO] [stdout] test crypto::elgamal::tests::test_vectors ... ok [INFO] [stdout] test crypto::dsa::tests::random_signatures ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 68 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 175.67s [INFO] [stdout] [INFO] [stderr] Doc-tests ire [INFO] [stderr] warning: lint `intra_doc_link_resolution_failure` has been renamed to `rustdoc::broken_intra_doc_links` [INFO] [stderr] --> /opt/rustwide/workdir/src/lib.rs:6:9 [INFO] [stderr] | [INFO] [stderr] 6 | #![deny(intra_doc_link_resolution_failure)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use the new name: `rustdoc::broken_intra_doc_links` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> /opt/rustwide/workdir/src/crypto/mod.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unknown_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> /opt/rustwide/workdir/src/crypto/mod.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> /opt/rustwide/workdir/src/data/mod.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 25 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `double_parens` [INFO] [stderr] --> /opt/rustwide/workdir/src/i2np/mod.rs:22:9 [INFO] [stderr] | [INFO] [stderr] 22 | #[allow(double_parens)] [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> /opt/rustwide/workdir/src/i2np/mod.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 23 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> /opt/rustwide/workdir/src/transport/ntcp/mod.rs:37:9 [INFO] [stderr] | [INFO] [stderr] 37 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `double_parens` [INFO] [stderr] --> /opt/rustwide/workdir/src/transport/ntcp/handshake/mod.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 19 | #[allow(double_parens)] [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> /opt/rustwide/workdir/src/transport/ntcp/handshake/mod.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `enum_variant_names` [INFO] [stderr] --> /opt/rustwide/workdir/src/transport/ntcp/handshake/mod.rs:528:9 [INFO] [stderr] | [INFO] [stderr] 528 | #[allow(enum_variant_names)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `enum_variant_names` [INFO] [stderr] --> /opt/rustwide/workdir/src/transport/ntcp/handshake/mod.rs:695:9 [INFO] [stderr] | [INFO] [stderr] 695 | #[allow(enum_variant_names)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `needless_pass_by_value` [INFO] [stderr] --> /opt/rustwide/workdir/src/transport/ntcp2/mod.rs:70:9 [INFO] [stderr] | [INFO] [stderr] 70 | #[allow(needless_pass_by_value)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unknown lint: `enum_variant_names` [INFO] [stderr] --> /opt/rustwide/workdir/src/transport/ntcp2/handshake/mod.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | #[allow(enum_variant_names)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> /opt/rustwide/workdir/src/transport/ntcp2/frame.rs:282:30 [INFO] [stderr] | [INFO] [stderr] 282 | named!(pub session_confirmed<(Frame)>, call!(frame)); [INFO] [stderr] | ^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> /opt/rustwide/workdir/src/transport/session.rs:133:17 [INFO] [stderr] | [INFO] [stderr] 133 | type Item = (SessionRefs); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: 15 warnings emitted [INFO] [stderr] [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" "f4ea62de1aa8a31a7d46a35d1666894bbce2966250ab853000d81442a306023d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f4ea62de1aa8a31a7d46a35d1666894bbce2966250ab853000d81442a306023d", kill_on_drop: false }` [INFO] [stdout] f4ea62de1aa8a31a7d46a35d1666894bbce2966250ab853000d81442a306023d