[INFO] fetching crate sidekiq-rs 0.7.0...
[INFO] checking sidekiq-rs-0.7.0 against master#5518eaa946291f00471af8b254b2a1715f234882 for pr-120393
[INFO] extracting crate sidekiq-rs 0.7.0 into /workspace/builds/worker-4-tc1/source
[INFO] validating manifest of crates.io crate sidekiq-rs 0.7.0 on toolchain 5518eaa946291f00471af8b254b2a1715f234882
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate sidekiq-rs 0.7.0
[INFO] finished tweaking crates.io crate sidekiq-rs 0.7.0
[INFO] tweaked toml for crates.io crate sidekiq-rs 0.7.0 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded sha1 v0.2.0
[INFO] [stderr]   Downloaded serde_json v0.9.10
[INFO] [stderr]   Downloaded chan v0.1.23
[INFO] [stderr]   Downloaded itoa v0.3.4
[INFO] [stderr]   Downloaded chrono v0.3.0
[INFO] [stderr]   Downloaded r2d2 v0.7.4
[INFO] [stderr]   Downloaded scheduled-thread-pool v0.1.0
[INFO] [stderr]   Downloaded redis v0.8.0
[INFO] [stderr]   Downloaded r2d2_redis v0.6.0
[INFO] [stderr]   Downloaded structopt-derive v0.0.3
[INFO] [stderr]   Downloaded hado v0.1.1
[INFO] [stderr]   Downloaded random_choice v0.3.2
[INFO] [stderr]   Downloaded structopt v0.0.3
[INFO] [stderr]   Downloaded chan-signal v0.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bc180af4316d01b479315413ec42a2b0b50127669775e334c759d3d642b73691
[INFO] running `Command { std: "docker" "start" "-a" "bc180af4316d01b479315413ec42a2b0b50127669775e334c759d3d642b73691", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bc180af4316d01b479315413ec42a2b0b50127669775e334c759d3d642b73691", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bc180af4316d01b479315413ec42a2b0b50127669775e334c759d3d642b73691", kill_on_drop: false }`
[INFO] [stdout] bc180af4316d01b479315413ec42a2b0b50127669775e334c759d3d642b73691
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 710fbf37e1377c6485d60c586c6f7ce0b2b0852ffe93e33cde6d6ee45cb8fee6
[INFO] running `Command { std: "docker" "start" "-a" "710fbf37e1377c6485d60c586c6f7ce0b2b0852ffe93e33cde6d6ee45cb8fee6", kill_on_drop: false }`
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]     Checking unicode-bidi v0.3.15
[INFO] [stderr]     Checking log v0.4.20
[INFO] [stderr]     Checking matches v0.1.10
[INFO] [stderr]     Checking ucd-util v0.1.10
[INFO] [stderr]    Compiling redis v0.8.0
[INFO] [stderr]     Checking percent-encoding v1.0.1
[INFO] [stderr]     Checking antidote v1.0.0
[INFO] [stderr]     Checking gimli v0.28.1
[INFO] [stderr]    Compiling regex v0.2.11
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking miniz_oxide v0.7.1
[INFO] [stderr]    Compiling backtrace v0.3.69
[INFO] [stderr]     Checking tinyvec v1.6.0
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking scheduled-thread-pool v0.1.0
[INFO] [stderr]     Checking regex-syntax v0.5.6
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking thread_local v0.3.6
[INFO] [stderr]     Checking aho-corasick v0.6.10
[INFO] [stderr]     Checking sha1 v0.2.0
[INFO] [stderr]     Checking utf8-ranges v1.0.5
[INFO] [stderr]     Checking serde v0.9.15
[INFO] [stderr]     Checking bit-vec v0.4.4
[INFO] [stderr]    Compiling unicode-xid v0.0.4
[INFO] [stderr]     Checking rustc-demangle v0.1.23
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking r2d2 v0.7.4
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking futures v0.1.31
[INFO] [stderr]     Checking strsim v0.8.0
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]     Checking itoa v0.3.4
[INFO] [stderr]     Checking dtoa v0.4.8
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking bit-set v0.4.0
[INFO] [stderr]     Checking lazy_static v0.2.11
[INFO] [stderr]     Checking ansi_term v0.12.1
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]     Checking threadpool v1.8.1
[INFO] [stderr]     Checking hado v0.1.1
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]     Checking chan v0.1.23
[INFO] [stderr]     Checking random_choice v0.3.2
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]    Compiling syn v0.11.11
[INFO] [stderr]     Checking chan-signal v0.2.0
[INFO] [stderr]     Checking unicode-normalization v0.1.22
[INFO] [stderr]     Checking idna v0.1.5
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking futures-cpupool v0.1.8
[INFO] [stderr]     Checking url v1.7.2
[INFO] [stderr]     Checking num v0.1.42
[INFO] [stderr]    Compiling structopt-derive v0.0.3
[INFO] [stderr]     Checking addr2line v0.21.0
[INFO] [stderr]     Checking env_logger v0.4.3
[INFO] [stderr]     Checking structopt v0.0.3
[INFO] [stderr]     Checking serde_json v0.9.10
[INFO] [stderr]     Checking chrono v0.3.0
[INFO] [stderr]     Checking r2d2_redis v0.6.0
[INFO] [stderr]     Checking error-chain v0.10.0
[INFO] [stderr]     Checking sidekiq-rs v0.7.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:66:23
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let manager = try!(RedisConnectionManager::new(redis));
[INFO] [stdout]    |                       ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:67:20
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let pool = try!(Pool::new(config, manager));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:244:25
[INFO] [stdout]     |
[INFO] [stdout] 244 |                 let _ = try!(self.report_processed(n));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:248:25
[INFO] [stdout]     |
[INFO] [stdout] 248 |                 let _ = try!(self.report_failed(n));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:285:9
[INFO] [stdout]     |
[INFO] [stdout] 285 |         try!(Pipeline::new()
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:284:20
[INFO] [stdout]     |
[INFO] [stdout] 284 |         let conn = try!(self.redispool.get());
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:297:26
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let connection = try!(self.redispool.get());
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:309:26
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let connection = try!(self.redispool.get());
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/worker.rs:156:25
[INFO] [stdout]     |
[INFO] [stdout] 156 |             Ok(r) => Ok(try!(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/worker.rs:201:20
[INFO] [stdout]     |
[INFO] [stdout] 201 |         let conn = try!(self.pool.get());
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:66:23
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let manager = try!(RedisConnectionManager::new(redis));
[INFO] [stdout]    |                       ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:67:20
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let pool = try!(Pool::new(config, manager));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:244:25
[INFO] [stdout]     |
[INFO] [stdout] 244 |                 let _ = try!(self.report_processed(n));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:248:25
[INFO] [stdout]     |
[INFO] [stdout] 248 |                 let _ = try!(self.report_failed(n));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:285:9
[INFO] [stdout]     |
[INFO] [stdout] 285 |         try!(Pipeline::new()
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:284:20
[INFO] [stdout]     |
[INFO] [stdout] 284 |         let conn = try!(self.redispool.get());
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:297:26
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let connection = try!(self.redispool.get());
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:309:26
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let connection = try!(self.redispool.get());
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/worker.rs:156:25
[INFO] [stdout]     |
[INFO] [stdout] 156 |             Ok(r) => Ok(try!(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/worker.rs:201:20
[INFO] [stdout]     |
[INFO] [stdout] 201 |         let conn = try!(self.pool.get());
[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/errors.rs:2:1
[INFO] [stdout]    |
[INFO] [stdout] 2  | / error_chain!{
[INFO] [stdout] 3  | |     foreign_links {
[INFO] [stdout] 4  | |          RedisError(::redis::RedisError) ;
[INFO] [stdout] 5  | |          JsonError(::serde_json::Error);
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     }
[INFO] [stdout] 23 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server.rs:44:40
[INFO] [stdout]    |
[INFO] [stdout] 44 |     job_handlers: BTreeMap<String, Box<JobHandler + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     job_handlers: BTreeMap<String, Box<dyn JobHandler + 'a>>,
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server.rs:45:26
[INFO] [stdout]    |
[INFO] [stdout] 45 |     middlewares: Vec<Box<MiddleWare + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 |     middlewares: Vec<Box<dyn MiddleWare + 'a>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:14:33
[INFO] [stdout]    |
[INFO] [stdout] 14 |          JobHandlerError(e: Box<StdError+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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |          JobHandlerError(e: Box<dyn StdError+Send>) {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:18:33
[INFO] [stdout]    |
[INFO] [stdout] 18 |          MiddleWareError(e: Box<StdError+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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |          MiddleWareError(e: Box<dyn StdError+Send>) {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:35:36
[INFO] [stdout]    |
[INFO] [stdout] 35 |     handlers: BTreeMap<String, Box<JobHandler + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 35 |     handlers: BTreeMap<String, Box<dyn JobHandler + 'a>>,
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:36:26
[INFO] [stdout]    |
[INFO] [stdout] 36 |     middlewares: Vec<Box<MiddleWare + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     middlewares: Vec<Box<dyn MiddleWare + 'a>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job_handler.rs:10:33
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn cloned(&mut self) -> Box<JobHandler>;
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn cloned(&mut self) -> Box<dyn JobHandler>;
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job_handler.rs:19:33
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn cloned(&mut self) -> Box<JobHandler> {
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn cloned(&mut self) -> Box<dyn JobHandler> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/worker.rs:165:73
[INFO] [stdout]     |
[INFO] [stdout] 165 | ...                   chain: &mut [Box<MiddleWare + 'a>],
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |                                                        chain: &mut [Box<dyn MiddleWare + 'a>],
[INFO] [stdout]     |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:50:47
[INFO] [stdout]    |
[INFO] [stdout] 50 |                handlers: BTreeMap<String, Box<JobHandler>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 50 |                handlers: BTreeMap<String, Box<dyn JobHandler>>,
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:51:37
[INFO] [stdout]    |
[INFO] [stdout] 51 |                middlewares: Vec<Box<MiddleWare>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |                middlewares: Vec<Box<dyn MiddleWare>>,
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub type NextFunc<'a> = &'a mut (FnMut(&mut Job, RedisPool) -> MiddleWareResult + 'a);
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub type NextFunc<'a> = &'a mut (dyn FnMut(&mut Job, RedisPool) -> MiddleWareResult + 'a);
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:14:33
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn cloned(&mut self) -> Box<MiddleWare>;
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn cloned(&mut self) -> Box<dyn MiddleWare>;
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:23:33
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn cloned(&mut self) -> Box<MiddleWare> {
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn cloned(&mut self) -> Box<dyn MiddleWare> {
[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/errors.rs:2:1
[INFO] [stdout]    |
[INFO] [stdout] 2  | / error_chain!{
[INFO] [stdout] 3  | |     foreign_links {
[INFO] [stdout] 4  | |          RedisError(::redis::RedisError) ;
[INFO] [stdout] 5  | |          JsonError(::serde_json::Error);
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     }
[INFO] [stdout] 23 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server.rs:44:40
[INFO] [stdout]    |
[INFO] [stdout] 44 |     job_handlers: BTreeMap<String, Box<JobHandler + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     job_handlers: BTreeMap<String, Box<dyn JobHandler + 'a>>,
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server.rs:45:26
[INFO] [stdout]    |
[INFO] [stdout] 45 |     middlewares: Vec<Box<MiddleWare + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 |     middlewares: Vec<Box<dyn MiddleWare + 'a>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:14:33
[INFO] [stdout]    |
[INFO] [stdout] 14 |          JobHandlerError(e: Box<StdError+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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |          JobHandlerError(e: Box<dyn StdError+Send>) {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:18:33
[INFO] [stdout]    |
[INFO] [stdout] 18 |          MiddleWareError(e: Box<StdError+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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |          MiddleWareError(e: Box<dyn StdError+Send>) {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:35:36
[INFO] [stdout]    |
[INFO] [stdout] 35 |     handlers: BTreeMap<String, Box<JobHandler + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 35 |     handlers: BTreeMap<String, Box<dyn JobHandler + 'a>>,
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:36:26
[INFO] [stdout]    |
[INFO] [stdout] 36 |     middlewares: Vec<Box<MiddleWare + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     middlewares: Vec<Box<dyn MiddleWare + 'a>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job_handler.rs:10:33
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn cloned(&mut self) -> Box<JobHandler>;
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn cloned(&mut self) -> Box<dyn JobHandler>;
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job_handler.rs:19:33
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn cloned(&mut self) -> Box<JobHandler> {
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn cloned(&mut self) -> Box<dyn JobHandler> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/worker.rs:165:73
[INFO] [stdout]     |
[INFO] [stdout] 165 | ...                   chain: &mut [Box<MiddleWare + 'a>],
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |                                                        chain: &mut [Box<dyn MiddleWare + 'a>],
[INFO] [stdout]     |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:50:47
[INFO] [stdout]    |
[INFO] [stdout] 50 |                handlers: BTreeMap<String, Box<JobHandler>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 50 |                handlers: BTreeMap<String, Box<dyn JobHandler>>,
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:51:37
[INFO] [stdout]    |
[INFO] [stdout] 51 |                middlewares: Vec<Box<MiddleWare>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |                middlewares: Vec<Box<dyn MiddleWare>>,
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub type NextFunc<'a> = &'a mut (FnMut(&mut Job, RedisPool) -> MiddleWareResult + 'a);
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub type NextFunc<'a> = &'a mut (dyn FnMut(&mut Job, RedisPool) -> MiddleWareResult + 'a);
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:14:33
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn cloned(&mut self) -> Box<MiddleWare>;
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn cloned(&mut self) -> Box<dyn MiddleWare>;
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:23:33
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn cloned(&mut self) -> Box<MiddleWare> {
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn cloned(&mut self) -> Box<dyn MiddleWare> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `threadpool::ThreadPool::new_with_name`: use ThreadPool::with_name
[INFO] [stdout]   --> src/server.rs:70:37
[INFO] [stdout]    |
[INFO] [stdout] 70 |             threadpool: ThreadPool::new_with_name("worker".into(), concurrency),
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `threadpool::ThreadPool::new_with_name`: use ThreadPool::with_name
[INFO] [stdout]   --> src/server.rs:70:37
[INFO] [stdout]    |
[INFO] [stdout] 70 |             threadpool: ThreadPool::new_with_name("worker".into(), concurrency),
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/errors.rs:2:1
[INFO] [stdout]    |
[INFO] [stdout] 2  | / error_chain!{
[INFO] [stdout] 3  | |     foreign_links {
[INFO] [stdout] 4  | |          RedisError(::redis::RedisError) ;
[INFO] [stdout] 5  | |          JsonError(::serde_json::Error);
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     }
[INFO] [stdout] 23 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (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::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/errors.rs:2:1
[INFO] [stdout]    |
[INFO] [stdout] 2  | / error_chain!{
[INFO] [stdout] 3  | |     foreign_links {
[INFO] [stdout] 4  | |          RedisError(::redis::RedisError) ;
[INFO] [stdout] 5  | |          JsonError(::serde_json::Error);
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     }
[INFO] [stdout] 23 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/middleware.rs:28:57
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub fn peek_middleware(job: &mut Job, redis: RedisPool, mut next: NextFunc) -> MiddleWareResult {
[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/middleware.rs:35:58
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn retry_middleware(job: &mut Job, redis: RedisPool, mut next: NextFunc) -> MiddleWareResult {
[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/middleware.rs:71:31
[INFO] [stdout]    |
[INFO] [stdout] 71 | ...                   mut next: NextFunc)
[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/middleware.rs:28:57
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub fn peek_middleware(job: &mut Job, redis: RedisPool, mut next: NextFunc) -> MiddleWareResult {
[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/middleware.rs:35:58
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn retry_middleware(job: &mut Job, redis: RedisPool, mut next: NextFunc) -> MiddleWareResult {
[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/middleware.rs:71:31
[INFO] [stdout]    |
[INFO] [stdout] 71 | ...                   mut next: NextFunc)
[INFO] [stdout]    |                       ----^^^^
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 30 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 30 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 3.15s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: redis v0.8.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "710fbf37e1377c6485d60c586c6f7ce0b2b0852ffe93e33cde6d6ee45cb8fee6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "710fbf37e1377c6485d60c586c6f7ce0b2b0852ffe93e33cde6d6ee45cb8fee6", kill_on_drop: false }`
[INFO] [stdout] 710fbf37e1377c6485d60c586c6f7ce0b2b0852ffe93e33cde6d6ee45cb8fee6
[INFO] checking sidekiq-rs-0.7.0 against try#7622c0f807a4e13c4db886a1681bf343795692df+rustflags=-Dnon_local_definitions for pr-120393
[INFO] extracting crate sidekiq-rs 0.7.0 into /workspace/builds/worker-4-tc2/source
[INFO] validating manifest of crates.io crate sidekiq-rs 0.7.0 on toolchain 7622c0f807a4e13c4db886a1681bf343795692df
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate sidekiq-rs 0.7.0
[INFO] finished tweaking crates.io crate sidekiq-rs 0.7.0
[INFO] tweaked toml for crates.io crate sidekiq-rs 0.7.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b513c56f1587c9247d34751998f73230ff8e1d6970c3976f552910441d884588
[INFO] running `Command { std: "docker" "start" "-a" "b513c56f1587c9247d34751998f73230ff8e1d6970c3976f552910441d884588", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b513c56f1587c9247d34751998f73230ff8e1d6970c3976f552910441d884588", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b513c56f1587c9247d34751998f73230ff8e1d6970c3976f552910441d884588", kill_on_drop: false }`
[INFO] [stdout] b513c56f1587c9247d34751998f73230ff8e1d6970c3976f552910441d884588
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dnon_local_definitions" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 25c2432e08b7ce495458a519d6a57686b4a7fa3e397b658bafae1895861fee21
[INFO] running `Command { std: "docker" "start" "-a" "25c2432e08b7ce495458a519d6a57686b4a7fa3e397b658bafae1895861fee21", kill_on_drop: false }`
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]     Checking matches v0.1.10
[INFO] [stderr]     Checking log v0.4.20
[INFO] [stderr]     Checking unicode-bidi v0.3.15
[INFO] [stderr]     Checking ucd-util v0.1.10
[INFO] [stderr]     Checking antidote v1.0.0
[INFO] [stderr]    Compiling regex v0.2.11
[INFO] [stderr]     Checking percent-encoding v1.0.1
[INFO] [stderr]     Checking gimli v0.28.1
[INFO] [stderr]    Compiling redis v0.8.0
[INFO] [stderr]     Checking rustc-demangle v0.1.23
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]    Compiling backtrace v0.3.69
[INFO] [stderr]     Checking tinyvec v1.6.0
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking regex-syntax v0.5.6
[INFO] [stderr]     Checking scheduled-thread-pool v0.1.0
[INFO] [stderr]     Checking thread_local v0.3.6
[INFO] [stderr]     Checking miniz_oxide v0.7.1
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]     Checking aho-corasick v0.6.10
[INFO] [stderr]     Checking utf8-ranges v1.0.5
[INFO] [stderr]     Checking bit-vec v0.4.4
[INFO] [stderr]     Checking sha1 v0.2.0
[INFO] [stderr]    Compiling unicode-xid v0.0.4
[INFO] [stderr]     Checking serde v0.9.15
[INFO] [stderr]     Checking r2d2 v0.7.4
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking bit-set v0.4.0
[INFO] [stderr]     Checking lazy_static v0.2.11
[INFO] [stderr]     Checking itoa v0.3.4
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]     Checking ansi_term v0.12.1
[INFO] [stderr]     Checking dtoa v0.4.8
[INFO] [stderr]     Checking futures v0.1.31
[INFO] [stderr]     Checking strsim v0.8.0
[INFO] [stderr]     Checking threadpool v1.8.1
[INFO] [stderr]     Checking hado v0.1.1
[INFO] [stderr]    Compiling syn v0.11.11
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]     Checking chan v0.1.23
[INFO] [stderr]     Checking random_choice v0.3.2
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking chan-signal v0.2.0
[INFO] [stderr]     Checking unicode-normalization v0.1.22
[INFO] [stderr]     Checking idna v0.1.5
[INFO] [stderr]     Checking futures-cpupool v0.1.8
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]    Compiling structopt-derive v0.0.3
[INFO] [stderr]     Checking num v0.1.42
[INFO] [stderr]     Checking url v1.7.2
[INFO] [stderr]     Checking serde_json v0.9.10
[INFO] [stderr]     Checking chrono v0.3.0
[INFO] [stderr]     Checking addr2line v0.21.0
[INFO] [stderr]     Checking structopt v0.0.3
[INFO] [stderr]     Checking env_logger v0.4.3
[INFO] [stderr]     Checking error-chain v0.10.0
[INFO] [stderr]     Checking r2d2_redis v0.6.0
[INFO] [stderr]     Checking sidekiq-rs v0.7.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:66:23
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let manager = try!(RedisConnectionManager::new(redis));
[INFO] [stdout]    |                       ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:67:20
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let pool = try!(Pool::new(config, manager));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:244:25
[INFO] [stdout]     |
[INFO] [stdout] 244 |                 let _ = try!(self.report_processed(n));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:248:25
[INFO] [stdout]     |
[INFO] [stdout] 248 |                 let _ = try!(self.report_failed(n));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:285:9
[INFO] [stdout]     |
[INFO] [stdout] 285 |         try!(Pipeline::new()
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:284:20
[INFO] [stdout]     |
[INFO] [stdout] 284 |         let conn = try!(self.redispool.get());
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:297:26
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let connection = try!(self.redispool.get());
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:309:26
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let connection = try!(self.redispool.get());
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/worker.rs:156:25
[INFO] [stdout]     |
[INFO] [stdout] 156 |             Ok(r) => Ok(try!(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/worker.rs:201:20
[INFO] [stdout]     |
[INFO] [stdout] 201 |         let conn = try!(self.pool.get());
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:66:23
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let manager = try!(RedisConnectionManager::new(redis));
[INFO] [stdout]    |                       ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/server.rs:67:20
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let pool = try!(Pool::new(config, manager));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:244:25
[INFO] [stdout]     |
[INFO] [stdout] 244 |                 let _ = try!(self.report_processed(n));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:248:25
[INFO] [stdout]     |
[INFO] [stdout] 248 |                 let _ = try!(self.report_failed(n));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:285:9
[INFO] [stdout]     |
[INFO] [stdout] 285 |         try!(Pipeline::new()
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:284:20
[INFO] [stdout]     |
[INFO] [stdout] 284 |         let conn = try!(self.redispool.get());
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:297:26
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let connection = try!(self.redispool.get());
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server.rs:309:26
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let connection = try!(self.redispool.get());
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/worker.rs:156:25
[INFO] [stdout]     |
[INFO] [stdout] 156 |             Ok(r) => Ok(try!(r)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/worker.rs:201:20
[INFO] [stdout]     |
[INFO] [stdout] 201 |         let conn = try!(self.pool.get());
[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/errors.rs:2:1
[INFO] [stdout]    |
[INFO] [stdout] 2  | / error_chain!{
[INFO] [stdout] 3  | |     foreign_links {
[INFO] [stdout] 4  | |          RedisError(::redis::RedisError) ;
[INFO] [stdout] 5  | |          JsonError(::serde_json::Error);
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     }
[INFO] [stdout] 23 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server.rs:44:40
[INFO] [stdout]    |
[INFO] [stdout] 44 |     job_handlers: BTreeMap<String, Box<JobHandler + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     job_handlers: BTreeMap<String, Box<dyn JobHandler + 'a>>,
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server.rs:45:26
[INFO] [stdout]    |
[INFO] [stdout] 45 |     middlewares: Vec<Box<MiddleWare + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 |     middlewares: Vec<Box<dyn MiddleWare + 'a>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:14:33
[INFO] [stdout]    |
[INFO] [stdout] 14 |          JobHandlerError(e: Box<StdError+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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |          JobHandlerError(e: Box<dyn StdError+Send>) {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:18:33
[INFO] [stdout]    |
[INFO] [stdout] 18 |          MiddleWareError(e: Box<StdError+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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |          MiddleWareError(e: Box<dyn StdError+Send>) {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:35:36
[INFO] [stdout]    |
[INFO] [stdout] 35 |     handlers: BTreeMap<String, Box<JobHandler + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 35 |     handlers: BTreeMap<String, Box<dyn JobHandler + 'a>>,
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:36:26
[INFO] [stdout]    |
[INFO] [stdout] 36 |     middlewares: Vec<Box<MiddleWare + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     middlewares: Vec<Box<dyn MiddleWare + 'a>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job_handler.rs:10:33
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn cloned(&mut self) -> Box<JobHandler>;
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn cloned(&mut self) -> Box<dyn JobHandler>;
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job_handler.rs:19:33
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn cloned(&mut self) -> Box<JobHandler> {
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn cloned(&mut self) -> Box<dyn JobHandler> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/worker.rs:165:73
[INFO] [stdout]     |
[INFO] [stdout] 165 | ...                   chain: &mut [Box<MiddleWare + 'a>],
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |                                                        chain: &mut [Box<dyn MiddleWare + 'a>],
[INFO] [stdout]     |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:50:47
[INFO] [stdout]    |
[INFO] [stdout] 50 |                handlers: BTreeMap<String, Box<JobHandler>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 50 |                handlers: BTreeMap<String, Box<dyn JobHandler>>,
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:51:37
[INFO] [stdout]    |
[INFO] [stdout] 51 |                middlewares: Vec<Box<MiddleWare>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |                middlewares: Vec<Box<dyn MiddleWare>>,
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub type NextFunc<'a> = &'a mut (FnMut(&mut Job, RedisPool) -> MiddleWareResult + 'a);
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub type NextFunc<'a> = &'a mut (dyn FnMut(&mut Job, RedisPool) -> MiddleWareResult + 'a);
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:14:33
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn cloned(&mut self) -> Box<MiddleWare>;
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn cloned(&mut self) -> Box<dyn MiddleWare>;
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:23:33
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn cloned(&mut self) -> Box<MiddleWare> {
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn cloned(&mut self) -> Box<dyn MiddleWare> {
[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/errors.rs:2:1
[INFO] [stdout]    |
[INFO] [stdout] 2  | / error_chain!{
[INFO] [stdout] 3  | |     foreign_links {
[INFO] [stdout] 4  | |          RedisError(::redis::RedisError) ;
[INFO] [stdout] 5  | |          JsonError(::serde_json::Error);
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     }
[INFO] [stdout] 23 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server.rs:44:40
[INFO] [stdout]    |
[INFO] [stdout] 44 |     job_handlers: BTreeMap<String, Box<JobHandler + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     job_handlers: BTreeMap<String, Box<dyn JobHandler + 'a>>,
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/server.rs:45:26
[INFO] [stdout]    |
[INFO] [stdout] 45 |     middlewares: Vec<Box<MiddleWare + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 |     middlewares: Vec<Box<dyn MiddleWare + 'a>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:14:33
[INFO] [stdout]    |
[INFO] [stdout] 14 |          JobHandlerError(e: Box<StdError+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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |          JobHandlerError(e: Box<dyn StdError+Send>) {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:18:33
[INFO] [stdout]    |
[INFO] [stdout] 18 |          MiddleWareError(e: Box<StdError+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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |          MiddleWareError(e: Box<dyn StdError+Send>) {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:35:36
[INFO] [stdout]    |
[INFO] [stdout] 35 |     handlers: BTreeMap<String, Box<JobHandler + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 35 |     handlers: BTreeMap<String, Box<dyn JobHandler + 'a>>,
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:36:26
[INFO] [stdout]    |
[INFO] [stdout] 36 |     middlewares: Vec<Box<MiddleWare + 'a>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |     middlewares: Vec<Box<dyn MiddleWare + 'a>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job_handler.rs:10:33
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn cloned(&mut self) -> Box<JobHandler>;
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn cloned(&mut self) -> Box<dyn JobHandler>;
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job_handler.rs:19:33
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn cloned(&mut self) -> Box<JobHandler> {
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn cloned(&mut self) -> Box<dyn JobHandler> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/worker.rs:165:73
[INFO] [stdout]     |
[INFO] [stdout] 165 | ...                   chain: &mut [Box<MiddleWare + 'a>],
[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: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |                                                        chain: &mut [Box<dyn MiddleWare + 'a>],
[INFO] [stdout]     |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:50:47
[INFO] [stdout]    |
[INFO] [stdout] 50 |                handlers: BTreeMap<String, Box<JobHandler>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 50 |                handlers: BTreeMap<String, Box<dyn JobHandler>>,
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/worker.rs:51:37
[INFO] [stdout]    |
[INFO] [stdout] 51 |                middlewares: Vec<Box<MiddleWare>>,
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |                middlewares: Vec<Box<dyn MiddleWare>>,
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub type NextFunc<'a> = &'a mut (FnMut(&mut Job, RedisPool) -> MiddleWareResult + 'a);
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub type NextFunc<'a> = &'a mut (dyn FnMut(&mut Job, RedisPool) -> MiddleWareResult + 'a);
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:14:33
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn cloned(&mut self) -> Box<MiddleWare>;
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn cloned(&mut self) -> Box<dyn MiddleWare>;
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/middleware.rs:23:33
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn cloned(&mut self) -> Box<MiddleWare> {
[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: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn cloned(&mut self) -> Box<dyn MiddleWare> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `threadpool::ThreadPool::new_with_name`: use ThreadPool::with_name
[INFO] [stdout]   --> src/server.rs:70:37
[INFO] [stdout]    |
[INFO] [stdout] 70 |             threadpool: ThreadPool::new_with_name("worker".into(), concurrency),
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `threadpool::ThreadPool::new_with_name`: use ThreadPool::with_name
[INFO] [stdout]   --> src/server.rs:70:37
[INFO] [stdout]    |
[INFO] [stdout] 70 |             threadpool: ThreadPool::new_with_name("worker".into(), concurrency),
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/errors.rs:2:1
[INFO] [stdout]    |
[INFO] [stdout] 2  | / error_chain!{
[INFO] [stdout] 3  | |     foreign_links {
[INFO] [stdout] 4  | |          RedisError(::redis::RedisError) ;
[INFO] [stdout] 5  | |          JsonError(::serde_json::Error);
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     }
[INFO] [stdout] 23 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (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::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/errors.rs:2:1
[INFO] [stdout]    |
[INFO] [stdout] 2  | / error_chain!{
[INFO] [stdout] 3  | |     foreign_links {
[INFO] [stdout] 4  | |          RedisError(::redis::RedisError) ;
[INFO] [stdout] 5  | |          JsonError(::serde_json::Error);
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     }
[INFO] [stdout] 23 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/middleware.rs:28:57
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub fn peek_middleware(job: &mut Job, redis: RedisPool, mut next: NextFunc) -> MiddleWareResult {
[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/middleware.rs:35:58
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn retry_middleware(job: &mut Job, redis: RedisPool, mut next: NextFunc) -> MiddleWareResult {
[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/middleware.rs:71:31
[INFO] [stdout]    |
[INFO] [stdout] 71 | ...                   mut next: NextFunc)
[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/middleware.rs:28:57
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub fn peek_middleware(job: &mut Job, redis: RedisPool, mut next: NextFunc) -> MiddleWareResult {
[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/middleware.rs:35:58
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn retry_middleware(job: &mut Job, redis: RedisPool, mut next: NextFunc) -> MiddleWareResult {
[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/middleware.rs:71:31
[INFO] [stdout]    |
[INFO] [stdout] 71 | ...                   mut next: NextFunc)
[INFO] [stdout]    |                       ----^^^^
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 30 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 30 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> examples/main.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(StructOpt, Debug, Clone)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_STRUCTOPT_FOR_Params`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]    = note: this error originates in the derive macro `StructOpt` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `sidekiq-rs` (example "main") due to 2 previous errors
[INFO] running `Command { std: "docker" "inspect" "25c2432e08b7ce495458a519d6a57686b4a7fa3e397b658bafae1895861fee21", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "25c2432e08b7ce495458a519d6a57686b4a7fa3e397b658bafae1895861fee21", kill_on_drop: false }`
[INFO] [stdout] 25c2432e08b7ce495458a519d6a57686b4a7fa3e397b658bafae1895861fee21
