[INFO] cloning repository https://github.com/econaxis/dns
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/econaxis/dns" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feconaxis%2Fdns", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feconaxis%2Fdns'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 17fb103bb774ca190364a96629a068369dca9706
[INFO] checking econaxis/dns against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feconaxis%2Fdns" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/econaxis/dns
[INFO] finished tweaking git repo https://github.com/econaxis/dns
[INFO] tweaked toml for git repo https://github.com/econaxis/dns written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/econaxis/dns on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/econaxis/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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f17bb1980ecc4206e1ee333ec25b48b631322f975fc4b9176f3d9cb82060a72f
[INFO] running `Command { std: "docker" "start" "-a" "f17bb1980ecc4206e1ee333ec25b48b631322f975fc4b9176f3d9cb82060a72f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f17bb1980ecc4206e1ee333ec25b48b631322f975fc4b9176f3d9cb82060a72f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f17bb1980ecc4206e1ee333ec25b48b631322f975fc4b9176f3d9cb82060a72f", kill_on_drop: false }`
[INFO] [stdout] f17bb1980ecc4206e1ee333ec25b48b631322f975fc4b9176f3d9cb82060a72f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dunmustuse_in_always_ok" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9c4f9f397788be6496e7c69b5bbd56be63f126ffa16405e4c2774810c011e5a0
[INFO] running `Command { std: "docker" "start" "-a" "9c4f9f397788be6496e7c69b5bbd56be63f126ffa16405e4c2774810c011e5a0", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.64
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]     Checking tap v1.0.1
[INFO] [stderr]     Checking funty v2.0.0
[INFO] [stderr]    Compiling toml_edit v0.19.13
[INFO] [stderr]     Checking lock_api v0.4.10
[INFO] [stderr]     Checking parking_lot_core v0.9.8
[INFO] [stderr]     Checking mio v0.8.8
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking wyz v0.5.1
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking bitvec v1.0.1
[INFO] [stderr]    Compiling quote v1.0.29
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling syn v2.0.25
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]    Compiling tokio-macros v2.1.0
[INFO] [stderr]    Compiling darling_core v0.14.4
[INFO] [stderr]     Checking tokio v1.29.1
[INFO] [stderr]    Compiling darling_macro v0.14.4
[INFO] [stderr]    Compiling darling v0.14.4
[INFO] [stderr]    Compiling deku_derive v0.16.0
[INFO] [stderr]     Checking deku v0.16.0
[INFO] [stderr]     Checking dns v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/dns/text.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dns::rtypes::RType`
[INFO] [stdout]  --> src/dns/text.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::dns::rtypes::RType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dns::name::DNSName`
[INFO] [stdout]  --> src/kv/ip.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::dns::name::DNSName;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/kv/ip.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | /         /// Question MUST HAVE qtype = A, qname = {num1}-{num2}-{num3}-{num4}.ip.henryn.ca
[INFO] [stdout] 19 | |         /// id is the question ID of the query that we must propagate to the response
[INFO] [stdout]    | |_________----------------------------------------------------------------------------^
[INFO] [stdout]    |           |
[INFO] [stdout]    |           rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/dns/text.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dns::rtypes::RType`
[INFO] [stdout]  --> src/dns/text.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::dns::rtypes::RType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::dns::name::DNSName`
[INFO] [stdout]  --> src/kv/ip.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::dns::name::DNSName;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/kv/ip.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | /         /// Question MUST HAVE qtype = A, qname = {num1}-{num2}-{num3}-{num4}.ip.henryn.ca
[INFO] [stdout] 19 | |         /// id is the question ID of the query that we must propagate to the response
[INFO] [stdout]    | |_________----------------------------------------------------------------------------^
[INFO] [stdout]    |           |
[INFO] [stdout]    |           rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `async_closure` has been stable since 1.85.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(async_closure)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `async_closure` has been stable since 1.85.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(async_closure)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/dns/text.rs:23:52
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn write(&self, output: &mut BitVec<u8, Msb0>, mut ctx: DNSNameCtxRtype) -> Result<(), deku::DekuError> {
[INFO] [stdout]    |                                                    ----^^^
[INFO] [stdout]    |                                                    |
[INFO] [stdout]    |                                                    help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kv`
[INFO] [stdout]   --> src/servers/shared.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let kv = ad.kv;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_kv`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qname`
[INFO] [stdout]   --> src/kv/ip1.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let qname = &question.qname;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_qname`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `inner` is never read
[INFO] [stdout]   --> src/nameserver/records.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Records {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 12 |     inner: Vec<DNSRecord>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Records` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Authority` and `Additional` are never constructed
[INFO] [stdout]   --> src/nameserver/records.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum ResponseSection {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] 17 |     Answer,
[INFO] [stdout] 18 |     Authority,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 19 |     Additional,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ResponseSection` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RecordItem` is never constructed
[INFO] [stdout]   --> src/nameserver/records.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct RecordItem<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/dns/text.rs:23:52
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn write(&self, output: &mut BitVec<u8, Msb0>, mut ctx: DNSNameCtxRtype) -> Result<(), deku::DekuError> {
[INFO] [stdout]    |                                                    ----^^^
[INFO] [stdout]    |                                                    |
[INFO] [stdout]    |                                                    help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `map_matching`, `query`, and `additional_section` are never used
[INFO] [stdout]   --> src/nameserver/records.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl Records {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn map_matching<'a>(&'a self, name: &'a DNSName) -> impl Iterator<Item = (&'a DNSRecord, NameCmp)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn query<'a>(&'a self, name: &'a DNSName, qtype: &'a RType) -> impl Iterator<Item = RecordItem<'a>> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     pub fn additional_section<'a>(&'a self, addl_name: &'a DNSName) -> impl Iterator<Item = RecordItem<'a>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Text` is never constructed
[INFO] [stdout]   --> src/dns/data.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum RData {
[INFO] [stdout]    |          ----- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 19 |     Text(DNSText)
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `try_get_name` is never used
[INFO] [stdout]   --> src/dns/data.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl RData {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] 23 |     pub fn try_get_name(&self) -> Option<&DNSName> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `len`, `getrev`, and `cmp` are never used
[INFO] [stdout]   --> src/dns/name.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl DNSName {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn len(&self) -> usize {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn getrev(&self, idx: usize) -> &str {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn cmp(&self, other: &Self) -> NameCmp {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NameCmp` is never used
[INFO] [stdout]    --> src/dns/name.rs:167:10
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub enum NameCmp {
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `build_from_record_iter` is never used
[INFO] [stdout]   --> src/dns/response.rs:40:19
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl Response {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub(crate) fn build_from_record_iter(id: u16, question: DNSQuestion, records: &Records, tcp: bool) -> Response {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `inner` is never read
[INFO] [stdout]   --> src/kv/mod.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct KvStore {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 35 |     inner: Storage,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `KvStore` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `query_put`, `query_get`, `build_response_internal`, and `build_response` are never used
[INFO] [stdout]    --> src/kv/mod.rs:73:12
[INFO] [stdout]     |
[INFO] [stdout]  72 | impl KvStore {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout]  73 |     pub fn query_put<'a>(&'a mut self, key: &str, value: &str, qtype: &'a RType) -> Vec<OwnedRecordItem> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn query_get<'a>(&'a self, name_str: &str, qtype: &'a RType) -> Vec<OwnedRecordItem> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     fn build_response_internal(&mut self, id: u16, question: DNSQuestion, tcp: bool) -> anyhow::Result<Response> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub fn build_response(&mut self, id: u16, question: DNSQuestion, tcp: bool) -> Response {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `IpAddr` is never used
[INFO] [stdout]  --> src/kv/ip1.rs:4:6
[INFO] [stdout]   |
[INFO] [stdout] 4 | type IpAddr = [u8; 4];
[INFO] [stdout]   |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Classic` is never constructed
[INFO] [stdout]  --> src/kv/ip1.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Classic {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `handle_write` and `handle_query` are never used
[INFO] [stdout]   --> src/kv/ip1.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Classic {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] 11 |     fn handle_write(&mut self, domain: String, ip: IpAddr) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn handle_query(&mut self, question: DNSQuestion) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kv`
[INFO] [stdout]   --> src/servers/shared.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let kv = ad.kv;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_kv`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: ControlFlow<Result<Infallible, Infallible>, usize>
[INFO] [stdout]    --> src/dns/name.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[derive(Debug, PartialEq, DekuRead, DekuWrite)]
[INFO] [stdout]     |                            ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<usize, Infallible>
[INFO] [stdout]    --> src/dns/name.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[derive(Debug, PartialEq, DekuRead, DekuWrite)]
[INFO] [stdout]     |                            ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the derive macro `DekuRead` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qname`
[INFO] [stdout]   --> src/kv/ip1.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let qname = &question.qname;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_qname`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: ControlFlow<Result<Infallible, Infallible>, usize>
[INFO] [stdout]    --> src/dns/name.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[derive(Debug, PartialEq, DekuRead, DekuWrite)]
[INFO] [stdout]     |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `inner` is never read
[INFO] [stdout]   --> src/nameserver/records.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Records {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 12 |     inner: Vec<DNSRecord>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Records` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Authority` and `Additional` are never constructed
[INFO] [stdout]   --> src/nameserver/records.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum ResponseSection {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] 17 |     Answer,
[INFO] [stdout] 18 |     Authority,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 19 |     Additional,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ResponseSection` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RecordItem` is never constructed
[INFO] [stdout]   --> src/nameserver/records.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct RecordItem<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `map_matching`, `query`, and `additional_section` are never used
[INFO] [stdout]   --> src/nameserver/records.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl Records {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn map_matching<'a>(&'a self, name: &'a DNSName) -> impl Iterator<Item = (&'a DNSRecord, NameCmp)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn query<'a>(&'a self, name: &'a DNSName, qtype: &'a RType) -> impl Iterator<Item = RecordItem<'a>> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     pub fn additional_section<'a>(&'a self, addl_name: &'a DNSName) -> impl Iterator<Item = RecordItem<'a>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Text` is never constructed
[INFO] [stdout]   --> src/dns/data.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum RData {
[INFO] [stdout]    |          ----- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 19 |     Text(DNSText)
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `try_get_name` is never used
[INFO] [stdout]   --> src/dns/data.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl RData {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] 23 |     pub fn try_get_name(&self) -> Option<&DNSName> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `build_from_record_iter` is never used
[INFO] [stdout]   --> src/dns/response.rs:40:19
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl Response {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub(crate) fn build_from_record_iter(id: u16, question: DNSQuestion, records: &Records, tcp: bool) -> Response {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `inner` is never read
[INFO] [stdout]   --> src/kv/mod.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct KvStore {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 35 |     inner: Storage,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `KvStore` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `query_put`, `query_get`, `build_response_internal`, and `build_response` are never used
[INFO] [stdout]    --> src/kv/mod.rs:73:12
[INFO] [stdout]     |
[INFO] [stdout]  72 | impl KvStore {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout]  73 |     pub fn query_put<'a>(&'a mut self, key: &str, value: &str, qtype: &'a RType) -> Vec<OwnedRecordItem> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn query_get<'a>(&'a self, name_str: &str, qtype: &'a RType) -> Vec<OwnedRecordItem> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     fn build_response_internal(&mut self, id: u16, question: DNSQuestion, tcp: bool) -> anyhow::Result<Response> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub fn build_response(&mut self, id: u16, question: DNSQuestion, tcp: bool) -> Response {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `IpAddr` is never used
[INFO] [stdout]  --> src/kv/ip1.rs:4:6
[INFO] [stdout]   |
[INFO] [stdout] 4 | type IpAddr = [u8; 4];
[INFO] [stdout]   |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Classic` is never constructed
[INFO] [stdout]  --> src/kv/ip1.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Classic {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `handle_write` and `handle_query` are never used
[INFO] [stdout]   --> src/kv/ip1.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Classic {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] 11 |     fn handle_write(&mut self, domain: String, ip: IpAddr) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn handle_query(&mut self, question: DNSQuestion) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `dns` (bin "dns") due to 3 previous errors; 22 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: this type will no longer be must used: ControlFlow<Result<Infallible, Infallible>, usize>
[INFO] [stdout]    --> src/dns/name.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[derive(Debug, PartialEq, DekuRead, DekuWrite)]
[INFO] [stdout]     |                            ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<usize, Infallible>
[INFO] [stdout]    --> src/dns/name.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[derive(Debug, PartialEq, DekuRead, DekuWrite)]
[INFO] [stdout]     |                            ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the derive macro `DekuRead` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: ControlFlow<Result<Infallible, Infallible>, usize>
[INFO] [stdout]    --> src/dns/name.rs:174:28
[INFO] [stdout]     |
[INFO] [stdout] 174 | #[derive(Debug, PartialEq, DekuRead, DekuWrite)]
[INFO] [stdout]     |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `dns` (bin "dns" test) due to 3 previous errors; 20 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "9c4f9f397788be6496e7c69b5bbd56be63f126ffa16405e4c2774810c011e5a0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9c4f9f397788be6496e7c69b5bbd56be63f126ffa16405e4c2774810c011e5a0", kill_on_drop: false }`
[INFO] [stdout] 9c4f9f397788be6496e7c69b5bbd56be63f126ffa16405e4c2774810c011e5a0
