[INFO] fetching crate tower-web 0.3.7... [INFO] testing tower-web-0.3.7 against try#c2e32f1c9652b13ed99608599c1e855462f421f3 for pr-146098-8 [INFO] extracting crate tower-web 0.3.7 into /workspace/builds/worker-5-tc2/source [INFO] started tweaking crates.io crate tower-web 0.3.7 [INFO] finished tweaking crates.io crate tower-web 0.3.7 [INFO] tweaked toml for crates.io crate tower-web 0.3.7 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate tower-web 0.3.7 on toolchain c2e32f1c9652b13ed99608599c1e855462f421f3 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 202 packages to latest compatible versions [INFO] [stderr] Adding atoi v0.2.3 (available: v0.2.4) [INFO] [stderr] Adding bytes v0.4.12 (available: v1.10.1) [INFO] [stderr] Adding env_logger v0.5.13 (available: v0.11.8) [INFO] [stderr] Adding futures v0.1.31 (available: v0.3.31) [INFO] [stderr] Adding handlebars v1.0.5 (available: v1.1.0) [INFO] [stderr] Adding headers v0.2.3 (available: v0.4.1) [INFO] [stderr] Adding http v0.1.21 (available: v1.3.1) [INFO] [stderr] Adding hyper v0.12.36 (available: v1.8.1) [INFO] [stderr] Adding mime_guess v1.8.8 (available: v2.0.5) [INFO] [stderr] Adding percent-encoding v1.0.1 (available: v2.3.2) [INFO] [stderr] Adding proc-macro-hack v0.4.3 (available: v0.5.20+deprecated) [INFO] [stderr] Adding rand v0.5.6 (available: v0.9.2) [INFO] [stderr] Adding serde_plain v0.3.0 (available: v1.0.2) [INFO] [stderr] Adding serde_urlencoded v0.5.5 (available: v0.7.1) [INFO] [stderr] Adding tokio v0.1.19 (available: v0.1.22) [INFO] [stderr] Adding tokio-rustls v0.8.1 (available: v0.26.4) [INFO] [stderr] Adding tower-service v0.1.0 (available: v0.3.3) [INFO] [stderr] Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4a6794fef52ed59df45d18c6aae3b9dbd1390211ea31ad1160225bcd08de8fa7 [INFO] running `Command { std: "docker" "start" "-a" "4a6794fef52ed59df45d18c6aae3b9dbd1390211ea31ad1160225bcd08de8fa7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4a6794fef52ed59df45d18c6aae3b9dbd1390211ea31ad1160225bcd08de8fa7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4a6794fef52ed59df45d18c6aae3b9dbd1390211ea31ad1160225bcd08de8fa7", kill_on_drop: false }` [INFO] [stdout] 4a6794fef52ed59df45d18c6aae3b9dbd1390211ea31ad1160225bcd08de8fa7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 96bf817f1d3be8e4422eaccc1d57a82fc1a39713605f3f6df53fdba42a920ac1 [INFO] running `Command { std: "docker" "start" "-a" "96bf817f1d3be8e4422eaccc1d57a82fc1a39713605f3f6df53fdba42a920ac1", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling rand_core v0.4.2 [INFO] [stderr] Compiling unicase v1.4.2 [INFO] [stderr] Compiling siphasher v0.2.3 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling mio v0.6.23 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling tokio-io v0.1.13 [INFO] [stderr] Compiling byte-tools v0.3.1 [INFO] [stderr] Compiling unicode-xid v0.0.4 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling tokio-threadpool v0.1.18 [INFO] [stderr] Compiling quote v0.3.15 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling digest v0.8.1 [INFO] [stderr] Compiling block-padding v0.1.5 [INFO] [stderr] Compiling log v0.3.9 [INFO] [stderr] Compiling tokio-trace-core v0.1.0 [INFO] [stderr] Compiling proc-macro-hack-impl v0.4.3 [INFO] [stderr] Compiling synom v0.11.3 [INFO] [stderr] Compiling pest v1.0.6 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling phf_shared v0.7.24 [INFO] [stderr] Compiling syn v0.11.11 [INFO] [stderr] Compiling block-buffer v0.7.3 [INFO] [stderr] Compiling opaque-debug v0.2.3 [INFO] [stderr] Compiling fake-simd v0.1.2 [INFO] [stderr] Compiling want v0.2.0 [INFO] [stderr] Compiling phf v0.7.24 [INFO] [stderr] Compiling proc-macro-hack v0.4.3 [INFO] [stderr] Compiling mime v0.2.6 [INFO] [stderr] Compiling syn v2.0.110 [INFO] [stderr] Compiling headers-core v0.1.1 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling iana-time-zone v0.1.64 [INFO] [stderr] Compiling tokio-codec v0.1.2 [INFO] [stderr] Compiling tokio-fs v0.1.7 [INFO] [stderr] Compiling sha-1 v0.8.2 [INFO] [stderr] Compiling h2 v0.1.26 [INFO] [stderr] Compiling flate2 v1.1.5 [INFO] [stderr] Compiling checked v0.5.0 [INFO] [stderr] Compiling atoi v0.2.3 [INFO] [stderr] Compiling headers v0.2.3 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Compiling tokio-reactor v0.1.12 [INFO] [stderr] Compiling mio-uds v0.6.8 [INFO] [stderr] Compiling tower-service v0.1.0 [INFO] [stderr] Compiling void v1.0.2 [INFO] [stderr] Compiling tokio-uds v0.2.7 [INFO] [stderr] Compiling tokio-udp v0.1.6 [INFO] [stderr] Compiling tokio-tcp v0.1.4 [INFO] [stderr] Compiling serde_urlencoded v0.5.5 [INFO] [stderr] Compiling phf_generator v0.7.24 [INFO] [stderr] Compiling serde_plain v0.3.0 [INFO] [stderr] Compiling tokio v0.1.19 [INFO] [stderr] Compiling phf_codegen v0.7.24 [INFO] [stderr] Compiling pest_derive v1.0.8 [INFO] [stderr] Compiling mime_guess v1.8.8 [INFO] [stderr] Compiling hyper v0.12.36 [INFO] [stderr] Compiling handlebars v1.0.5 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tower-web-macros v0.3.5 [INFO] [stderr] Compiling tower-web v0.3.7 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/middleware/cors/config.rs:191:48 [INFO] [stdout] | [INFO] [stdout] 191 | let mut headers = self.basic_headers();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/middleware/log/service.rs:101:24 [INFO] [stdout] | [INFO] [stdout] 101 | 400...599 => Level::Error, [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/config/mod.rs:12:35 [INFO] [stdout] | [INFO] [stdout] 12 | type AnyMap = HashMap, BuildHasherDefault>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 12 | type AnyMap = HashMap, BuildHasherDefault>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/run.rs:78:23 [INFO] [stdout] | [INFO] [stdout] 78 | type Future = Box, Error = Self::Error> + Send>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 78 | type Future = Box, Error = Self::Error> + Send>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/config/mod.rs:74:31 [INFO] [stdout] | [INFO] [stdout] 74 | (&**boxed as &Any).downcast_ref() [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 74 | (&**boxed as &dyn Any).downcast_ref() [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/extract/num.rs:25:62 [INFO] [stdout] | [INFO] [stdout] 25 | Error::invalid_argument(&err.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | num_extract_impls!(u8, u16, u32, u64, i8, i16, i32, i64); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `num_extract_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/extract/serde.rs:86:63 [INFO] [stdout] | [INFO] [stdout] 86 | ... Some(Error::invalid_argument(&err.description())) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/middleware/cors/config.rs:110:21 [INFO] [stdout] | [INFO] [stdout] 110 | let mut headers = self.basic_headers(); [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: field `0` is never read [INFO] [stdout] --> src/extract/error.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | Invalid(String), [INFO] [stdout] | ------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Kind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 14 - Invalid(String), [INFO] [stdout] 14 + Invalid(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `inner` is never read [INFO] [stdout] --> src/util/buf_stream/deflate.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct Error { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 38 | /// `None` represents a deflate error [INFO] [stdout] 39 | inner: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/extract/mod.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | drop(callsite); [INFO] [stdout] | ^^^^^--------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&CallSite` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 79 - drop(callsite); [INFO] [stdout] 79 + let _ = callsite; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/response/context.rs:62:31 [INFO] [stdout] | [INFO] [stdout] 62 | pub fn serializer_context(&self) -> SerializerContext { [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] 62 | pub fn serializer_context(&self) -> SerializerContext<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.65s [INFO] running `Command { std: "docker" "inspect" "96bf817f1d3be8e4422eaccc1d57a82fc1a39713605f3f6df53fdba42a920ac1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "96bf817f1d3be8e4422eaccc1d57a82fc1a39713605f3f6df53fdba42a920ac1", kill_on_drop: false }` [INFO] [stdout] 96bf817f1d3be8e4422eaccc1d57a82fc1a39713605f3f6df53fdba42a920ac1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c0e6bf2fd381b8632e83eb2e894d0b588eb7454cbd1e647d519585f522e83d3f [INFO] running `Command { std: "docker" "start" "-a" "c0e6bf2fd381b8632e83eb2e894d0b588eb7454cbd1e647d519585f522e83d3f", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling humantime v1.3.0 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rand v0.5.6 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling env_logger v0.5.13 [INFO] [stderr] Compiling phf_generator v0.7.24 [INFO] [stderr] Compiling phf_codegen v0.7.24 [INFO] [stderr] Compiling mime_guess v1.8.8 [INFO] [stderr] Compiling tower-web v0.3.7 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/middleware/cors/config.rs:191:48 [INFO] [stdout] | [INFO] [stdout] 191 | let mut headers = self.basic_headers();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/middleware/log/service.rs:101:24 [INFO] [stdout] | [INFO] [stdout] 101 | 400...599 => Level::Error, [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/config/mod.rs:12:35 [INFO] [stdout] | [INFO] [stdout] 12 | type AnyMap = HashMap, BuildHasherDefault>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 12 | type AnyMap = HashMap, BuildHasherDefault>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unnecessary trailing semicolon [INFO] [stdout] --> src/middleware/cors/config.rs:191:48 [INFO] [stdout] | [INFO] [stdout] 191 | let mut headers = self.basic_headers();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:3:24 [INFO] [stdout] | [INFO] [stdout] 3 | #![cfg_attr(test, deny(warnings))] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: `#[deny(redundant_semicolons)]` implied by `#[deny(warnings)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `...` range patterns are deprecated [INFO] [stdout] --> src/middleware/log/service.rs:101:24 [INFO] [stdout] | [INFO] [stdout] 101 | 400...599 => Level::Error, [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[deny(ellipsis_inclusive_range_patterns)]` implied by `#[deny(warnings)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/run.rs:78:23 [INFO] [stdout] | [INFO] [stdout] 78 | type Future = Box, Error = Self::Error> + Send>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 78 | type Future = Box, Error = Self::Error> + Send>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/config/mod.rs:12:35 [INFO] [stdout] | [INFO] [stdout] 12 | type AnyMap = HashMap, BuildHasherDefault>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[deny(bare_trait_objects)]` implied by `#[deny(warnings)]` [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 12 | type AnyMap = HashMap, BuildHasherDefault>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/middleware/cors/config.rs:229:26 [INFO] [stdout] | [INFO] [stdout] 229 | type TestError = Box<::std::error::Error>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 229 | type TestError = Box; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/middleware/cors/service.rs:118:26 [INFO] [stdout] | [INFO] [stdout] 118 | type TestError = Box<::std::error::Error>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 118 | type TestError = Box; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/config/mod.rs:74:31 [INFO] [stdout] | [INFO] [stdout] 74 | (&**boxed as &Any).downcast_ref() [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 74 | (&**boxed as &dyn Any).downcast_ref() [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/extract/num.rs:25:62 [INFO] [stdout] | [INFO] [stdout] 25 | Error::invalid_argument(&err.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | num_extract_impls!(u8, u16, u32, u64, i8, i16, i32, i64); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `num_extract_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/extract/serde.rs:86:63 [INFO] [stdout] | [INFO] [stdout] 86 | ... Some(Error::invalid_argument(&err.description())) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/run.rs:78:23 [INFO] [stdout] | [INFO] [stdout] 78 | type Future = Box, Error = Self::Error> + Send>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 78 | type Future = Box, Error = Self::Error> + Send>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/config/mod.rs:74:31 [INFO] [stdout] | [INFO] [stdout] 74 | (&**boxed as &Any).downcast_ref() [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 74 | (&**boxed as &dyn Any).downcast_ref() [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/extract/num.rs:25:62 [INFO] [stdout] | [INFO] [stdout] 25 | Error::invalid_argument(&err.description()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | num_extract_impls!(u8, u16, u32, u64, i8, i16, i32, i64); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[deny(deprecated)]` implied by `#[deny(warnings)]` [INFO] [stdout] = note: this error originates in the macro `num_extract_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/extract/serde.rs:86:63 [INFO] [stdout] | [INFO] [stdout] 86 | ... Some(Error::invalid_argument(&err.description())) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/middleware/cors/config.rs:110:21 [INFO] [stdout] | [INFO] [stdout] 110 | let mut headers = self.basic_headers(); [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] error: variable does not need to be mutable [INFO] [stdout] --> src/middleware/cors/config.rs:110:21 [INFO] [stdout] | [INFO] [stdout] 110 | let mut headers = self.basic_headers(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[deny(unused_mut)]` implied by `#[deny(warnings)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/extract/error.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | Invalid(String), [INFO] [stdout] | ------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Kind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 14 - Invalid(String), [INFO] [stdout] 14 + Invalid(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `inner` is never read [INFO] [stdout] --> src/util/buf_stream/deflate.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct Error { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 38 | /// `None` represents a deflate error [INFO] [stdout] 39 | inner: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/extract/mod.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | drop(callsite); [INFO] [stdout] | ^^^^^--------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&CallSite` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 79 - drop(callsite); [INFO] [stdout] 79 + let _ = callsite; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/response/context.rs:62:31 [INFO] [stdout] | [INFO] [stdout] 62 | pub fn serializer_context(&self) -> SerializerContext { [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] 62 | pub fn serializer_context(&self) -> SerializerContext<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: field `0` is never read [INFO] [stdout] --> src/extract/error.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | Invalid(String), [INFO] [stdout] | ------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Kind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[deny(dead_code)]` implied by `#[deny(warnings)]` [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 14 - Invalid(String), [INFO] [stdout] 14 + Invalid(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: field `inner` is never read [INFO] [stdout] --> src/util/buf_stream/deflate.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct Error { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 38 | /// `None` represents a deflate error [INFO] [stdout] 39 | inner: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/extract/mod.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | drop(callsite); [INFO] [stdout] | ^^^^^--------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&CallSite` [INFO] [stdout] | [INFO] [stdout] = note: `#[deny(dropping_references)]` implied by `#[deny(warnings)]` [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 79 - drop(callsite); [INFO] [stdout] 79 + let _ = callsite; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/response/context.rs:62:31 [INFO] [stdout] | [INFO] [stdout] 62 | pub fn serializer_context(&self) -> SerializerContext { [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: `#[deny(mismatched_lifetime_syntaxes)]` implied by `#[deny(warnings)]` [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 62 | pub fn serializer_context(&self) -> SerializerContext<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> examples/hello_world.rs:64:1 [INFO] [stdout] | [INFO] [stdout] 64 | / /// To derive `Resource`, the implementation of `HelloWorld` is contained in the [INFO] [stdout] 65 | | /// `impl_web!` macro. This macro does not modify any of its contents. It will [INFO] [stdout] 66 | | /// inspect the implementation and, with the help of some annotations, generate [INFO] [stdout] 67 | | /// the necessary glue code to run the web service. [INFO] [stdout] 68 | | /// [INFO] [stdout] 69 | | /// impl_web! is a temporary solution to enable tower-web to work with stable [INFO] [stdout] 70 | | /// rust. In the near future, this will be transitioned to use attribute macros. [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] [stderr] error: could not compile `tower-web` (lib test) due to 14 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> examples/html_handlebars.rs:44:17 [INFO] [stdout] | [INFO] [stdout] 44 | #[derive(Debug, Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `MyResponse` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_MyResponse` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> examples/json.rs:43:17 [INFO] [stdout] | [INFO] [stdout] 43 | #[derive(Debug, Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `MyResponse` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_MyResponse` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> examples/json.rs:52:17 [INFO] [stdout] | [INFO] [stdout] 52 | #[derive(Debug, Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `CreatedResponse` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_CreatedResponse` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/resource.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Inner` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_Inner` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/extract.rs:14:17 [INFO] [stdout] | [INFO] [stdout] 14 | #[derive(Debug, Extract)] [INFO] [stdout] | ^------ [INFO] [stdout] | | [INFO] [stdout] | `Extract` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_EXTRACT_FOR_Foo` [INFO] [stdout] 15 | pub struct Foo { [INFO] [stdout] | --- `Foo` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Extract` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Extract` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Extract` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/extract.rs:19:17 [INFO] [stdout] | [INFO] [stdout] 19 | #[derive(Debug, Extract)] [INFO] [stdout] | ^------ [INFO] [stdout] | | [INFO] [stdout] | `Extract` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_EXTRACT_FOR_Foo2` [INFO] [stdout] 20 | pub struct Foo2 { [INFO] [stdout] | ---- `Foo2` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Extract` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Extract` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Extract` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/extract.rs:24:17 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Debug, Extract, Default)] [INFO] [stdout] | ^------ [INFO] [stdout] | | [INFO] [stdout] | `Extract` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_EXTRACT_FOR_FooWithDefault` [INFO] [stdout] 25 | struct FooWithDefault { [INFO] [stdout] | -------------- `FooWithDefault` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Extract` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Extract` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Extract` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/extract.rs:30:17 [INFO] [stdout] | [INFO] [stdout] 30 | #[derive(Debug, Extract)] [INFO] [stdout] | ^------ [INFO] [stdout] | | [INFO] [stdout] | `Extract` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_EXTRACT_FOR_FooWrap` [INFO] [stdout] 31 | pub struct FooWrap(Inner); [INFO] [stdout] | ------- `FooWrap` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Extract` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Extract` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Extract` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/response.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(Debug, Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `HelloResponse` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_HelloResponse` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/response.rs:28:17 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Debug, Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `NestedResponse` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_NestedResponse` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/response.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | #[derive(Debug, Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `WrappedNestedResponse` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_WrappedNestedResponse` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/response.rs:41:17 [INFO] [stdout] | [INFO] [stdout] 41 | #[derive(Debug, Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `StaticStatus` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_StaticStatus` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/response.rs:47:17 [INFO] [stdout] | [INFO] [stdout] 47 | #[derive(Debug, Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `DynStatus` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_DynStatus` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/response.rs:55:17 [INFO] [stdout] | [INFO] [stdout] 55 | #[derive(Debug, Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `StaticHeader` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_StaticHeader` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/response.rs:61:17 [INFO] [stdout] | [INFO] [stdout] 61 | #[derive(Debug, Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `DynHeader1` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_DynHeader1` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/response.rs:69:17 [INFO] [stdout] | [INFO] [stdout] 69 | #[derive(Debug, Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `DynHeader2` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_DynHeader2` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/response.rs:77:17 [INFO] [stdout] | [INFO] [stdout] 77 | #[derive(Debug, Response)] [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_Either` [INFO] [stdout] 78 | #[web(either)] [INFO] [stdout] 79 | pub enum Either { [INFO] [stdout] | ------ `Either` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/response.rs:84:10 [INFO] [stdout] | [INFO] [stdout] 84 | #[derive(Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `GenResp` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_GenResp` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/content_type.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Response)] [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Foo` is not local [INFO] [stdout] | `Response` is not local [INFO] [stdout] | move the `impl` block outside of this constant `__IMPL_RESPONSE_FOR_Foo` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Response` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Response` may come from an old version of the `tower_web_macros` crate, try updating your dependency with `cargo update -p tower_web_macros` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Response` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "c0e6bf2fd381b8632e83eb2e894d0b588eb7454cbd1e647d519585f522e83d3f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c0e6bf2fd381b8632e83eb2e894d0b588eb7454cbd1e647d519585f522e83d3f", kill_on_drop: false }` [INFO] [stdout] c0e6bf2fd381b8632e83eb2e894d0b588eb7454cbd1e647d519585f522e83d3f