[INFO] cloning repository https://github.com/dwerner/rust-dispatch
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dwerner/rust-dispatch" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdwerner%2Frust-dispatch", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdwerner%2Frust-dispatch'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ead26ca50ba5cff74d81b863c39c685a035b9916
[INFO] checking dwerner/rust-dispatch against beta-2020-07-24 for pr-75494-beta
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdwerner%2Frust-dispatch" "/workspace/builds/worker-9/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/dwerner/rust-dispatch on toolchain beta-2020-07-24
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/dwerner/rust-dispatch
[INFO] finished tweaking git repo https://github.com/dwerner/rust-dispatch
[INFO] tweaked toml for git repo https://github.com/dwerner/rust-dispatch written to /workspace/builds/worker-9/source/Cargo.toml
[INFO] crate git repo https://github.com/dwerner/rust-dispatch already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] error: the lock file /workspace/builds/worker-9/source/Cargo.lock needs to be updated but --locked was passed to prevent this
[INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag.
[INFO] the lockfile is outdated, regenerating it
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d055bde5d8db1e0797d16cdaee2f451ebc603efa5f62bed9882c754c1e10b375
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "d055bde5d8db1e0797d16cdaee2f451ebc603efa5f62bed9882c754c1e10b375", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d055bde5d8db1e0797d16cdaee2f451ebc603efa5f62bed9882c754c1e10b375", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d055bde5d8db1e0797d16cdaee2f451ebc603efa5f62bed9882c754c1e10b375", kill_on_drop: false }`
[INFO] [stdout] d055bde5d8db1e0797d16cdaee2f451ebc603efa5f62bed9882c754c1e10b375
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 48f41a9116b4713152a3365879e0bd5a9cdcfc40995f487421f6c04016aac8bf
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "48f41a9116b4713152a3365879e0bd5a9cdcfc40995f487421f6c04016aac8bf", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Checking dispatch v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the beta release channel
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(test)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the beta release channel
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(test)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:150:50
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn mut_components(&mut self) -> &mut Vec<Box<Component>>;
[INFO] [stdout]     |                                                  ^^^^^^^^^ help: use `dyn`: `dyn Component`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:153:38
[INFO] [stdout]     |
[INFO] [stdout] 153 |   impl WithComponents for Player<Box<Component>> {
[INFO] [stdout]     |                                      ^^^^^^^^^ help: use `dyn`: `dyn Component`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:154:50
[INFO] [stdout]     |
[INFO] [stdout] 154 |     fn mut_components(&mut self) -> &mut Vec<Box<Component>> {
[INFO] [stdout]     |                                                  ^^^^^^^^^ help: use `dyn`: `dyn Component`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:159:37
[INFO] [stdout]     |
[INFO] [stdout] 159 |   impl WithComponents for Enemy<Box<Component>> {
[INFO] [stdout]     |                                     ^^^^^^^^^ help: use `dyn`: `dyn Component`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:160:50
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn mut_components(&mut self) -> &mut Vec<Box<Component>> {
[INFO] [stdout]     |                                                  ^^^^^^^^^ help: use `dyn`: `dyn Component`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:171:47
[INFO] [stdout]     |
[INFO] [stdout] 171 |         Box::new(Health{ hearts: 42 }) as Box<Component>
[INFO] [stdout]     |                                               ^^^^^^^^^ help: use `dyn`: `dyn Component`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:175:37
[INFO] [stdout]     |
[INFO] [stdout] 175 |     let player = Box::new(p) as Box<WithComponents>;
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^ help: use `dyn`: `dyn WithComponents`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:181:64
[INFO] [stdout]     |
[INFO] [stdout] 181 |         Box::new(Pathing{ data: "fedcba".to_string() }) as Box<Component>, 
[INFO] [stdout]     |                                                                ^^^^^^^^^ help: use `dyn`: `dyn Component`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:182:47
[INFO] [stdout]     |
[INFO] [stdout] 182 |         Box::new(Health{ hearts: 77 }) as Box<Component>
[INFO] [stdout]     |                                               ^^^^^^^^^ help: use `dyn`: `dyn Component`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:186:36
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let enemy = Box::new(e) as Box<WithComponents>;
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ help: use `dyn`: `dyn WithComponents`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:194:51
[INFO] [stdout]     |
[INFO] [stdout] 194 |   pub fn update_trait_components(entity: &mut Box<WithComponents>) {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^ help: use `dyn`: `dyn WithComponents`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:197:29
[INFO] [stdout]     |
[INFO] [stdout] 197 |       let b = i as &mut Box<Component>;
[INFO] [stdout]     |                             ^^^^^^^^^ help: use `dyn`: `dyn Component`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:198:42
[INFO] [stdout]     |
[INFO] [stdout] 198 |       if let actual_comp = b as &mut Box<HealthComponent> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn HealthComponent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:201:42
[INFO] [stdout]     |
[INFO] [stdout] 201 |       if let actual_comp = b as &mut Box<PathingComponent> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn PathingComponent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0554`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `dispatch`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0605]: non-primitive cast: `&mut std::boxed::Box<dyn dynamic_tests::Component>` as `&mut std::boxed::Box<dyn dynamic_tests::HealthComponent>`
[INFO] [stdout]    --> src/lib.rs:198:28
[INFO] [stdout]     |
[INFO] [stdout] 198 |       if let actual_comp = b as &mut Box<HealthComponent> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0605]: non-primitive cast: `&mut std::boxed::Box<dyn dynamic_tests::Component>` as `&mut std::boxed::Box<dyn dynamic_tests::PathingComponent>`
[INFO] [stdout]    --> src/lib.rs:201:28
[INFO] [stdout]     |
[INFO] [stdout] 201 |       if let actual_comp = b as &mut Box<PathingComponent> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors; 14 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0554, E0605.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0554`.
[INFO] [stdout] 
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "48f41a9116b4713152a3365879e0bd5a9cdcfc40995f487421f6c04016aac8bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "48f41a9116b4713152a3365879e0bd5a9cdcfc40995f487421f6c04016aac8bf", kill_on_drop: false }`
[INFO] [stdout] 48f41a9116b4713152a3365879e0bd5a9cdcfc40995f487421f6c04016aac8bf
