[INFO] fetching crate tower-web 0.3.7...
[INFO] testing tower-web-0.3.7 against nightly-2024-10-28 for randomize-layout
[INFO] extracting crate tower-web 0.3.7 into /workspace/builds/worker-6-tc1/source
[INFO] validating manifest of crates.io crate tower-web 0.3.7 on toolchain nightly-2024-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[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-6-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 204 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.8.0)
[INFO] [stderr]       Adding env_logger v0.5.13 (available: v0.11.5)
[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.0)
[INFO] [stderr]       Adding http v0.1.21 (available: v1.1.0)
[INFO] [stderr]       Adding hyper v0.12.36 (available: v1.5.0)
[INFO] [stderr]       Adding mime_guess v1.8.8 (available: v2.0.5)
[INFO] [stderr]       Adding percent-encoding v1.0.1 (available: v2.3.1)
[INFO] [stderr]       Adding proc-macro-hack v0.4.3 (available: v0.5.20+deprecated)
[INFO] [stderr]       Adding rand v0.5.6 (available: v0.8.5)
[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.0)
[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" "+nightly-2024-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tower-web-macros v0.3.5
[INFO] [stderr]   Downloaded webpki v0.18.1
[INFO] [stderr]   Downloaded tokio-async-await v0.1.7
[INFO] [stderr]   Downloaded atoi v0.2.3
[INFO] [stderr]   Downloaded tokio-rustls v0.8.1
[INFO] [stderr]   Downloaded proc-macro-hack v0.4.3
[INFO] [stderr]   Downloaded tower-service v0.1.0
[INFO] [stderr]   Downloaded checked v0.5.0
[INFO] [stderr]   Downloaded headers-core v0.1.1
[INFO] [stderr]   Downloaded serde_plain v0.3.0
[INFO] [stderr]   Downloaded headers v0.2.3
[INFO] [stderr]   Downloaded handlebars v1.0.5
[INFO] [stderr]   Downloaded tokio v0.1.19
[INFO] [stderr]   Downloaded sct v0.4.0
[INFO] [stderr]   Downloaded proc-macro-hack-impl v0.4.3
[INFO] [stderr]   Downloaded hyper v0.12.36
[INFO] [stderr]   Downloaded rustls v0.14.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5f98f85725c62da9cfea6c1495698b6d315bfdd81c8fb6ffda7ddf1fded5b9ae
[INFO] running `Command { std: "docker" "start" "-a" "5f98f85725c62da9cfea6c1495698b6d315bfdd81c8fb6ffda7ddf1fded5b9ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5f98f85725c62da9cfea6c1495698b6d315bfdd81c8fb6ffda7ddf1fded5b9ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5f98f85725c62da9cfea6c1495698b6d315bfdd81c8fb6ffda7ddf1fded5b9ae", kill_on_drop: false }`
[INFO] [stdout] 5f98f85725c62da9cfea6c1495698b6d315bfdd81c8fb6ffda7ddf1fded5b9ae
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 02df98e3703e4ec752111af991f3071f16e0fd30ba88516fdcb5223ce6786217
[INFO] running `Command { std: "docker" "start" "-a" "02df98e3703e4ec752111af991f3071f16e0fd30ba88516fdcb5223ce6786217", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] [stderr]    Compiling libc v0.2.161
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling futures v0.1.31
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling version_check v0.1.5
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling itoa v0.4.8
[INFO] [stderr]    Compiling lock_api v0.3.4
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling siphasher v0.2.3
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling serde v1.0.214
[INFO] [stderr]    Compiling unicase v1.4.2
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[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 num-traits v0.2.19
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling phf_shared v0.7.24
[INFO] [stderr]    Compiling parking_lot_core v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling tinyvec v1.8.0
[INFO] [stderr]    Compiling indexmap v1.9.3
[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 block-padding v0.1.5
[INFO] [stderr]    Compiling phf v0.7.24
[INFO] [stderr]    Compiling crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]    Compiling matches v0.1.10
[INFO] [stderr]    Compiling serde_json v1.0.132
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling net2 v0.2.39
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling crossbeam-deque v0.7.4
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling httparse v1.9.5
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]    Compiling unicode-bidi v0.3.17
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling generic-array v0.12.4
[INFO] [stderr]    Compiling unicode-normalization v0.1.24
[INFO] [stderr]    Compiling mio v0.6.23
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling syn v0.11.11
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling hyper v0.12.36
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling tokio-trace-core v0.1.0
[INFO] [stderr]    Compiling fake-simd v0.1.2
[INFO] [stderr]    Compiling digest v0.8.1
[INFO] [stderr]    Compiling http v0.1.21
[INFO] [stderr]    Compiling string v0.2.1
[INFO] [stderr]    Compiling block-buffer v0.7.3
[INFO] [stderr]    Compiling idna v0.1.5
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling adler2 v2.0.0
[INFO] [stderr]    Compiling proc-macro-hack-impl v0.4.3
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling itoa v1.0.11
[INFO] [stderr]    Compiling percent-encoding v1.0.1
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling opaque-debug v0.2.3
[INFO] [stderr]    Compiling pest v1.0.6
[INFO] [stderr]    Compiling proc-macro-hack v0.4.3
[INFO] [stderr]    Compiling sha-1 v0.8.2
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling miniz_oxide v0.8.0
[INFO] [stderr]    Compiling mime v0.2.6
[INFO] [stderr]    Compiling regex-automata v0.4.8
[INFO] [stderr]    Compiling url v1.7.2
[INFO] [stderr]    Compiling syn v2.0.86
[INFO] [stderr]    Compiling base64 v0.10.1
[INFO] [stderr]    Compiling iana-time-zone v0.1.61
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]    Compiling mio-uds v0.6.8
[INFO] [stderr]    Compiling phf_generator v0.7.24
[INFO] [stderr]    Compiling pest_derive v1.0.8
[INFO] [stderr]    Compiling phf_codegen v0.7.24
[INFO] [stderr]    Compiling dtoa v0.4.8
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling serde_plain v0.3.0
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling flate2 v1.0.34
[INFO] [stderr]    Compiling mime_guess v1.8.8
[INFO] [stderr]    Compiling checked v0.5.0
[INFO] [stderr]    Compiling serde_urlencoded v0.5.5
[INFO] [stderr]    Compiling atoi v0.2.3
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling headers-core v0.1.1
[INFO] [stderr]    Compiling tokio-executor v0.1.10
[INFO] [stderr]    Compiling tokio-io v0.1.13
[INFO] [stderr]    Compiling tokio-sync v0.1.8
[INFO] [stderr]    Compiling tokio-buf v0.1.1
[INFO] [stderr]    Compiling want v0.2.0
[INFO] [stderr]    Compiling futures-cpupool v0.1.8
[INFO] [stderr]    Compiling tokio-threadpool v0.1.18
[INFO] [stderr]    Compiling tokio-current-thread v0.1.7
[INFO] [stderr]    Compiling tokio-timer v0.2.13
[INFO] [stderr]    Compiling tokio-codec v0.1.2
[INFO] [stderr]    Compiling tokio-reactor v0.1.12
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling h2 v0.1.26
[INFO] [stderr]    Compiling http-body v0.1.0
[INFO] [stderr]    Compiling headers v0.2.3
[INFO] [stderr]    Compiling tower-service v0.1.0
[INFO] [stderr]    Compiling tokio-fs v0.1.7
[INFO] [stderr]    Compiling handlebars v1.0.5
[INFO] [stderr]    Compiling tokio-tcp v0.1.4
[INFO] [stderr]    Compiling tokio-uds v0.2.7
[INFO] [stderr]    Compiling tokio-udp v0.1.6
[INFO] [stderr]    Compiling tokio v0.1.19
[INFO] [stderr]    Compiling serde_derive v1.0.214
[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)]` 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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` 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<TypeId, Box<Any + Send + Sync>, BuildHasherDefault<IdHasher>>;
[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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 | type AnyMap = HashMap<TypeId, Box<dyn Any + Send + Sync>, BuildHasherDefault<IdHasher>>;
[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<Future<Item = http::Response<Self::ResBody>, 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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 78 |     type Future = Box<dyn Future<Item = http::Response<Self::ResBody>, 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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[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)]` 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)]` 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(()),
[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<T> {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 38 |     /// `None` represents a deflate error
[INFO] [stdout] 39 |     inner: Option<T>,
[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] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.24s
[INFO] running `Command { std: "docker" "inspect" "02df98e3703e4ec752111af991f3071f16e0fd30ba88516fdcb5223ce6786217", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "02df98e3703e4ec752111af991f3071f16e0fd30ba88516fdcb5223ce6786217", kill_on_drop: false }`
[INFO] [stdout] 02df98e3703e4ec752111af991f3071f16e0fd30ba88516fdcb5223ce6786217
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ef431a4ab89869871568eaa2170ec58bee8719348fa92984d9fe515b1d5b658d
[INFO] running `Command { std: "docker" "start" "-a" "ef431a4ab89869871568eaa2170ec58bee8719348fa92984d9fe515b1d5b658d", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling humantime v1.3.0
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling termcolor v1.4.1
[INFO] [stderr]    Compiling env_logger v0.5.13
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand v0.5.6
[INFO] [stderr]    Compiling rand v0.6.5
[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)]` 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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` 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<TypeId, Box<Any + Send + Sync>, BuildHasherDefault<IdHasher>>;
[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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 | type AnyMap = HashMap<TypeId, Box<dyn Any + Send + Sync>, BuildHasherDefault<IdHasher>>;
[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<Future<Item = http::Response<Self::ResBody>, 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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 78 |     type Future = Box<dyn Future<Item = http::Response<Self::ResBody>, 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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[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)]` 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)]` 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(()),
[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<T> {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 38 |     /// `None` represents a deflate error
[INFO] [stdout] 39 |     inner: Option<T>,
[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: 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)]` on by default
[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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[deny(ellipsis_inclusive_range_patterns)]` implied by `#[deny(warnings)]`
[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<TypeId, Box<Any + Send + Sync>, BuildHasherDefault<IdHasher>>;
[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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[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<TypeId, Box<dyn Any + Send + Sync>, BuildHasherDefault<IdHasher>>;
[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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 229 |     type TestError = Box<dyn (::std::error::Error)>;
[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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 118 |     type TestError = Box<dyn (::std::error::Error)>;
[INFO] [stdout]     |                          +++++                   +
[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] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/run.rs:78:23
[INFO] [stdout]    |
[INFO] [stdout] 78 |     type Future = Box<Future<Item = http::Response<Self::ResBody>, 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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 78 |     type Future = Box<dyn Future<Item = http::Response<Self::ResBody>, Error = Self::Error> + Send>;
[INFO] [stdout]    |                       +++
[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/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: fields `foo` and `bar` are never read
[INFO] [stdout]   --> examples/derive_extract.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct Foo {
[INFO] [stdout]    |        --- fields in this struct
[INFO] [stdout] 30 |     /// A `foo` component must be provided and it must be a numeric type.
[INFO] [stdout] 31 |     foo: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     bar: Option<String>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Foo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[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/derive_extract.rs:28:17
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[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] 29 | 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] 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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[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] 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] 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(()),
[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<T> {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 38 |     /// `None` represents a deflate error
[INFO] [stdout] 39 |     inner: Option<T>,
[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] [stderr] error: could not compile `tower-web` (lib test) due to 13 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `tower-web` (example "derive_extract"); 2 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/nightly-2024-10-28-x86_64-unknown-linux-gnu/bin/rustc --crate-name derive_extract --edition=2015 examples/derive_extract.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debuginfo=2 --cfg 'feature="default"' --cfg 'feature="handlebars"' --check-cfg 'cfg(docsrs)' --check-cfg 'cfg(feature, values("async-await-preview", "default", "handlebars", "rustls", "tokio-async-await", "tokio-rustls"))' -C metadata=4ebdd43be90eb4ee -C extra-filename=-4ebdd43be90eb4ee --out-dir /opt/rustwide/target/debug/examples -L dependency=/opt/rustwide/target/debug/deps --extern atoi=/opt/rustwide/target/debug/deps/libatoi-b053961e1796097c.rlib --extern bytes=/opt/rustwide/target/debug/deps/libbytes-f3dfc9642933320a.rlib --extern checked=/opt/rustwide/target/debug/deps/libchecked-0916e3dc27919a0a.rlib --extern chrono=/opt/rustwide/target/debug/deps/libchrono-7c6e33e73f5f2f00.rlib --extern env_logger=/opt/rustwide/target/debug/deps/libenv_logger-54aa3bf3cc8dfa38.rlib --extern flate2=/opt/rustwide/target/debug/deps/libflate2-a35c4f2443aaaaf6.rlib --extern futures=/opt/rustwide/target/debug/deps/libfutures-2a111a34ddc0a99f.rlib --extern handlebars=/opt/rustwide/target/debug/deps/libhandlebars-e3e4fc391c21faf9.rlib --extern headers=/opt/rustwide/target/debug/deps/libheaders-583e402308be2105.rlib --extern http=/opt/rustwide/target/debug/deps/libhttp-0aa510d0da58b04b.rlib --extern hyper=/opt/rustwide/target/debug/deps/libhyper-c58c378a8fdc33d0.rlib --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-7af2f34f8b124b26.rlib --extern log=/opt/rustwide/target/debug/deps/liblog-e7e7e8ec9ff686da.rlib --extern mime=/opt/rustwide/target/debug/deps/libmime-34c62d26cca01717.rlib --extern mime_guess=/opt/rustwide/target/debug/deps/libmime_guess-75af9221df00482f.rlib --extern percent_encoding=/opt/rustwide/target/debug/deps/libpercent_encoding-315061c7076aba50.rlib --extern proc_macro_hack=/opt/rustwide/target/debug/deps/libproc_macro_hack-7a25d2c4e8fd23a6.rlib --extern rand=/opt/rustwide/target/debug/deps/librand-e998944f018feb89.rlib --extern serde=/opt/rustwide/target/debug/deps/libserde-228eb9d983fcf8ca.rlib --extern serde_derive=/opt/rustwide/target/debug/deps/libserde_derive-b97e764d35b2510d.so --extern serde_json=/opt/rustwide/target/debug/deps/libserde_json-2c14a39d695220fd.rlib --extern serde_plain=/opt/rustwide/target/debug/deps/libserde_plain-5ef48ee504597f3d.rlib --extern serde_urlencoded=/opt/rustwide/target/debug/deps/libserde_urlencoded-fc2af7b59a3b3e0d.rlib --extern tokio=/opt/rustwide/target/debug/deps/libtokio-8ff7da4de6b270bd.rlib --extern tokio_fs=/opt/rustwide/target/debug/deps/libtokio_fs-1d285dcf950cfa6d.rlib --extern tokio_io=/opt/rustwide/target/debug/deps/libtokio_io-d81eecc6b39a29f7.rlib --extern tower_service=/opt/rustwide/target/debug/deps/libtower_service-209ae303fa5a9064.rlib --extern tower_web=/opt/rustwide/target/debug/deps/libtower_web-a06c9d42a222023a.rlib --extern tower_web_macros=/opt/rustwide/target/debug/deps/libtower_web_macros-7ea442bfde3cbbc4.so --extern void=/opt/rustwide/target/debug/deps/libvoid-6ec24f4dc2b90f33.rlib --cap-lints=forbid` (signal: 9, SIGKILL: kill)
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "ef431a4ab89869871568eaa2170ec58bee8719348fa92984d9fe515b1d5b658d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ef431a4ab89869871568eaa2170ec58bee8719348fa92984d9fe515b1d5b658d", kill_on_drop: false }`
[INFO] [stdout] ef431a4ab89869871568eaa2170ec58bee8719348fa92984d9fe515b1d5b658d
