[INFO] fetching crate tokyo 1.0.0...
[INFO] testing tokyo-1.0.0 against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] extracting crate tokyo 1.0.0 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate tokyo 1.0.0
[INFO] finished tweaking crates.io crate tokyo 1.0.0
[INFO] tweaked toml for crates.io crate tokyo 1.0.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate tokyo 1.0.0 on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 185 packages to latest compatible versions
[INFO] [stderr]       Adding actix v0.7.9 (available: v0.13.5)
[INFO] [stderr]       Adding euclid v0.19.9 (available: v0.22.11)
[INFO] [stderr]       Adding futures v0.1.31 (available: v0.3.31)
[INFO] [stderr]       Adding rand v0.6.5 (available: v0.9.2)
[INFO] [stderr]       Adding tokio v0.1.22 (available: v1.49.0)
[INFO] [stderr]       Adding tokio-tungstenite v0.6.0 (available: v0.28.0)
[INFO] [stderr]       Adding url v1.7.2 (available: v2.5.8)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tungstenite v0.6.1
[INFO] [stderr]   Downloaded futures-cpupool v0.1.8
[INFO] [stderr]   Downloaded input_buffer v0.2.0
[INFO] [stderr]   Downloaded sha-1 v0.8.2
[INFO] [stderr]   Downloaded tokio-dns-unofficial v0.3.1
[INFO] [stderr]   Downloaded hostname v0.3.1
[INFO] [stderr]   Downloaded scopeguard v0.3.3
[INFO] [stderr]   Downloaded actix_derive v0.3.2
[INFO] [stderr]   Downloaded tokio-signal v0.2.9
[INFO] [stderr]   Downloaded lock_api v0.1.5
[INFO] [stderr]   Downloaded parking_lot_core v0.4.0
[INFO] [stderr]   Downloaded trust-dns-resolver v0.10.3
[INFO] [stderr]   Downloaded actix v0.7.9
[INFO] [stderr]   Downloaded euclid v0.19.9
[INFO] [stderr]   Downloaded rand v0.5.6
[INFO] [stderr]   Downloaded socket2 v0.3.19
[INFO] [stderr]   Downloaded parking_lot v0.7.1
[INFO] [stderr]   Downloaded trust-dns-proto v0.5.0
[INFO] [stderr]   Downloaded trust-dns-proto v0.6.3
[INFO] [stderr]   Downloaded error-chain v0.8.1
[INFO] [stderr]   Downloaded widestring v0.2.2
[INFO] [stderr]   Downloaded ipconfig v0.1.9
[INFO] [stderr]   Downloaded resolv-conf v0.6.3
[INFO] [stderr]   Downloaded euclid_macros v0.1.0
[INFO] [stderr]   Downloaded match_cfg v0.1.0
[INFO] [stderr]   Downloaded text_io v0.1.13
[INFO] [stderr]   Downloaded base64 v0.10.1
[INFO] [stderr]   Downloaded tokio-tls v0.2.1
[INFO] [stderr]   Downloaded tokio-tungstenite v0.6.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 848109fc6facedfdc58b9f39a12875f3e70ea1284cbeabf6b996593a758afa2a
[INFO] running `Command { std: "docker" "start" "-a" "848109fc6facedfdc58b9f39a12875f3e70ea1284cbeabf6b996593a758afa2a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "848109fc6facedfdc58b9f39a12875f3e70ea1284cbeabf6b996593a758afa2a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "848109fc6facedfdc58b9f39a12875f3e70ea1284cbeabf6b996593a758afa2a", kill_on_drop: false }`
[INFO] [stdout] 848109fc6facedfdc58b9f39a12875f3e70ea1284cbeabf6b996593a758afa2a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e733bfe3fcccf340356f827a817df09954c7167f3ecc2895fa40ef340fadb560
[INFO] running `Command { std: "docker" "start" "-a" "e733bfe3fcccf340356f827a817df09954c7167f3ecc2895fa40ef340fadb560", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.179
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling futures v0.1.31
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling lock_api v0.3.4
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling match_cfg v0.1.0
[INFO] [stderr]    Compiling block-buffer v0.7.3
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling owning_ref v0.4.1
[INFO] [stderr]    Compiling digest v0.8.1
[INFO] [stderr]    Compiling scopeguard v0.3.3
[INFO] [stderr]    Compiling linked-hash-map v0.5.6
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling crossbeam-utils v0.6.6
[INFO] [stderr]    Compiling base64 v0.10.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling sha-1 v0.8.2
[INFO] [stderr]    Compiling crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling lru-cache v0.1.2
[INFO] [stderr]    Compiling lock_api v0.1.5
[INFO] [stderr]    Compiling parking_lot_core v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling parking_lot_core v0.4.0
[INFO] [stderr]    Compiling text_io v0.1.13
[INFO] [stderr]    Compiling crossbeam-deque v0.7.4
[INFO] [stderr]    Compiling crossbeam-channel v0.3.9
[INFO] [stderr]    Compiling tokio-executor v0.1.10
[INFO] [stderr]    Compiling tokio-sync v0.1.8
[INFO] [stderr]    Compiling tokio-timer v0.2.13
[INFO] [stderr]    Compiling tokio-current-thread v0.1.7
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling net2 v0.2.39
[INFO] [stderr]    Compiling rand v0.5.6
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling socket2 v0.3.19
[INFO] [stderr]    Compiling hostname v0.3.1
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling mio v0.6.23
[INFO] [stderr]    Compiling tokio-threadpool v0.1.18
[INFO] [stderr]    Compiling futures-cpupool v0.1.8
[INFO] [stderr]    Compiling resolv-conf v0.6.3
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling tokio-io v0.1.13
[INFO] [stderr]    Compiling input_buffer v0.2.0
[INFO] [stderr]    Compiling mio-uds v0.6.8
[INFO] [stderr]    Compiling tokio-reactor v0.1.12
[INFO] [stderr]    Compiling tokio-codec v0.1.2
[INFO] [stderr]    Compiling tokio-fs v0.1.7
[INFO] [stderr]    Compiling uuid v0.7.4
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling tokio-tcp v0.1.4
[INFO] [stderr]    Compiling tokio-udp v0.1.6
[INFO] [stderr]    Compiling tokio-uds v0.2.7
[INFO] [stderr]    Compiling tokio-signal v0.2.9
[INFO] [stderr]    Compiling parking_lot v0.7.1
[INFO] [stderr]    Compiling actix_derive v0.3.2
[INFO] [stderr]    Compiling euclid_macros v0.1.0
[INFO] [stderr]    Compiling tokio v0.1.22
[INFO] [stderr]    Compiling tokio-dns-unofficial v0.3.1
[INFO] [stderr]    Compiling euclid v0.19.9
[INFO] [stderr]    Compiling backtrace v0.3.76
[INFO] [stderr]    Compiling failure v0.1.8
[INFO] [stderr]    Compiling trust-dns-proto v0.6.3
[INFO] [stderr]    Compiling trust-dns-proto v0.5.0
[INFO] [stderr]    Compiling trust-dns-resolver v0.10.3
[INFO] [stderr]    Compiling actix v0.7.9
[INFO] [stderr]    Compiling tokio-tls v0.2.1
[INFO] [stderr]    Compiling tungstenite v0.6.1
[INFO] [stderr]    Compiling tokio-tungstenite v0.6.0
[INFO] [stderr]    Compiling tokyo v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |     inner: VecDeque<Box<Behavior>>,
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 112 |     inner: VecDeque<Box<dyn Behavior>>,
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:101:22
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl Default for Box<Behavior> {
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl Default for Box<dyn Behavior> {
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/behavior.rs:95:20
[INFO] [stdout]    |
[INFO] [stdout] 95 | impl Clone for Box<Behavior> {
[INFO] [stdout]    |                    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 95 | impl Clone for Box<dyn Behavior> {
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/behavior.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn box_clone(&self) -> Box<Behavior>;
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn box_clone(&self) -> Box<dyn Behavior>;
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:126:32
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:150:32
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:165:32
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:186:32
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:231:32
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:253:32
[INFO] [stdout]     |
[INFO] [stdout] 253 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 253 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:284:32
[INFO] [stdout]     |
[INFO] [stdout] 284 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 284 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:329:32
[INFO] [stdout]     |
[INFO] [stdout] 329 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 329 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:362:32
[INFO] [stdout]     |
[INFO] [stdout] 362 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 362 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:393:32
[INFO] [stdout]     |
[INFO] [stdout] 393 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 393 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:414:32
[INFO] [stdout]     |
[INFO] [stdout] 414 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 414 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/geom.rs:44:32
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn distance(&self, other: &PointExt) -> f32 {
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn distance(&self, other: &dyn PointExt) -> f32 {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/geom.rs:49:32
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn angle_to(&self, other: &PointExt) -> Radian {
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn angle_to(&self, other: &dyn PointExt) -> Radian {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/geom.rs:55:35
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn velocity_to(&self, other: &PointExt, dt: Duration) -> Vector {
[INFO] [stdout]    |                                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn velocity_to(&self, other: &dyn PointExt, dt: Duration) -> Vector {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:136:37
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub fn with_slice(behaviors: &[&Behavior]) -> Self {
[INFO] [stdout]     |                                     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub fn with_slice(behaviors: &[&dyn Behavior]) -> Self {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Random` is never constructed
[INFO] [stdout]    --> src/behavior.rs:346:8
[INFO] [stdout]     |
[INFO] [stdout] 346 | struct Random;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AsSecsF32` is never used
[INFO] [stdout]   --> src/geom.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | trait AsSecsF32 {
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 25.85s
[INFO] running `Command { std: "docker" "inspect" "e733bfe3fcccf340356f827a817df09954c7167f3ecc2895fa40ef340fadb560", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e733bfe3fcccf340356f827a817df09954c7167f3ecc2895fa40ef340fadb560", kill_on_drop: false }`
[INFO] [stdout] e733bfe3fcccf340356f827a817df09954c7167f3ecc2895fa40ef340fadb560
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b9ccd938f0cdf738ccf93afc6cb5a01607b8ff0be197d307fe61dbf3387a4fd3
[INFO] running `Command { std: "docker" "start" "-a" "b9ccd938f0cdf738ccf93afc6cb5a01607b8ff0be197d307fe61dbf3387a4fd3", kill_on_drop: false }`
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |     inner: VecDeque<Box<Behavior>>,
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 112 |     inner: VecDeque<Box<dyn Behavior>>,
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:101:22
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl Default for Box<Behavior> {
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl Default for Box<dyn Behavior> {
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/behavior.rs:95:20
[INFO] [stdout]    |
[INFO] [stdout] 95 | impl Clone for Box<Behavior> {
[INFO] [stdout]    |                    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 95 | impl Clone for Box<dyn Behavior> {
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/behavior.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn box_clone(&self) -> Box<Behavior>;
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn box_clone(&self) -> Box<dyn Behavior>;
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:126:32
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:150:32
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:165:32
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:186:32
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:231:32
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:253:32
[INFO] [stdout]     |
[INFO] [stdout] 253 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 253 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:284:32
[INFO] [stdout]     |
[INFO] [stdout] 284 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 284 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:329:32
[INFO] [stdout]     |
[INFO] [stdout] 329 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 329 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:362:32
[INFO] [stdout]     |
[INFO] [stdout] 362 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 362 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:393:32
[INFO] [stdout]     |
[INFO] [stdout] 393 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 393 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:414:32
[INFO] [stdout]     |
[INFO] [stdout] 414 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 414 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/geom.rs:44:32
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn distance(&self, other: &PointExt) -> f32 {
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn distance(&self, other: &dyn PointExt) -> f32 {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/geom.rs:49:32
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn angle_to(&self, other: &PointExt) -> Radian {
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn angle_to(&self, other: &dyn PointExt) -> Radian {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/geom.rs:55:35
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn velocity_to(&self, other: &PointExt, dt: Duration) -> Vector {
[INFO] [stdout]    |                                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn velocity_to(&self, other: &dyn PointExt, dt: Duration) -> Vector {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:136:37
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub fn with_slice(behaviors: &[&Behavior]) -> Self {
[INFO] [stdout]     |                                     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub fn with_slice(behaviors: &[&dyn Behavior]) -> Self {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Random` is never constructed
[INFO] [stdout]    --> src/behavior.rs:346:8
[INFO] [stdout]     |
[INFO] [stdout] 346 | struct Random;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AsSecsF32` is never used
[INFO] [stdout]   --> src/geom.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | trait AsSecsF32 {
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tokyo v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/chaser.rs:21:27
[INFO] [stdout]    |
[INFO] [stdout] 21 |     current_behavior: Box<Behavior>,
[INFO] [stdout]    |                           ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 |     current_behavior: Box<dyn Behavior>,
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/chaser.rs:24:19
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn chase() -> Box<Behavior> {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn chase() -> Box<dyn Behavior> {
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |     inner: VecDeque<Box<Behavior>>,
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 112 |     inner: VecDeque<Box<dyn Behavior>>,
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:101:22
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl Default for Box<Behavior> {
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl Default for Box<dyn Behavior> {
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/behavior.rs:95:20
[INFO] [stdout]    |
[INFO] [stdout] 95 | impl Clone for Box<Behavior> {
[INFO] [stdout]    |                    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 95 | impl Clone for Box<dyn Behavior> {
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/behavior.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn box_clone(&self) -> Box<Behavior>;
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn box_clone(&self) -> Box<dyn Behavior>;
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:126:32
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:150:32
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:165:32
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 165 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:186:32
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:231:32
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:253:32
[INFO] [stdout]     |
[INFO] [stdout] 253 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 253 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:284:32
[INFO] [stdout]     |
[INFO] [stdout] 284 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 284 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:329:32
[INFO] [stdout]     |
[INFO] [stdout] 329 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 329 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:362:32
[INFO] [stdout]     |
[INFO] [stdout] 362 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 362 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:393:32
[INFO] [stdout]     |
[INFO] [stdout] 393 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 393 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:414:32
[INFO] [stdout]     |
[INFO] [stdout] 414 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stdout]     |                                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 414 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/geom.rs:44:32
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn distance(&self, other: &PointExt) -> f32 {
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn distance(&self, other: &dyn PointExt) -> f32 {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/geom.rs:49:32
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn angle_to(&self, other: &PointExt) -> Radian {
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn angle_to(&self, other: &dyn PointExt) -> Radian {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/geom.rs:55:35
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn velocity_to(&self, other: &PointExt, dt: Duration) -> Vector {
[INFO] [stdout]    |                                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn velocity_to(&self, other: &dyn PointExt, dt: Duration) -> Vector {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/behavior.rs:136:37
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub fn with_slice(behaviors: &[&Behavior]) -> Self {
[INFO] [stdout]     |                                     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub fn with_slice(behaviors: &[&dyn Behavior]) -> Self {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Random` is never constructed
[INFO] [stdout]    --> src/behavior.rs:346:8
[INFO] [stdout]     |
[INFO] [stdout] 346 | struct Random;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AsSecsF32` is never used
[INFO] [stdout]   --> src/geom.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | trait AsSecsF32 {
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.33s
[INFO] running `Command { std: "docker" "inspect" "b9ccd938f0cdf738ccf93afc6cb5a01607b8ff0be197d307fe61dbf3387a4fd3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b9ccd938f0cdf738ccf93afc6cb5a01607b8ff0be197d307fe61dbf3387a4fd3", kill_on_drop: false }`
[INFO] [stdout] b9ccd938f0cdf738ccf93afc6cb5a01607b8ff0be197d307fe61dbf3387a4fd3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 25bba5a0c1813b9e4bb977d41b90db77ac645bf08f7fa6a2f04dd16f231debb6
[INFO] running `Command { std: "docker" "start" "-a" "25bba5a0c1813b9e4bb977d41b90db77ac645bf08f7fa6a2f04dd16f231debb6", kill_on_drop: false }`
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:112:25
[INFO] [stderr]     |
[INFO] [stderr] 112 |     inner: VecDeque<Box<Behavior>>,
[INFO] [stderr]     |                         ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 112 |     inner: VecDeque<Box<dyn Behavior>>,
[INFO] [stderr]     |                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:101:22
[INFO] [stderr]     |
[INFO] [stderr] 101 | impl Default for Box<Behavior> {
[INFO] [stderr]     |                      ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 101 | impl Default for Box<dyn Behavior> {
[INFO] [stderr]     |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/behavior.rs:95:20
[INFO] [stderr]    |
[INFO] [stderr] 95 | impl Clone for Box<Behavior> {
[INFO] [stderr]    |                    ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 95 | impl Clone for Box<dyn Behavior> {
[INFO] [stderr]    |                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/behavior.rs:92:32
[INFO] [stderr]    |
[INFO] [stderr] 92 |     fn box_clone(&self) -> Box<Behavior>;
[INFO] [stderr]    |                                ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 92 |     fn box_clone(&self) -> Box<dyn Behavior>;
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:126:32
[INFO] [stderr]     |
[INFO] [stderr] 126 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 126 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:150:32
[INFO] [stderr]     |
[INFO] [stderr] 150 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 150 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:165:32
[INFO] [stderr]     |
[INFO] [stderr] 165 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 165 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:186:32
[INFO] [stderr]     |
[INFO] [stderr] 186 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 186 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:231:32
[INFO] [stderr]     |
[INFO] [stderr] 231 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 231 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:253:32
[INFO] [stderr]     |
[INFO] [stderr] 253 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 253 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:284:32
[INFO] [stderr]     |
[INFO] [stderr] 284 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 284 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:329:32
[INFO] [stderr]     |
[INFO] [stderr] 329 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 329 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:362:32
[INFO] [stderr]     |
[INFO] [stderr] 362 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 362 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:393:32
[INFO] [stderr]     |
[INFO] [stderr] 393 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 393 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:414:32
[INFO] [stderr]     |
[INFO] [stderr] 414 |     fn box_clone(&self) -> Box<Behavior> {
[INFO] [stderr]     |                                ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 414 |     fn box_clone(&self) -> Box<dyn Behavior> {
[INFO] [stderr]     |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/geom.rs:44:32
[INFO] [stderr]    |
[INFO] [stderr] 44 |     fn distance(&self, other: &PointExt) -> f32 {
[INFO] [stderr]    |                                ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 44 |     fn distance(&self, other: &dyn PointExt) -> f32 {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/geom.rs:49:32
[INFO] [stderr]    |
[INFO] [stderr] 49 |     fn angle_to(&self, other: &PointExt) -> Radian {
[INFO] [stderr]    |                                ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 49 |     fn angle_to(&self, other: &dyn PointExt) -> Radian {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/geom.rs:55:35
[INFO] [stderr]    |
[INFO] [stderr] 55 |     fn velocity_to(&self, other: &PointExt, dt: Duration) -> Vector {
[INFO] [stderr]    |                                   ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 55 |     fn velocity_to(&self, other: &dyn PointExt, dt: Duration) -> Vector {
[INFO] [stderr]    |                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/behavior.rs:136:37
[INFO] [stderr]     |
[INFO] [stderr] 136 |     pub fn with_slice(behaviors: &[&Behavior]) -> Self {
[INFO] [stderr]     |                                     ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 136 |     pub fn with_slice(behaviors: &[&dyn Behavior]) -> Self {
[INFO] [stderr]     |                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Random` is never constructed
[INFO] [stderr]    --> src/behavior.rs:346:8
[INFO] [stderr]     |
[INFO] [stderr] 346 | struct Random;
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait `AsSecsF32` is never used
[INFO] [stderr]   --> src/geom.rs:29:7
[INFO] [stderr]    |
[INFO] [stderr] 29 | trait AsSecsF32 {
[INFO] [stderr]    |       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `tokyo` (lib) generated 21 warnings (run `cargo fix --lib -p tokyo` to apply 19 suggestions)
[INFO] [stderr] warning: `tokyo` (lib test) generated 21 warnings (21 duplicates)
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> examples/chaser.rs:21:27
[INFO] [stderr]    |
[INFO] [stderr] 21 |     current_behavior: Box<Behavior>,
[INFO] [stderr]    |                           ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 21 |     current_behavior: Box<dyn Behavior>,
[INFO] [stderr]    |                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> examples/chaser.rs:24:19
[INFO] [stderr]    |
[INFO] [stderr] 24 | fn chase() -> Box<Behavior> {
[INFO] [stderr]    |                   ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 24 | fn chase() -> Box<dyn Behavior> {
[INFO] [stderr]    |                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: `tokyo` (example "chaser") generated 2 warnings (run `cargo fix --example "chaser" -p tokyo` to apply 2 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.14s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tokyo-327444720e227707)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests tokyo
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test src/analyzer.rs - analyzer::Analyzer (line 22) ... FAILED
[INFO] [stdout] test src/behavior.rs - behavior::Behavior (line 56) ... FAILED
[INFO] [stdout] test src/behavior.rs - behavior::Behavior (line 22) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/analyzer.rs - analyzer::Analyzer (line 22) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Analyzer`
[INFO] [stdout]   --> src/analyzer.rs:23:20
[INFO] [stdout]    |
[INFO] [stdout] 23 | let mut analyzer = Analyzer::default();
[INFO] [stdout]    |                    ^^^^^^^^ use of undeclared type `Analyzer`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 22 + use tokyo::analyzer::Analyzer;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `state` in this scope
[INFO] [stdout]   --> src/analyzer.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 | analyzer.push_state(state, Instant::now());
[INFO] [stdout]    |                     ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Instant`
[INFO] [stdout]   --> src/analyzer.rs:26:28
[INFO] [stdout]    |
[INFO] [stdout] 26 | analyzer.push_state(state, Instant::now());
[INFO] [stdout]    |                            ^^^^^^^ use of undeclared type `Instant`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 22 + use std::time::Instant;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `do_something_with` in this scope
[INFO] [stdout]   --> src/analyzer.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     do_something_with(player);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/behavior.rs - behavior::Behavior (line 56) stdout ----
[INFO] [stdout] error: `...` is not supported for non-extern functions
[INFO] [stdout]   --> src/behavior.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn tick(...) {
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: only `extern "C"` and `extern "C-unwind"` functions may have a C variable argument list
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Handlar` in this scope
[INFO] [stdout]   --> src/behavior.rs:57:6
[INFO] [stdout]    |
[INFO] [stdout] 57 | impl Handlar for Player {
[INFO] [stdout]    |      ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Player` in this scope
[INFO] [stdout]   --> src/behavior.rs:57:18
[INFO] [stdout]    |
[INFO] [stdout] 57 | impl Handlar for Player {
[INFO] [stdout]    |                  ^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 56 + use tokyo::analyzer::player::Player;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/behavior.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn tick(...) {
[INFO] [stdout]    |        ---- this function doesn't have a `self` parameter
[INFO] [stdout] 59 |         self.analyzer.push_state(state, Instant::now());
[INFO] [stdout]    |         ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout]    |
[INFO] [stdout] help: add a `self` receiver parameter to make the associated `fn` a method
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn tick(&self, ...) {
[INFO] [stdout]    |             ++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `state` in this scope
[INFO] [stdout]   --> src/behavior.rs:59:34
[INFO] [stdout]    |
[INFO] [stdout] 59 |         self.analyzer.push_state(state, Instant::now());
[INFO] [stdout]    |                                  ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Instant`
[INFO] [stdout]   --> src/behavior.rs:59:41
[INFO] [stdout]    |
[INFO] [stdout] 59 |         self.analyzer.push_state(state, Instant::now());
[INFO] [stdout]    |                                         ^^^^^^^ use of undeclared type `Instant`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 56 + use std::time::Instant;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/behavior.rs:62:31
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn tick(...) {
[INFO] [stdout]    |        ---- this function doesn't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 62 |         if let Some(bullet) = self.analyzer.bullets_colliding(Duration::from_secs(1)).next() {
[INFO] [stdout]    |                               ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout]    |
[INFO] [stdout] help: add a `self` receiver parameter to make the associated `fn` a method
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn tick(&self, ...) {
[INFO] [stdout]    |             ++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Duration`
[INFO] [stdout]   --> src/behavior.rs:62:63
[INFO] [stdout]    |
[INFO] [stdout] 62 |         if let Some(bullet) = self.analyzer.bullets_colliding(Duration::from_secs(1)).next() {
[INFO] [stdout]    |                                                               ^^^^^^^^ use of undeclared type `Duration`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 56 + use std::time::Duration;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Sequence`
[INFO] [stdout]   --> src/behavior.rs:67:25
[INFO] [stdout]    |
[INFO] [stdout] 67 |             let dodge = Sequence::with_slice(&[
[INFO] [stdout]    |                         ^^^^^^^^ use of undeclared type `Sequence`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 56 + use tokyo::behavior::Sequence;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Rotate`
[INFO] [stdout]   --> src/behavior.rs:68:18
[INFO] [stdout]    |
[INFO] [stdout] 68 |                 &Rotate::with_margin_degrees(angle, 30.0),
[INFO] [stdout]    |                  ^^^^^^ use of undeclared type `Rotate`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 56 + use tokyo::behavior::Rotate;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Throttle`
[INFO] [stdout]   --> src/behavior.rs:69:18
[INFO] [stdout]    |
[INFO] [stdout] 69 |                 &Throttle::max(),
[INFO] [stdout]    |                  ^^^^^^^^ use of undeclared type `Throttle`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 56 + use tokyo::behavior::Throttle;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/behavior.rs:79:40
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn tick(...) {
[INFO] [stdout]    |        ---- this function doesn't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 79 |             return dodge.next_command(&self.analyzer);
[INFO] [stdout]    |                                        ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout]    |
[INFO] [stdout] help: add a `self` receiver parameter to make the associated `fn` a method
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn tick(&self, ...) {
[INFO] [stdout]    |             ++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: C-variadic functions are unstable
[INFO] [stdout]   --> src/behavior.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 | /     fn tick(...) {
[INFO] [stdout] 59 | |         self.analyzer.push_state(state, Instant::now());
[INFO] [stdout] ...  |
[INFO] [stdout] 81 | |         None
[INFO] [stdout] 82 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #44930 <https://github.com/rust-lang/rust/issues/44930> for more information
[INFO] [stdout]    = help: add `#![feature(c_variadic)]` to the crate attributes to enable
[INFO] [stdout]    = note: this compiler was built on 2026-01-05; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] warning: missing pattern for `...` argument
[INFO] [stdout]   --> src/behavior.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn tick(...) {
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #145544 <https://github.com/rust-lang/rust/issues/145544>
[INFO] [stdout]    = note: `#[warn(varargs_without_pattern)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] help: name the argument, or use `_` to continue ignoring it
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn tick(_: ...) {
[INFO] [stdout]    |             ++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 13 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0424, E0425, E0433, E0658.
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/behavior.rs - behavior::Behavior (line 22) stdout ----
[INFO] [stdout] error: `...` is not supported for non-extern functions
[INFO] [stdout]   --> src/behavior.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(...) {
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: only `extern "C"` and `extern "C-unwind"` functions may have a C variable argument list
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Handlar` in this scope
[INFO] [stdout]   --> src/behavior.rs:23:6
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Handlar for Player {
[INFO] [stdout]    |      ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Player` in this scope
[INFO] [stdout]   --> src/behavior.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Handlar for Player {
[INFO] [stdout]    |                  ^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 22 + use tokyo::analyzer::player::Player;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/behavior.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(...) {
[INFO] [stdout]    |        ---- this function doesn't have a `self` parameter
[INFO] [stdout] 25 |         self.analyzer.push_state(state, Instant::now());
[INFO] [stdout]    |         ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout]    |
[INFO] [stdout] help: add a `self` receiver parameter to make the associated `fn` a method
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(&self, ...) {
[INFO] [stdout]    |             ++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `state` in this scope
[INFO] [stdout]   --> src/behavior.rs:25:34
[INFO] [stdout]    |
[INFO] [stdout] 25 |         self.analyzer.push_state(state, Instant::now());
[INFO] [stdout]    |                                  ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Instant`
[INFO] [stdout]   --> src/behavior.rs:25:41
[INFO] [stdout]    |
[INFO] [stdout] 25 |         self.analyzer.push_state(state, Instant::now());
[INFO] [stdout]    |                                         ^^^^^^^ use of undeclared type `Instant`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 22 + use std::time::Instant;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/behavior.rs:27:37
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(...) {
[INFO] [stdout]    |        ---- this function doesn't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 27 |         if let Some(next_command) = self.current_behavior.next_command(&self.analyzer) {
[INFO] [stdout]    |                                     ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout]    |
[INFO] [stdout] help: add a `self` receiver parameter to make the associated `fn` a method
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(&self, ...) {
[INFO] [stdout]    |             ++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/behavior.rs:27:73
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(...) {
[INFO] [stdout]    |        ---- this function doesn't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 27 |         if let Some(next_command) = self.current_behavior.next_command(&self.analyzer) {
[INFO] [stdout]    |                                                                         ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout]    |
[INFO] [stdout] help: add a `self` receiver parameter to make the associated `fn` a method
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(&self, ...) {
[INFO] [stdout]    |             ++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/behavior.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(...) {
[INFO] [stdout]    |        ---- this function doesn't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 34 |         self.current_behavior = Self::next_behavior();
[INFO] [stdout]    |         ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout]    |
[INFO] [stdout] help: add a `self` receiver parameter to make the associated `fn` a method
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(&self, ...) {
[INFO] [stdout]    |             ++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/behavior.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(...) {
[INFO] [stdout]    |        ---- this function doesn't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 36 |         self.current_behavior.next_command(&analyzer)
[INFO] [stdout]    |         ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout]    |
[INFO] [stdout] help: add a `self` receiver parameter to make the associated `fn` a method
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(&self, ...) {
[INFO] [stdout]    |             ++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `analyzer` in this scope
[INFO] [stdout]   --> src/behavior.rs:36:45
[INFO] [stdout]    |
[INFO] [stdout] 36 |         self.current_behavior.next_command(&analyzer)
[INFO] [stdout]    |                                             ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Sequence` in this scope
[INFO] [stdout]   --> src/behavior.rs:39:27
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn next_behavior() -> Sequence {
[INFO] [stdout]    |                           ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 22 + use tokyo::behavior::Sequence;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `Chase` in this scope
[INFO] [stdout]   --> src/behavior.rs:43:21
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let chase = Chase { target: Target::HighestScore, distance: 200.0 };
[INFO] [stdout]    |                     ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 22 + use tokyo::behavior::Chase;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Target`
[INFO] [stdout]   --> src/behavior.rs:43:37
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let chase = Chase { target: Target::HighestScore, distance: 200.0 };
[INFO] [stdout]    |                                     ^^^^^^ use of undeclared type `Target`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 22 + use tokyo::behavior::Target;
[INFO] [stdout]    |
[INFO] [stdout] 22 + use url::form_urlencoded::Target;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `FireAt`
[INFO] [stdout]   --> src/behavior.rs:46:20
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let fire = FireAt::with_times(Target::HighestScore, 2);
[INFO] [stdout]    |                    ^^^^^^ use of undeclared type `FireAt`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 22 + use tokyo::behavior::FireAt;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Target`
[INFO] [stdout]   --> src/behavior.rs:46:39
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let fire = FireAt::with_times(Target::HighestScore, 2);
[INFO] [stdout]    |                                       ^^^^^^ use of undeclared type `Target`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 22 + use tokyo::behavior::Target;
[INFO] [stdout]    |
[INFO] [stdout] 22 + use url::form_urlencoded::Target;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Sequence`
[INFO] [stdout]   --> src/behavior.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         Sequence::with_slice(&[&chase, &fire])
[INFO] [stdout]    |         ^^^^^^^^ use of undeclared type `Sequence`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 22 + use tokyo::behavior::Sequence;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: C-variadic functions are unstable
[INFO] [stdout]   --> src/behavior.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | /     fn tick(...) {
[INFO] [stdout] 25 | |         self.analyzer.push_state(state, Instant::now());
[INFO] [stdout] 26 | |
[INFO] [stdout] 27 | |         if let Some(next_command) = self.current_behavior.next_command(&self.analyzer) {
[INFO] [stdout] ...  |
[INFO] [stdout] 36 | |         self.current_behavior.next_command(&analyzer)
[INFO] [stdout] 37 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #44930 <https://github.com/rust-lang/rust/issues/44930> for more information
[INFO] [stdout]    = help: add `#![feature(c_variadic)]` to the crate attributes to enable
[INFO] [stdout]    = note: this compiler was built on 2026-01-05; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] warning: missing pattern for `...` argument
[INFO] [stdout]   --> src/behavior.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(...) {
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #145544 <https://github.com/rust-lang/rust/issues/145544>
[INFO] [stdout]    = note: `#[warn(varargs_without_pattern)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] help: name the argument, or use `_` to continue ignoring it
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn tick(_: ...) {
[INFO] [stdout]    |             ++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 18 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0422, E0424, E0425, E0433, E0658.
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/analyzer.rs - analyzer::Analyzer (line 22)
[INFO] [stdout]     src/behavior.rs - behavior::Behavior (line 22)
[INFO] [stdout]     src/behavior.rs - behavior::Behavior (line 56)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "25bba5a0c1813b9e4bb977d41b90db77ac645bf08f7fa6a2f04dd16f231debb6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "25bba5a0c1813b9e4bb977d41b90db77ac645bf08f7fa6a2f04dd16f231debb6", kill_on_drop: false }`
[INFO] [stdout] 25bba5a0c1813b9e4bb977d41b90db77ac645bf08f7fa6a2f04dd16f231debb6
