[INFO] fetching crate radix-router 0.1.2...
[INFO] testing radix-router-0.1.2 against 1.54.0 for beta-1.55-1
[INFO] extracting crate radix-router 0.1.2 into /workspace/builds/worker-12/source
[INFO] validating manifest of crates.io crate radix-router 0.1.2 on toolchain 1.54.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate radix-router 0.1.2
[INFO] finished tweaking crates.io crate radix-router 0.1.2
[INFO] tweaked toml for crates.io crate radix-router 0.1.2 written to /workspace/builds/worker-12/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 90af3e32eed67c15473d218eec761f42c88a1571dc4c6cf9d6616d2e79bb9c56
[INFO] running `Command { std: "docker" "start" "-a" "90af3e32eed67c15473d218eec761f42c88a1571dc4c6cf9d6616d2e79bb9c56", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "90af3e32eed67c15473d218eec761f42c88a1571dc4c6cf9d6616d2e79bb9c56", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "90af3e32eed67c15473d218eec761f42c88a1571dc4c6cf9d6616d2e79bb9c56", kill_on_drop: false }`
[INFO] [stdout] 90af3e32eed67c15473d218eec761f42c88a1571dc4c6cf9d6616d2e79bb9c56
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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=warn" "-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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 03b8a3a08b2c014e37da489170bde4e33b51c342e9219c3476e0c97d24161677
[INFO] running `Command { std: "docker" "start" "-a" "03b8a3a08b2c014e37da489170bde4e33b51c342e9219c3476e0c97d24161677", kill_on_drop: false }`
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]    Compiling mio v0.6.23
[INFO] [stderr]    Compiling hyper v0.12.36
[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 bytes v0.4.12
[INFO] [stderr]    Compiling tokio-io v0.1.13
[INFO] [stderr]    Compiling http v0.1.21
[INFO] [stderr]    Compiling string v0.2.1
[INFO] [stderr]    Compiling tokio-buf v0.1.1
[INFO] [stderr]    Compiling tokio-reactor v0.1.12
[INFO] [stderr]    Compiling tokio-fs v0.1.7
[INFO] [stderr]    Compiling tokio-tcp v0.1.4
[INFO] [stderr]    Compiling tokio v0.1.22
[INFO] [stderr]    Compiling http-body v0.1.0
[INFO] [stderr]    Compiling h2 v0.1.26
[INFO] [stderr]    Compiling radix-router v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/router.rs:19:23
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub type BoxFut = Box<Future<Item = Response<Body>, Error = hyper::Error> + Send>;
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = Response<Body>, Error = hyper::Error> + Send`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/router.rs:45:24
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub type Handler = Box<Handle + Send>;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ help: use `dyn`: `dyn Handle + Send`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 14.67s
[INFO] running `Command { std: "docker" "inspect" "03b8a3a08b2c014e37da489170bde4e33b51c342e9219c3476e0c97d24161677", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "03b8a3a08b2c014e37da489170bde4e33b51c342e9219c3476e0c97d24161677", kill_on_drop: false }`
[INFO] [stdout] 03b8a3a08b2c014e37da489170bde4e33b51c342e9219c3476e0c97d24161677
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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=warn" "-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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c02a14cdff03f52a11174e3f7abe0bba420bbff7f223ae59622385c8f4cdb2a0
[INFO] running `Command { std: "docker" "start" "-a" "c02a14cdff03f52a11174e3f7abe0bba420bbff7f223ae59622385c8f4cdb2a0", kill_on_drop: false }`
[INFO] [stderr]    Compiling env_logger v0.5.13
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/router.rs:19:23
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub type BoxFut = Box<Future<Item = Response<Body>, Error = hyper::Error> + Send>;
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = Response<Body>, Error = hyper::Error> + Send`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/router.rs:45:24
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub type Handler = Box<Handle + Send>;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ help: use `dyn`: `dyn Handle + Send`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling pretty_env_logger v0.2.5
[INFO] [stderr]    Compiling radix-router v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/router.rs:19:23
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub type BoxFut = Box<Future<Item = Response<Body>, Error = hyper::Error> + Send>;
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = Response<Body>, Error = hyper::Error> + Send`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/router.rs:45:24
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub type Handler = Box<Handle + Send>;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ help: use `dyn`: `dyn Handle + Send`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/tree.rs:1278:17
[INFO] [stdout]      |
[INFO] [stdout] 1278 |             let mut recv = panic::catch_unwind(|| {
[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: variable does not need to be mutable
[INFO] [stdout]     --> src/tree.rs:1320:17
[INFO] [stdout]      |
[INFO] [stdout] 1320 |             let mut recv = panic::catch_unwind(|| {
[INFO] [stdout]      |                 ----^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/tree.rs:1366:17
[INFO] [stdout]      |
[INFO] [stdout] 1366 |             let mut recv = panic::catch_unwind(|| {
[INFO] [stdout]      |                 ----^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/tree.rs:1397:17
[INFO] [stdout]      |
[INFO] [stdout] 1397 |             let mut guard = match tree.lock() {
[INFO] [stdout]      |                 ----^^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/tree.rs:1413:17
[INFO] [stdout]      |
[INFO] [stdout] 1413 |             let mut guard = match tree.lock() {
[INFO] [stdout]      |                 ----^^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]     --> src/tree.rs:1330:24
[INFO] [stdout]      |
[INFO] [stdout] 1330 |                 panic!(panic_msg);
[INFO] [stdout]      |                        ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(non_fmt_panic)]` on by default
[INFO] [stdout]      = note: this is no longer accepted in Rust 2021
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]      |
[INFO] [stdout] 1330 |                 panic!("{}", panic_msg);
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]      |
[INFO] [stdout] 1330 |                 std::panic::panic_any(panic_msg);
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 7.02s
[INFO] running `Command { std: "docker" "inspect" "c02a14cdff03f52a11174e3f7abe0bba420bbff7f223ae59622385c8f4cdb2a0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c02a14cdff03f52a11174e3f7abe0bba420bbff7f223ae59622385c8f4cdb2a0", kill_on_drop: false }`
[INFO] [stdout] c02a14cdff03f52a11174e3f7abe0bba420bbff7f223ae59622385c8f4cdb2a0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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=warn" "-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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a8a024dc1b7c27ebd51b6f913d65629d397da632dfa23d74c87f85de83f2741f
[INFO] running `Command { std: "docker" "start" "-a" "a8a024dc1b7c27ebd51b6f913d65629d397da632dfa23d74c87f85de83f2741f", kill_on_drop: false }`
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/router.rs:19:23
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub type BoxFut = Box<Future<Item = Response<Body>, Error = hyper::Error> + Send>;
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = Response<Body>, Error = hyper::Error> + Send`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/router.rs:45:24
[INFO] [stderr]    |
[INFO] [stderr] 45 | pub type Handler = Box<Handle + Send>;
[INFO] [stderr]    |                        ^^^^^^^^^^^^^ help: use `dyn`: `dyn Handle + Send`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: 2 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/router.rs:19:23
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub type BoxFut = Box<Future<Item = Response<Body>, Error = hyper::Error> + Send>;
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = Response<Body>, Error = hyper::Error> + Send`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/router.rs:45:24
[INFO] [stderr]    |
[INFO] [stderr] 45 | pub type Handler = Box<Handle + Send>;
[INFO] [stderr]    |                        ^^^^^^^^^^^^^ help: use `dyn`: `dyn Handle + Send`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/tree.rs:1278:17
[INFO] [stderr]      |
[INFO] [stderr] 1278 |             let mut recv = panic::catch_unwind(|| {
[INFO] [stderr]      |                 ----^^^^
[INFO] [stderr]      |                 |
[INFO] [stderr]      |                 help: remove this `mut`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/tree.rs:1320:17
[INFO] [stderr]      |
[INFO] [stderr] 1320 |             let mut recv = panic::catch_unwind(|| {
[INFO] [stderr]      |                 ----^^^^
[INFO] [stderr]      |                 |
[INFO] [stderr]      |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/tree.rs:1366:17
[INFO] [stderr]      |
[INFO] [stderr] 1366 |             let mut recv = panic::catch_unwind(|| {
[INFO] [stderr]      |                 ----^^^^
[INFO] [stderr]      |                 |
[INFO] [stderr]      |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/tree.rs:1397:17
[INFO] [stderr]      |
[INFO] [stderr] 1397 |             let mut guard = match tree.lock() {
[INFO] [stderr]      |                 ----^^^^^
[INFO] [stderr]      |                 |
[INFO] [stderr]      |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/tree.rs:1413:17
[INFO] [stderr]      |
[INFO] [stderr] 1413 |             let mut guard = match tree.lock() {
[INFO] [stderr]      |                 ----^^^^^
[INFO] [stderr]      |                 |
[INFO] [stderr]      |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]     --> src/tree.rs:1330:24
[INFO] [stderr]      |
[INFO] [stderr] 1330 |                 panic!(panic_msg);
[INFO] [stderr]      |                        ^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(non_fmt_panic)]` on by default
[INFO] [stderr]      = note: this is no longer accepted in Rust 2021
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]      |
[INFO] [stderr] 1330 |                 panic!("{}", panic_msg);
[INFO] [stderr]      |                        ^^^^^
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]      |
[INFO] [stderr] 1330 |                 std::panic::panic_any(panic_msg);
[INFO] [stderr]      |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: 8 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/radix_router-d516a582c001b380)
[INFO] [stdout] 
[INFO] [stdout] running 16 tests
[INFO] [stdout] test tree::tests::test_count_params ... ok
[INFO] [stdout] test path::tests::test_path_clean ... ok
[INFO] [stdout] test router::tests::params ... ok
[INFO] [stdout] test tree::tests::test_tree_add_and_get ... ok
[INFO] [stdout] test tree::tests::test_tree_root_trailing_slash_redirect ... ok
[INFO] [stdout] test tree::tests::test_tree_wildcard ... ok
[INFO] [stdout] test tree::tests::test_tree_find_case_insensitive_path ... ok
[INFO] [stdout] test tree::tests::test_tree_trailing_slash_redirect ... ok
[INFO] [stdout] test router::tests::handle_ivalid_path - should panic ... ok
[INFO] [stdout] test tree::tests::test_tree_catch_all_conflict ... ok
[INFO] [stdout] test tree::tests::test_tree_catch_all_conflict_root ... ok
[INFO] [stdout] test tree::tests::test_tree_double_wildcard ... ok
[INFO] [stdout] test tree::tests::test_empty_wildcard_name ... ok
[INFO] [stdout] test tree::tests::test_tree_duplicate_path ... ok
[INFO] [stdout] test tree::tests::test_tree_wildcard_conflict ... ok
[INFO] [stdout] test tree::tests::test_tree_child_conflict ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests radix-router
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test src/router.rs - router::Router<T>::group (line 211) ... ignored
[INFO] [stdout] test src/router.rs - router::Router<Handler>::serve_files (line 436) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 1.45s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a8a024dc1b7c27ebd51b6f913d65629d397da632dfa23d74c87f85de83f2741f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a8a024dc1b7c27ebd51b6f913d65629d397da632dfa23d74c87f85de83f2741f", kill_on_drop: false }`
[INFO] [stdout] a8a024dc1b7c27ebd51b6f913d65629d397da632dfa23d74c87f85de83f2741f
