[INFO] cloning repository https://github.com/Einarin/ShipSystems
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Einarin/ShipSystems" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FEinarin%2FShipSystems", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FEinarin%2FShipSystems'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e262a08540c6a99fd46bbbcc8bd0f5bfdaac3252
[INFO] checking Einarin/ShipSystems against try#0611f7de057c584b8771102fde7aed6c70c71d3b for pr-146440
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FEinarin%2FShipSystems" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Einarin/ShipSystems
[INFO] finished tweaking git repo https://github.com/Einarin/ShipSystems
[INFO] tweaked toml for git repo https://github.com/Einarin/ShipSystems written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Einarin/ShipSystems on toolchain 0611f7de057c584b8771102fde7aed6c70c71d3b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Einarin/ShipSystems already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c011eb2e5f3852275602e00a685201ca6ecbdfe6e010d8f609de1675792359a1
[INFO] running `Command { std: "docker" "start" "-a" "c011eb2e5f3852275602e00a685201ca6ecbdfe6e010d8f609de1675792359a1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c011eb2e5f3852275602e00a685201ca6ecbdfe6e010d8f609de1675792359a1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c011eb2e5f3852275602e00a685201ca6ecbdfe6e010d8f609de1675792359a1", kill_on_drop: false }`
[INFO] [stdout] c011eb2e5f3852275602e00a685201ca6ecbdfe6e010d8f609de1675792359a1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b392a45b56ee9bd8ad92a12810e3928dea72f8d7275256fe0af8ee3c6f871963
[INFO] running `Command { std: "docker" "start" "-a" "b392a45b56ee9bd8ad92a12810e3928dea72f8d7275256fe0af8ee3c6f871963", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]     Checking bitflags v0.7.0
[INFO] [stderr]     Checking ship_systems v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:469:9
[INFO] [stdout]     |
[INFO] [stdout] 469 |         try!(write!(f,"{{ "));
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |         try!(write!(f," }}"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:471:13
[INFO] [stdout]     |
[INFO] [stdout] 471 |             try!(c.borrow().fmt(f));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:472:13
[INFO] [stdout]     |
[INFO] [stdout] 472 |             try!(write!(f," : "));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]    --> src/lib.rs:485:9
[INFO] [stdout]     |
[INFO] [stdout] 485 |     use std::thread::sleep;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]    --> src/lib.rs:486:9
[INFO] [stdout]     |
[INFO] [stdout] 486 |     use std::time::Duration;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:428:36
[INFO] [stdout]     |
[INFO] [stdout] 428 |     components: Vec<Rc<RefCell<Box<Component>>>>,
[INFO] [stdout]     |                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 428 |     components: Vec<Rc<RefCell<Box<dyn Component>>>>,
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:469:9
[INFO] [stdout]     |
[INFO] [stdout] 469 |         try!(write!(f,"{{ "));
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |         try!(write!(f," }}"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:471:13
[INFO] [stdout]     |
[INFO] [stdout] 471 |             try!(c.borrow().fmt(f));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:472:13
[INFO] [stdout]     |
[INFO] [stdout] 472 |             try!(write!(f," : "));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:428:36
[INFO] [stdout]     |
[INFO] [stdout] 428 |     components: Vec<Rc<RefCell<Box<Component>>>>,
[INFO] [stdout]     |                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 428 |     components: Vec<Rc<RefCell<Box<dyn Component>>>>,
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:109:51
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn new_component(size: f32) -> Rc<RefCell<Box<Component>>> {
[INFO] [stdout]     |                                                   ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn new_component(size: f32) -> Rc<RefCell<Box<dyn Component>>> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:198:55
[INFO] [stdout]     |
[INFO] [stdout] 198 |     fn new_component(capacity: f32) -> Rc<RefCell<Box<Component>>> {
[INFO] [stdout]     |                                                       ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 198 |     fn new_component(capacity: f32) -> Rc<RefCell<Box<dyn Component>>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:324:42
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn new_component() -> Rc<RefCell<Box<Component>>> {
[INFO] [stdout]     |                                          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn new_component() -> Rc<RefCell<Box<dyn Component>>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:391:42
[INFO] [stdout]     |
[INFO] [stdout] 391 |     fn new_component() -> Rc<RefCell<Box<Component>>> {
[INFO] [stdout]     |                                          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 391 |     fn new_component() -> Rc<RefCell<Box<dyn Component>>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:110:128
[INFO] [stdout]     |
[INFO] [stdout] 110 | ...ase::Stopped, sizing: size, last_utilization: 0.0}) as Box<Component>))
[INFO] [stdout]     |                                                               ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 110 |         Rc::new(RefCell::new(Box::new(FusionReactor{phase: ReactorPhase::Stopped, sizing: size, last_utilization: 0.0}) as Box<dyn Component>))
[INFO] [stdout]     |                                                                                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:199:96
[INFO] [stdout]     |
[INFO] [stdout] 199 |         Rc::new(RefCell::new(Box::new(Capacitor{capacity: capacity, charge_level: 0.0}) as Box<Component>))
[INFO] [stdout]     |                                                                                                ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 199 |         Rc::new(RefCell::new(Box::new(Capacitor{capacity: capacity, charge_level: 0.0}) as Box<dyn Component>))
[INFO] [stdout]     |                                                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:325:70
[INFO] [stdout]     |
[INFO] [stdout] 325 |         Rc::new(RefCell::new(Box::new(Radiator{ambient: 0.0}) as Box<Component>))
[INFO] [stdout]     |                                                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 325 |         Rc::new(RefCell::new(Box::new(Radiator{ambient: 0.0}) as Box<dyn Component>))
[INFO] [stdout]     |                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:109:51
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn new_component(size: f32) -> Rc<RefCell<Box<Component>>> {
[INFO] [stdout]     |                                                   ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn new_component(size: f32) -> Rc<RefCell<Box<dyn Component>>> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:392:67
[INFO] [stdout]     |
[INFO] [stdout] 392 |         Rc::new(RefCell::new(Box::new(Laser{fired: false}) as Box<Component>))
[INFO] [stdout]     |                                                                   ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 392 |         Rc::new(RefCell::new(Box::new(Laser{fired: false}) as Box<dyn Component>))
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:198:55
[INFO] [stdout]     |
[INFO] [stdout] 198 |     fn new_component(capacity: f32) -> Rc<RefCell<Box<Component>>> {
[INFO] [stdout]     |                                                       ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 198 |     fn new_component(capacity: f32) -> Rc<RefCell<Box<dyn Component>>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:324:42
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn new_component() -> Rc<RefCell<Box<Component>>> {
[INFO] [stdout]     |                                          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn new_component() -> Rc<RefCell<Box<dyn Component>>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:391:42
[INFO] [stdout]     |
[INFO] [stdout] 391 |     fn new_component() -> Rc<RefCell<Box<Component>>> {
[INFO] [stdout]     |                                          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 391 |     fn new_component() -> Rc<RefCell<Box<dyn Component>>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:110:128
[INFO] [stdout]     |
[INFO] [stdout] 110 | ...ase::Stopped, sizing: size, last_utilization: 0.0}) as Box<Component>))
[INFO] [stdout]     |                                                               ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 110 |         Rc::new(RefCell::new(Box::new(FusionReactor{phase: ReactorPhase::Stopped, sizing: size, last_utilization: 0.0}) as Box<dyn Component>))
[INFO] [stdout]     |                                                                                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:199:96
[INFO] [stdout]     |
[INFO] [stdout] 199 |         Rc::new(RefCell::new(Box::new(Capacitor{capacity: capacity, charge_level: 0.0}) as Box<Component>))
[INFO] [stdout]     |                                                                                                ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 199 |         Rc::new(RefCell::new(Box::new(Capacitor{capacity: capacity, charge_level: 0.0}) as Box<dyn Component>))
[INFO] [stdout]     |                                                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:497:65
[INFO] [stdout]     |
[INFO] [stdout] 497 |         mgr.components.push(Rc::new(RefCell::new(battery as Box<Component>)));
[INFO] [stdout]     |                                                                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 497 |         mgr.components.push(Rc::new(RefCell::new(battery as Box<dyn Component>)));
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]   --> src/lib.rs:68:40
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn get_fixed_processing(&mut self, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                        ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]   --> src/lib.rs:71:36
[INFO] [stdout]    |
[INFO] [stdout] 71 |     fn get_potential_supply(&self, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:325:70
[INFO] [stdout]     |
[INFO] [stdout] 325 |         Rc::new(RefCell::new(Box::new(Radiator{ambient: 0.0}) as Box<Component>))
[INFO] [stdout]     |                                                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 325 |         Rc::new(RefCell::new(Box::new(Radiator{ambient: 0.0}) as Box<dyn Component>))
[INFO] [stdout]     |                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]   --> src/lib.rs:74:41
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]   --> src/lib.rs:74:64
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]   --> src/lib.rs:77:36
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn supply_on_demand(&mut self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                    ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]   --> src/lib.rs:77:59
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn supply_on_demand(&mut self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]   --> src/lib.rs:80:37
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn consume_on_demand(&mut self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]   --> src/lib.rs:80:60
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn consume_on_demand(&mut self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:392:67
[INFO] [stdout]     |
[INFO] [stdout] 392 |         Rc::new(RefCell::new(Box::new(Laser{fired: false}) as Box<Component>))
[INFO] [stdout]     |                                                                   ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 392 |         Rc::new(RefCell::new(Box::new(Laser{fired: false}) as Box<dyn Component>))
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:136:36
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn get_potential_supply(&self, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:146:64
[INFO] [stdout]     |
[INFO] [stdout] 146 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:160:60
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn consume_on_demand(&mut self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:204:36
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn get_potential_supply(&self, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]    --> src/lib.rs:207:41
[INFO] [stdout]     |
[INFO] [stdout] 207 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:207:64
[INFO] [stdout]     |
[INFO] [stdout] 207 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:285:36
[INFO] [stdout]     |
[INFO] [stdout] 285 |     fn get_potential_supply(&self, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]    --> src/lib.rs:289:41
[INFO] [stdout]     |
[INFO] [stdout] 289 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:289:64
[INFO] [stdout]     |
[INFO] [stdout] 289 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:334:36
[INFO] [stdout]     |
[INFO] [stdout] 334 |     fn get_potential_supply(&self, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:339:59
[INFO] [stdout]     |
[INFO] [stdout] 339 |     fn consume_on_demand(&mut self,resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]   --> src/lib.rs:68:40
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn get_fixed_processing(&mut self, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                        ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]   --> src/lib.rs:71:36
[INFO] [stdout]    |
[INFO] [stdout] 71 |     fn get_potential_supply(&self, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]   --> src/lib.rs:74:41
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]   --> src/lib.rs:74:64
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:364:36
[INFO] [stdout]     |
[INFO] [stdout] 364 |     fn get_potential_supply(&self, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]   --> src/lib.rs:77:36
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn supply_on_demand(&mut self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                    ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]   --> src/lib.rs:77:59
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn supply_on_demand(&mut self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:369:59
[INFO] [stdout]     |
[INFO] [stdout] 369 |     fn supply_on_demand(&mut self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]   --> src/lib.rs:80:37
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn consume_on_demand(&mut self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]   --> src/lib.rs:80:60
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn consume_on_demand(&mut self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]    |                                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:407:64
[INFO] [stdout]     |
[INFO] [stdout] 407 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:414:59
[INFO] [stdout]     |
[INFO] [stdout] 414 |     fn consume_on_demand(&mut self,resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:136:36
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn get_potential_supply(&self, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:146:64
[INFO] [stdout]     |
[INFO] [stdout] 146 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:160:60
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn consume_on_demand(&mut self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:204:36
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn get_potential_supply(&self, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]    --> src/lib.rs:207:41
[INFO] [stdout]     |
[INFO] [stdout] 207 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:207:64
[INFO] [stdout]     |
[INFO] [stdout] 207 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bat_dat`
[INFO] [stdout]    --> src/lib.rs:496:13
[INFO] [stdout]     |
[INFO] [stdout] 496 |         let bat_dat = battery.data.clone();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bat_dat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/lib.rs:517:13
[INFO] [stdout]     |
[INFO] [stdout] 517 |         for i in 1..40 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:285:36
[INFO] [stdout]     |
[INFO] [stdout] 285 |     fn get_potential_supply(&self, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]    --> src/lib.rs:289:41
[INFO] [stdout]     |
[INFO] [stdout] 289 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:289:64
[INFO] [stdout]     |
[INFO] [stdout] 289 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:334:36
[INFO] [stdout]     |
[INFO] [stdout] 334 |     fn get_potential_supply(&self, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:339:59
[INFO] [stdout]     |
[INFO] [stdout] 339 |     fn consume_on_demand(&mut self,resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max` is never used
[INFO] [stdout]    --> src/lib.rs:276:4
[INFO] [stdout]     |
[INFO] [stdout] 276 | fn max(x: f32,y: f32)->f32 {
[INFO] [stdout]     |    ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:364:36
[INFO] [stdout]     |
[INFO] [stdout] 364 |     fn get_potential_supply(&self, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:369:59
[INFO] [stdout]     |
[INFO] [stdout] 369 |     fn supply_on_demand(&mut self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:407:64
[INFO] [stdout]     |
[INFO] [stdout] 407 |     fn get_potential_consumption(&self, resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/lib.rs:414:59
[INFO] [stdout]     |
[INFO] [stdout] 414 |     fn consume_on_demand(&mut self,resources: &Resources, time: &GameTime) -> Resources {
[INFO] [stdout]     |                                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `FusionReactor` is never constructed
[INFO] [stdout]   --> src/lib.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct FusionReactor {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout]    = note: `#[deny(unused_unconstructable_pub_struct)]` (part of `#[deny(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `Capacitor` is never constructed
[INFO] [stdout]    --> src/lib.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 192 | pub struct Capacitor {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `Battery` is never constructed
[INFO] [stdout]    --> src/lib.rs:245:12
[INFO] [stdout]     |
[INFO] [stdout] 245 | pub struct Battery {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `Radiator` is never constructed
[INFO] [stdout]    --> src/lib.rs:319:12
[INFO] [stdout]     |
[INFO] [stdout] 319 | pub struct Radiator {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `DeuteriumTank` is never constructed
[INFO] [stdout]    --> src/lib.rs:359:12
[INFO] [stdout]     |
[INFO] [stdout] 359 | pub struct DeuteriumTank {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `Laser` is never constructed
[INFO] [stdout]    --> src/lib.rs:386:12
[INFO] [stdout]     |
[INFO] [stdout] 386 | pub struct Laser {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `ComponentManager` is never constructed
[INFO] [stdout]    --> src/lib.rs:427:12
[INFO] [stdout]     |
[INFO] [stdout] 427 | pub struct ComponentManager {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Stopped` is never constructed
[INFO] [stdout]   --> src/lib.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 86 | enum ReactorPhase {
[INFO] [stdout]    |      ------------ variant in this enum
[INFO] [stdout] 87 |     Running,
[INFO] [stdout] 88 |     Stopped
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_component` is never used
[INFO] [stdout]    --> src/lib.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout]  96 | impl FusionReactor {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn new_component(size: f32) -> Rc<RefCell<Box<Component>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_component` is never used
[INFO] [stdout]    --> src/lib.rs:198:8
[INFO] [stdout]     |
[INFO] [stdout] 197 | impl Capacitor {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 198 |     fn new_component(capacity: f32) -> Rc<RefCell<Box<Component>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max` is never used
[INFO] [stdout]    --> src/lib.rs:276:4
[INFO] [stdout]     |
[INFO] [stdout] 276 | fn max(x: f32,y: f32)->f32 {
[INFO] [stdout]     |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_component` is never used
[INFO] [stdout]    --> src/lib.rs:324:8
[INFO] [stdout]     |
[INFO] [stdout] 323 | impl Radiator {
[INFO] [stdout]     | ------------- associated function in this implementation
[INFO] [stdout] 324 |     fn new_component() -> Rc<RefCell<Box<Component>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_component` is never used
[INFO] [stdout]    --> src/lib.rs:391:8
[INFO] [stdout]     |
[INFO] [stdout] 390 | impl Laser {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] 391 |     fn new_component() -> Rc<RefCell<Box<Component>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `supply` and `demand` are never read
[INFO] [stdout]    --> src/lib.rs:429:5
[INFO] [stdout]     |
[INFO] [stdout] 427 | pub struct ComponentManager {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 428 |     components: Vec<Rc<RefCell<Box<Component>>>>,
[INFO] [stdout] 429 |     supply: Vec<usize>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 430 |     demand: Vec<usize>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update` is never used
[INFO] [stdout]    --> src/lib.rs:434:8
[INFO] [stdout]     |
[INFO] [stdout] 433 | impl ComponentManager {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 434 |     fn update(&mut self, resources: &mut Resources){
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ship_systems` (lib) due to 7 previous errors; 44 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "b392a45b56ee9bd8ad92a12810e3928dea72f8d7275256fe0af8ee3c6f871963", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b392a45b56ee9bd8ad92a12810e3928dea72f8d7275256fe0af8ee3c6f871963", kill_on_drop: false }`
[INFO] [stdout] b392a45b56ee9bd8ad92a12810e3928dea72f8d7275256fe0af8ee3c6f871963
