[INFO] cloning repository https://github.com/TylerStanish/dns [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TylerStanish/dns" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTylerStanish%2Fdns", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTylerStanish%2Fdns'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] bb16ce0371ae5f1ea1d73430b67b5d6cf36035f1 [INFO] building TylerStanish/dns against master#11663cd3bfefef7d34e8f0892c250bf698049392+rustflags=-Dtail-expr-drop-order for pr-134523 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTylerStanish%2Fdns" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/TylerStanish/dns on toolchain 11663cd3bfefef7d34e8f0892c250bf698049392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/TylerStanish/dns [INFO] finished tweaking git repo https://github.com/TylerStanish/dns [INFO] tweaked toml for git repo https://github.com/TylerStanish/dns written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/TylerStanish/dns already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded uninitialized v0.0.2 [INFO] [stderr] Downloaded resize-slice v0.1.3 [INFO] [stderr] Downloaded pretty_assertions v0.6.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] cae4fd0e5ce5b198fb1345d44759a7bca4af0cffdf4b5d24ec6de45e3af5948d [INFO] running `Command { std: "docker" "start" "-a" "cae4fd0e5ce5b198fb1345d44759a7bca4af0cffdf4b5d24ec6de45e3af5948d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "cae4fd0e5ce5b198fb1345d44759a7bca4af0cffdf4b5d24ec6de45e3af5948d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cae4fd0e5ce5b198fb1345d44759a7bca4af0cffdf4b5d24ec6de45e3af5948d", kill_on_drop: false }` [INFO] [stdout] cae4fd0e5ce5b198fb1345d44759a7bca4af0cffdf4b5d24ec6de45e3af5948d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 288c135da9f8e9cc333f3b71a226cdf72c7bc0a820368cf015397ed83001b883 [INFO] running `Command { std: "docker" "start" "-a" "288c135da9f8e9cc333f3b71a226cdf72c7bc0a820368cf015397ed83001b883", kill_on_drop: false }` [INFO] [stderr] Compiling uninitialized v0.0.2 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling linked-hash-map v0.5.3 [INFO] [stderr] Compiling ttl_cache v0.5.1 [INFO] [stderr] Compiling yaml-rust v0.4.4 [INFO] [stderr] Compiling resize-slice v0.1.3 [INFO] [stderr] Compiling dns v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `ResponseCode` [INFO] [stdout] --> src/answer.rs:1:35 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::header::{ResourceType, ResponseCode}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FromBytes` [INFO] [stdout] --> src/answer.rs:3:63 [INFO] [stdout] | [INFO] [stdout] 3 | deserialize_domain_from_bytes, serialize_domain_to_bytes, FromBytes, ToBytes, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SoaInformation` and `extract_string` [INFO] [stdout] --> src/authority.rs:9:21 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::record::{extract_string, Record, SoaInformation}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::blocklist` [INFO] [stdout] --> src/client.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::blocklist; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ResourceType` [INFO] [stdout] --> src/client.rs:5:21 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::header::{ResourceType, ResponseCode}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::query::DnsQuery` [INFO] [stdout] --> src/client.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::query::DnsQuery; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SoaInformation` [INFO] [stdout] --> src/client.rs:8:40 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::record::{RecordInformation, SoaInformation}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `deserialize_domain_from_bytes` [INFO] [stdout] --> src/client.rs:10:95 [INFO] [stdout] | [INFO] [stdout] 10 | deserialize_ipv4_from_str, deserialize_ipv6_from_str, serialize_domain_to_bytes, ToBytes, deserialize_domain_from_bytes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ResourceType` [INFO] [stdout] --> src/packet.rs:2:32 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::header::{DnsHeader, ResourceType, ResponseCode}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ResponseCode` [INFO] [stdout] --> src/query.rs:1:35 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::header::{ResourceType, ResponseCode}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FromBytes` [INFO] [stdout] --> src/query.rs:3:63 [INFO] [stdout] | [INFO] [stdout] 3 | deserialize_domain_from_bytes, serialize_domain_to_bytes, FromBytes, ToBytes, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DnsHeader` [INFO] [stdout] --> src/resolvers.rs:2:21 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::header::{DnsHeader, ResourceType}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::header::ResponseCode` [INFO] [stdout] --> src/serialization.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::header::ResponseCode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::packet::DnsPacket` [INFO] [stdout] --> src/serialization.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::packet::DnsPacket; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ByteOrder` [INFO] [stdout] --> src/record.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | use byteorder::{ByteOrder, NetworkEndian, WriteBytesExt}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/header.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | _ => 0, // FIXME should this be 0? [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/header.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 19 | Self::Unused => 0, [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] 20 | Self::A => 1, [INFO] [stdout] | ------- matches some of the same values [INFO] [stdout] 21 | Self::NS => 2, [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] 22 | Self::CName => 5, [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 26 | _ => 0, // FIXME should this be 0? [INFO] [stdout] | ^ ...and 3 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `flags` is never read [INFO] [stdout] --> src/header.rs:192:17 [INFO] [stdout] | [INFO] [stdout] 192 | let mut flags = 0u16; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `code` [INFO] [stdout] --> src/query.rs:40:17 [INFO] [stdout] | [INFO] [stdout] 40 | Err(code) => return Err(DnsQuery::new()), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_code` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/authority.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl Authority { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 19 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_nameserver` is never used [INFO] [stdout] --> src/client.rs:178:4 [INFO] [stdout] | [INFO] [stdout] 178 | fn get_nameserver() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_error` is never used [INFO] [stdout] --> src/packet.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl DnsPacket { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn new_error(err: ResponseCode) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/record.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 47 | impl Record { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 48 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/record.rs:87:12 [INFO] [stdout] | [INFO] [stdout] 86 | impl SoaInformation { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 87 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/record.rs:141:12 [INFO] [stdout] | [INFO] [stdout] 140 | impl MXInformation { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 141 | pub fn new(preference: u16, exchange: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `stub_resolver` is never used [INFO] [stdout] --> src/resolvers.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn stub_resolver(_host: &str, req: packet::DnsPacket) -> packet::DnsPacket { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/packet.rs:45:35 [INFO] [stdout] | [INFO] [stdout] 45 | let original_bytes = bytes.clone(); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `[u8]` does not implement `Clone`, so calling `clone` on `&[u8]` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/serialization.rs:25:54 [INFO] [stdout] | [INFO] [stdout] 25 | res.append(&mut Vec::from(word.as_bytes().clone())); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `[u8]` does not implement `Clone`, so calling `clone` on `&[u8]` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.88s [INFO] running `Command { std: "docker" "inspect" "288c135da9f8e9cc333f3b71a226cdf72c7bc0a820368cf015397ed83001b883", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "288c135da9f8e9cc333f3b71a226cdf72c7bc0a820368cf015397ed83001b883", kill_on_drop: false }` [INFO] [stdout] 288c135da9f8e9cc333f3b71a226cdf72c7bc0a820368cf015397ed83001b883 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2d3435ea660f9a223f8b7065f00cc9b4ca5437728d265c944de58a013a6302aa [INFO] running `Command { std: "docker" "start" "-a" "2d3435ea660f9a223f8b7065f00cc9b4ca5437728d265c944de58a013a6302aa", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.72 [INFO] [stderr] Compiling ansi_term v0.11.0 [INFO] [stderr] Compiling remove_dir_all v0.5.3 [INFO] [stderr] Compiling difference v2.0.0 [INFO] [stderr] Compiling pretty_assertions v0.6.1 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling tempdir v0.3.7 [INFO] [stderr] Compiling dns v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `ResponseCode` [INFO] [stdout] --> src/answer.rs:1:35 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::header::{ResourceType, ResponseCode}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `extract_string` [INFO] [stdout] --> src/authority.rs:9:21 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::record::{extract_string, Record, SoaInformation}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `create_dir` and `remove_dir_all` [INFO] [stdout] --> src/authority.rs:91:19 [INFO] [stdout] | [INFO] [stdout] 91 | use std::fs::{create_dir, read_dir, remove_dir, remove_dir_all, File}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/authority.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 93 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::blocklist` [INFO] [stdout] --> src/client.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::blocklist; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `deserialize_domain_from_bytes` [INFO] [stdout] --> src/client.rs:10:95 [INFO] [stdout] | [INFO] [stdout] 10 | deserialize_ipv4_from_str, deserialize_ipv6_from_str, serialize_domain_to_bytes, ToBytes, deserialize_domain_from_bytes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `remove_file` [INFO] [stdout] --> src/client.rs:190:19 [INFO] [stdout] | [INFO] [stdout] 190 | use std::fs::{remove_file, File}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ResponseCode` [INFO] [stdout] --> src/query.rs:1:35 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::header::{ResourceType, ResponseCode}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DnsHeader` [INFO] [stdout] --> src/resolvers.rs:2:21 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::header::{DnsHeader, ResourceType}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::header::ResponseCode` [INFO] [stdout] --> src/serialization.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::header::ResponseCode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::packet::DnsPacket` [INFO] [stdout] --> src/serialization.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::packet::DnsPacket; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FromBytes` [INFO] [stdout] --> src/answer.rs:3:63 [INFO] [stdout] | [INFO] [stdout] 3 | deserialize_domain_from_bytes, serialize_domain_to_bytes, FromBytes, ToBytes, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FromBytes` [INFO] [stdout] --> src/query.rs:3:63 [INFO] [stdout] | [INFO] [stdout] 3 | deserialize_domain_from_bytes, serialize_domain_to_bytes, FromBytes, ToBytes, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ByteOrder` [INFO] [stdout] --> src/record.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | use byteorder::{ByteOrder, NetworkEndian, WriteBytesExt}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/header.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | _ => 0, // FIXME should this be 0? [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/header.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 19 | Self::Unused => 0, [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] 20 | Self::A => 1, [INFO] [stdout] | ------- matches some of the same values [INFO] [stdout] 21 | Self::NS => 2, [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] 22 | Self::CName => 5, [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 26 | _ => 0, // FIXME should this be 0? [INFO] [stdout] | ^ ...and 3 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `flags` is never read [INFO] [stdout] --> src/header.rs:192:17 [INFO] [stdout] | [INFO] [stdout] 192 | let mut flags = 0u16; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `code` [INFO] [stdout] --> src/query.rs:40:17 [INFO] [stdout] | [INFO] [stdout] 40 | Err(code) => return Err(DnsQuery::new()), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_code` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/record.rs:265:13 [INFO] [stdout] | [INFO] [stdout] 265 | let mut expected_mx_info = MXInformation::new(42, "mail.foo.com".to_owned()); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_nameserver` is never used [INFO] [stdout] --> src/client.rs:178:4 [INFO] [stdout] | [INFO] [stdout] 178 | fn get_nameserver() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_error` is never used [INFO] [stdout] --> src/packet.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl DnsPacket { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn new_error(err: ResponseCode) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `stub_resolver` is never used [INFO] [stdout] --> src/resolvers.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn stub_resolver(_host: &str, req: packet::DnsPacket) -> packet::DnsPacket { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/packet.rs:45:35 [INFO] [stdout] | [INFO] [stdout] 45 | let original_bytes = bytes.clone(); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `[u8]` does not implement `Clone`, so calling `clone` on `&[u8]` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/serialization.rs:25:54 [INFO] [stdout] | [INFO] [stdout] 25 | res.append(&mut Vec::from(word.as_bytes().clone())); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `[u8]` does not implement `Clone`, so calling `clone` on `&[u8]` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.47s [INFO] running `Command { std: "docker" "inspect" "2d3435ea660f9a223f8b7065f00cc9b4ca5437728d265c944de58a013a6302aa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2d3435ea660f9a223f8b7065f00cc9b4ca5437728d265c944de58a013a6302aa", kill_on_drop: false }` [INFO] [stdout] 2d3435ea660f9a223f8b7065f00cc9b4ca5437728d265c944de58a013a6302aa