[INFO] fetching crate zrl 0.2.1...
[INFO] checking zrl-0.2.1 against master#035b01b794602d5861daa43ac792f372f8981ed7 for 152214-denied
[INFO] extracting crate zrl 0.2.1 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate zrl 0.2.1
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate zrl 0.2.1
[INFO] tweaked toml for crates.io crate zrl 0.2.1 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate zrl 0.2.1 on toolchain 035b01b794602d5861daa43ac792f372f8981ed7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+035b01b794602d5861daa43ac792f372f8981ed7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate zrl 0.2.1 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" "+035b01b794602d5861daa43ac792f372f8981ed7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: only one of `license` or `license-file` is necessary
[INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression.
[INFO] [stderr] `license-file` should be used if the package uses a non-standard license.
[INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information.
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded equivalent v1.0.2
[INFO] [stderr]   Downloaded allocator-api2 v0.2.21
[INFO] [stderr]   Downloaded foldhash v0.2.0
[INFO] [stderr]   Downloaded zrl-proc-macros v0.1.0
[INFO] [stderr]   Downloaded quote v1.0.43
[INFO] [stderr]   Downloaded unicode-ident v1.0.22
[INFO] [stderr]   Downloaded proc-macro2 v1.0.105
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.106
[INFO] [stderr]   Downloaded cast v0.3.0
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.106
[INFO] [stderr]   Downloaded cfg-if v1.0.4
[INFO] [stderr]   Downloaded alloca v0.4.0
[INFO] [stderr]   Downloaded same-file v1.0.6
[INFO] [stderr]   Downloaded itoa v1.0.17
[INFO] [stderr]   Downloaded plotters-svg v0.3.7
[INFO] [stderr]   Downloaded ciborium-ll v0.2.2
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.106
[INFO] [stderr]   Downloaded ciborium-io v0.2.2
[INFO] [stderr]   Downloaded page_size v0.6.0
[INFO] [stderr]   Downloaded windows-link v0.2.1
[INFO] [stderr]   Downloaded plotters-backend v0.3.7
[INFO] [stderr]   Downloaded clap_lex v0.7.6
[INFO] [stderr]   Downloaded winapi-util v0.1.11
[INFO] [stderr]   Downloaded crunchy v0.2.4
[INFO] [stderr]   Downloaded anes v0.1.6
[INFO] [stderr]   Downloaded either v1.15.0
[INFO] [stderr]   Downloaded rustversion v1.0.22
[INFO] [stderr]   Downloaded anstyle v1.0.13
[INFO] [stderr]   Downloaded zmij v1.0.12
[INFO] [stderr]   Downloaded shlex v1.3.0
[INFO] [stderr]   Downloaded tinytemplate v1.2.1
[INFO] [stderr]   Downloaded crossbeam-deque v0.8.6
[INFO] [stderr]   Downloaded find-msvc-tools v0.1.7
[INFO] [stderr]   Downloaded walkdir v2.5.0
[INFO] [stderr]   Downloaded autocfg v1.5.0
[INFO] [stderr]   Downloaded criterion-plot v0.8.1
[INFO] [stderr]   Downloaded oorandom v11.1.5
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.21
[INFO] [stderr]   Downloaded once_cell v1.21.3
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.106
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.18
[INFO] [stderr]   Downloaded clap v4.5.54
[INFO] [stderr]   Downloaded num-traits v0.2.19
[INFO] [stderr]   Downloaded ciborium v0.2.2
[INFO] [stderr]   Downloaded js-sys v0.3.83
[INFO] [stderr]   Downloaded half v2.7.1
[INFO] [stderr]   Downloaded hashbrown v0.16.1
[INFO] [stderr]   Downloaded serde_core v1.0.228
[INFO] [stderr]   Downloaded serde_derive v1.0.228
[INFO] [stderr]   Downloaded rayon-core v1.13.0
[INFO] [stderr]   Downloaded memchr v2.7.6
[INFO] [stderr]   Downloaded serde v1.0.228
[INFO] [stderr]   Downloaded bumpalo v3.19.1
[INFO] [stderr]   Downloaded cc v1.2.52
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.33
[INFO] [stderr]   Downloaded criterion v0.8.1
[INFO] [stderr]   Downloaded itertools v0.13.0
[INFO] [stderr]   Downloaded plotters v0.3.7
[INFO] [stderr]   Downloaded serde_json v1.0.149
[INFO] [stderr]   Downloaded regex v1.12.2
[INFO] [stderr]   Downloaded clap_builder v4.5.54
[INFO] [stderr]   Downloaded aho-corasick v1.1.4
[INFO] [stderr]   Downloaded rayon v1.11.0
[INFO] [stderr]   Downloaded syn v2.0.114
[INFO] [stderr]   Downloaded zerocopy v0.8.33
[INFO] [stderr]   Downloaded regex-syntax v0.8.8
[INFO] [stderr]   Downloaded regex-automata v0.4.13
[INFO] [stderr]   Downloaded web-sys v0.3.83
[INFO] [stderr]   Downloaded libc v0.2.180
[INFO] [stderr]   Downloaded winapi v0.3.9
[INFO] [stderr]   Downloaded windows-sys v0.61.2
[INFO] [stderr]   Downloaded winapi-i686-pc-windows-gnu v0.4.0
[INFO] [stderr]   Downloaded winapi-x86_64-pc-windows-gnu v0.4.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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+035b01b794602d5861daa43ac792f372f8981ed7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5967deb7ebc3f25b41d2bd9e814d1178b0cb6de040a4be76343604981c630676
[INFO] running `Command { std: "docker" "start" "-a" "5967deb7ebc3f25b41d2bd9e814d1178b0cb6de040a4be76343604981c630676", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5967deb7ebc3f25b41d2bd9e814d1178b0cb6de040a4be76343604981c630676", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5967deb7ebc3f25b41d2bd9e814d1178b0cb6de040a4be76343604981c630676", kill_on_drop: false }`
[INFO] [stdout] 5967deb7ebc3f25b41d2bd9e814d1178b0cb6de040a4be76343604981c630676
[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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+035b01b794602d5861daa43ac792f372f8981ed7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b79f5c1f06e005aa7b8d00832b8cc4156c92f8db1473cac3a32a74f1cc5f469a
[INFO] running `Command { std: "docker" "start" "-a" "b79f5c1f06e005aa7b8d00832b8cc4156c92f8db1473cac3a32a74f1cc5f469a", kill_on_drop: false }`
[INFO] [stderr] warning: only one of `license` or `license-file` is necessary
[INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression.
[INFO] [stderr] `license-file` should be used if the package uses a non-standard license.
[INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information.
[INFO] [stderr]    Compiling zerocopy v0.8.33
[INFO] [stderr]    Compiling zmij v1.0.12
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling alloca v0.4.0
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]     Checking clap_builder v4.5.54
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking foldhash v0.2.0
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking page_size v0.6.0
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking criterion-plot v0.8.1
[INFO] [stderr]     Checking clap v4.5.54
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]    Compiling zerocopy-derive v0.8.33
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zrl-proc-macros v0.1.0
[INFO] [stderr]     Checking zrl v0.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `Stopwatch` is never constructed
[INFO] [stdout]  --> src/time.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Stopwatch {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/time.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Stopwatch {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 11 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub fn start(&mut self) -> bool {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn stop(&mut self) -> Option<Duration> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn lap(&mut self) -> Option<Duration> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn reset(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn laps(&self) -> &[Duration] {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn elapsed(&self) -> Option<Duration> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Event` is never used
[INFO] [stdout]  --> src/bus.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub trait Event: Send + Sync + 'static {}
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EventBus` is never constructed
[INFO] [stdout]   --> src/bus.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct EventBus {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `subscribe`, `publish`, and `subscriber_count` are never used
[INFO] [stdout]   --> src/bus.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl EventBus {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 16 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn subscribe<E: Event>(&self) -> Receiver<Arc<E>> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn publish<E: Event>(&self, event: E) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn subscriber_count(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InvalidTransition` is never constructed
[INFO] [stdout]  --> src/fsm.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct InvalidTransition;
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FSM` is never constructed
[INFO] [stdout]  --> src/fsm.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct FSM<S, E>
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_transition`, `trigger`, `current_state`, `can_trigger`, and `reset` are never used
[INFO] [stdout]   --> src/fsm.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | / impl<S, E> FSM<S, E>
[INFO] [stdout] 18 | | where
[INFO] [stdout] 19 | |     S: Eq + Hash + Clone,
[INFO] [stdout] 20 | |     E: Eq + Hash + Clone,
[INFO] [stdout]    | |_________________________- associated items in this implementation
[INFO] [stdout] 21 |   {
[INFO] [stdout] 22 |       pub fn new(initial: S) -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |       pub fn add_transition(mut self, from: S, event: E, to: S) -> Self {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |       pub fn trigger(&mut self, event: E) -> Result<S, InvalidTransition> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |       pub fn current_state(&self) -> &S {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |       pub fn can_trigger(&self, event: E) -> bool {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |       pub fn reset(&mut self) {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking criterion v0.8.1
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]  --> benches/lru_benchmarks.rs:1:41
[INFO] [stdout]   |
[INFO] [stdout] 1 | use criterion::{BenchmarkId, Criterion, black_box, criterion_group, criterion_main};
[INFO] [stdout]   |                                         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/lru_benchmarks.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 |                 cache.put(black_box(i), black_box(i * 2));
[INFO] [stdout]    |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/lru_benchmarks.rs:11:41
[INFO] [stdout]    |
[INFO] [stdout] 11 |                 cache.put(black_box(i), black_box(i * 2));
[INFO] [stdout]    |                                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/lru_benchmarks.rs:14:28
[INFO] [stdout]    |
[INFO] [stdout] 14 |                 cache.get(&black_box(i));
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/lru_benchmarks.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |             b.iter(|| fib(black_box(n)));
[INFO] [stdout]    |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/lru_benchmarks.rs:46:29
[INFO] [stdout]    |
[INFO] [stdout] 46 |         b.iter(|| factorial(black_box(20)));
[INFO] [stdout]    |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> examples/workers.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut manager = WorkerManager::with_queue_size(250, 100);
[INFO] [stdout]   |         ----^^^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Stopwatch` is never constructed
[INFO] [stdout]  --> src/time.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Stopwatch {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/time.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Stopwatch {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 11 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub fn start(&mut self) -> bool {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn stop(&mut self) -> Option<Duration> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn lap(&mut self) -> Option<Duration> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn reset(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn laps(&self) -> &[Duration] {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn elapsed(&self) -> Option<Duration> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Event` is never used
[INFO] [stdout]  --> src/bus.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub trait Event: Send + Sync + 'static {}
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EventBus` is never constructed
[INFO] [stdout]   --> src/bus.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct EventBus {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `subscribe`, `publish`, and `subscriber_count` are never used
[INFO] [stdout]   --> src/bus.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl EventBus {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 16 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn subscribe<E: Event>(&self) -> Receiver<Arc<E>> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn publish<E: Event>(&self, event: E) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn subscriber_count(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InvalidTransition` is never constructed
[INFO] [stdout]  --> src/fsm.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct InvalidTransition;
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FSM` is never constructed
[INFO] [stdout]  --> src/fsm.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct FSM<S, E>
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_transition`, `trigger`, `current_state`, `can_trigger`, and `reset` are never used
[INFO] [stdout]   --> src/fsm.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | / impl<S, E> FSM<S, E>
[INFO] [stdout] 18 | | where
[INFO] [stdout] 19 | |     S: Eq + Hash + Clone,
[INFO] [stdout] 20 | |     E: Eq + Hash + Clone,
[INFO] [stdout]    | |_________________________- associated items in this implementation
[INFO] [stdout] 21 |   {
[INFO] [stdout] 22 |       pub fn new(initial: S) -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |       pub fn add_transition(mut self, from: S, event: E, to: S) -> Self {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |       pub fn trigger(&mut self, event: E) -> Result<S, InvalidTransition> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |       pub fn current_state(&self) -> &S {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |       pub fn can_trigger(&self, event: E) -> bool {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |       pub fn reset(&mut self) {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.28s
[INFO] running `Command { std: "docker" "inspect" "b79f5c1f06e005aa7b8d00832b8cc4156c92f8db1473cac3a32a74f1cc5f469a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b79f5c1f06e005aa7b8d00832b8cc4156c92f8db1473cac3a32a74f1cc5f469a", kill_on_drop: false }`
[INFO] [stdout] b79f5c1f06e005aa7b8d00832b8cc4156c92f8db1473cac3a32a74f1cc5f469a
