[INFO] cloning repository https://github.com/pros-rs/pros-simulator
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/pros-rs/pros-simulator" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpros-rs%2Fpros-simulator", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpros-rs%2Fpros-simulator'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b596f304fef5f8a516c84488aa9e3ca97c2a7ae6
[INFO] testing pros-rs/pros-simulator against 1.91.0 for beta-1.92-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpros-rs%2Fpros-simulator" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/pros-rs/pros-simulator
[INFO] finished tweaking git repo https://github.com/pros-rs/pros-simulator
[INFO] tweaked toml for git repo https://github.com/pros-rs/pros-simulator written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/pros-rs/pros-simulator on toolchain 1.91.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/pros-rs/pros-simulator 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" "+1.91.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_derive v1.0.193
[INFO] [stderr]   Downloaded wasmtime-wmemcheck v16.0.0
[INFO] [stderr]   Downloaded wasmtime-asm-macros v16.0.0
[INFO] [stderr]   Downloaded slice-group-by v0.3.1
[INFO] [stderr]   Downloaded tui-big-text v0.2.1
[INFO] [stderr]   Downloaded clap_lex v0.6.0
[INFO] [stderr]   Downloaded anstyle v1.0.4
[INFO] [stderr]   Downloaded snafu-derive v0.8.0
[INFO] [stderr]   Downloaded anstyle-parse v0.2.2
[INFO] [stderr]   Downloaded clap_derive v4.4.7
[INFO] [stderr]   Downloaded anstream v0.6.4
[INFO] [stderr]   Downloaded anstyle-wincon v3.0.1
[INFO] [stderr]   Downloaded font8x8 v0.3.1
[INFO] [stderr]   Downloaded derive_builder_core v0.12.0
[INFO] [stderr]   Downloaded indoc v2.0.4
[INFO] [stderr]   Downloaded mio v0.8.9
[INFO] [stderr]   Downloaded tokio v1.34.0
[INFO] [stderr]   Downloaded ratatui v0.24.0
[INFO] [stderr]   Downloaded cranelift-codegen v0.103.0
[INFO] [stderr]   Downloaded strum v0.25.0
[INFO] [stderr]   Downloaded linux-raw-sys v0.4.11
[INFO] [stderr]   Downloaded memfd v0.6.4
[INFO] [stderr]   Downloaded unicode-width v0.1.11
[INFO] [stderr]   Downloaded wasmtime-cranelift v16.0.0
[INFO] [stderr]   Downloaded cranelift-wasm v0.103.0
[INFO] [stderr]   Downloaded wasmtime-types v16.0.0
[INFO] [stderr]   Downloaded zerocopy-derive v0.7.26
[INFO] [stderr]   Downloaded pros-sys v0.4.1
[INFO] [stderr]   Downloaded rustix v0.38.25
[INFO] [stderr]   Downloaded regex-automata v0.4.3
[INFO] [stderr]   Downloaded wasmtime v16.0.0
[INFO] [stderr]   Downloaded mach v0.3.2
[INFO] [stderr]   Downloaded wasmtime-versioned-export-macros v16.0.0
[INFO] [stderr]   Downloaded errno v0.3.7
[INFO] [stderr]   Downloaded cranelift-control v0.103.0
[INFO] [stderr]   Downloaded allocator-api2 v0.2.16
[INFO] [stderr]   Downloaded cranelift-frontend v0.103.0
[INFO] [stderr]   Downloaded memoffset v0.9.0
[INFO] [stderr]   Downloaded thiserror v1.0.50
[INFO] [stderr]   Downloaded rayon v1.8.0
[INFO] [stderr]   Downloaded regalloc2 v0.9.3
[INFO] [stderr]   Downloaded tui-logger v0.10.0
[INFO] [stderr]   Downloaded jsonl v4.0.1
[INFO] [stderr]   Downloaded serde v1.0.193
[INFO] [stderr]   Downloaded derive_builder v0.12.0
[INFO] [stderr]   Downloaded rayon-core v1.12.0
[INFO] [stderr]   Downloaded strum_macros v0.25.3
[INFO] [stderr]   Downloaded regex v1.10.2
[INFO] [stderr]   Downloaded snafu v0.8.0
[INFO] [stderr]   Downloaded id-arena v2.2.1
[INFO] [stderr]   Downloaded wit-parser v0.13.0
[INFO] [stderr]   Downloaded wasmtime-jit v16.0.0
[INFO] [stderr]   Downloaded smallvec v1.11.2
[INFO] [stderr]   Downloaded wasm-encoder v0.38.1
[INFO] [stderr]   Downloaded wasmparser v0.118.1
[INFO] [stderr]   Downloaded wasmtime-runtime v16.0.0
[INFO] [stderr]   Downloaded anstyle-query v1.0.0
[INFO] [stderr]   Downloaded zerocopy v0.7.26
[INFO] [stderr]   Downloaded clap_builder v4.4.9
[INFO] [stderr]   Downloaded clap v4.4.9
[INFO] [stderr]   Downloaded serde_json v1.0.108
[INFO] [stderr]   Downloaded cranelift-isle v0.103.0
[INFO] [stderr]   Downloaded cpp_demangle v0.3.5
[INFO] [stderr]   Downloaded wasmtime-fiber v16.0.0
[INFO] [stderr]   Downloaded indexmap v2.1.0
[INFO] [stderr]   Downloaded hashbrown v0.14.2
[INFO] [stderr]   Downloaded hermit-abi v0.3.3
[INFO] [stderr]   Downloaded futures v0.3.29
[INFO] [stderr]   Downloaded js-sys v0.3.65
[INFO] [stderr]   Downloaded async-trait v0.1.74
[INFO] [stderr]   Downloaded cranelift-codegen-meta v0.103.0
[INFO] [stderr]   Downloaded bitflags v2.4.1
[INFO] [stderr]   Downloaded proc-macro2 v1.0.69
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.15
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.16
[INFO] [stderr]   Downloaded wasmtime-component-util v16.0.0
[INFO] [stderr]   Downloaded cranelift-bforest v0.103.0
[INFO] [stderr]   Downloaded arbitrary v1.3.2
[INFO] [stderr]   Downloaded leb128 v0.2.5
[INFO] [stderr]   Downloaded lru v0.12.1
[INFO] [stderr]   Downloaded wasmtime-wit-bindgen v16.0.0
[INFO] [stderr]   Downloaded ahash v0.8.6
[INFO] [stderr]   Downloaded wasmtime-component-macro v16.0.0
[INFO] [stderr]   Downloaded derive_builder_macro v0.12.0
[INFO] [stderr]   Downloaded thread_local v1.1.7
[INFO] [stderr]   Downloaded wasmtime-cranelift-shared v16.0.0
[INFO] [stderr]   Downloaded wasmtime-jit-icache-coherence v16.0.0
[INFO] [stderr]   Downloaded paste v1.0.14
[INFO] [stderr]   Downloaded sptr v0.3.2
[INFO] [stderr]   Downloaded target-lexicon v0.12.12
[INFO] [stderr]   Downloaded memchr v2.6.4
[INFO] [stderr]   Downloaded cranelift-native v0.103.0
[INFO] [stderr]   Downloaded futures-executor v0.3.29
[INFO] [stderr]   Downloaded either v1.9.0
[INFO] [stderr]   Downloaded thiserror-impl v1.0.50
[INFO] [stderr]   Downloaded signal-hook-mio v0.2.3
[INFO] [stderr]   Downloaded wasmtime-environ v16.0.0
[INFO] [stderr]   Downloaded cranelift-codegen-shared v0.103.0
[INFO] [stderr]   Downloaded cranelift-entity v0.103.0
[INFO] [stderr]   Downloaded semver v1.0.20
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8c062e4a2265781eec46d117fdbebd4c48eabbe430f9df9cc067620cb0ed1f53
[INFO] running `Command { std: "docker" "start" "-a" "8c062e4a2265781eec46d117fdbebd4c48eabbe430f9df9cc067620cb0ed1f53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8c062e4a2265781eec46d117fdbebd4c48eabbe430f9df9cc067620cb0ed1f53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8c062e4a2265781eec46d117fdbebd4c48eabbe430f9df9cc067620cb0ed1f53", kill_on_drop: false }`
[INFO] [stdout] 8c062e4a2265781eec46d117fdbebd4c48eabbe430f9df9cc067620cb0ed1f53
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 71f1e6f44ddfaebc1d596d3d32208481adaed3fa9388555ccad99d7fe5da5747
[INFO] running `Command { std: "docker" "start" "-a" "71f1e6f44ddfaebc1d596d3d32208481adaed3fa9388555ccad99d7fe5da5747", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.69
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling serde v1.0.193
[INFO] [stderr]    Compiling once_cell v1.18.0
[INFO] [stderr]    Compiling zerocopy v0.7.26
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling target-lexicon v0.12.12
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling thiserror v1.0.50
[INFO] [stderr]    Compiling semver v1.0.20
[INFO] [stderr]    Compiling libc v0.2.150
[INFO] [stderr]    Compiling cranelift-isle v0.103.0
[INFO] [stderr]    Compiling cranelift-codegen-shared v0.103.0
[INFO] [stderr]    Compiling ahash v0.8.6
[INFO] [stderr]    Compiling memchr v2.6.4
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]    Compiling cranelift-codegen-meta v0.103.0
[INFO] [stderr]    Compiling anyhow v1.0.75
[INFO] [stderr]    Compiling smallvec v1.11.2
[INFO] [stderr]    Compiling slice-group-by v0.3.1
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling arbitrary v1.3.2
[INFO] [stderr]    Compiling rustix v0.38.25
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling bumpalo v3.14.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.16
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.15
[INFO] [stderr]    Compiling bitflags v2.4.1
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling hashbrown v0.14.2
[INFO] [stderr]    Compiling hashbrown v0.13.2
[INFO] [stderr]    Compiling linux-raw-sys v0.4.11
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling pin-project-lite v0.2.13
[INFO] [stderr]    Compiling syn v2.0.39
[INFO] [stderr]    Compiling paste v1.0.14
[INFO] [stderr]    Compiling wasmtime-asm-macros v16.0.0
[INFO] [stderr]    Compiling serde_json v1.0.108
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]    Compiling cranelift-control v0.103.0
[INFO] [stderr]    Compiling cpp_demangle v0.3.5
[INFO] [stderr]    Compiling leb128 v0.2.5
[INFO] [stderr]    Compiling futures-sink v0.3.30
[INFO] [stderr]    Compiling futures-core v0.3.30
[INFO] [stderr]    Compiling wasm-encoder v0.38.1
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling utf8parse v0.2.1
[INFO] [stderr]    Compiling futures-channel v0.3.30
[INFO] [stderr]    Compiling async-trait v0.1.74
[INFO] [stderr]    Compiling itoa v1.0.9
[INFO] [stderr]    Compiling ryu v1.0.15
[INFO] [stderr]    Compiling futures-io v0.3.30
[INFO] [stderr]    Compiling sptr v0.3.2
[INFO] [stderr]    Compiling futures-task v0.3.30
[INFO] [stderr]    Compiling wasmtime-wmemcheck v16.0.0
[INFO] [stderr]    Compiling anstyle-parse v0.2.2
[INFO] [stderr]    Compiling pros-sys v0.4.1
[INFO] [stderr]    Compiling anstyle-query v1.0.0
[INFO] [stderr]    Compiling colorchoice v1.0.0
[INFO] [stderr]    Compiling rustc-demangle v0.1.23
[INFO] [stderr]    Compiling anstyle v1.0.4
[INFO] [stderr]    Compiling crossbeam-deque v0.8.3
[INFO] [stderr]    Compiling wasmtime-jit-icache-coherence v16.0.0
[INFO] [stderr]    Compiling regalloc2 v0.9.3
[INFO] [stderr]    Compiling anstream v0.6.4
[INFO] [stderr]    Compiling tracing-core v0.1.32
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling clap_lex v0.6.0
[INFO] [stderr]    Compiling clap_builder v4.4.9
[INFO] [stderr]    Compiling rayon v1.8.0
[INFO] [stderr]    Compiling cranelift-codegen v0.103.0
[INFO] [stderr]    Compiling memfd v0.6.4
[INFO] [stderr]    Compiling serde_derive v1.0.193
[INFO] [stderr]    Compiling thiserror-impl v1.0.50
[INFO] [stderr]    Compiling wasmtime-versioned-export-macros v16.0.0
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling snafu-derive v0.8.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]    Compiling clap_derive v4.4.7
[INFO] [stderr]    Compiling wasmtime-fiber v16.0.0
[INFO] [stderr]    Compiling wasmtime-runtime v16.0.0
[INFO] [stderr]    Compiling tokio v1.34.0
[INFO] [stderr]    Compiling futures-util v0.3.30
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling clap v4.4.9
[INFO] [stderr]    Compiling snafu v0.8.0
[INFO] [stderr]    Compiling futures-executor v0.3.29
[INFO] [stderr]    Compiling futures v0.3.29
[INFO] [stderr]    Compiling indexmap v2.1.0
[INFO] [stderr]    Compiling cranelift-entity v0.103.0
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling pros-simulator-interface v0.5.0 (/opt/rustwide/workdir/packages/pros-simulator-interface)
[INFO] [stderr]    Compiling cranelift-bforest v0.103.0
[INFO] [stderr]    Compiling gimli v0.28.0
[INFO] [stderr]    Compiling wasmparser v0.118.1
[INFO] [stderr]    Compiling object v0.32.1
[INFO] [stderr]    Compiling jsonl v4.0.1
[INFO] [stderr]    Compiling addr2line v0.21.0
[INFO] [stderr]    Compiling wasmtime-types v16.0.0
[INFO] [stderr]    Compiling wasmtime-environ v16.0.0
[INFO] [stderr]    Compiling wasmtime-jit v16.0.0
[INFO] [stderr]    Compiling cranelift-native v0.103.0
[INFO] [stderr]    Compiling cranelift-frontend v0.103.0
[INFO] [stderr]    Compiling wasmtime-cranelift-shared v16.0.0
[INFO] [stderr]    Compiling cranelift-wasm v0.103.0
[INFO] [stderr]    Compiling wasmtime-cranelift v16.0.0
[INFO] [stderr]    Compiling wasmtime v16.0.0
[INFO] [stderr]    Compiling pros-simulator v0.5.0 (/opt/rustwide/workdir/packages/pros-simulator)
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]   --> packages/pros-simulator/src/api/generic_io.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn configure_generic_io_api(linker: &mut Linker<Host>) -> anyhow::Result<()> {
[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 Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: WasmTy` will fail
[INFO] [stdout]   --> packages/pros-simulator/src/api/generic_io.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 |     linker.func_wrap1_async("env", "sim_abort", |caller: Caller<'_, Host>, msg: u32| {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 26 ~     linker.func_wrap1_async::<_, ()>("env", "sim_abort", |caller: Caller<'_, Host>, msg: u32| {
[INFO] [stdout] 27 |         Box::new(async move {
[INFO] [stdout] ...
[INFO] [stdout] 72 |
[INFO] [stdout] 73 ~     linker.func_wrap1_async::<_, ()>("env", "exit", |caller: Caller<'_, Host>, code: i32| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:120:44
[INFO] [stdout]     |
[INFO] [stdout] 120 |     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd>;
[INFO] [stdout]     |                       -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 120 -     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd>;
[INFO] [stdout] 120 +     async fn lcd_lock(&self) -> MutexGuard<'life0, Lcd>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:122:48
[INFO] [stdout]     |
[INFO] [stdout] 122 |     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool>;
[INFO] [stdout]     |                           -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 122 -     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool>;
[INFO] [stdout] 122 +     async fn mutexes_lock(&self) -> MutexGuard<'life0, MutexPool>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:124:46
[INFO] [stdout]     |
[INFO] [stdout] 124 |     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool>;
[INFO] [stdout]     |                         -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 124 -     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool>;
[INFO] [stdout] 124 +     async fn tasks_lock(&self) -> MutexGuard<'life0, TaskPool>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:128:52
[INFO] [stdout]     |
[INFO] [stdout] 128 |     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers>;
[INFO] [stdout]     |                               -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 128 -     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers>;
[INFO] [stdout] 128 +     async fn controllers_lock(&self) -> MutexGuard<'life0, Controllers>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:130:58
[INFO] [stdout]     |
[INFO] [stdout] 130 |     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase>;
[INFO] [stdout]     |                                     -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 130 -     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase>;
[INFO] [stdout] 130 +     async fn competition_phase_lock(&self) -> MutexGuard<'life0, CompetitionPhase>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:151:44
[INFO] [stdout]     |
[INFO] [stdout] 151 |     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stdout]     |                       -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 151 -     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stdout] 151 +     async fn lcd_lock(&self) -> MutexGuard<'life0, Lcd> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:159:48
[INFO] [stdout]     |
[INFO] [stdout] 159 |     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stdout]     |                           -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 159 -     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stdout] 159 +     async fn mutexes_lock(&self) -> MutexGuard<'life0, MutexPool> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:167:46
[INFO] [stdout]     |
[INFO] [stdout] 167 |     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stdout]     |                         -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 167 -     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stdout] 167 +     async fn tasks_lock(&self) -> MutexGuard<'life0, TaskPool> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:183:52
[INFO] [stdout]     |
[INFO] [stdout] 183 |     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stdout]     |                               -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 183 -     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stdout] 183 +     async fn controllers_lock(&self) -> MutexGuard<'life0, Controllers> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:191:58
[INFO] [stdout]     |
[INFO] [stdout] 191 |     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stdout]     |                                     -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 191 -     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stdout] 191 +     async fn competition_phase_lock(&self) -> MutexGuard<'life0, CompetitionPhase> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:217:44
[INFO] [stdout]     |
[INFO] [stdout] 217 |     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stdout]     |                       -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 217 -     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stdout] 217 +     async fn lcd_lock(&self) -> MutexGuard<'life0, Lcd> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:225:48
[INFO] [stdout]     |
[INFO] [stdout] 225 |     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stdout]     |                           -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 225 -     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stdout] 225 +     async fn mutexes_lock(&self) -> MutexGuard<'life0, MutexPool> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:233:46
[INFO] [stdout]     |
[INFO] [stdout] 233 |     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stdout]     |                         -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 233 -     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stdout] 233 +     async fn tasks_lock(&self) -> MutexGuard<'life0, TaskPool> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:249:52
[INFO] [stdout]     |
[INFO] [stdout] 249 |     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stdout]     |                               -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 249 -     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stdout] 249 +     async fn controllers_lock(&self) -> MutexGuard<'life0, Controllers> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:257:58
[INFO] [stdout]     |
[INFO] [stdout] 257 |     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stdout]     |                                     -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 257 -     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stdout] 257 +     async fn competition_phase_lock(&self) -> MutexGuard<'life0, CompetitionPhase> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling pros-simulator-server v0.5.0 (/opt/rustwide/workdir/packages/pros-simulator-server)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 24s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: pros-simulator v0.5.0 (/opt/rustwide/workdir/packages/pros-simulator)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "71f1e6f44ddfaebc1d596d3d32208481adaed3fa9388555ccad99d7fe5da5747", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "71f1e6f44ddfaebc1d596d3d32208481adaed3fa9388555ccad99d7fe5da5747", kill_on_drop: false }`
[INFO] [stdout] 71f1e6f44ddfaebc1d596d3d32208481adaed3fa9388555ccad99d7fe5da5747
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fe78091b3ee387dd57669c6081415d78ed369c87d948408d7db18ea24a3ee5a9
[INFO] running `Command { std: "docker" "start" "-a" "fe78091b3ee387dd57669c6081415d78ed369c87d948408d7db18ea24a3ee5a9", kill_on_drop: false }`
[INFO] [stderr]    Compiling allocator-api2 v0.2.16
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]    Compiling rustversion v1.0.14
[INFO] [stderr]    Compiling signal-hook-registry v1.4.1
[INFO] [stderr]    Compiling tracing-core v0.1.32
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling indoc v2.0.4
[INFO] [stderr]    Compiling unicode-width v0.1.11
[INFO] [stderr]    Compiling unicode-segmentation v1.10.1
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling regalloc2 v0.9.3
[INFO] [stderr]    Compiling mio v0.8.9
[INFO] [stderr]    Compiling hashbrown v0.14.2
[INFO] [stderr]    Compiling signal-hook v0.3.17
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling tokio v1.34.0
[INFO] [stderr]    Compiling thread_local v1.1.7
[INFO] [stderr]    Compiling iana-time-zone v0.1.58
[INFO] [stderr]    Compiling font8x8 v0.3.1
[INFO] [stderr]    Compiling pros-simulator-interface v0.5.0 (/opt/rustwide/workdir/packages/pros-simulator-interface)
[INFO] [stderr]    Compiling signal-hook-mio v0.2.3
[INFO] [stderr]    Compiling indexmap v2.1.0
[INFO] [stderr]    Compiling crossterm v0.27.0
[INFO] [stderr]    Compiling lru v0.12.1
[INFO] [stderr]    Compiling strum_macros v0.25.3
[INFO] [stderr]    Compiling regex-automata v0.4.3
[INFO] [stderr]    Compiling gimli v0.28.0
[INFO] [stderr]    Compiling wasmparser v0.118.1
[INFO] [stderr]    Compiling object v0.32.1
[INFO] [stderr]    Compiling chrono v0.4.31
[INFO] [stderr]    Compiling strum v0.25.0
[INFO] [stderr]    Compiling ratatui v0.24.0
[INFO] [stderr]    Compiling regex v1.10.2
[INFO] [stderr]    Compiling darling_core v0.14.4
[INFO] [stderr]    Compiling tracing-subscriber v0.3.18
[INFO] [stderr]    Compiling cranelift-codegen v0.103.0
[INFO] [stderr]    Compiling addr2line v0.21.0
[INFO] [stderr]    Compiling darling_macro v0.14.4
[INFO] [stderr]    Compiling darling v0.14.4
[INFO] [stderr]    Compiling derive_builder_core v0.12.0
[INFO] [stderr]    Compiling tui-logger v0.10.0
[INFO] [stderr]    Compiling derive_builder_macro v0.12.0
[INFO] [stderr]    Compiling derive_builder v0.12.0
[INFO] [stderr]    Compiling tui-big-text v0.2.1
[INFO] [stderr]    Compiling wasmtime-types v16.0.0
[INFO] [stderr]    Compiling wasmtime-environ v16.0.0
[INFO] [stderr]    Compiling wasmtime-runtime v16.0.0
[INFO] [stderr]    Compiling wasmtime-jit v16.0.0
[INFO] [stderr]    Compiling cranelift-frontend v0.103.0
[INFO] [stderr]    Compiling cranelift-native v0.103.0
[INFO] [stderr]    Compiling wasmtime-cranelift-shared v16.0.0
[INFO] [stderr]    Compiling cranelift-wasm v0.103.0
[INFO] [stderr]    Compiling wasmtime-cranelift v16.0.0
[INFO] [stderr]    Compiling wasmtime v16.0.0
[INFO] [stderr]    Compiling pros-simulator v0.5.0 (/opt/rustwide/workdir/packages/pros-simulator)
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]   --> packages/pros-simulator/src/api/generic_io.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn configure_generic_io_api(linker: &mut Linker<Host>) -> anyhow::Result<()> {
[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 Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: WasmTy` will fail
[INFO] [stdout]   --> packages/pros-simulator/src/api/generic_io.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 |     linker.func_wrap1_async("env", "sim_abort", |caller: Caller<'_, Host>, msg: u32| {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 26 ~     linker.func_wrap1_async::<_, ()>("env", "sim_abort", |caller: Caller<'_, Host>, msg: u32| {
[INFO] [stdout] 27 |         Box::new(async move {
[INFO] [stdout] ...
[INFO] [stdout] 72 |
[INFO] [stdout] 73 ~     linker.func_wrap1_async::<_, ()>("env", "exit", |caller: Caller<'_, Host>, code: i32| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]   --> packages/pros-simulator/src/api/generic_io.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn configure_generic_io_api(linker: &mut Linker<Host>) -> anyhow::Result<()> {
[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 Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: WasmTy` will fail
[INFO] [stdout]   --> packages/pros-simulator/src/api/generic_io.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 |     linker.func_wrap1_async("env", "sim_abort", |caller: Caller<'_, Host>, msg: u32| {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 26 ~     linker.func_wrap1_async::<_, ()>("env", "sim_abort", |caller: Caller<'_, Host>, msg: u32| {
[INFO] [stdout] 27 |         Box::new(async move {
[INFO] [stdout] ...
[INFO] [stdout] 72 |
[INFO] [stdout] 73 ~     linker.func_wrap1_async::<_, ()>("env", "exit", |caller: Caller<'_, Host>, code: i32| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:120:44
[INFO] [stdout]     |
[INFO] [stdout] 120 |     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd>;
[INFO] [stdout]     |                       -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 120 -     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd>;
[INFO] [stdout] 120 +     async fn lcd_lock(&self) -> MutexGuard<'life0, Lcd>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:122:48
[INFO] [stdout]     |
[INFO] [stdout] 122 |     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool>;
[INFO] [stdout]     |                           -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 122 -     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool>;
[INFO] [stdout] 122 +     async fn mutexes_lock(&self) -> MutexGuard<'life0, MutexPool>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:124:46
[INFO] [stdout]     |
[INFO] [stdout] 124 |     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool>;
[INFO] [stdout]     |                         -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 124 -     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool>;
[INFO] [stdout] 124 +     async fn tasks_lock(&self) -> MutexGuard<'life0, TaskPool>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:128:52
[INFO] [stdout]     |
[INFO] [stdout] 128 |     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers>;
[INFO] [stdout]     |                               -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 128 -     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers>;
[INFO] [stdout] 128 +     async fn controllers_lock(&self) -> MutexGuard<'life0, Controllers>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:130:58
[INFO] [stdout]     |
[INFO] [stdout] 130 |     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase>;
[INFO] [stdout]     |                                     -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 130 -     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase>;
[INFO] [stdout] 130 +     async fn competition_phase_lock(&self) -> MutexGuard<'life0, CompetitionPhase>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:151:44
[INFO] [stdout]     |
[INFO] [stdout] 151 |     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stdout]     |                       -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 151 -     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stdout] 151 +     async fn lcd_lock(&self) -> MutexGuard<'life0, Lcd> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:159:48
[INFO] [stdout]     |
[INFO] [stdout] 159 |     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stdout]     |                           -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 159 -     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stdout] 159 +     async fn mutexes_lock(&self) -> MutexGuard<'life0, MutexPool> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:167:46
[INFO] [stdout]     |
[INFO] [stdout] 167 |     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stdout]     |                         -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 167 -     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stdout] 167 +     async fn tasks_lock(&self) -> MutexGuard<'life0, TaskPool> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:183:52
[INFO] [stdout]     |
[INFO] [stdout] 183 |     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stdout]     |                               -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 183 -     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stdout] 183 +     async fn controllers_lock(&self) -> MutexGuard<'life0, Controllers> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:191:58
[INFO] [stdout]     |
[INFO] [stdout] 191 |     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stdout]     |                                     -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 191 -     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stdout] 191 +     async fn competition_phase_lock(&self) -> MutexGuard<'life0, CompetitionPhase> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:217:44
[INFO] [stdout]     |
[INFO] [stdout] 217 |     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stdout]     |                       -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 217 -     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stdout] 217 +     async fn lcd_lock(&self) -> MutexGuard<'life0, Lcd> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:225:48
[INFO] [stdout]     |
[INFO] [stdout] 225 |     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stdout]     |                           -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 225 -     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stdout] 225 +     async fn mutexes_lock(&self) -> MutexGuard<'life0, MutexPool> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:233:46
[INFO] [stdout]     |
[INFO] [stdout] 233 |     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stdout]     |                         -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 233 -     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stdout] 233 +     async fn tasks_lock(&self) -> MutexGuard<'life0, TaskPool> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:249:52
[INFO] [stdout]     |
[INFO] [stdout] 249 |     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stdout]     |                               -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 249 -     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stdout] 249 +     async fn controllers_lock(&self) -> MutexGuard<'life0, Controllers> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:257:58
[INFO] [stdout]     |
[INFO] [stdout] 257 |     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stdout]     |                                     -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 257 -     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stdout] 257 +     async fn competition_phase_lock(&self) -> MutexGuard<'life0, CompetitionPhase> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:120:44
[INFO] [stdout]     |
[INFO] [stdout] 120 |     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd>;
[INFO] [stdout]     |                       -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 120 -     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd>;
[INFO] [stdout] 120 +     async fn lcd_lock(&self) -> MutexGuard<'life0, Lcd>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:122:48
[INFO] [stdout]     |
[INFO] [stdout] 122 |     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool>;
[INFO] [stdout]     |                           -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 122 -     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool>;
[INFO] [stdout] 122 +     async fn mutexes_lock(&self) -> MutexGuard<'life0, MutexPool>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:124:46
[INFO] [stdout]     |
[INFO] [stdout] 124 |     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool>;
[INFO] [stdout]     |                         -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 124 -     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool>;
[INFO] [stdout] 124 +     async fn tasks_lock(&self) -> MutexGuard<'life0, TaskPool>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:128:52
[INFO] [stdout]     |
[INFO] [stdout] 128 |     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers>;
[INFO] [stdout]     |                               -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 128 -     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers>;
[INFO] [stdout] 128 +     async fn controllers_lock(&self) -> MutexGuard<'life0, Controllers>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:130:58
[INFO] [stdout]     |
[INFO] [stdout] 130 |     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase>;
[INFO] [stdout]     |                                     -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 130 -     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase>;
[INFO] [stdout] 130 +     async fn competition_phase_lock(&self) -> MutexGuard<'life0, CompetitionPhase>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:151:44
[INFO] [stdout]     |
[INFO] [stdout] 151 |     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stdout]     |                       -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 151 -     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stdout] 151 +     async fn lcd_lock(&self) -> MutexGuard<'life0, Lcd> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:159:48
[INFO] [stdout]     |
[INFO] [stdout] 159 |     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stdout]     |                           -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 159 -     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stdout] 159 +     async fn mutexes_lock(&self) -> MutexGuard<'life0, MutexPool> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:167:46
[INFO] [stdout]     |
[INFO] [stdout] 167 |     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stdout]     |                         -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 167 -     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stdout] 167 +     async fn tasks_lock(&self) -> MutexGuard<'life0, TaskPool> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:183:52
[INFO] [stdout]     |
[INFO] [stdout] 183 |     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stdout]     |                               -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 183 -     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stdout] 183 +     async fn controllers_lock(&self) -> MutexGuard<'life0, Controllers> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:191:58
[INFO] [stdout]     |
[INFO] [stdout] 191 |     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stdout]     |                                     -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 191 -     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stdout] 191 +     async fn competition_phase_lock(&self) -> MutexGuard<'life0, CompetitionPhase> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:217:44
[INFO] [stdout]     |
[INFO] [stdout] 217 |     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stdout]     |                       -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 217 -     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stdout] 217 +     async fn lcd_lock(&self) -> MutexGuard<'life0, Lcd> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:225:48
[INFO] [stdout]     |
[INFO] [stdout] 225 |     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stdout]     |                           -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 225 -     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stdout] 225 +     async fn mutexes_lock(&self) -> MutexGuard<'life0, MutexPool> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:233:46
[INFO] [stdout]     |
[INFO] [stdout] 233 |     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stdout]     |                         -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 233 -     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stdout] 233 +     async fn tasks_lock(&self) -> MutexGuard<'life0, TaskPool> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:249:52
[INFO] [stdout]     |
[INFO] [stdout] 249 |     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stdout]     |                               -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 249 -     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stdout] 249 +     async fn controllers_lock(&self) -> MutexGuard<'life0, Controllers> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> packages/pros-simulator/src/host.rs:257:58
[INFO] [stdout]     |
[INFO] [stdout] 257 |     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stdout]     |                                     -                    ^^ the same lifetime is elided here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'life0`
[INFO] [stdout]     |
[INFO] [stdout] 257 -     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stdout] 257 +     async fn competition_phase_lock(&self) -> MutexGuard<'life0, CompetitionPhase> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling pros-simulator-server v0.5.0 (/opt/rustwide/workdir/packages/pros-simulator-server)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 06s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: pros-simulator v0.5.0 (/opt/rustwide/workdir/packages/pros-simulator)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "fe78091b3ee387dd57669c6081415d78ed369c87d948408d7db18ea24a3ee5a9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fe78091b3ee387dd57669c6081415d78ed369c87d948408d7db18ea24a3ee5a9", kill_on_drop: false }`
[INFO] [stdout] fe78091b3ee387dd57669c6081415d78ed369c87d948408d7db18ea24a3ee5a9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 5502d8bb2b9417c9c8290657805a12423e57bc57f017b11a79f03185edc881f6
[INFO] running `Command { std: "docker" "start" "-a" "5502d8bb2b9417c9c8290657805a12423e57bc57f017b11a79f03185edc881f6", kill_on_drop: false }`
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]   --> packages/pros-simulator/src/api/generic_io.rs:21:1
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub fn configure_generic_io_api(linker: &mut Linker<Host>) -> anyhow::Result<()> {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr]    = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `!: WasmTy` will fail
[INFO] [stderr]   --> packages/pros-simulator/src/api/generic_io.rs:26:12
[INFO] [stderr]    |
[INFO] [stderr] 26 |     linker.func_wrap1_async("env", "sim_abort", |caller: Caller<'_, Host>, msg: u32| {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr]    = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]    |
[INFO] [stderr] 26 ~     linker.func_wrap1_async::<_, ()>("env", "sim_abort", |caller: Caller<'_, Host>, msg: u32| {
[INFO] [stderr] 27 |         Box::new(async move {
[INFO] [stderr] ...
[INFO] [stderr] 72 |
[INFO] [stderr] 73 ~     linker.func_wrap1_async::<_, ()>("env", "exit", |caller: Caller<'_, Host>, code: i32| {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:120:44
[INFO] [stderr]     |
[INFO] [stderr] 120 |     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd>;
[INFO] [stderr]     |                       -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 120 -     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd>;
[INFO] [stderr] 120 +     async fn lcd_lock(&self) -> MutexGuard<'life0, Lcd>;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:122:48
[INFO] [stderr]     |
[INFO] [stderr] 122 |     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool>;
[INFO] [stderr]     |                           -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                           |
[INFO] [stderr]     |                           the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 122 -     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool>;
[INFO] [stderr] 122 +     async fn mutexes_lock(&self) -> MutexGuard<'life0, MutexPool>;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:124:46
[INFO] [stderr]     |
[INFO] [stderr] 124 |     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool>;
[INFO] [stderr]     |                         -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 124 -     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool>;
[INFO] [stderr] 124 +     async fn tasks_lock(&self) -> MutexGuard<'life0, TaskPool>;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:128:52
[INFO] [stderr]     |
[INFO] [stderr] 128 |     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers>;
[INFO] [stderr]     |                               -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                               |
[INFO] [stderr]     |                               the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 128 -     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers>;
[INFO] [stderr] 128 +     async fn controllers_lock(&self) -> MutexGuard<'life0, Controllers>;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:130:58
[INFO] [stderr]     |
[INFO] [stderr] 130 |     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase>;
[INFO] [stderr]     |                                     -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                                     |
[INFO] [stderr]     |                                     the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 130 -     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase>;
[INFO] [stderr] 130 +     async fn competition_phase_lock(&self) -> MutexGuard<'life0, CompetitionPhase>;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:151:44
[INFO] [stderr]     |
[INFO] [stderr] 151 |     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stderr]     |                       -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 151 -     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stderr] 151 +     async fn lcd_lock(&self) -> MutexGuard<'life0, Lcd> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:159:48
[INFO] [stderr]     |
[INFO] [stderr] 159 |     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stderr]     |                           -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                           |
[INFO] [stderr]     |                           the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 159 -     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stderr] 159 +     async fn mutexes_lock(&self) -> MutexGuard<'life0, MutexPool> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:167:46
[INFO] [stderr]     |
[INFO] [stderr] 167 |     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stderr]     |                         -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 167 -     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stderr] 167 +     async fn tasks_lock(&self) -> MutexGuard<'life0, TaskPool> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:183:52
[INFO] [stderr]     |
[INFO] [stderr] 183 |     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stderr]     |                               -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                               |
[INFO] [stderr]     |                               the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 183 -     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stderr] 183 +     async fn controllers_lock(&self) -> MutexGuard<'life0, Controllers> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:191:58
[INFO] [stderr]     |
[INFO] [stderr] 191 |     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stderr]     |                                     -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                                     |
[INFO] [stderr]     |                                     the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 191 -     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stderr] 191 +     async fn competition_phase_lock(&self) -> MutexGuard<'life0, CompetitionPhase> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:217:44
[INFO] [stderr]     |
[INFO] [stderr] 217 |     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stderr]     |                       -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 217 -     async fn lcd_lock(&self) -> MutexGuard<'_, Lcd> {
[INFO] [stderr] 217 +     async fn lcd_lock(&self) -> MutexGuard<'life0, Lcd> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:225:48
[INFO] [stderr]     |
[INFO] [stderr] 225 |     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stderr]     |                           -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                           |
[INFO] [stderr]     |                           the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 225 -     async fn mutexes_lock(&self) -> MutexGuard<'_, MutexPool> {
[INFO] [stderr] 225 +     async fn mutexes_lock(&self) -> MutexGuard<'life0, MutexPool> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:233:46
[INFO] [stderr]     |
[INFO] [stderr] 233 |     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stderr]     |                         -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 233 -     async fn tasks_lock(&self) -> MutexGuard<'_, TaskPool> {
[INFO] [stderr] 233 +     async fn tasks_lock(&self) -> MutexGuard<'life0, TaskPool> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:249:52
[INFO] [stderr]     |
[INFO] [stderr] 249 |     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stderr]     |                               -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                               |
[INFO] [stderr]     |                               the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 249 -     async fn controllers_lock(&self) -> MutexGuard<'_, Controllers> {
[INFO] [stderr] 249 +     async fn controllers_lock(&self) -> MutexGuard<'life0, Controllers> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> packages/pros-simulator/src/host.rs:257:58
[INFO] [stderr]     |
[INFO] [stderr] 257 |     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stderr]     |                                     -                    ^^ the same lifetime is elided here
[INFO] [stderr]     |                                     |
[INFO] [stderr]     |                                     the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'life0`
[INFO] [stderr]     |
[INFO] [stderr] 257 -     async fn competition_phase_lock(&self) -> MutexGuard<'_, CompetitionPhase> {
[INFO] [stderr] 257 +     async fn competition_phase_lock(&self) -> MutexGuard<'life0, CompetitionPhase> {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `pros-simulator` (lib) generated 16 warnings (run `cargo fix --lib -p pros-simulator` to apply 16 suggestions)
[INFO] [stderr] warning: `pros-simulator` (lib test) generated 16 warnings (16 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.37s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: pros-simulator v0.5.0 (/opt/rustwide/workdir/packages/pros-simulator)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pros_simulator-0f48cb2ecd500949)
[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]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pros_simulator_interface-1385ff1db06f53c7)
[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]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/pros_simulator_server-4af0336a26e2e3eb)
[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 pros_simulator
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test packages/pros-simulator/src/host.rs - host::ResultExt::unwrap_or_errno (line 293) ... ignored
[INFO] [stdout] test packages/pros-simulator/src/host.rs - host::ResultExt::unwrap_or_errno_as (line 304) ... ignored
[INFO] [stdout] test packages/pros-simulator/src/host/controllers.rs - host::controllers::Controllers::get_digital_new_press (line 219) ... ignored
[INFO] [stdout] test packages/pros-simulator/src/host/controllers.rs - host::controllers::Controllers::get_analog (line 130) ... FAILED
[INFO] [stdout] test packages/pros-simulator/src/host/controllers.rs - host::controllers::Controllers::get_digital (line 169) ... FAILED
[INFO] [stderr] error: doctest failed, to rerun pass `-p pros-simulator --doc`
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- packages/pros-simulator/src/host/controllers.rs - host::controllers::Controllers::get_analog (line 130) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `controllers` in this scope
[INFO] [stdout]  --> packages/pros-simulator/src/host/controllers.rs:131:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | if controllers.get_analog(pros_sys::E_CONTROLLER_MASTER, pros_sys::E_CONTROLLER_ANALOG_LEFT_X)? > 0 {
[INFO] [stdout]   |    ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- packages/pros-simulator/src/host/controllers.rs - host::controllers::Controllers::get_digital (line 169) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `controllers` in this scope
[INFO] [stdout]  --> packages/pros-simulator/src/host/controllers.rs:170:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | if controllers.get_digital(pros_sys::E_CONTROLLER_MASTER, pros_sys::E_CONTROLLER_DIGITAL_X)? {
[INFO] [stdout]   |    ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     packages/pros-simulator/src/host/controllers.rs - host::controllers::Controllers::get_analog (line 130)
[INFO] [stdout]     packages/pros-simulator/src/host/controllers.rs - host::controllers::Controllers::get_digital (line 169)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 2 failed; 3 ignored; 0 measured; 0 filtered out; finished in 0.28s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "5502d8bb2b9417c9c8290657805a12423e57bc57f017b11a79f03185edc881f6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5502d8bb2b9417c9c8290657805a12423e57bc57f017b11a79f03185edc881f6", kill_on_drop: false }`
[INFO] [stdout] 5502d8bb2b9417c9c8290657805a12423e57bc57f017b11a79f03185edc881f6
