[INFO] fetching crate galvanic-assert 0.8.7... [INFO] checking galvanic-assert-0.8.7 against master#ceab6128fa48a616bfd3e3adf4bc80133b8ee223 for no-never-type-fallback [INFO] extracting crate galvanic-assert 0.8.7 into /workspace/builds/worker-6-tc1/source [INFO] validating manifest of crates.io crate galvanic-assert 0.8.7 on toolchain ceab6128fa48a616bfd3e3adf4bc80133b8ee223 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ceab6128fa48a616bfd3e3adf4bc80133b8ee223" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate galvanic-assert 0.8.7 [INFO] finished tweaking crates.io crate galvanic-assert 0.8.7 [INFO] tweaked toml for crates.io crate galvanic-assert 0.8.7 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ceab6128fa48a616bfd3e3adf4bc80133b8ee223" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ceab6128fa48a616bfd3e3adf4bc80133b8ee223" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+ceab6128fa48a616bfd3e3adf4bc80133b8ee223" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] eee0e5167180e2eb6a6dd0d71dbbe11b5ddfa107ff0ba51f70ba43f4b3a8c1cc [INFO] running `Command { std: "docker" "start" "-a" "eee0e5167180e2eb6a6dd0d71dbbe11b5ddfa107ff0ba51f70ba43f4b3a8c1cc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "eee0e5167180e2eb6a6dd0d71dbbe11b5ddfa107ff0ba51f70ba43f4b3a8c1cc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "eee0e5167180e2eb6a6dd0d71dbbe11b5ddfa107ff0ba51f70ba43f4b3a8c1cc", kill_on_drop: false }` [INFO] [stdout] eee0e5167180e2eb6a6dd0d71dbbe11b5ddfa107ff0ba51f70ba43f4b3a8c1cc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+ceab6128fa48a616bfd3e3adf4bc80133b8ee223" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d8414965144594fcbda7df4f547f5c040205f8159256cfd2c26d3e8f807417c1 [INFO] running `Command { std: "docker" "start" "-a" "d8414965144594fcbda7df4f547f5c040205f8159256cfd2c26d3e8f807417c1", kill_on_drop: false }` [INFO] [stderr] Checking galvanic-assert v0.8.7 (/opt/rustwide/workdir) [INFO] [stdout] warning: the item `Debug` is imported redundantly [INFO] [stdout] --> src/matchers/core.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 21 | use super::super::*; [INFO] [stdout] | --------------- the item `Debug` is already imported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Debug` is imported redundantly [INFO] [stdout] --> src/matchers/collection.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 19 | use super::super::*; [INFO] [stdout] | --------------- the item `Debug` is already imported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Debug` is imported redundantly [INFO] [stdout] --> src/matchers/core.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 21 | use super::super::*; [INFO] [stdout] | --------------- the item `Debug` is already imported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Debug` is imported redundantly [INFO] [stdout] --> src/matchers/collection.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 19 | use super::super::*; [INFO] [stdout] | --------------- the item `Debug` is already imported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:49:22 [INFO] [stdout] | [INFO] [stdout] 49 | pub matcher: Box + '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 [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 49 | pub matcher: Box + 'a>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:116:22 [INFO] [stdout] | [INFO] [stdout] 116 | pub matcher: Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 116 | pub matcher: Box + 'a>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:49:22 [INFO] [stdout] | [INFO] [stdout] 49 | pub matcher: Box + '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 [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 49 | pub matcher: Box + 'a>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:116:22 [INFO] [stdout] | [INFO] [stdout] 116 | pub matcher: Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 116 | pub matcher: Box + 'a>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:43:52 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn assertion_always_succeeds<'a,T:'a>() -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 43 | pub fn assertion_always_succeeds<'a,T:'a>() -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:43:52 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn assertion_always_succeeds<'a,T:'a>() -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 43 | pub fn assertion_always_succeeds<'a,T:'a>() -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:55:36 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn any_value<'a,T:'a>() -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 55 | pub fn any_value<'a,T:'a>() -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:71:49 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn assertion_always_fails<'a,T:'a>() -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 71 | pub fn assertion_always_fails<'a,T:'a>() -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:55:36 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn any_value<'a,T:'a>() -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 55 | pub fn any_value<'a,T:'a>() -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:88:35 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn no_value<'a,T:'a>() -> Box + 'a> { assertion_always_fails() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn no_value<'a,T:'a>() -> Box + 'a> { assertion_always_fails() } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:71:49 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn assertion_always_fails<'a,T:'a>() -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 71 | pub fn assertion_always_fails<'a,T:'a>() -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:88:35 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn no_value<'a,T:'a>() -> Box + 'a> { assertion_always_fails() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn no_value<'a,T:'a>() -> Box + 'a> { assertion_always_fails() } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:101:34 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:101:34 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:101:62 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:117:35 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:101:62 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:117:35 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:117:63 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:117:63 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:130:36 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:130:64 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:130:36 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:130:64 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:154:44 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn equal_to<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 154 | pub fn equal_to<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:154:44 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn equal_to<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 154 | pub fn equal_to<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:170:62 [INFO] [stdout] | [INFO] [stdout] 170 | pub fn eq<'a, T: PartialEq + Debug + 'a>(expected: T) -> Box + 'a> { equal_to(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 170 | pub fn eq<'a, T: PartialEq + Debug + 'a>(expected: T) -> Box + 'a> { equal_to(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:170:62 [INFO] [stdout] | [INFO] [stdout] 170 | pub fn eq<'a, T: PartialEq + Debug + 'a>(expected: T) -> Box + 'a> { equal_to(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 170 | pub fn eq<'a, T: PartialEq + Debug + 'a>(expected: T) -> Box + 'a> { equal_to(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:183:45 [INFO] [stdout] | [INFO] [stdout] 183 | pub fn less_than<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 183 | pub fn less_than<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:183:45 [INFO] [stdout] | [INFO] [stdout] 183 | pub fn less_than<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 183 | pub fn less_than<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:198:63 [INFO] [stdout] | [INFO] [stdout] 198 | pub fn lt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 198 | pub fn lt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:198:63 [INFO] [stdout] | [INFO] [stdout] 198 | pub fn lt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 198 | pub fn lt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:211:48 [INFO] [stdout] | [INFO] [stdout] 211 | pub fn greater_than<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 211 | pub fn greater_than<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:211:48 [INFO] [stdout] | [INFO] [stdout] 211 | pub fn greater_than<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 211 | pub fn greater_than<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:226:63 [INFO] [stdout] | [INFO] [stdout] 226 | pub fn gt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 226 | pub fn gt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:226:63 [INFO] [stdout] | [INFO] [stdout] 226 | pub fn gt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 226 | pub fn gt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:240:54 [INFO] [stdout] | [INFO] [stdout] 240 | pub fn less_than_or_equal<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 240 | pub fn less_than_or_equal<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:240:54 [INFO] [stdout] | [INFO] [stdout] 240 | pub fn less_than_or_equal<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 240 | pub fn less_than_or_equal<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:256:64 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn leq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than_or_equal(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 256 | pub fn leq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than_or_equal(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:256:64 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn leq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than_or_equal(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 256 | pub fn leq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than_or_equal(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:270:57 [INFO] [stdout] | [INFO] [stdout] 270 | pub fn greater_than_or_equal<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 270 | pub fn greater_than_or_equal<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:270:57 [INFO] [stdout] | [INFO] [stdout] 270 | pub fn greater_than_or_equal<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 270 | pub fn greater_than_or_equal<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:286:64 [INFO] [stdout] | [INFO] [stdout] 286 | pub fn geq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than_or_equal(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 286 | pub fn geq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than_or_equal(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:286:64 [INFO] [stdout] | [INFO] [stdout] 286 | pub fn geq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than_or_equal(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 286 | pub fn geq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than_or_equal(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:299:52 [INFO] [stdout] | [INFO] [stdout] 299 | pub fn close_to<'a, T>(expected: T, eps: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 299 | pub fn close_to<'a, T>(expected: T, eps: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:299:52 [INFO] [stdout] | [INFO] [stdout] 299 | pub fn close_to<'a, T>(expected: T, eps: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 299 | pub fn close_to<'a, T>(expected: T, eps: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:334:51 [INFO] [stdout] | [INFO] [stdout] 334 | pub fn same_object<'a, T>(expected: &'a T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 334 | pub fn same_object<'a, T>(expected: &'a T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:334:51 [INFO] [stdout] | [INFO] [stdout] 334 | pub fn same_object<'a, T>(expected: &'a T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 334 | pub fn same_object<'a, T>(expected: &'a T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:67:43 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:67:43 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:67:71 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:67:71 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:88:48 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:88:48 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:88:76 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:88:76 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:109:49 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:109:49 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:109:77 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:109:77 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:47:78 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn contains_in_any_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 47 | pub fn contains_in_any_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:47:78 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn contains_in_any_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 47 | pub fn contains_in_any_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:109:74 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn contains_in_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 109 | pub fn contains_in_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:109:74 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn contains_in_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 109 | pub fn contains_in_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:166:72 [INFO] [stdout] | [INFO] [stdout] 166 | pub fn contains_subset<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 166 | pub fn contains_subset<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:166:72 [INFO] [stdout] | [INFO] [stdout] 166 | pub fn contains_subset<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 166 | pub fn contains_subset<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:214:63 [INFO] [stdout] | [INFO] [stdout] 214 | pub fn contained_in<'a,T:'a,I>(expected_to_contain: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 214 | pub fn contained_in<'a,T:'a,I>(expected_to_contain: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:214:63 [INFO] [stdout] | [INFO] [stdout] 214 | pub fn contained_in<'a,T:'a,I>(expected_to_contain: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 214 | pub fn contained_in<'a,T:'a,I>(expected_to_contain: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:248:88 [INFO] [stdout] | [INFO] [stdout] 248 | pub fn sorted_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 248 | pub fn sorted_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:248:88 [INFO] [stdout] | [INFO] [stdout] 248 | pub fn sorted_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 248 | pub fn sorted_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:289:97 [INFO] [stdout] | [INFO] [stdout] 289 | pub fn sorted_strictly_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 289 | pub fn sorted_strictly_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:289:97 [INFO] [stdout] | [INFO] [stdout] 289 | pub fn sorted_strictly_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 289 | pub fn sorted_strictly_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:329:62 [INFO] [stdout] | [INFO] [stdout] 329 | pub fn sorted_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 329 | pub fn sorted_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:329:62 [INFO] [stdout] | [INFO] [stdout] 329 | pub fn sorted_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 329 | pub fn sorted_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:375:71 [INFO] [stdout] | [INFO] [stdout] 375 | pub fn sorted_strictly_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 375 | pub fn sorted_strictly_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:422:42 [INFO] [stdout] | [INFO] [stdout] 422 | pub fn sorted_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 422 | pub fn sorted_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:375:71 [INFO] [stdout] | [INFO] [stdout] 375 | pub fn sorted_strictly_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 375 | pub fn sorted_strictly_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:439:51 [INFO] [stdout] | [INFO] [stdout] 439 | pub fn sorted_strictly_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 439 | pub fn sorted_strictly_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:422:42 [INFO] [stdout] | [INFO] [stdout] 422 | pub fn sorted_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 422 | pub fn sorted_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:439:51 [INFO] [stdout] | [INFO] [stdout] 439 | pub fn sorted_strictly_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 439 | pub fn sorted_strictly_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:456:43 [INFO] [stdout] | [INFO] [stdout] 456 | pub fn sorted_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 456 | pub fn sorted_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:473:52 [INFO] [stdout] | [INFO] [stdout] 473 | pub fn sorted_strictly_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 473 | pub fn sorted_strictly_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:456:43 [INFO] [stdout] | [INFO] [stdout] 456 | pub fn sorted_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 456 | pub fn sorted_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:473:52 [INFO] [stdout] | [INFO] [stdout] 473 | pub fn sorted_strictly_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 473 | pub fn sorted_strictly_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:490:60 [INFO] [stdout] | [INFO] [stdout] 490 | pub fn all_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 490 | pub fn all_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:490:60 [INFO] [stdout] | [INFO] [stdout] 490 | pub fn all_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 490 | pub fn all_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:518:61 [INFO] [stdout] | [INFO] [stdout] 518 | pub fn some_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 518 | pub fn some_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:566:62 [INFO] [stdout] | [INFO] [stdout] 566 | pub fn has_entry<'a,K:'a,V:'a,M:'a>(key: K, value: V) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 566 | pub fn has_entry<'a,K:'a,V:'a,M:'a>(key: K, value: V) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:518:61 [INFO] [stdout] | [INFO] [stdout] 518 | pub fn some_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 518 | pub fn some_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:566:62 [INFO] [stdout] | [INFO] [stdout] 566 | pub fn has_entry<'a,K:'a,V:'a,M:'a>(key: K, value: V) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 566 | pub fn has_entry<'a,K:'a,V:'a,M:'a>(key: K, value: V) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:637:50 [INFO] [stdout] | [INFO] [stdout] 637 | pub fn has_key<'a,K:'a,V:'a,M:'a>(key: K) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 637 | pub fn has_key<'a,K:'a,V:'a,M:'a>(key: K) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:690:52 [INFO] [stdout] | [INFO] [stdout] 690 | pub fn has_value<'a,K:'a,V:'a,M:'a>(key: K) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 690 | pub fn has_value<'a,K:'a,V:'a,M:'a>(key: K) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:637:50 [INFO] [stdout] | [INFO] [stdout] 637 | pub fn has_key<'a,K:'a,V:'a,M:'a>(key: K) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 637 | pub fn has_key<'a,K:'a,V:'a,M:'a>(key: K) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:690:52 [INFO] [stdout] | [INFO] [stdout] 690 | pub fn has_value<'a,K:'a,V:'a,M:'a>(key: K) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 690 | pub fn has_value<'a,K:'a,V:'a,M:'a>(key: K) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:55:28 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn of(matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 55 | pub fn of(matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:55:28 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn of(matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 55 | pub fn of(matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:63:35 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn and(self, matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 63 | pub fn and(self, matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:122:28 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn of(matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 122 | pub fn of(matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:63:35 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn and(self, matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 63 | pub fn and(self, matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:130:34 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn or(self, matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn or(self, matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:122:28 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn of(matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 122 | pub fn of(matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:130:34 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn or(self, matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn or(self, matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 53 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 53 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused attribute `allow` [INFO] [stdout] --> tests/expectations.rs:148:13 [INFO] [stdout] | [INFO] [stdout] 148 | #[allow(unused_variables)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `expect_that` [INFO] [stdout] --> tests/expectations.rs:149:13 [INFO] [stdout] | [INFO] [stdout] 149 | expect_that!(1 != 1); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | use super::{std, contains_in_any_order}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:52:17 [INFO] [stdout] | [INFO] [stdout] 52 | use super::{std, contains_in_order}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:90:17 [INFO] [stdout] | [INFO] [stdout] 90 | use super::{std, contains_subset}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:117:17 [INFO] [stdout] | [INFO] [stdout] 117 | use super::{std, contained_in}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:134:17 [INFO] [stdout] | [INFO] [stdout] 134 | use super::{std, sorted_by}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:184:17 [INFO] [stdout] | [INFO] [stdout] 184 | use super::{std, sorted_strictly_by}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:227:17 [INFO] [stdout] | [INFO] [stdout] 227 | use super::{std, sorted_by_in_any_order}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:277:17 [INFO] [stdout] | [INFO] [stdout] 277 | use super::{std, sorted_strictly_by_in_any_order}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:325:17 [INFO] [stdout] | [INFO] [stdout] 325 | use super::{std, sorted_ascending}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:356:17 [INFO] [stdout] | [INFO] [stdout] 356 | use super::{std, sorted_strictly_ascending}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:394:17 [INFO] [stdout] | [INFO] [stdout] 394 | use super::{std, sorted_descending}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:424:17 [INFO] [stdout] | [INFO] [stdout] 424 | use super::{std, sorted_strictly_descending}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:462:17 [INFO] [stdout] | [INFO] [stdout] 462 | use super::{std, all_elements_satisfy}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:484:17 [INFO] [stdout] | [INFO] [stdout] 484 | use super::{std, some_elements_satisfy}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:512:21 [INFO] [stdout] | [INFO] [stdout] 512 | use super::{std, has_entry}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:545:21 [INFO] [stdout] | [INFO] [stdout] 545 | use super::{std, has_entry}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:582:21 [INFO] [stdout] | [INFO] [stdout] 582 | use super::{std, has_key}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:605:21 [INFO] [stdout] | [INFO] [stdout] 605 | use super::{std, has_key}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused comparison that must be used [INFO] [stdout] --> tests/expectations.rs:91:42 [INFO] [stdout] | [INFO] [stdout] 91 | let e = get_expectation_for!(1 == 1, panics); [INFO] [stdout] | ^^^^^^ the comparison produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 91 | let e = get_expectation_for!(let _ = 1 == 1, panics); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused comparison that must be used [INFO] [stdout] --> tests/expectations.rs:101:42 [INFO] [stdout] | [INFO] [stdout] 101 | let e = get_expectation_for!(1 == 1, does not panic); [INFO] [stdout] | ^^^^^^ the comparison produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 101 | let e = get_expectation_for!(let _ = 1 == 1, does not panic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused comparison that must be used [INFO] [stdout] --> tests/expectations.rs:178:26 [INFO] [stdout] | [INFO] [stdout] 178 | expect_that!(1 == 1, panics); [INFO] [stdout] | ^^^^^^ the comparison produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 178 | expect_that!(let _ = 1 == 1, panics); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused comparison that must be used [INFO] [stdout] --> tests/expectations.rs:187:26 [INFO] [stdout] | [INFO] [stdout] 187 | expect_that!(1 == 1, does not panic); [INFO] [stdout] | ^^^^^^ the comparison produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 187 | expect_that!(let _ = 1 == 1, does not panic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused arithmetic operation that must be used [INFO] [stdout] --> tests/core_matchers.rs:34:26 [INFO] [stdout] | [INFO] [stdout] 34 | assert_that!(&1+1, panics); [INFO] [stdout] | ^^^^ the arithmetic operation produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 34 | assert_that!(let _ = &1+1, panics); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused arithmetic operation that must be used [INFO] [stdout] --> tests/core_matchers.rs:45:22 [INFO] [stdout] | [INFO] [stdout] 45 | assert_that!(&1+1, does not panic); [INFO] [stdout] | ^^^^ the arithmetic operation produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 45 | assert_that!(let _ = &1+1, does not panic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.28s [INFO] running `Command { std: "docker" "inspect" "d8414965144594fcbda7df4f547f5c040205f8159256cfd2c26d3e8f807417c1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d8414965144594fcbda7df4f547f5c040205f8159256cfd2c26d3e8f807417c1", kill_on_drop: false }` [INFO] [stdout] d8414965144594fcbda7df4f547f5c040205f8159256cfd2c26d3e8f807417c1 [INFO] checking galvanic-assert-0.8.7 against try#3a4bc97f6385a3aa300a4fd689b44350e54fd676 for no-never-type-fallback [INFO] extracting crate galvanic-assert 0.8.7 into /workspace/builds/worker-6-tc2/source [INFO] validating manifest of crates.io crate galvanic-assert 0.8.7 on toolchain 3a4bc97f6385a3aa300a4fd689b44350e54fd676 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3a4bc97f6385a3aa300a4fd689b44350e54fd676" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate galvanic-assert 0.8.7 [INFO] finished tweaking crates.io crate galvanic-assert 0.8.7 [INFO] tweaked toml for crates.io crate galvanic-assert 0.8.7 written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3a4bc97f6385a3aa300a4fd689b44350e54fd676" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3a4bc97f6385a3aa300a4fd689b44350e54fd676" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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" "+3a4bc97f6385a3aa300a4fd689b44350e54fd676" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ad8d32f3a767a1a0828f59234058f8f87366d918e6986aa2bf70d2a435708569 [INFO] running `Command { std: "docker" "start" "-a" "ad8d32f3a767a1a0828f59234058f8f87366d918e6986aa2bf70d2a435708569", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ad8d32f3a767a1a0828f59234058f8f87366d918e6986aa2bf70d2a435708569", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ad8d32f3a767a1a0828f59234058f8f87366d918e6986aa2bf70d2a435708569", kill_on_drop: false }` [INFO] [stdout] ad8d32f3a767a1a0828f59234058f8f87366d918e6986aa2bf70d2a435708569 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+3a4bc97f6385a3aa300a4fd689b44350e54fd676" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 07f98ba89682d602591df36a1148292d17941ee543272b556845d2a90fe537c4 [INFO] running `Command { std: "docker" "start" "-a" "07f98ba89682d602591df36a1148292d17941ee543272b556845d2a90fe537c4", kill_on_drop: false }` [INFO] [stderr] Checking galvanic-assert v0.8.7 (/opt/rustwide/workdir) [INFO] [stdout] warning: the item `Debug` is imported redundantly [INFO] [stdout] --> src/matchers/core.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 21 | use super::super::*; [INFO] [stdout] | --------------- the item `Debug` is already imported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Debug` is imported redundantly [INFO] [stdout] --> src/matchers/collection.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 19 | use super::super::*; [INFO] [stdout] | --------------- the item `Debug` is already imported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Debug` is imported redundantly [INFO] [stdout] --> src/matchers/core.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 21 | use super::super::*; [INFO] [stdout] | --------------- the item `Debug` is already imported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Debug` is imported redundantly [INFO] [stdout] --> src/matchers/collection.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use std::fmt::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 19 | use super::super::*; [INFO] [stdout] | --------------- the item `Debug` is already imported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:49:22 [INFO] [stdout] | [INFO] [stdout] 49 | pub matcher: Box + '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 [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 49 | pub matcher: Box + 'a>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:116:22 [INFO] [stdout] | [INFO] [stdout] 116 | pub matcher: Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 116 | pub matcher: Box + 'a>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:49:22 [INFO] [stdout] | [INFO] [stdout] 49 | pub matcher: Box + '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 [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 49 | pub matcher: Box + 'a>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:116:22 [INFO] [stdout] | [INFO] [stdout] 116 | pub matcher: Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 116 | pub matcher: Box + 'a>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:43:52 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn assertion_always_succeeds<'a,T:'a>() -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 43 | pub fn assertion_always_succeeds<'a,T:'a>() -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:43:52 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn assertion_always_succeeds<'a,T:'a>() -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 43 | pub fn assertion_always_succeeds<'a,T:'a>() -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:55:36 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn any_value<'a,T:'a>() -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 55 | pub fn any_value<'a,T:'a>() -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:55:36 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn any_value<'a,T:'a>() -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 55 | pub fn any_value<'a,T:'a>() -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:71:49 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn assertion_always_fails<'a,T:'a>() -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 71 | pub fn assertion_always_fails<'a,T:'a>() -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:71:49 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn assertion_always_fails<'a,T:'a>() -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 71 | pub fn assertion_always_fails<'a,T:'a>() -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:88:35 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn no_value<'a,T:'a>() -> Box + 'a> { assertion_always_fails() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn no_value<'a,T:'a>() -> Box + 'a> { assertion_always_fails() } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:88:35 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn no_value<'a,T:'a>() -> Box + 'a> { assertion_always_fails() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn no_value<'a,T:'a>() -> Box + 'a> { assertion_always_fails() } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:101:34 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:101:34 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:101:62 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:101:62 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:117:35 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:117:35 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:117:63 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:117:63 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 117 | pub fn has<'a, T:'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:130:36 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:130:36 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:130:64 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:130:64 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn not<'a, T: 'a>(matcher: Box + 'a>) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:154:44 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn equal_to<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 154 | pub fn equal_to<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:154:44 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn equal_to<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 154 | pub fn equal_to<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:170:62 [INFO] [stdout] | [INFO] [stdout] 170 | pub fn eq<'a, T: PartialEq + Debug + 'a>(expected: T) -> Box + 'a> { equal_to(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 170 | pub fn eq<'a, T: PartialEq + Debug + 'a>(expected: T) -> Box + 'a> { equal_to(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:170:62 [INFO] [stdout] | [INFO] [stdout] 170 | pub fn eq<'a, T: PartialEq + Debug + 'a>(expected: T) -> Box + 'a> { equal_to(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 170 | pub fn eq<'a, T: PartialEq + Debug + 'a>(expected: T) -> Box + 'a> { equal_to(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:183:45 [INFO] [stdout] | [INFO] [stdout] 183 | pub fn less_than<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 183 | pub fn less_than<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:183:45 [INFO] [stdout] | [INFO] [stdout] 183 | pub fn less_than<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 183 | pub fn less_than<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:198:63 [INFO] [stdout] | [INFO] [stdout] 198 | pub fn lt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 198 | pub fn lt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:198:63 [INFO] [stdout] | [INFO] [stdout] 198 | pub fn lt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 198 | pub fn lt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:211:48 [INFO] [stdout] | [INFO] [stdout] 211 | pub fn greater_than<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 211 | pub fn greater_than<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:211:48 [INFO] [stdout] | [INFO] [stdout] 211 | pub fn greater_than<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 211 | pub fn greater_than<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:226:63 [INFO] [stdout] | [INFO] [stdout] 226 | pub fn gt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 226 | pub fn gt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:226:63 [INFO] [stdout] | [INFO] [stdout] 226 | pub fn gt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 226 | pub fn gt<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:240:54 [INFO] [stdout] | [INFO] [stdout] 240 | pub fn less_than_or_equal<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 240 | pub fn less_than_or_equal<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:240:54 [INFO] [stdout] | [INFO] [stdout] 240 | pub fn less_than_or_equal<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 240 | pub fn less_than_or_equal<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:256:64 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn leq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than_or_equal(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 256 | pub fn leq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than_or_equal(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:256:64 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn leq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than_or_equal(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 256 | pub fn leq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { less_than_or_equal(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:270:57 [INFO] [stdout] | [INFO] [stdout] 270 | pub fn greater_than_or_equal<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 270 | pub fn greater_than_or_equal<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:270:57 [INFO] [stdout] | [INFO] [stdout] 270 | pub fn greater_than_or_equal<'a, T>(expected: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 270 | pub fn greater_than_or_equal<'a, T>(expected: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:286:64 [INFO] [stdout] | [INFO] [stdout] 286 | pub fn geq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than_or_equal(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 286 | pub fn geq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than_or_equal(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:286:64 [INFO] [stdout] | [INFO] [stdout] 286 | pub fn geq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than_or_equal(expected) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 286 | pub fn geq<'a, T: PartialOrd + Debug + 'a>(expected: T) -> Box + 'a> { greater_than_or_equal(expected) } [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:299:52 [INFO] [stdout] | [INFO] [stdout] 299 | pub fn close_to<'a, T>(expected: T, eps: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 299 | pub fn close_to<'a, T>(expected: T, eps: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:299:52 [INFO] [stdout] | [INFO] [stdout] 299 | pub fn close_to<'a, T>(expected: T, eps: T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 299 | pub fn close_to<'a, T>(expected: T, eps: T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:334:51 [INFO] [stdout] | [INFO] [stdout] 334 | pub fn same_object<'a, T>(expected: &'a T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 334 | pub fn same_object<'a, T>(expected: &'a T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/core.rs:334:51 [INFO] [stdout] | [INFO] [stdout] 334 | pub fn same_object<'a, T>(expected: &'a T) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 334 | pub fn same_object<'a, T>(expected: &'a T) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:67:43 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:67:43 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:67:71 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:67:71 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 67 | pub fn maybe_some<'a, T: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:88:48 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:88:48 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:88:76 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:88:76 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn maybe_ok<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:109:49 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:109:49 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:109:77 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/variant.rs:109:77 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 109 | pub fn maybe_err<'a, T: 'a, E: 'a>(matcher: Box + 'a>) -> Box> + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:47:78 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn contains_in_any_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 47 | pub fn contains_in_any_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:47:78 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn contains_in_any_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 47 | pub fn contains_in_any_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:109:74 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn contains_in_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 109 | pub fn contains_in_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:109:74 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn contains_in_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 109 | pub fn contains_in_order<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:166:72 [INFO] [stdout] | [INFO] [stdout] 166 | pub fn contains_subset<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 166 | pub fn contains_subset<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:166:72 [INFO] [stdout] | [INFO] [stdout] 166 | pub fn contains_subset<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 166 | pub fn contains_subset<'a,T:'a,I:'a,J:'a>(expected_elements: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:214:63 [INFO] [stdout] | [INFO] [stdout] 214 | pub fn contained_in<'a,T:'a,I>(expected_to_contain: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 214 | pub fn contained_in<'a,T:'a,I>(expected_to_contain: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:214:63 [INFO] [stdout] | [INFO] [stdout] 214 | pub fn contained_in<'a,T:'a,I>(expected_to_contain: I) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 214 | pub fn contained_in<'a,T:'a,I>(expected_to_contain: I) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:248:88 [INFO] [stdout] | [INFO] [stdout] 248 | pub fn sorted_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 248 | pub fn sorted_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:248:88 [INFO] [stdout] | [INFO] [stdout] 248 | pub fn sorted_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 248 | pub fn sorted_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:289:97 [INFO] [stdout] | [INFO] [stdout] 289 | pub fn sorted_strictly_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 289 | pub fn sorted_strictly_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:289:97 [INFO] [stdout] | [INFO] [stdout] 289 | pub fn sorted_strictly_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 289 | pub fn sorted_strictly_by<'a,T,I,P>(predicate: P, expected_ordering: std::cmp::Ordering) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:329:62 [INFO] [stdout] | [INFO] [stdout] 329 | pub fn sorted_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 329 | pub fn sorted_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:375:71 [INFO] [stdout] | [INFO] [stdout] 375 | pub fn sorted_strictly_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 375 | pub fn sorted_strictly_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:422:42 [INFO] [stdout] | [INFO] [stdout] 422 | pub fn sorted_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 422 | pub fn sorted_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:329:62 [INFO] [stdout] | [INFO] [stdout] 329 | pub fn sorted_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 329 | pub fn sorted_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:439:51 [INFO] [stdout] | [INFO] [stdout] 439 | pub fn sorted_strictly_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 439 | pub fn sorted_strictly_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:375:71 [INFO] [stdout] | [INFO] [stdout] 375 | pub fn sorted_strictly_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 375 | pub fn sorted_strictly_by_in_any_order<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:456:43 [INFO] [stdout] | [INFO] [stdout] 456 | pub fn sorted_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 456 | pub fn sorted_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:473:52 [INFO] [stdout] | [INFO] [stdout] 473 | pub fn sorted_strictly_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 473 | pub fn sorted_strictly_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:422:42 [INFO] [stdout] | [INFO] [stdout] 422 | pub fn sorted_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 422 | pub fn sorted_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:490:60 [INFO] [stdout] | [INFO] [stdout] 490 | pub fn all_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 490 | pub fn all_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:439:51 [INFO] [stdout] | [INFO] [stdout] 439 | pub fn sorted_strictly_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 439 | pub fn sorted_strictly_ascending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:518:61 [INFO] [stdout] | [INFO] [stdout] 518 | pub fn some_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 518 | pub fn some_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:456:43 [INFO] [stdout] | [INFO] [stdout] 456 | pub fn sorted_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 456 | pub fn sorted_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:566:62 [INFO] [stdout] | [INFO] [stdout] 566 | pub fn has_entry<'a,K:'a,V:'a,M:'a>(key: K, value: V) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 566 | pub fn has_entry<'a,K:'a,V:'a,M:'a>(key: K, value: V) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:473:52 [INFO] [stdout] | [INFO] [stdout] 473 | pub fn sorted_strictly_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 473 | pub fn sorted_strictly_descending<'a,T,I>() -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:637:50 [INFO] [stdout] | [INFO] [stdout] 637 | pub fn has_key<'a,K:'a,V:'a,M:'a>(key: K) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 637 | pub fn has_key<'a,K:'a,V:'a,M:'a>(key: K) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:490:60 [INFO] [stdout] | [INFO] [stdout] 490 | pub fn all_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 490 | pub fn all_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:690:52 [INFO] [stdout] | [INFO] [stdout] 690 | pub fn has_value<'a,K:'a,V:'a,M:'a>(key: K) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 690 | pub fn has_value<'a,K:'a,V:'a,M:'a>(key: K) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:518:61 [INFO] [stdout] | [INFO] [stdout] 518 | pub fn some_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 518 | pub fn some_elements_satisfy<'a,T,I,P>(predicate: P) -> Box MatchResult> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:55:28 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn of(matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 55 | pub fn of(matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:566:62 [INFO] [stdout] | [INFO] [stdout] 566 | pub fn has_entry<'a,K:'a,V:'a,M:'a>(key: K, value: V) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 566 | pub fn has_entry<'a,K:'a,V:'a,M:'a>(key: K, value: V) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:63:35 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn and(self, matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 63 | pub fn and(self, matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:637:50 [INFO] [stdout] | [INFO] [stdout] 637 | pub fn has_key<'a,K:'a,V:'a,M:'a>(key: K) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 637 | pub fn has_key<'a,K:'a,V:'a,M:'a>(key: K) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:122:28 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn of(matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 122 | pub fn of(matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/collection.rs:690:52 [INFO] [stdout] | [INFO] [stdout] 690 | pub fn has_value<'a,K:'a,V:'a,M:'a>(key: K) -> Box + '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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 690 | pub fn has_value<'a,K:'a,V:'a,M:'a>(key: K) -> Box + 'a> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:130:34 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn or(self, matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn or(self, matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:55:28 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn of(matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 55 | pub fn of(matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:63:35 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn and(self, matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 63 | pub fn and(self, matcher: Box + 'a>) -> All<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:122:28 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn of(matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 122 | pub fn of(matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/matchers/combinators.rs:130:34 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn or(self, matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn or(self, matcher: Box + 'a>) -> Any<'a,T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 53 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 53 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused attribute `allow` [INFO] [stdout] --> tests/expectations.rs:148:13 [INFO] [stdout] | [INFO] [stdout] 148 | #[allow(unused_variables)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `expect_that` [INFO] [stdout] --> tests/expectations.rs:149:13 [INFO] [stdout] | [INFO] [stdout] 149 | expect_that!(1 != 1); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | use super::{std, contains_in_any_order}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:52:17 [INFO] [stdout] | [INFO] [stdout] 52 | use super::{std, contains_in_order}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:90:17 [INFO] [stdout] | [INFO] [stdout] 90 | use super::{std, contains_subset}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:117:17 [INFO] [stdout] | [INFO] [stdout] 117 | use super::{std, contained_in}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:134:17 [INFO] [stdout] | [INFO] [stdout] 134 | use super::{std, sorted_by}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:184:17 [INFO] [stdout] | [INFO] [stdout] 184 | use super::{std, sorted_strictly_by}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:227:17 [INFO] [stdout] | [INFO] [stdout] 227 | use super::{std, sorted_by_in_any_order}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:277:17 [INFO] [stdout] | [INFO] [stdout] 277 | use super::{std, sorted_strictly_by_in_any_order}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:325:17 [INFO] [stdout] | [INFO] [stdout] 325 | use super::{std, sorted_ascending}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:356:17 [INFO] [stdout] | [INFO] [stdout] 356 | use super::{std, sorted_strictly_ascending}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:394:17 [INFO] [stdout] | [INFO] [stdout] 394 | use super::{std, sorted_descending}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:424:17 [INFO] [stdout] | [INFO] [stdout] 424 | use super::{std, sorted_strictly_descending}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:462:17 [INFO] [stdout] | [INFO] [stdout] 462 | use super::{std, all_elements_satisfy}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:484:17 [INFO] [stdout] | [INFO] [stdout] 484 | use super::{std, some_elements_satisfy}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:512:21 [INFO] [stdout] | [INFO] [stdout] 512 | use super::{std, has_entry}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:545:21 [INFO] [stdout] | [INFO] [stdout] 545 | use super::{std, has_entry}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:582:21 [INFO] [stdout] | [INFO] [stdout] 582 | use super::{std, has_key}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `std` is imported redundantly [INFO] [stdout] --> tests/collections_matchers.rs:605:21 [INFO] [stdout] | [INFO] [stdout] 605 | use super::{std, has_key}; [INFO] [stdout] | ^^^ the item `std` is already imported by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> tests/expectations.rs:84:21 [INFO] [stdout] | [INFO] [stdout] 84 | let e = get_expectation_for!(panic!("panic"), panics); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `get_expectation_for` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> tests/expectations.rs:108:21 [INFO] [stdout] | [INFO] [stdout] 108 | let e = get_expectation_for!(panic!("panic"), does not panic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `get_expectation_for` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> tests/expectations.rs:172:13 [INFO] [stdout] | [INFO] [stdout] 172 | expect_that!(panic!("panic"), panics); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `get_expectation_for` which comes from the expansion of the macro `expect_that` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> tests/expectations.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | expect_that!(panic!("panic"), does not panic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `get_expectation_for` which comes from the expansion of the macro `expect_that` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> tests/core_matchers.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | assert_that!(panic!("panic"), panics); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `assert_that` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> tests/core_matchers.rs:51:13 [INFO] [stdout] | [INFO] [stdout] 51 | assert_that!(panic!("panic"), does not panic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `assert_that` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0282`. [INFO] [stdout] [INFO] [stderr] error: could not compile `galvanic-assert` (test "expectations") due to 5 previous errors; 1 warning emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0282`. [INFO] [stdout] [INFO] [stderr] error: could not compile `galvanic-assert` (test "core_matchers") due to 3 previous errors [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "07f98ba89682d602591df36a1148292d17941ee543272b556845d2a90fe537c4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "07f98ba89682d602591df36a1148292d17941ee543272b556845d2a90fe537c4", kill_on_drop: false }` [INFO] [stdout] 07f98ba89682d602591df36a1148292d17941ee543272b556845d2a90fe537c4