[INFO] fetching crate cognitive-frames 0.1.0...
[INFO] checking cognitive-frames-0.1.0 against master#30f74ff0dc4d66debc8b50724c446f817e5f75f4 for pr-121848-1
[INFO] extracting crate cognitive-frames 0.1.0 into /workspace/builds/worker-4-tc1/source
[INFO] validating manifest of crates.io crate cognitive-frames 0.1.0 on toolchain 30f74ff0dc4d66debc8b50724c446f817e5f75f4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[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-4-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded libudev v0.2.0
[INFO] [stderr]   Downloaded cognitive-qualia v0.1.0
[INFO] [stderr]   Downloaded timber v0.1.0
[INFO] [stderr]   Downloaded serde_derive v0.9.15
[INFO] [stderr]   Downloaded gl v0.6.5
[INFO] [stderr]   Downloaded khronos v0.1.2
[INFO] [stderr]   Downloaded egl v0.2.7
[INFO] [stderr]   Downloaded cognitive-graphics v0.1.0
[INFO] [stderr]   Downloaded gbm-rs v0.2.0
[INFO] [stderr]   Downloaded dharma v0.1.0
[INFO] [stderr]   Downloaded serde_codegen_internals v0.14.2
[INFO] [stderr]   Downloaded bitflags v0.8.2
[INFO] [stderr]   Downloaded gl_generator v0.6.1
[INFO] [stderr]   Downloaded libc v0.1.12
[INFO] [stderr]   Downloaded xml-rs v0.7.0
[INFO] [stderr]   Downloaded nix v0.8.1
[INFO] [stderr]   Downloaded khronos_api v2.2.0
[INFO] [stderr]   Downloaded serde v0.9.15
[INFO] [stderr]   Downloaded timerfd v0.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 46eb9e4eef5b7cd082377fdad3bbed1d39337e15ee9f4e1df875ae7c292f7e47
[INFO] running `Command { std: "docker" "start" "-a" "46eb9e4eef5b7cd082377fdad3bbed1d39337e15ee9f4e1df875ae7c292f7e47", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "46eb9e4eef5b7cd082377fdad3bbed1d39337e15ee9f4e1df875ae7c292f7e47", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "46eb9e4eef5b7cd082377fdad3bbed1d39337e15ee9f4e1df875ae7c292f7e47", kill_on_drop: false }`
[INFO] [stdout] 46eb9e4eef5b7cd082377fdad3bbed1d39337e15ee9f4e1df875ae7c292f7e47
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3e85cce5ce97031e36c8e10fccaac0615c10444b09608d8d7c8bb27614f80309
[INFO] running `Command { std: "docker" "start" "-a" "3e85cce5ce97031e36c8e10fccaac0615c10444b09608d8d7c8bb27614f80309", kill_on_drop: false }`
[INFO] [stderr]    Compiling khronos_api v2.2.0
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling unicode-xid v0.0.4
[INFO] [stderr]     Checking libc v0.1.12
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]     Checking bitflags v0.7.0
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking gbm-rs v0.2.0
[INFO] [stderr]     Checking timerfd v0.2.0
[INFO] [stderr]     Checking bitflags v0.8.2
[INFO] [stderr]     Checking serde v0.9.15
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]     Checking nix v0.8.1
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]     Checking khronos v0.1.2
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling syn v0.11.11
[INFO] [stderr]     Checking egl v0.2.7
[INFO] [stderr]     Checking timber v0.1.0
[INFO] [stderr]    Compiling gl_generator v0.6.1
[INFO] [stderr]     Checking libudev v0.2.0
[INFO] [stderr]    Compiling serde_codegen_internals v0.14.2
[INFO] [stderr]    Compiling gl v0.6.5
[INFO] [stderr]     Checking dharma v0.1.0
[INFO] [stderr]    Compiling serde_derive v0.9.15
[INFO] [stderr]     Checking cognitive-graphics v0.1.0
[INFO] [stderr]     Checking cognitive-qualia v0.1.0
[INFO] [stderr]     Checking cognitive-frames v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the item `Default` is imported redundantly
[INFO] [stdout]  --> src/frame.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::default::Default;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:105:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Default` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Default` is imported redundantly
[INFO] [stdout]  --> src/frame.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::default::Default;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:105:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Default` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 76 |     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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 76 |     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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: 35 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 35 warnings emitted
[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] 
[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] 
[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] 
[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] 
[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] 
[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] 
[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] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[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_packing") due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `cognitive-frames` (test "test_frame_converting") due to 2 previous errors
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[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_searching") due to 2 previous errors
[INFO] [stderr] error: could not compile `cognitive-frames` (test "test_frame_base") due to 3 previous errors
[INFO] [stdout] error: aborting due to 2 previous errors
[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_settling") due to 3 previous errors
[INFO] running `Command { std: "docker" "inspect" "3e85cce5ce97031e36c8e10fccaac0615c10444b09608d8d7c8bb27614f80309", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3e85cce5ce97031e36c8e10fccaac0615c10444b09608d8d7c8bb27614f80309", kill_on_drop: false }`
[INFO] [stdout] 3e85cce5ce97031e36c8e10fccaac0615c10444b09608d8d7c8bb27614f80309
[INFO] checking cognitive-frames-0.1.0 against try#72eda894eb3548c7ba774079ce0afab42958d4ee for pr-121848-1
[INFO] extracting crate cognitive-frames 0.1.0 into /workspace/builds/worker-4-tc2/source
[INFO] validating manifest of crates.io crate cognitive-frames 0.1.0 on toolchain 72eda894eb3548c7ba774079ce0afab42958d4ee
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[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-4-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1f64a0592f66d6e0eec39b99749ec90bb91d7d4229a557c2df7981c830f84cd0
[INFO] running `Command { std: "docker" "start" "-a" "1f64a0592f66d6e0eec39b99749ec90bb91d7d4229a557c2df7981c830f84cd0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1f64a0592f66d6e0eec39b99749ec90bb91d7d4229a557c2df7981c830f84cd0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1f64a0592f66d6e0eec39b99749ec90bb91d7d4229a557c2df7981c830f84cd0", kill_on_drop: false }`
[INFO] [stdout] 1f64a0592f66d6e0eec39b99749ec90bb91d7d4229a557c2df7981c830f84cd0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 890fd1785a304e7f5836db937863e1b50bc32a6d4b04bfa415a7996d24151d74
[INFO] running `Command { std: "docker" "start" "-a" "890fd1785a304e7f5836db937863e1b50bc32a6d4b04bfa415a7996d24151d74", kill_on_drop: false }`
[INFO] [stderr]    Compiling khronos_api v2.2.0
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling unicode-xid v0.0.4
[INFO] [stderr]     Checking libc v0.1.12
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]     Checking bitflags v0.7.0
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking gbm-rs v0.2.0
[INFO] [stderr]     Checking timerfd v0.2.0
[INFO] [stderr]     Checking bitflags v0.8.2
[INFO] [stderr]     Checking serde v0.9.15
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]     Checking nix v0.8.1
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]     Checking khronos v0.1.2
[INFO] [stderr]    Compiling syn v0.11.11
[INFO] [stderr]     Checking egl v0.2.7
[INFO] [stderr]     Checking timber v0.1.0
[INFO] [stderr]    Compiling gl_generator v0.6.1
[INFO] [stderr]     Checking libudev v0.2.0
[INFO] [stderr]    Compiling serde_codegen_internals v0.14.2
[INFO] [stderr]    Compiling gl v0.6.5
[INFO] [stderr]    Compiling serde_derive v0.9.15
[INFO] [stderr]     Checking dharma v0.1.0
[INFO] [stderr]     Checking cognitive-graphics v0.1.0
[INFO] [stderr]     Checking cognitive-qualia v0.1.0
[INFO] [stderr]     Checking cognitive-frames v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the item `Default` is imported redundantly
[INFO] [stdout]  --> src/frame.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::default::Default;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:105:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Default` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Default` is imported redundantly
[INFO] [stdout]  --> src/frame.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::default::Default;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:105:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Default` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 76 |     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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 76 |     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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe 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: 35 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 35 warnings emitted
[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] 
[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] 
[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] 
[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] 
[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] 
[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] 
[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] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[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_packing") due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `cognitive-frames` (test "test_frame_converting") due to 2 previous errors
[INFO] [stdout] error: aborting due to 1 previous error
[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_searching") due to 2 previous errors
[INFO] [stdout] error: aborting due to 2 previous errors
[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 3 previous errors
[INFO] [stdout] error: aborting due to 2 previous errors
[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_settling") due to 3 previous errors
[INFO] running `Command { std: "docker" "inspect" "890fd1785a304e7f5836db937863e1b50bc32a6d4b04bfa415a7996d24151d74", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "890fd1785a304e7f5836db937863e1b50bc32a6d4b04bfa415a7996d24151d74", kill_on_drop: false }`
[INFO] [stdout] 890fd1785a304e7f5836db937863e1b50bc32a6d4b04bfa415a7996d24151d74
