[INFO] crate rouille 3.0.0 is already in cache [INFO] extracting crate rouille 3.0.0 into work/ex/pr-62849/sources/master#435236b8877cdb98c82eaebfb7887782277265c5/reg/rouille/3.0.0 [INFO] extracting crate rouille 3.0.0 into work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/reg/rouille/3.0.0 [INFO] validating manifest of rouille-3.0.0 on toolchain master#435236b8877cdb98c82eaebfb7887782277265c5 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+435236b8877cdb98c82eaebfb7887782277265c5-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of rouille-3.0.0 on toolchain try#b5c7f157c20453dde8d47371abe73b32351b4e7f [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing rouille-3.0.0 [INFO] finished frobbing rouille-3.0.0 [INFO] frobbed toml for rouille-3.0.0 written to work/ex/pr-62849/sources/master#435236b8877cdb98c82eaebfb7887782277265c5/reg/rouille/3.0.0/Cargo.toml [INFO] started frobbing rouille-3.0.0 [INFO] finished frobbing rouille-3.0.0 [INFO] frobbed toml for rouille-3.0.0 written to work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/reg/rouille/3.0.0/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+435236b8877cdb98c82eaebfb7887782277265c5-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+435236b8877cdb98c82eaebfb7887782277265c5-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking rouille-3.0.0 against try#b5c7f157c20453dde8d47371abe73b32351b4e7f for pr-62849 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-62849/worker-1/try#b5c7f157c20453dde8d47371abe73b32351b4e7f:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/reg/rouille/3.0.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 18e4c023c8a5e61e1efc3b5f8d30e59877de96880a4b92e7e7cb40ea9ff5112d [INFO] running `"docker" "start" "-a" "18e4c023c8a5e61e1efc3b5f8d30e59877de96880a4b92e7e7cb40ea9ff5112d"` [INFO] [stderr] Checking gzip-header v0.3.0 [INFO] [stderr] Checking brotli-sys v0.3.2 [INFO] [stderr] Checking term v0.5.2 [INFO] [stderr] Checking threadpool v1.7.1 [INFO] [stderr] Compiling phf_generator v0.7.24 [INFO] [stderr] Checking tiny_http v0.6.2 [INFO] [stderr] Checking postgres-shared v0.4.2 [INFO] [stderr] Checking brotli2 v0.3.2 [INFO] [stderr] Checking deflate v0.7.20 [INFO] [stderr] Compiling phf_codegen v0.7.24 [INFO] [stderr] Checking postgres v0.15.2 [INFO] [stderr] Compiling mime_guess v1.8.7 [INFO] [stderr] Checking multipart v0.15.4 [INFO] [stderr] Checking rouille v3.0.0 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/cgi.rs:83:32 [INFO] [stderr] | [INFO] [stderr] 83 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/input/json.rs:92:32 [INFO] [stderr] | [INFO] [stderr] 92 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/input/post.rs:170:32 [INFO] [stderr] | [INFO] [stderr] 170 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/input/post.rs:255:32 [INFO] [stderr] | [INFO] [stderr] 255 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/input/plain.rs:64:32 [INFO] [stderr] | [INFO] [stderr] 64 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/proxy.rs:115:32 [INFO] [stderr] | [INFO] [stderr] 115 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/websocket/websocket.rs:22:24 [INFO] [stderr] | [INFO] [stderr] 22 | socket: Option>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReadWrite + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/websocket/websocket.rs:113:37 [INFO] [stderr] | [INFO] [stderr] 113 | fn build(&mut self, socket: Box) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReadWrite + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/response.rs:67:29 [INFO] [stderr] | [INFO] [stderr] 67 | pub upgrade: Option>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Upgrade + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/response.rs:692:15 [INFO] [stderr] | [INFO] [stderr] 692 | data: Box, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Read + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/response.rs:793:47 [INFO] [stderr] | [INFO] [stderr] 793 | pub fn into_reader_and_size(self) -> (Box, Option) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Read + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:294:65 [INFO] [stderr] | [INFO] [stderr] 294 | pub fn new(addr: A, handler: F) -> Result, Box> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Error + Send + Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:464:37 [INFO] [stderr] | [INFO] [stderr] 464 | fn build(&mut self, socket: Box); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReadWrite + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:476:32 [INFO] [stderr] | [INFO] [stderr] 476 | data: Arc>>>, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Read + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:827:15 [INFO] [stderr] | [INFO] [stderr] 827 | body: Box, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Read + Send` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/lib.rs:99:5 [INFO] [stderr] | [INFO] [stderr] 99 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/content_encoding.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/websocket/mod.rs:83:5 [INFO] [stderr] | [INFO] [stderr] 83 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/response.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::str::::trim_left': superseded by `trim_start` [INFO] [stderr] --> src/input/priority_header.rs:131:35 [INFO] [stderr] | [INFO] [stderr] 131 | let trimmed_p = p.trim_left(); [INFO] [stderr] | ^^^^^^^^^ help: replace the use of the deprecated item: `trim_start` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/cgi.rs:83:32 [INFO] [stderr] | [INFO] [stderr] 83 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/input/json.rs:92:32 [INFO] [stderr] | [INFO] [stderr] 92 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/input/post.rs:170:32 [INFO] [stderr] | [INFO] [stderr] 170 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/input/post.rs:255:32 [INFO] [stderr] | [INFO] [stderr] 255 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/try_or_400.rs:58:25 [INFO] [stderr] | [INFO] [stderr] 58 | let cause = err.cause().map(ErrJson::from_err).map(Box::new); [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/input/plain.rs:64:32 [INFO] [stderr] | [INFO] [stderr] 64 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/proxy.rs:115:32 [INFO] [stderr] | [INFO] [stderr] 115 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/websocket/websocket.rs:22:24 [INFO] [stderr] | [INFO] [stderr] 22 | socket: Option>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReadWrite + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/websocket/websocket.rs:113:37 [INFO] [stderr] | [INFO] [stderr] 113 | fn build(&mut self, socket: Box) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReadWrite + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/response.rs:67:29 [INFO] [stderr] | [INFO] [stderr] 67 | pub upgrade: Option>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Upgrade + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/response.rs:692:15 [INFO] [stderr] | [INFO] [stderr] 692 | data: Box, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Read + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/response.rs:793:47 [INFO] [stderr] | [INFO] [stderr] 793 | pub fn into_reader_and_size(self) -> (Box, Option) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Read + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:294:65 [INFO] [stderr] | [INFO] [stderr] 294 | pub fn new(addr: A, handler: F) -> Result, Box> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Error + Send + Sync` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:464:37 [INFO] [stderr] | [INFO] [stderr] 464 | fn build(&mut self, socket: Box); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ReadWrite + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:476:32 [INFO] [stderr] | [INFO] [stderr] 476 | data: Arc>>>, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Read + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:827:15 [INFO] [stderr] | [INFO] [stderr] 827 | body: Box, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn Read + Send` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/lib.rs:99:5 [INFO] [stderr] | [INFO] [stderr] 99 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/content_encoding.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/websocket/mod.rs:83:5 [INFO] [stderr] | [INFO] [stderr] 83 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/response.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::str::::trim_left': superseded by `trim_start` [INFO] [stderr] --> src/input/priority_header.rs:131:35 [INFO] [stderr] | [INFO] [stderr] 131 | let trimmed_p = p.trim_left(); [INFO] [stderr] | ^^^^^^^^^ help: replace the use of the deprecated item: `trim_start` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/try_or_400.rs:58:25 [INFO] [stderr] | [INFO] [stderr] 58 | let cause = err.cause().map(ErrJson::from_err).map(Box::new); [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/router.rs:428:42 [INFO] [stderr] | [INFO] [stderr] 428 | (GET) ["/math/{a}/plus/{b}", a: u32 , b: u32] => { 7. }, [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_a` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b` [INFO] [stderr] --> src/router.rs:428:51 [INFO] [stderr] | [INFO] [stderr] 428 | (GET) ["/math/{a}/plus/{b}", a: u32 , b: u32] => { 7. }, [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_b` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/router.rs:556:37 [INFO] [stderr] | [INFO] [stderr] 556 | (GET) ["/hello/{name}", name: String, id: u32] => { 1 }, // this should fail [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `id` [INFO] [stderr] --> src/router.rs:556:51 [INFO] [stderr] | [INFO] [stderr] 556 | (GET) ["/hello/{name}", name: String, id: u32] => { 1 }, // this should fail [INFO] [stderr] | ^^ help: consider prefixing with an underscore: `_id` [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> examples/hello-world.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 31 | / router!(request, [INFO] [stderr] 32 | | (GET) (/) => { [INFO] [stderr] 33 | | // If the request's URL is `/`, we jump here. [INFO] [stderr] 34 | | // This block builds a `Response` object that redirects to the `/hello/world`. [INFO] [stderr] ... | [INFO] [stderr] 81 | | _ => rouille::Response::empty_404() [INFO] [stderr] 82 | | ) [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] = note: this warning originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> examples/login-session.rs:93:5 [INFO] [stderr] | [INFO] [stderr] 93 | / router!(request, [INFO] [stderr] 94 | | (POST) (/login) => { [INFO] [stderr] 95 | | // This is the route that is called when the user wants to log in. [INFO] [stderr] 96 | | [INFO] [stderr] ... | [INFO] [stderr] 143 | | _ => () [INFO] [stderr] 144 | | ); [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] = note: this warning originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> examples/login-session.rs:93:5 [INFO] [stderr] | [INFO] [stderr] 93 | / router!(request, [INFO] [stderr] 94 | | (POST) (/login) => { [INFO] [stderr] 95 | | // This is the route that is called when the user wants to log in. [INFO] [stderr] 96 | | [INFO] [stderr] ... | [INFO] [stderr] 143 | | _ => () [INFO] [stderr] 144 | | ); [INFO] [stderr] | |______^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 27.64s [INFO] running `"docker" "inspect" "18e4c023c8a5e61e1efc3b5f8d30e59877de96880a4b92e7e7cb40ea9ff5112d"` [INFO] running `"docker" "rm" "-f" "18e4c023c8a5e61e1efc3b5f8d30e59877de96880a4b92e7e7cb40ea9ff5112d"` [INFO] [stdout] 18e4c023c8a5e61e1efc3b5f8d30e59877de96880a4b92e7e7cb40ea9ff5112d