[INFO] fetching crate cognitive-frames 0.1.0...
[INFO] checking cognitive-frames-0.1.0 against master#c2f2db79ca3024f68d22b45aa22b570775c2c4ad for pr-124157
[INFO] extracting crate cognitive-frames 0.1.0 into /workspace/builds/worker-2-tc1/source
[INFO] validating manifest of crates.io crate cognitive-frames 0.1.0 on toolchain c2f2db79ca3024f68d22b45aa22b570775c2c4ad
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "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-2-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 48 packages to latest compatible versions
[INFO] [stderr]       Adding addr2line v0.21.0 (latest: v0.22.0)
[INFO] [stderr]       Adding bitflags v0.7.0 (latest: v2.5.0)
[INFO] [stderr]       Adding bitflags v0.8.2 (latest: v2.5.0)
[INFO] [stderr]       Adding bitflags v1.3.2 (latest: v2.5.0)
[INFO] [stderr]       Adding cfg-if v0.1.10 (latest: v1.0.0)
[INFO] [stderr]       Adding gimli v0.28.1 (latest: v0.29.0)
[INFO] [stderr]       Adding gl v0.6.5 (latest: v0.14.0)
[INFO] [stderr]       Adding gl_generator v0.6.1 (latest: v0.14.0)
[INFO] [stderr]       Adding khronos_api v2.2.0 (latest: v3.1.0)
[INFO] [stderr]       Adding libc v0.1.12 (latest: v0.2.154)
[INFO] [stderr]       Adding libudev v0.2.0 (latest: v0.3.0)
[INFO] [stderr]       Adding log v0.3.9 (latest: v0.4.21)
[INFO] [stderr]       Adding nix v0.8.1 (latest: v0.28.0)
[INFO] [stderr]       Adding object v0.32.2 (latest: v0.35.0)
[INFO] [stderr]       Adding quote v0.3.15 (latest: v1.0.36)
[INFO] [stderr]       Adding serde v0.9.15 (latest: v1.0.200)
[INFO] [stderr]       Adding serde_derive v0.9.15 (latest: v1.0.200)
[INFO] [stderr]       Adding syn v0.11.11 (latest: v2.0.60)
[INFO] [stderr]       Adding time v0.1.45 (latest: v0.3.36)
[INFO] [stderr]       Adding timerfd v0.2.0 (latest: v1.6.0)
[INFO] [stderr]       Adding unicode-xid v0.0.4 (latest: v0.2.4)
[INFO] [stderr]       Adding wasi v0.10.0+wasi-snapshot-preview1 (latest: v0.13.0+wasi-0.2.0)
[INFO] [stderr]       Adding xml-rs v0.7.0 (latest: v0.8.20)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded nix v0.8.1
[INFO] [stderr]   Downloaded libc v0.1.12
[INFO] [stderr]   Downloaded libudev v0.2.0
[INFO] [stderr]   Downloaded serde v0.9.15
[INFO] [stderr]   Downloaded serde_codegen_internals v0.14.2
[INFO] [stderr]   Downloaded khronos v0.1.2
[INFO] [stderr]   Downloaded egl v0.2.7
[INFO] [stderr]   Downloaded xml-rs v0.7.0
[INFO] [stderr]   Downloaded bitflags v0.8.2
[INFO] [stderr]   Downloaded gbm-rs v0.2.0
[INFO] [stderr]   Downloaded khronos_api v2.2.0
[INFO] [stderr]   Downloaded gl_generator v0.6.1
[INFO] [stderr]   Downloaded gl v0.6.5
[INFO] [stderr]   Downloaded cognitive-graphics v0.1.0
[INFO] [stderr]   Downloaded timerfd v0.2.0
[INFO] [stderr]   Downloaded serde_derive v0.9.15
[INFO] [stderr]   Downloaded cognitive-qualia v0.1.0
[INFO] [stderr]   Downloaded dharma v0.1.0
[INFO] [stderr]   Downloaded timber v0.1.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e67a9a38c8e739be0a9ab2e8a255880307611c24534c458c78fc27408cb7d5df
[INFO] running `Command { std: "docker" "start" "-a" "e67a9a38c8e739be0a9ab2e8a255880307611c24534c458c78fc27408cb7d5df", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e67a9a38c8e739be0a9ab2e8a255880307611c24534c458c78fc27408cb7d5df", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e67a9a38c8e739be0a9ab2e8a255880307611c24534c458c78fc27408cb7d5df", kill_on_drop: false }`
[INFO] [stdout] e67a9a38c8e739be0a9ab2e8a255880307611c24534c458c78fc27408cb7d5df
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a62b1ac225cf6709b3f27a00260c7bd3d82cd8ef39a61aae2e08b02afef04811
[INFO] running `Command { std: "docker" "start" "-a" "a62b1ac225cf6709b3f27a00260c7bd3d82cd8ef39a61aae2e08b02afef04811", kill_on_drop: false }`
[INFO] [stderr]    Compiling khronos_api v2.2.0
[INFO] [stderr]    Compiling unicode-xid v0.0.4
[INFO] [stderr]     Checking libc v0.1.12
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking gimli v0.28.1
[INFO] [stderr]     Checking memchr v2.7.2
[INFO] [stderr]     Checking bitflags v0.7.0
[INFO] [stderr]     Checking bitflags v0.8.2
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]    Compiling backtrace v0.3.71
[INFO] [stderr]     Checking timerfd v0.2.0
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]     Checking gbm-rs v0.2.0
[INFO] [stderr]     Checking rustc-demangle v0.1.23
[INFO] [stderr]     Checking serde v0.9.15
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]     Checking nix v0.8.1
[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 object v0.32.2
[INFO] [stderr]     Checking libudev v0.2.0
[INFO] [stderr]    Compiling gl v0.6.5
[INFO] [stderr]    Compiling serde_codegen_internals v0.14.2
[INFO] [stderr]     Checking dharma v0.1.0
[INFO] [stderr]    Compiling serde_derive v0.9.15
[INFO] [stderr]     Checking addr2line v0.21.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: 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/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: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/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: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/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/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: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/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: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/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/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: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: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: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: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: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: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: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: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: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: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: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: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: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: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: 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 34 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] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the item is gated behind the `testing` feature
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/common/assertions.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the item is gated behind the `testing` feature
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/test_frame_settling.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the item is gated behind the `testing` feature
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/common/assertions.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the item is gated behind the `testing` feature
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/test_frame_base.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the item is gated behind the `testing` feature
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/common/assertions.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the item is gated behind the `testing` feature
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `frames::representation`
[INFO] [stdout]   --> tests/common/assertions.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | use frames::representation::FrameRepresentation;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ could not find `representation` in `frames`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/workdir/src/lib.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub mod representation;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the item is gated behind the `testing` feature
[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] [stderr] error: could not compile `cognitive-frames` (test "test_frame_converting") due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[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] 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] [stderr] error: could not compile `cognitive-frames` (test "test_frame_settling") due to 3 previous errors
[INFO] [stderr] error: could not compile `cognitive-frames` (test "test_frame_packing") 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] running `Command { std: "docker" "inspect" "a62b1ac225cf6709b3f27a00260c7bd3d82cd8ef39a61aae2e08b02afef04811", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a62b1ac225cf6709b3f27a00260c7bd3d82cd8ef39a61aae2e08b02afef04811", kill_on_drop: false }`
[INFO] [stdout] a62b1ac225cf6709b3f27a00260c7bd3d82cd8ef39a61aae2e08b02afef04811
