[INFO] fetching crate zhou 0.1.2...
[INFO] testing zhou-0.1.2 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate zhou 0.1.2 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate zhou 0.1.2
[INFO] finished tweaking crates.io crate zhou 0.1.2
[INFO] tweaked toml for crates.io crate zhou 0.1.2 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate zhou 0.1.2 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate zhou 0.1.2 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" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 12ba2c6ef54ab4b844d81a5ba2d0656d8b2df4d4b8f0ff2faf10c2f748050f1a
[INFO] running `Command { std: "docker" "start" "12ba2c6ef54ab4b844d81a5ba2d0656d8b2df4d4b8f0ff2faf10c2f748050f1a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "12ba2c6ef54ab4b844d81a5ba2d0656d8b2df4d4b8f0ff2faf10c2f748050f1a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "12ba2c6ef54ab4b844d81a5ba2d0656d8b2df4d4b8f0ff2faf10c2f748050f1a" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "12ba2c6ef54ab4b844d81a5ba2d0656d8b2df4d4b8f0ff2faf10c2f748050f1a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "12ba2c6ef54ab4b844d81a5ba2d0656d8b2df4d4b8f0ff2faf10c2f748050f1a" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.43
[INFO] [stderr]    Compiling quote v1.0.21
[INFO] [stderr]    Compiling unicode-ident v1.0.3
[INFO] [stderr]    Compiling syn v1.0.99
[INFO] [stderr]    Compiling serde_derive v1.0.144
[INFO] [stderr]    Compiling libc v0.2.132
[INFO] [stderr]    Compiling serde v1.0.144
[INFO] [stderr]    Compiling anyhow v1.0.64
[INFO] [stderr]    Compiling itoa v1.0.3
[INFO] [stderr]    Compiling serde_json v1.0.85
[INFO] [stderr]    Compiling num_threads v0.1.6
[INFO] [stderr]    Compiling time-macros v0.2.4
[INFO] [stderr]    Compiling ryu v1.0.11
[INFO] [stderr]    Compiling httpdate v1.0.2
[INFO] [stderr]    Compiling ascii v1.0.0
[INFO] [stderr]    Compiling time v0.3.14
[INFO] [stderr]    Compiling zhou v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]    --> src/http.rs:133:11
[INFO] [stdout]     |
[INFO] [stdout] 133 |     #[cfg(feature = "log")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]    --> src/http.rs:138:11
[INFO] [stdout]     |
[INFO] [stdout] 138 |     #[cfg(feature = "log")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]    --> src/http.rs:182:11
[INFO] [stdout]     |
[INFO] [stdout] 182 |     #[cfg(feature = "log")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]    --> src/http.rs:187:11
[INFO] [stdout]     |
[INFO] [stdout] 187 |     #[cfg(feature = "log")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]   --> src/request.rs:39:15
[INFO] [stdout]    |
[INFO] [stdout] 39 |         #[cfg(feature = "log")]
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]   --> src/request.rs:56:15
[INFO] [stdout]    |
[INFO] [stdout] 56 |         #[cfg(feature = "log")]
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]   --> src/request.rs:32:23
[INFO] [stdout]    |
[INFO] [stdout] 32 |                 #[cfg(feature = "log")]
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/http.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let s = c.state.as_ref();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Header` is never constructed
[INFO] [stdout]    --> src/common.rs:153:12
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub struct Header {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_bytes` is never used
[INFO] [stdout]    --> src/common.rs:167:12
[INFO] [stdout]     |
[INFO] [stdout] 158 | impl Header {
[INFO] [stdout]     | ----------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn from_bytes<B1, B2>(header: B1, value: B2) -> Result<Header, ()>
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HeaderField` is never constructed
[INFO] [stdout]    --> src/common.rs:202:12
[INFO] [stdout]     |
[INFO] [stdout] 202 | pub struct HeaderField(AsciiString);
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_bytes`, `as_str`, and `equiv` are never used
[INFO] [stdout]    --> src/common.rs:205:12
[INFO] [stdout]     |
[INFO] [stdout] 204 | impl HeaderField {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 205 |     pub fn from_bytes<B>(bytes: B) -> Result<HeaderField, FromAsciiError<B>>
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 212 |     pub fn as_str(&self) -> &AsciiStr {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn equiv(&self, other: &'static str) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cfg` is never read
[INFO] [stdout]   --> src/http.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct HttpServer {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 15 |     addr: String,
[INFO] [stdout] 16 |     cfg: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handler404` is never used
[INFO] [stdout]   --> src/http.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn handler404<T>(c: &Context<Arc<T>>) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_and_parse_req_old` is never used
[INFO] [stdout]    --> src/http.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn build_and_parse_req_old(buf: Vec<u8>) -> crate::request::Request {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add` and `remove` are never used
[INFO] [stdout]   --> src/percent_encoding.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl AsciiSet {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub const fn add(&self, byte: u8) -> Self {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub const fn remove(&self, byte: u8) -> Self {
[INFO] [stdout]    |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CONTROLS` is never used
[INFO] [stdout]   --> src/percent_encoding.rs:99:11
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub const CONTROLS: &AsciiSet = &AsciiSet {
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NON_ALPHANUMERIC` is never used
[INFO] [stdout]    --> src/percent_encoding.rs:129:11
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub const NON_ALPHANUMERIC: &AsciiSet = &CONTROLS
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `percent_encode` is never used
[INFO] [stdout]    --> src/percent_encoding.rs:216:8
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub fn percent_encode<'a>(input: &'a [u8], ascii_set: &'static AsciiSet) -> PercentEncode<'a> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `utf8_percent_encode` is never used
[INFO] [stdout]    --> src/percent_encoding.rs:232:8
[INFO] [stdout]     |
[INFO] [stdout] 232 | pub fn utf8_percent_encode<'a>(input: &'a str, ascii_set: &'static AsciiSet) -> PercentEncode<'a> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `percent_decode_str` is never used
[INFO] [stdout]    --> src/percent_encoding.rs:310:8
[INFO] [stdout]     |
[INFO] [stdout] 310 | pub fn percent_decode_str(input: &str) -> PercentDecode {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `percent_decode` is never used
[INFO] [stdout]    --> src/percent_encoding.rs:333:8
[INFO] [stdout]     |
[INFO] [stdout] 333 | pub fn percent_decode(input: &[u8]) -> PercentDecode {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `version` is never read
[INFO] [stdout]   --> src/request.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Request {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     version: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Request` 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: enum `BodyType` is never used
[INFO] [stdout]   --> src/request.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub enum BodyType {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_wildcard` is never used
[INFO] [stdout]   --> src/request.rs:84:19
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Request {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 84 |     pub(crate) fn set_wildcard(&mut self, w: Option<String>) -> &Self {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `status_code` and `version` are never read
[INFO] [stdout]  --> src/response.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub(crate) struct Response {
[INFO] [stdout]   |                   -------- fields in this struct
[INFO] [stdout] 8 |     pub status_code: u16,
[INFO] [stdout]   |         ^^^^^^^^^^^
[INFO] [stdout] 9 |     pub version: String,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `status` is never used
[INFO] [stdout]   --> src/response.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Response {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn status(&mut self, code: u16) -> &Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/percent_encoding.rs:310:34
[INFO] [stdout]     |
[INFO] [stdout] 310 | pub fn percent_decode_str(input: &str) -> PercentDecode {
[INFO] [stdout]     |                                  ^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 310 | pub fn percent_decode_str(input: &str) -> PercentDecode<'_> {
[INFO] [stdout]     |                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/percent_encoding.rs:333:30
[INFO] [stdout]     |
[INFO] [stdout] 333 | pub fn percent_decode(input: &[u8]) -> PercentDecode {
[INFO] [stdout]     |                              ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 333 | pub fn percent_decode(input: &[u8]) -> PercentDecode<'_> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous wide pointer comparison, the comparison includes metadata which may not be expected
[INFO] [stdout]    --> src/percent_encoding.rs:424:27
[INFO] [stdout]     |
[INFO] [stdout] 424 |             debug_assert!(raw_utf8 == &*bytes as *const [u8]);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(ambiguous_wide_pointer_comparisons)]` on by default
[INFO] [stdout] help: use `std::ptr::addr_eq` or untyped pointers to only compare their addresses
[INFO] [stdout]     |
[INFO] [stdout] 424 -             debug_assert!(raw_utf8 == &*bytes as *const [u8]);
[INFO] [stdout] 424 +             debug_assert!(std::ptr::addr_eq(raw_utf8, &*bytes as *const [u8]));
[INFO] [stdout]     |
[INFO] [stdout] help: use explicit `std::ptr::eq` method to compare metadata and addresses
[INFO] [stdout]     |
[INFO] [stdout] 424 -             debug_assert!(raw_utf8 == &*bytes as *const [u8]);
[INFO] [stdout] 424 +             debug_assert!(std::ptr::eq(raw_utf8, &*bytes as *const [u8]));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/main.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let s = c.state.as_ref();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `db` is never read
[INFO] [stdout]   --> src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct MyState {
[INFO] [stdout]    |        ------- field in this struct
[INFO] [stdout] 16 |     pub c: Mutex<i32>,
[INFO] [stdout] 17 |     db: String,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `httpdate`
[INFO] [stderr]  --> Cargo.toml:7:15
[INFO] [stderr]   |
[INFO] [stderr] 7 | [dependencies.httpdate]
[INFO] [stderr]   |               ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `httpdate`
[INFO] [stderr] warning: `zhou` (manifest) generated 1 warning
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 15.49s
[INFO] running `Command { std: "docker" "inspect" "12ba2c6ef54ab4b844d81a5ba2d0656d8b2df4d4b8f0ff2faf10c2f748050f1a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "12ba2c6ef54ab4b844d81a5ba2d0656d8b2df4d4b8f0ff2faf10c2f748050f1a" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling zhou v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]    --> src/http.rs:133:11
[INFO] [stdout]     |
[INFO] [stdout] 133 |     #[cfg(feature = "log")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]    --> src/http.rs:138:11
[INFO] [stdout]     |
[INFO] [stdout] 138 |     #[cfg(feature = "log")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]    --> src/http.rs:182:11
[INFO] [stdout]     |
[INFO] [stdout] 182 |     #[cfg(feature = "log")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]    --> src/http.rs:187:11
[INFO] [stdout]     |
[INFO] [stdout] 187 |     #[cfg(feature = "log")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]   --> src/request.rs:39:15
[INFO] [stdout]    |
[INFO] [stdout] 39 |         #[cfg(feature = "log")]
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]   --> src/request.rs:56:15
[INFO] [stdout]    |
[INFO] [stdout] 56 |         #[cfg(feature = "log")]
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]   --> src/request.rs:32:23
[INFO] [stdout]    |
[INFO] [stdout] 32 |                 #[cfg(feature = "log")]
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/http.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let s = c.state.as_ref();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Header` is never constructed
[INFO] [stdout]    --> src/common.rs:153:12
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub struct Header {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_bytes` is never used
[INFO] [stdout]    --> src/common.rs:167:12
[INFO] [stdout]     |
[INFO] [stdout] 158 | impl Header {
[INFO] [stdout]     | ----------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn from_bytes<B1, B2>(header: B1, value: B2) -> Result<Header, ()>
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HeaderField` is never constructed
[INFO] [stdout]    --> src/common.rs:202:12
[INFO] [stdout]     |
[INFO] [stdout] 202 | pub struct HeaderField(AsciiString);
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_bytes`, `as_str`, and `equiv` are never used
[INFO] [stdout]    --> src/common.rs:205:12
[INFO] [stdout]     |
[INFO] [stdout] 204 | impl HeaderField {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 205 |     pub fn from_bytes<B>(bytes: B) -> Result<HeaderField, FromAsciiError<B>>
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 212 |     pub fn as_str(&self) -> &AsciiStr {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn equiv(&self, other: &'static str) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cfg` is never read
[INFO] [stdout]   --> src/http.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct HttpServer {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 15 |     addr: String,
[INFO] [stdout] 16 |     cfg: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handler404` is never used
[INFO] [stdout]   --> src/http.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn handler404<T>(c: &Context<Arc<T>>) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_and_parse_req_old` is never used
[INFO] [stdout]    --> src/http.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn build_and_parse_req_old(buf: Vec<u8>) -> crate::request::Request {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add` and `remove` are never used
[INFO] [stdout]   --> src/percent_encoding.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl AsciiSet {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub const fn add(&self, byte: u8) -> Self {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub const fn remove(&self, byte: u8) -> Self {
[INFO] [stdout]    |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CONTROLS` is never used
[INFO] [stdout]   --> src/percent_encoding.rs:99:11
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub const CONTROLS: &AsciiSet = &AsciiSet {
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NON_ALPHANUMERIC` is never used
[INFO] [stdout]    --> src/percent_encoding.rs:129:11
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub const NON_ALPHANUMERIC: &AsciiSet = &CONTROLS
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `percent_encode` is never used
[INFO] [stdout]    --> src/percent_encoding.rs:216:8
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub fn percent_encode<'a>(input: &'a [u8], ascii_set: &'static AsciiSet) -> PercentEncode<'a> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `utf8_percent_encode` is never used
[INFO] [stdout]    --> src/percent_encoding.rs:232:8
[INFO] [stdout]     |
[INFO] [stdout] 232 | pub fn utf8_percent_encode<'a>(input: &'a str, ascii_set: &'static AsciiSet) -> PercentEncode<'a> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `percent_decode_str` is never used
[INFO] [stdout]    --> src/percent_encoding.rs:310:8
[INFO] [stdout]     |
[INFO] [stdout] 310 | pub fn percent_decode_str(input: &str) -> PercentDecode {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `percent_decode` is never used
[INFO] [stdout]    --> src/percent_encoding.rs:333:8
[INFO] [stdout]     |
[INFO] [stdout] 333 | pub fn percent_decode(input: &[u8]) -> PercentDecode {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `version` is never read
[INFO] [stdout]   --> src/request.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Request {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     version: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Request` 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: enum `BodyType` is never used
[INFO] [stdout]   --> src/request.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub enum BodyType {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_wildcard` is never used
[INFO] [stdout]   --> src/request.rs:84:19
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Request {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 84 |     pub(crate) fn set_wildcard(&mut self, w: Option<String>) -> &Self {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `status_code` and `version` are never read
[INFO] [stdout]  --> src/response.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub(crate) struct Response {
[INFO] [stdout]   |                   -------- fields in this struct
[INFO] [stdout] 8 |     pub status_code: u16,
[INFO] [stdout]   |         ^^^^^^^^^^^
[INFO] [stdout] 9 |     pub version: String,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `status` is never used
[INFO] [stdout]   --> src/response.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Response {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn status(&mut self, code: u16) -> &Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/percent_encoding.rs:310:34
[INFO] [stdout]     |
[INFO] [stdout] 310 | pub fn percent_decode_str(input: &str) -> PercentDecode {
[INFO] [stdout]     |                                  ^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 310 | pub fn percent_decode_str(input: &str) -> PercentDecode<'_> {
[INFO] [stdout]     |                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/percent_encoding.rs:333:30
[INFO] [stdout]     |
[INFO] [stdout] 333 | pub fn percent_decode(input: &[u8]) -> PercentDecode {
[INFO] [stdout]     |                              ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 333 | pub fn percent_decode(input: &[u8]) -> PercentDecode<'_> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous wide pointer comparison, the comparison includes metadata which may not be expected
[INFO] [stdout]    --> src/percent_encoding.rs:424:27
[INFO] [stdout]     |
[INFO] [stdout] 424 |             debug_assert!(raw_utf8 == &*bytes as *const [u8]);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(ambiguous_wide_pointer_comparisons)]` on by default
[INFO] [stdout] help: use `std::ptr::addr_eq` or untyped pointers to only compare their addresses
[INFO] [stdout]     |
[INFO] [stdout] 424 -             debug_assert!(raw_utf8 == &*bytes as *const [u8]);
[INFO] [stdout] 424 +             debug_assert!(std::ptr::addr_eq(raw_utf8, &*bytes as *const [u8]));
[INFO] [stdout]     |
[INFO] [stdout] help: use explicit `std::ptr::eq` method to compare metadata and addresses
[INFO] [stdout]     |
[INFO] [stdout] 424 -             debug_assert!(raw_utf8 == &*bytes as *const [u8]);
[INFO] [stdout] 424 +             debug_assert!(std::ptr::eq(raw_utf8, &*bytes as *const [u8]));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/main.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let s = c.state.as_ref();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `db` is never read
[INFO] [stdout]   --> src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct MyState {
[INFO] [stdout]    |        ------- field in this struct
[INFO] [stdout] 16 |     pub c: Mutex<i32>,
[INFO] [stdout] 17 |     db: String,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `msg` is never read
[INFO] [stdout]  --> tests/ref_cell.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct Ctx {
[INFO] [stdout]   |        --- field in this struct
[INFO] [stdout] 4 |     pub index: RefCell<usize>,
[INFO] [stdout] 5 |     msg: Vec<String>,
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `h2` in this scope
[INFO] [stdout]  --> tests/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use h2::server::{self, SendResponse};
[INFO] [stdout]   |     ^^ use of unresolved module or unlinked crate `h2`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `h2`, use `cargo add h2` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `bytes`
[INFO] [stdout]  --> tests/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bytes::Bytes;
[INFO] [stdout]   |     ^^^^^ use of unresolved module or unlinked crate `bytes`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `bytes`, use `cargo add bytes` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `h2`
[INFO] [stdout]  --> tests/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use h2::RecvStream;
[INFO] [stdout]   |     ^^ use of unresolved module or unlinked crate `h2`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `h2`, use `cargo add h2` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `tokio` in this scope
[INFO] [stdout]  --> tests/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::net::{TcpListener, TcpStream};
[INFO] [stdout]   |     ^^^^^ use of unresolved module or unlinked crate `tokio`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `tokio`, use `cargo add tokio` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `http`
[INFO] [stdout]  --> tests/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use http::Request;
[INFO] [stdout]   |     ^^^^ use of unresolved module or unlinked crate `http`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `http`, use `cargo add http` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `tokio` in this scope
[INFO] [stdout]  --> tests/main.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[tokio::main]
[INFO] [stdout]   |   ^^^^^ use of unresolved module or unlinked crate `tokio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/main.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let s = c.state.as_ref();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `db` is never read
[INFO] [stdout]   --> src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct MyState {
[INFO] [stdout]    |        ------- field in this struct
[INFO] [stdout] 16 |     pub c: Mutex<i32>,
[INFO] [stdout] 17 |     db: String,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]    --> src/http.rs:133:11
[INFO] [stdout]     |
[INFO] [stdout] 133 |     #[cfg(feature = "log")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]    --> src/http.rs:138:11
[INFO] [stdout]     |
[INFO] [stdout] 138 |     #[cfg(feature = "log")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]    --> src/http.rs:182:11
[INFO] [stdout]     |
[INFO] [stdout] 182 |     #[cfg(feature = "log")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]    --> src/http.rs:187:11
[INFO] [stdout]     |
[INFO] [stdout] 187 |     #[cfg(feature = "log")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/http.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     use super::*;
[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: `ascii::AsciiChar::Hash`
[INFO] [stdout]    --> src/node.rs:104:9
[INFO] [stdout]     |
[INFO] [stdout] 104 |     use ascii::AsciiChar::Hash;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]    --> src/node.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |     use std::sync::Arc;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]   --> src/request.rs:39:15
[INFO] [stdout]    |
[INFO] [stdout] 39 |         #[cfg(feature = "log")]
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]   --> src/request.rs:56:15
[INFO] [stdout]    |
[INFO] [stdout] 56 |         #[cfg(feature = "log")]
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `log`
[INFO] [stdout]   --> src/request.rs:32:23
[INFO] [stdout]    |
[INFO] [stdout] 32 |                 #[cfg(feature = "log")]
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `log` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 4 arguments but 3 arguments were supplied
[INFO] [stdout]    --> src/node.rs:141:32
[INFO] [stdout]     |
[INFO] [stdout] 141 |         let sc: Context<i32> = Context::new(Request::default(), params, 1);
[INFO] [stdout]     |                                ^^^^^^^^^^^^-------------------------------
[INFO] [stdout]     |                                            ||
[INFO] [stdout]     |                                            |expected `&Request`, found `Request`
[INFO] [stdout]     |                                            argument #4 of type `std::option::Option<Vec<&Box<(dyn for<'a, 'b> Fn(&'a context::Context<'b, i32>) + Send + Sync + 'static)>>>` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/context.rs:26:12
[INFO] [stdout]     |
[INFO] [stdout]  26 |     pub fn new(r: &'a Request, params: HashMap<String, String>, state: T, fn_chains: Option<Vec<&'a HandlerFn<T>>>) -> Self {
[INFO] [stdout]     |            ^^^ --------------                                             ----------------------------------------
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]     |
[INFO] [stdout] 141 |         let sc: Context<i32> = Context::new(&Request::default(), params, 1);
[INFO] [stdout]     |                                             +
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 141 -         let sc: Context<i32> = Context::new(Request::default(), params, 1);
[INFO] [stdout] 141 +         let sc: Context<i32> = Context::new(/* &Request */, params, 1, /* Option<Vec<&Box<dyn Fn(&Context<'b, i32>) + Send + Sync>>> */);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 4 arguments but 3 arguments were supplied
[INFO] [stdout]    --> src/node.rs:198:32
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let sc: Context<i32> = Context::new(Request::default(), param2, 1);
[INFO] [stdout]     |                                ^^^^^^^^^^^^-------------------------------
[INFO] [stdout]     |                                            ||
[INFO] [stdout]     |                                            |expected `&Request`, found `Request`
[INFO] [stdout]     |                                            argument #4 of type `std::option::Option<Vec<&Box<(dyn for<'a, 'b> Fn(&'a context::Context<'b, i32>) + Send + Sync + 'static)>>>` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/context.rs:26:12
[INFO] [stdout]     |
[INFO] [stdout]  26 |     pub fn new(r: &'a Request, params: HashMap<String, String>, state: T, fn_chains: Option<Vec<&'a HandlerFn<T>>>) -> Self {
[INFO] [stdout]     |            ^^^ --------------                                             ----------------------------------------
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let sc: Context<i32> = Context::new(&Request::default(), param2, 1);
[INFO] [stdout]     |                                             +
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 198 -         let sc: Context<i32> = Context::new(Request::default(), param2, 1);
[INFO] [stdout] 198 +         let sc: Context<i32> = Context::new(/* &Request */, param2, 1, /* Option<Vec<&Box<dyn Fn(&Context<'b, i32>) + Send + Sync>>> */);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `http` in this scope
[INFO] [stdout]   --> tests/main.rs:54:20
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let response = http::Response::new(());
[INFO] [stdout]    |                    ^^^^ use of unresolved module or unlinked crate `http`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `http`, use `cargo add http` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `env_logger` in this scope
[INFO] [stdout]   --> tests/main.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let _ = env_logger::try_init();
[INFO] [stdout]    |             ^^^^^^^^^^ use of unresolved module or unlinked crate `env_logger`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `env_logger`, use `cargo add env_logger` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method call on a diverging inference variable
[INFO] [stdout]   --> tests/main.rs:14:44
[INFO] [stdout]    |
[INFO] [stdout] 14 |     println!("listening on {:?}", listener.local_addr());
[INFO] [stdout]    |                                            ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider providing a type annotation
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #156047 <https://github.com/rust-lang/rust/issues/156047>
[INFO] [stdout]    = note: `#[warn(method_call_on_diverging_infer_var)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/http.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let s = c.state.as_ref();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `local_addr` found for type `!` in the current scope
[INFO] [stdout]   --> tests/main.rs:14:44
[INFO] [stdout]    |
[INFO] [stdout] 14 |     println!("listening on {:?}", listener.local_addr());
[INFO] [stdout]    |                                            ^^^^^^^^^^ method not found in `!`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `accept` found for type `!` in the current scope
[INFO] [stdout]   --> tests/main.rs:17:52
[INFO] [stdout]    |
[INFO] [stdout] 17 |         if let Ok((socket, _peer_addr)) = listener.accept().await {
[INFO] [stdout]    |                                                    ^^^^^^ method not found in `!`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable call
[INFO] [stdout]   --> tests/main.rs:17:52
[INFO] [stdout]    |
[INFO] [stdout] 17 |         if let Ok((socket, _peer_addr)) = listener.accept().await {
[INFO] [stdout]    |                                           -------- ^^^^^^ unreachable call
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           any code following this expression is unreachable
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `tokio` in this scope
[INFO] [stdout]   --> tests/main.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             tokio::spawn(async move {
[INFO] [stdout]    |             ^^^^^ use of unresolved module or unlinked crate `tokio`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `tokio`, use `cargo add tokio` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method call on a diverging inference variable
[INFO] [stdout]   --> tests/main.rs:31:41
[INFO] [stdout]    |
[INFO] [stdout] 31 |     while let Some(result) = connection.accept().await {
[INFO] [stdout]    |                                         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider providing a type annotation
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #156047 <https://github.com/rust-lang/rust/issues/156047>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `accept` found for type `!` in the current scope
[INFO] [stdout]   --> tests/main.rs:31:41
[INFO] [stdout]    |
[INFO] [stdout] 31 |     while let Some(result) = connection.accept().await {
[INFO] [stdout]    |                                         ^^^^^^ method not found in `!`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `tokio` in this scope
[INFO] [stdout]   --> tests/main.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         tokio::spawn(async move {
[INFO] [stdout]    |         ^^^^^ use of unresolved module or unlinked crate `tokio`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `tokio`, use `cargo add tokio` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method call on a diverging inference variable
[INFO] [stdout]   --> tests/main.rs:51:59
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let _ = body.flow_control().release_capacity(data.len());
[INFO] [stdout]    |                                                           ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider providing a type annotation
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #156047 <https://github.com/rust-lang/rust/issues/156047>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `len` found for type `!` in the current scope
[INFO] [stdout]   --> tests/main.rs:51:59
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let _ = body.flow_control().release_capacity(data.len());
[INFO] [stdout]    |                                                           ^^^
[INFO] [stdout]    |
[INFO] [stdout] help: there is a method `le` with a similar name, but with different arguments
[INFO] [stdout]   --> /rustc/e3feeb59cd1bdd011a2bfcc0747b55125d9b8527/library/core/src/cmp.rs:1520:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `zhou` (test "main") due to 14 previous errors; 7 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] For more information about this error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `zhou` (lib test) due to 2 previous errors; 11 warnings emitted
[INFO] [stderr] warning: unused dependency `httpdate`
[INFO] [stderr]  --> Cargo.toml:7:15
[INFO] [stderr]   |
[INFO] [stderr] 7 | [dependencies.httpdate]
[INFO] [stderr]   |               ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `httpdate`
[INFO] [stderr] warning: `zhou` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "inspect" "12ba2c6ef54ab4b844d81a5ba2d0656d8b2df4d4b8f0ff2faf10c2f748050f1a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "12ba2c6ef54ab4b844d81a5ba2d0656d8b2df4d4b8f0ff2faf10c2f748050f1a", kill_on_drop: false }`
[INFO] [stdout] 12ba2c6ef54ab4b844d81a5ba2d0656d8b2df4d4b8f0ff2faf10c2f748050f1a
