[INFO] fetching crate cognitive-frames 0.1.0...
[INFO] testing cognitive-frames-0.1.0 against beta-2025-09-21 for beta-1.91-3
[INFO] extracting crate cognitive-frames 0.1.0 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate cognitive-frames 0.1.0
[INFO] finished tweaking crates.io crate cognitive-frames 0.1.0
[INFO] tweaked toml for crates.io crate cognitive-frames 0.1.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate cognitive-frames 0.1.0 on toolchain beta-2025-09-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 47 packages to latest compatible versions
[INFO] [stderr]       Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 18dcd6aa03e133750369df3d92a18186da2cfc30922ed5186a5a51916abbbc99
[INFO] running `Command { std: "docker" "start" "-a" "18dcd6aa03e133750369df3d92a18186da2cfc30922ed5186a5a51916abbbc99", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "18dcd6aa03e133750369df3d92a18186da2cfc30922ed5186a5a51916abbbc99", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "18dcd6aa03e133750369df3d92a18186da2cfc30922ed5186a5a51916abbbc99", kill_on_drop: false }`
[INFO] [stdout] 18dcd6aa03e133750369df3d92a18186da2cfc30922ed5186a5a51916abbbc99
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] dc798c956a9930ec69e318d50d21d693d6fe02f4445386322e20b24153b90b86
[INFO] running `Command { std: "docker" "start" "-a" "dc798c956a9930ec69e318d50d21d693d6fe02f4445386322e20b24153b90b86", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling unicode-xid v0.0.4
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]    Compiling libc v0.1.12
[INFO] [stderr]    Compiling gimli v0.32.3
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling bitflags v0.7.0
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling bitflags v0.8.2
[INFO] [stderr]    Compiling serde v0.9.15
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]    Compiling khronos v0.1.2
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling syn v0.11.11
[INFO] [stderr]    Compiling gl_generator v0.6.1
[INFO] [stderr]    Compiling serde_codegen_internals v0.14.2
[INFO] [stderr]    Compiling serde_derive v0.9.15
[INFO] [stderr]    Compiling gl v0.6.5
[INFO] [stderr]    Compiling nix v0.8.1
[INFO] [stderr]    Compiling egl v0.2.7
[INFO] [stderr]    Compiling timerfd v0.2.0
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling gbm-rs v0.2.0
[INFO] [stderr]    Compiling libudev v0.2.0
[INFO] [stderr]    Compiling timber v0.1.0
[INFO] [stderr]    Compiling addr2line v0.25.1
[INFO] [stderr]    Compiling dharma v0.1.0
[INFO] [stderr]    Compiling cognitive-graphics v0.1.0
[INFO] [stderr]    Compiling backtrace v0.3.76
[INFO] [stderr]    Compiling cognitive-qualia v0.1.0
[INFO] [stderr]    Compiling cognitive-frames v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/converting.rs:36:27
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 listing: &SurfaceListing)
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 listing: &dyn SurfaceListing)
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/converting.rs:22:27
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 listing: &SurfaceListing)
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 listing: &dyn SurfaceListing)
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:37:34
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn relax(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn relax(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:18:34
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn relax(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn relax(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:41:39
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn homogenize(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn homogenize(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:22:39
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn homogenize(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn homogenize(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:99:56
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn change_size(&mut self, vector: Vector, sa: &mut SurfaceAccess) {
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn change_size(&mut self, vector: Vector, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:25:56
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn change_size(&mut self, vactor: Vector, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn change_size(&mut self, vactor: Vector, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/packing.rs:104:49
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn set_size(&mut self, size: Size, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn set_size(&mut self, size: Size, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:28:49
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn set_size(&mut self, size: Size, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn set_size(&mut self, size: Size, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/packing.rs:144:40
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn remove_self(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn remove_self(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:31:40
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn remove_self(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn remove_self(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/searching.rs:46:30
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn find(&self, matcher: &Fn(&Frame) -> bool) -> Option<Frame> {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn find(&self, matcher: &dyn Fn(&Frame) -> bool) -> Option<Frame> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/searching.rs:16:30
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn find(&self, matcher: &Fn(&Frame) -> bool) -> Option<Frame>;
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn find(&self, matcher: &dyn Fn(&Frame) -> bool) -> Option<Frame>;
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:82:75
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn settle(&mut self, target: &mut Frame, area: Option<Area>, sa: &mut SurfaceAccess) {
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn settle(&mut self, target: &mut Frame, area: Option<Area>, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:21:75
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn settle(&mut self, target: &mut Frame, area: Option<Area>, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn settle(&mut self, target: &mut Frame, area: Option<Area>, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:101:85
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn resettle(&mut self, target: &mut Frame, position: Option<Position>, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn resettle(&mut self, target: &mut Frame, position: Option<Position>, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:26:85
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn resettle(&mut self, target: &mut Frame, position: Option<Position>, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                                     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn resettle(&mut self, target: &mut Frame, position: Option<Position>, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:140:64
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn change_geometry(&mut self, geometry: Geometry, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn change_geometry(&mut self, geometry: Geometry, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:34:64
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn change_geometry(&mut self, geometry: Geometry, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn change_geometry(&mut self, geometry: Geometry, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:204:67
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn jumpin(&mut self, side: Side, target: &mut Frame, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn jumpin(&mut self, side: Side, target: &mut Frame, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:53:67
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn jumpin(&mut self, side: Side, target: &mut Frame, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                   ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn jumpin(&mut self, side: Side, target: &mut Frame, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:233:65
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn jump(&mut self, side: Side, target: &mut Frame, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn jump(&mut self, side: Side, target: &mut Frame, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:56:65
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn jump(&mut self, side: Side, target: &mut Frame, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn jump(&mut self, side: Side, target: &mut Frame, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:238:65
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn dock(&mut self, target: &mut Frame, size: Size, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn dock(&mut self, target: &mut Frame, size: Size, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:59:65
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn dock(&mut self, target: &mut Frame, size: Size, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn dock(&mut self, target: &mut Frame, size: Size, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:247:38
[INFO] [stdout]     |
[INFO] [stdout] 247 |     fn anchorize(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 247 |     fn anchorize(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:62:38
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn anchorize(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn anchorize(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:257:52
[INFO] [stdout]     |
[INFO] [stdout] 257 |     fn deanchorize(&mut self, area: Area, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 257 |     fn deanchorize(&mut self, area: Area, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:66:52
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn deanchorize(&mut self, area: Area, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn deanchorize(&mut self, area: Area, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:271:75
[INFO] [stdout]     |
[INFO] [stdout] 271 |     fn resize(&mut self, direction: Direction, magnitude: isize, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 271 |     fn resize(&mut self, direction: Direction, magnitude: isize, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:70:75
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn resize(&mut self, direction: Direction, magnitude: isize, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn resize(&mut self, direction: Direction, magnitude: isize, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:345:41
[INFO] [stdout]     |
[INFO] [stdout] 345 |     fn destroy_self(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 345 |     fn destroy_self(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:76:41
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn destroy_self(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn destroy_self(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.21s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.7.0, bitflags v0.8.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "dc798c956a9930ec69e318d50d21d693d6fe02f4445386322e20b24153b90b86", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dc798c956a9930ec69e318d50d21d693d6fe02f4445386322e20b24153b90b86", kill_on_drop: false }`
[INFO] [stdout] dc798c956a9930ec69e318d50d21d693d6fe02f4445386322e20b24153b90b86
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2bd089253e3a27ddaea3186c42e4033fcd3323470ab58547cdd27280c102187a
[INFO] running `Command { std: "docker" "start" "-a" "2bd089253e3a27ddaea3186c42e4033fcd3323470ab58547cdd27280c102187a", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/converting.rs:36:27
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 listing: &SurfaceListing)
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 listing: &dyn SurfaceListing)
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/converting.rs:22:27
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 listing: &SurfaceListing)
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 listing: &dyn SurfaceListing)
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:37:34
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn relax(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn relax(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:18:34
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn relax(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn relax(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:41:39
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn homogenize(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn homogenize(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:22:39
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn homogenize(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn homogenize(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:99:56
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn change_size(&mut self, vector: Vector, sa: &mut SurfaceAccess) {
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn change_size(&mut self, vector: Vector, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:25:56
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn change_size(&mut self, vactor: Vector, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn change_size(&mut self, vactor: Vector, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/packing.rs:104:49
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn set_size(&mut self, size: Size, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn set_size(&mut self, size: Size, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:28:49
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn set_size(&mut self, size: Size, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn set_size(&mut self, size: Size, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/packing.rs:144:40
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn remove_self(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn remove_self(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:31:40
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn remove_self(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn remove_self(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/searching.rs:46:30
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn find(&self, matcher: &Fn(&Frame) -> bool) -> Option<Frame> {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn find(&self, matcher: &dyn Fn(&Frame) -> bool) -> Option<Frame> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/searching.rs:16:30
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn find(&self, matcher: &Fn(&Frame) -> bool) -> Option<Frame>;
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn find(&self, matcher: &dyn Fn(&Frame) -> bool) -> Option<Frame>;
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:82:75
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn settle(&mut self, target: &mut Frame, area: Option<Area>, sa: &mut SurfaceAccess) {
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn settle(&mut self, target: &mut Frame, area: Option<Area>, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:21:75
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn settle(&mut self, target: &mut Frame, area: Option<Area>, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn settle(&mut self, target: &mut Frame, area: Option<Area>, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:101:85
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn resettle(&mut self, target: &mut Frame, position: Option<Position>, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn resettle(&mut self, target: &mut Frame, position: Option<Position>, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:26:85
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn resettle(&mut self, target: &mut Frame, position: Option<Position>, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                                     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn resettle(&mut self, target: &mut Frame, position: Option<Position>, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:140:64
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn change_geometry(&mut self, geometry: Geometry, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn change_geometry(&mut self, geometry: Geometry, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:34:64
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn change_geometry(&mut self, geometry: Geometry, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn change_geometry(&mut self, geometry: Geometry, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:204:67
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn jumpin(&mut self, side: Side, target: &mut Frame, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn jumpin(&mut self, side: Side, target: &mut Frame, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:53:67
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn jumpin(&mut self, side: Side, target: &mut Frame, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                   ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn jumpin(&mut self, side: Side, target: &mut Frame, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:233:65
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn jump(&mut self, side: Side, target: &mut Frame, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn jump(&mut self, side: Side, target: &mut Frame, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:56:65
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn jump(&mut self, side: Side, target: &mut Frame, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn jump(&mut self, side: Side, target: &mut Frame, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:238:65
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn dock(&mut self, target: &mut Frame, size: Size, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn dock(&mut self, target: &mut Frame, size: Size, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:59:65
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn dock(&mut self, target: &mut Frame, size: Size, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn dock(&mut self, target: &mut Frame, size: Size, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:247:38
[INFO] [stdout]     |
[INFO] [stdout] 247 |     fn anchorize(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 247 |     fn anchorize(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:62:38
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn anchorize(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn anchorize(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:257:52
[INFO] [stdout]     |
[INFO] [stdout] 257 |     fn deanchorize(&mut self, area: Area, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 257 |     fn deanchorize(&mut self, area: Area, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:66:52
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn deanchorize(&mut self, area: Area, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn deanchorize(&mut self, area: Area, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:271:75
[INFO] [stdout]     |
[INFO] [stdout] 271 |     fn resize(&mut self, direction: Direction, magnitude: isize, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 271 |     fn resize(&mut self, direction: Direction, magnitude: isize, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:70:75
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn resize(&mut self, direction: Direction, magnitude: isize, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn resize(&mut self, direction: Direction, magnitude: isize, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:345:41
[INFO] [stdout]     |
[INFO] [stdout] 345 |     fn destroy_self(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 345 |     fn destroy_self(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:76:41
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn destroy_self(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn destroy_self(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling cognitive-frames v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/common/assertions.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | #[cfg(feature = "testing")]
[INFO] [stdout]    |       ------------------- the item is gated behind the `testing` feature
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/common/assertions.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | #[cfg(feature = "testing")]
[INFO] [stdout]    |       ------------------- the item is gated behind the `testing` feature
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/test_frame_base.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | #[cfg(feature = "testing")]
[INFO] [stdout]    |       ------------------- the item is gated behind the `testing` feature
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/common/assertions.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | #[cfg(feature = "testing")]
[INFO] [stdout]    |       ------------------- the item is gated behind the `testing` feature
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/test_frame_settling.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | #[cfg(feature = "testing")]
[INFO] [stdout]    |       ------------------- the item is gated behind the `testing` feature
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/common/assertions.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | #[cfg(feature = "testing")]
[INFO] [stdout]    |       ------------------- the item is gated behind the `testing` feature
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/common/assertions.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | #[cfg(feature = "testing")]
[INFO] [stdout]    |       ------------------- the item is gated behind the `testing` feature
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `cognitive-frames` (test "test_frame_base") due to 2 previous errors
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `cognitive-frames` (test "test_frame_converting") due to 1 previous error
[INFO] [stderr] error: could not compile `cognitive-frames` (test "test_frame_packing") due to 1 previous error
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `cognitive-frames` (test "test_frame_searching") due to 1 previous error
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/converting.rs:36:27
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 listing: &SurfaceListing)
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 listing: &dyn SurfaceListing)
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/converting.rs:22:27
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 listing: &SurfaceListing)
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 listing: &dyn SurfaceListing)
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:37:34
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn relax(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn relax(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:18:34
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn relax(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn relax(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:41:39
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn homogenize(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn homogenize(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:22:39
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn homogenize(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn homogenize(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:99:56
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn change_size(&mut self, vector: Vector, sa: &mut SurfaceAccess) {
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn change_size(&mut self, vector: Vector, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:25:56
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn change_size(&mut self, vactor: Vector, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn change_size(&mut self, vactor: Vector, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/packing.rs:104:49
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn set_size(&mut self, size: Size, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn set_size(&mut self, size: Size, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:28:49
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn set_size(&mut self, size: Size, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn set_size(&mut self, size: Size, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/packing.rs:144:40
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn remove_self(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 144 |     fn remove_self(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/packing.rs:31:40
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn remove_self(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn remove_self(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/searching.rs:46:30
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn find(&self, matcher: &Fn(&Frame) -> bool) -> Option<Frame> {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn find(&self, matcher: &dyn Fn(&Frame) -> bool) -> Option<Frame> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/searching.rs:16:30
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn find(&self, matcher: &Fn(&Frame) -> bool) -> Option<Frame>;
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn find(&self, matcher: &dyn Fn(&Frame) -> bool) -> Option<Frame>;
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:82:75
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn settle(&mut self, target: &mut Frame, area: Option<Area>, sa: &mut SurfaceAccess) {
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn settle(&mut self, target: &mut Frame, area: Option<Area>, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:21:75
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn settle(&mut self, target: &mut Frame, area: Option<Area>, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 |     fn settle(&mut self, target: &mut Frame, area: Option<Area>, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:101:85
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn resettle(&mut self, target: &mut Frame, position: Option<Position>, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn resettle(&mut self, target: &mut Frame, position: Option<Position>, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:26:85
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn resettle(&mut self, target: &mut Frame, position: Option<Position>, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                                     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn resettle(&mut self, target: &mut Frame, position: Option<Position>, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:140:64
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn change_geometry(&mut self, geometry: Geometry, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn change_geometry(&mut self, geometry: Geometry, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:34:64
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn change_geometry(&mut self, geometry: Geometry, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn change_geometry(&mut self, geometry: Geometry, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:204:67
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn jumpin(&mut self, side: Side, target: &mut Frame, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn jumpin(&mut self, side: Side, target: &mut Frame, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:53:67
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn jumpin(&mut self, side: Side, target: &mut Frame, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                   ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn jumpin(&mut self, side: Side, target: &mut Frame, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:233:65
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn jump(&mut self, side: Side, target: &mut Frame, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn jump(&mut self, side: Side, target: &mut Frame, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:56:65
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn jump(&mut self, side: Side, target: &mut Frame, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn jump(&mut self, side: Side, target: &mut Frame, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:238:65
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn dock(&mut self, target: &mut Frame, size: Size, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn dock(&mut self, target: &mut Frame, size: Size, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:59:65
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn dock(&mut self, target: &mut Frame, size: Size, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn dock(&mut self, target: &mut Frame, size: Size, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:247:38
[INFO] [stdout]     |
[INFO] [stdout] 247 |     fn anchorize(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 247 |     fn anchorize(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:62:38
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn anchorize(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn anchorize(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:257:52
[INFO] [stdout]     |
[INFO] [stdout] 257 |     fn deanchorize(&mut self, area: Area, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 257 |     fn deanchorize(&mut self, area: Area, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:66:52
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn deanchorize(&mut self, area: Area, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn deanchorize(&mut self, area: Area, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:271:75
[INFO] [stdout]     |
[INFO] [stdout] 271 |     fn resize(&mut self, direction: Direction, magnitude: isize, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 271 |     fn resize(&mut self, direction: Direction, magnitude: isize, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:70:75
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn resize(&mut self, direction: Direction, magnitude: isize, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn resize(&mut self, direction: Direction, magnitude: isize, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/settling.rs:345:41
[INFO] [stdout]     |
[INFO] [stdout] 345 |     fn destroy_self(&mut self, sa: &mut SurfaceAccess) {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 345 |     fn destroy_self(&mut self, sa: &mut dyn SurfaceAccess) {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/settling.rs:76:41
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn destroy_self(&mut self, sa: &mut SurfaceAccess);
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn destroy_self(&mut self, sa: &mut dyn SurfaceAccess);
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `cognitive-frames` (test "test_frame_settling") due to 2 previous errors
[INFO] running `Command { std: "docker" "inspect" "2bd089253e3a27ddaea3186c42e4033fcd3323470ab58547cdd27280c102187a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2bd089253e3a27ddaea3186c42e4033fcd3323470ab58547cdd27280c102187a", kill_on_drop: false }`
[INFO] [stdout] 2bd089253e3a27ddaea3186c42e4033fcd3323470ab58547cdd27280c102187a
