[INFO] cloning repository https://github.com/simonsolnes/website [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/simonsolnes/website" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsimonsolnes%2Fwebsite", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsimonsolnes%2Fwebsite'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 013fd9e86c1879392402c986effe1e5096de187f [INFO] checking simonsolnes/website against master#a42d94ebb883116f2867cbe3016d9bde9ca6d3f7 for pr-117593 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsimonsolnes%2Fwebsite" "/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/simonsolnes/website on toolchain a42d94ebb883116f2867cbe3016d9bde9ca6d3f7 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a42d94ebb883116f2867cbe3016d9bde9ca6d3f7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/simonsolnes/website [INFO] finished tweaking git repo https://github.com/simonsolnes/website [INFO] tweaked toml for git repo https://github.com/simonsolnes/website written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/simonsolnes/website 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" "+a42d94ebb883116f2867cbe3016d9bde9ca6d3f7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [ERROR] this task or one of its parent failed! [ERROR] no output for 300 seconds [ERROR] note: run with `RUST_BACKTRACE=1` to display a backtrace. [INFO] checking simonsolnes/website against try#031b389f0c31c0f91c9464d26313ae513dbe8d36 for pr-117593 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsimonsolnes%2Fwebsite" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/simonsolnes/website on toolchain 031b389f0c31c0f91c9464d26313ae513dbe8d36 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+031b389f0c31c0f91c9464d26313ae513dbe8d36" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/simonsolnes/website [INFO] finished tweaking git repo https://github.com/simonsolnes/website [INFO] tweaked toml for git repo https://github.com/simonsolnes/website written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/simonsolnes/website 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" "+031b389f0c31c0f91c9464d26313ae513dbe8d36" "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-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:0c7e0e8312ad82a1bed3696438480b7da990d348377d3754e1cd95b06a8a36c7" "/opt/rustwide/cargo-home/bin/cargo" "+031b389f0c31c0f91c9464d26313ae513dbe8d36" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 31c1290e4fc1819887194fba167ce6581e664986e9265356ad0331e5ccc52aba [INFO] running `Command { std: "docker" "start" "-a" "31c1290e4fc1819887194fba167ce6581e664986e9265356ad0331e5ccc52aba", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "31c1290e4fc1819887194fba167ce6581e664986e9265356ad0331e5ccc52aba", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "31c1290e4fc1819887194fba167ce6581e664986e9265356ad0331e5ccc52aba", kill_on_drop: false }` [INFO] [stdout] 31c1290e4fc1819887194fba167ce6581e664986e9265356ad0331e5ccc52aba [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" "-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:0c7e0e8312ad82a1bed3696438480b7da990d348377d3754e1cd95b06a8a36c7" "/opt/rustwide/cargo-home/bin/cargo" "+031b389f0c31c0f91c9464d26313ae513dbe8d36" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6d4ef8eb0b59515d8fff6fd4ed35c4146315421f2417958bd0cd684a89537f12 [INFO] running `Command { std: "docker" "start" "-a" "6d4ef8eb0b59515d8fff6fd4ed35c4146315421f2417958bd0cd684a89537f12", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.5.0 [INFO] [stderr] Checking minimal-lexical v0.2.1 [INFO] [stderr] Checking nom v7.1.1 [INFO] [stderr] Checking website v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `parse::str::literal` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use parse::str::literal; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::primitives::unreserved` [INFO] [stdout] --> src/urlv2/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use self::primitives::unreserved; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `accept_limit`, `either3`, `either_of`, `either`, `map_option`, `repeat_any`, `take_while` [INFO] [stdout] --> src/urlv2/primitives.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | either, either3, either5, either_of, map, map_bool, map_option, map_result, [INFO] [stdout] | ^^^^^^ ^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 8 | repeat::{repeat_any, repeat_some}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 9 | sequence::{preceded, serial, serial3}, [INFO] [stdout] 10 | str::{char, digit, peek_char, pop, take, take_some_while, take_while}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 11 | tools::{accept_limit, halt}, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ret` [INFO] [stdout] --> src/urlv2/mod.rs:85:66 [INFO] [stdout] | [INFO] [stdout] 85 | use crate::parse::comb::{either, either3, either4, optional, ret}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `peek_char` [INFO] [stdout] --> src/urlv2/mod.rs:88:47 [INFO] [stdout] | [INFO] [stdout] 88 | use crate::parse::str::{alpha_char, char, peek_char, take_while}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `parse::str::literal` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use parse::str::literal; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::primitives::unreserved` [INFO] [stdout] --> src/urlv2/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use self::primitives::unreserved; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `accept_limit`, `either3`, `either_of`, `either`, `map_option`, `repeat_any`, `take_while` [INFO] [stdout] --> src/urlv2/primitives.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | either, either3, either5, either_of, map, map_bool, map_option, map_result, [INFO] [stdout] | ^^^^^^ ^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 8 | repeat::{repeat_any, repeat_some}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 9 | sequence::{preceded, serial, serial3}, [INFO] [stdout] 10 | str::{char, digit, peek_char, pop, take, take_some_while, take_while}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 11 | tools::{accept_limit, halt}, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ret` [INFO] [stdout] --> src/urlv2/mod.rs:85:66 [INFO] [stdout] | [INFO] [stdout] 85 | use crate::parse::comb::{either, either3, either4, optional, ret}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `peek_char` [INFO] [stdout] --> src/urlv2/mod.rs:88:47 [INFO] [stdout] | [INFO] [stdout] 88 | use crate::parse::str::{alpha_char, char, peek_char, take_while}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/parse/str.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn alpha_char<'a>(i: &'a str) -> impl Fn(&'a str) -> Parse<&'a str, char> { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index` is never read [INFO] [stdout] --> src/parse/str.rs:69:17 [INFO] [stdout] | [INFO] [stdout] 69 | let mut index = 0; [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: value assigned to `index` is never read [INFO] [stdout] --> src/parse/str.rs:105:17 [INFO] [stdout] | [INFO] [stdout] 105 | let mut index = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/parse/str.rs:6:23 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn alpha_char<'a>(i: &'a str) -> impl Fn(&'a str) -> Parse<&'a str, char> { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index` is never read [INFO] [stdout] --> src/parse/str.rs:69:17 [INFO] [stdout] | [INFO] [stdout] 69 | let mut index = 0; [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: value assigned to `index` is never read [INFO] [stdout] --> src/parse/str.rs:105:17 [INFO] [stdout] | [INFO] [stdout] 105 | let mut index = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/urlv2/mod.rs:158:18 [INFO] [stdout] | [INFO] [stdout] 158 | fn parse(i: &str) -> Parse<&str, Self> { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `serve` is never used [INFO] [stdout] --> src/main.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn serve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `handle_client` is never used [INFO] [stdout] --> src/main.rs:46:4 [INFO] [stdout] | [INFO] [stdout] 46 | fn handle_client(mut stream: TcpStream) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_heads` is never used [INFO] [stdout] --> src/http/parsers.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn parse_heads(stream: &mut TcpStream) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `space` is never used [INFO] [stdout] --> src/http/parsers.rs:138:8 [INFO] [stdout] | [INFO] [stdout] 138 | fn space(i: &[u8]) -> IResult<&[u8], &[u8]> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `letters` is never used [INFO] [stdout] --> src/http/parsers.rs:142:8 [INFO] [stdout] | [INFO] [stdout] 142 | fn letters(i: &[u8]) -> IResult<&[u8], &str> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `url` is never used [INFO] [stdout] --> src/http/parsers.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 145 | pub fn url(i: &[u8]) -> IResult<&[u8], &str> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_start_line` is never used [INFO] [stdout] --> src/http/parsers.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 149 | pub fn parse_start_line(i: &[u8]) -> IResult<&[u8], (String, String, String)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_header` is never used [INFO] [stdout] --> src/http/parsers.rs:162:12 [INFO] [stdout] | [INFO] [stdout] 162 | pub fn parse_header(i: &[u8]) -> IResult<&[u8], (String, &str)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_divider` is never used [INFO] [stdout] --> src/http/parsers.rs:174:12 [INFO] [stdout] | [INFO] [stdout] 174 | pub fn parse_divider(i: &[u8]) -> IResult<&[u8], &[u8]> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/json.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub enum JSON { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 16 | UnsignedInt(usize), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 17 | SignedInt(isize), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 18 | Float(f64), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 19 | String(String), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 20 | Bool(bool), [INFO] [stdout] | ^^^^ [INFO] [stdout] 21 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] 22 | Object(HashMap), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 23 | Array(Vec), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `JSON` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/json.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 26 | impl JSON { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 27 | fn parse(input: &str) -> Parse<&str, JSON> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `whitespace` is never used [INFO] [stdout] --> src/json.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | fn whitespace(i: &str) -> Parse<&str, &str> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `null` is never used [INFO] [stdout] --> src/json.rs:42:4 [INFO] [stdout] | [INFO] [stdout] 42 | fn null(i: &str) -> Parse<&str, JSON> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bool` is never used [INFO] [stdout] --> src/json.rs:46:4 [INFO] [stdout] | [INFO] [stdout] 46 | fn bool(i: &str) -> Parse<&str, JSON> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `value` is never used [INFO] [stdout] --> src/json.rs:53:4 [INFO] [stdout] | [INFO] [stdout] 53 | fn value(i: &str) -> Parse<&str, JSON> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `array` is never used [INFO] [stdout] --> src/json.rs:61:4 [INFO] [stdout] | [INFO] [stdout] 61 | fn array(i: &str) -> Parse<&str, JSON> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `object` is never used [INFO] [stdout] --> src/json.rs:69:4 [INFO] [stdout] | [INFO] [stdout] 69 | fn object(i: &str) -> Parse<&str, JSON> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `number` is never used [INFO] [stdout] --> src/json.rs:93:4 [INFO] [stdout] | [INFO] [stdout] 93 | fn number(i: &str) -> Parse<&str, JSON> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `string` is never used [INFO] [stdout] --> src/json.rs:167:4 [INFO] [stdout] | [INFO] [stdout] 167 | fn string(i: &str) -> Parse<&str, JSON> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_retreat`, `is_halt`, and `is_limit` are never used [INFO] [stdout] --> src/parse/mod.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Parse { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] 16 | pub fn is_retreat(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn is_halt(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn is_limit(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `either_of` is never used [INFO] [stdout] --> src/parse/comb.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn either_of(parsers: &[P]) -> impl Fn(I) -> Parse + '_ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pipe` is never used [INFO] [stdout] --> src/parse/comb.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn pipe(p1: P1, p2: P2) -> impl Fn(I) -> Parse [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `separated_items` is never used [INFO] [stdout] --> src/parse/repeat.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn separated_items( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `between` is never used [INFO] [stdout] --> src/parse/sequence.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn between( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `around` is never used [INFO] [stdout] --> src/parse/sequence.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn around( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `other_than` is never used [INFO] [stdout] --> src/parse/str.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | pub fn other_than(chars: &'static str) -> impl Fn(&str) -> Parse<&str, &str> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `literal` is never used [INFO] [stdout] --> src/parse/str.rs:141:8 [INFO] [stdout] | [INFO] [stdout] 141 | pub fn literal(expected: &'static str) -> impl Fn(&str) -> Parse<&str, &str> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `char_of` is never used [INFO] [stdout] --> src/parse/str.rs:167:8 [INFO] [stdout] | [INFO] [stdout] 167 | pub fn char_of(chars: &'static str) -> impl Fn(&str) -> Parse<&str, char> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `some_chars_of` is never used [INFO] [stdout] --> src/parse/str.rs:180:8 [INFO] [stdout] | [INFO] [stdout] 180 | pub fn some_chars_of(chars: &'static str) -> impl Fn(&str) -> Parse<&str, &str> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `label` is never used [INFO] [stdout] --> src/parse/tools.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn label(p: P, label: &'static str) -> impl Fn(I) -> Parse [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `accept_limit` is never used [INFO] [stdout] --> src/parse/tools.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn accept_limit(p: P) -> impl Fn(I) -> Parse [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Absolute` and `Authority` are never constructed [INFO] [stdout] --> src/url.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 20 | enum Target { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 21 | Origin(Absolute, Option), [INFO] [stdout] 22 | Absolute(URI), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 23 | Authority(Host), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Target` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Path` is never used [INFO] [stdout] --> src/urlv2/mod.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 8 | type Path = Vec; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Query` is never used [INFO] [stdout] --> src/urlv2/mod.rs:9:6 [INFO] [stdout] | [INFO] [stdout] 9 | type Query = HashMap; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Absolute` is never constructed [INFO] [stdout] --> src/urlv2/mod.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 13 | enum Target { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] 14 | // TODO Path [INFO] [stdout] 15 | Absolute(URI), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Target` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `IPv6Address` and `IPvFuture` are never constructed [INFO] [stdout] --> src/urlv2/mod.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 67 | enum IPLiteral { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 68 | IPv6Address, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 69 | IPvFuture, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `IPLiteral` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 45 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/urlv2/mod.rs:158:18 [INFO] [stdout] | [INFO] [stdout] 158 | fn parse(i: &str) -> Parse<&str, Self> { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `serve` is never used [INFO] [stdout] --> src/main.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn serve() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `handle_client` is never used [INFO] [stdout] --> src/main.rs:46:4 [INFO] [stdout] | [INFO] [stdout] 46 | fn handle_client(mut stream: TcpStream) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_heads` is never used [INFO] [stdout] --> src/http/parsers.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn parse_heads(stream: &mut TcpStream) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `space` is never used [INFO] [stdout] --> src/http/parsers.rs:138:8 [INFO] [stdout] | [INFO] [stdout] 138 | fn space(i: &[u8]) -> IResult<&[u8], &[u8]> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `letters` is never used [INFO] [stdout] --> src/http/parsers.rs:142:8 [INFO] [stdout] | [INFO] [stdout] 142 | fn letters(i: &[u8]) -> IResult<&[u8], &str> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `url` is never used [INFO] [stdout] --> src/http/parsers.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 145 | pub fn url(i: &[u8]) -> IResult<&[u8], &str> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_start_line` is never used [INFO] [stdout] --> src/http/parsers.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 149 | pub fn parse_start_line(i: &[u8]) -> IResult<&[u8], (String, String, String)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_header` is never used [INFO] [stdout] --> src/http/parsers.rs:162:12 [INFO] [stdout] | [INFO] [stdout] 162 | pub fn parse_header(i: &[u8]) -> IResult<&[u8], (String, &str)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_divider` is never used [INFO] [stdout] --> src/http/parsers.rs:174:12 [INFO] [stdout] | [INFO] [stdout] 174 | pub fn parse_divider(i: &[u8]) -> IResult<&[u8], &[u8]> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/json.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 26 | impl JSON { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 27 | fn parse(input: &str) -> Parse<&str, JSON> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pipe` is never used [INFO] [stdout] --> src/parse/comb.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn pipe(p1: P1, p2: P2) -> impl Fn(I) -> Parse [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `label` is never used [INFO] [stdout] --> src/parse/tools.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn label(p: P, label: &'static str) -> impl Fn(I) -> Parse [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `accept_limit` is never used [INFO] [stdout] --> src/parse/tools.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn accept_limit(p: P) -> impl Fn(I) -> Parse [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Absolute` and `Authority` are never constructed [INFO] [stdout] --> src/url.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 20 | enum Target { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 21 | Origin(Absolute, Option), [INFO] [stdout] 22 | Absolute(URI), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 23 | Authority(Host), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Target` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Path` is never used [INFO] [stdout] --> src/urlv2/mod.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 8 | type Path = Vec; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Query` is never used [INFO] [stdout] --> src/urlv2/mod.rs:9:6 [INFO] [stdout] | [INFO] [stdout] 9 | type Query = HashMap; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Absolute` is never constructed [INFO] [stdout] --> src/urlv2/mod.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 13 | enum Target { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] 14 | // TODO Path [INFO] [stdout] 15 | Absolute(URI), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Target` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `IPv6Address` and `IPvFuture` are never constructed [INFO] [stdout] --> src/urlv2/mod.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 67 | enum IPLiteral { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 68 | IPv6Address, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 69 | IPvFuture, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `IPLiteral` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 27 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.38s [INFO] running `Command { std: "docker" "inspect" "6d4ef8eb0b59515d8fff6fd4ed35c4146315421f2417958bd0cd684a89537f12", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6d4ef8eb0b59515d8fff6fd4ed35c4146315421f2417958bd0cd684a89537f12", kill_on_drop: false }` [INFO] [stdout] 6d4ef8eb0b59515d8fff6fd4ed35c4146315421f2417958bd0cd684a89537f12