[INFO] fetching crate iocraft 0.7.14...
[INFO] testing iocraft-0.7.14 against master#1ef7943ee607160a564655b6596f83670ef95df5 for pr-146098-6
[INFO] extracting crate iocraft 0.7.14 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate iocraft 0.7.14
[INFO] finished tweaking crates.io crate iocraft 0.7.14
[INFO] tweaked toml for crates.io crate iocraft 0.7.14 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate iocraft 0.7.14 on toolchain 1ef7943ee607160a564655b6596f83670ef95df5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1ef7943ee607160a564655b6596f83670ef95df5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate iocraft 0.7.14 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" "+1ef7943ee607160a564655b6596f83670ef95df5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded async-net v2.0.0
[INFO] [stderr]   Downloaded grid v0.14.0
[INFO] [stderr]   Downloaded macro_rules_attribute-proc_macro v0.2.2
[INFO] [stderr]   Downloaded debugit v0.1.2
[INFO] [stderr]   Downloaded iocraft-macros v0.2.3
[INFO] [stderr]   Downloaded macro_rules_attribute v0.2.2
[INFO] [stderr]   Downloaded smol-macros v0.1.1
[INFO] [stderr]   Downloaded mopa v0.2.2
[INFO] [stderr]   Downloaded generational-box v0.5.6
[INFO] [stderr]   Downloaded wasi v0.14.7+wasi-0.2.4
[INFO] [stderr]   Downloaded async-fs v2.2.0
[INFO] [stderr]   Downloaded any_key v0.1.1
[INFO] [stderr]   Downloaded smol v2.0.2
[INFO] [stderr]   Downloaded taffy v0.5.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+1ef7943ee607160a564655b6596f83670ef95df5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d23e7aee77cd3d1c39d8db4f0cd895a9ca94228307203be797b94c2cfb6cd728
[INFO] running `Command { std: "docker" "start" "-a" "d23e7aee77cd3d1c39d8db4f0cd895a9ca94228307203be797b94c2cfb6cd728", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d23e7aee77cd3d1c39d8db4f0cd895a9ca94228307203be797b94c2cfb6cd728", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d23e7aee77cd3d1c39d8db4f0cd895a9ca94228307203be797b94c2cfb6cd728", kill_on_drop: false }`
[INFO] [stdout] d23e7aee77cd3d1c39d8db4f0cd895a9ca94228307203be797b94c2cfb6cd728
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1ef7943ee607160a564655b6596f83670ef95df5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b48bcb10d2f0c236ab7a1e66f9c57f19a09fdf8301429061e8317ce0b5833ddd
[INFO] running `Command { std: "docker" "start" "-a" "b48bcb10d2f0c236ab7a1e66f9c57f19a09fdf8301429061e8317ce0b5833ddd", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling version_check v0.1.5
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling slotmap v1.0.7
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling bitflags v2.9.4
[INFO] [stderr]    Compiling mopa v0.2.2
[INFO] [stderr]    Compiling debugit v0.1.2
[INFO] [stderr]    Compiling any_key v0.1.1
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling taffy v0.5.2
[INFO] [stderr]    Compiling uuid v1.18.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling signal-hook-registry v1.4.6
[INFO] [stderr]    Compiling mio v1.0.4
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling generational-box v0.5.6
[INFO] [stderr]    Compiling signal-hook-mio v0.2.4
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling iocraft-macros v0.2.3
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling iocraft v0.7.14 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/context.rs:38:15
[INFO] [stdout]    |
[INFO] [stdout] 38 |     Owned(Box<(dyn Any + Send + Sync)>),
[INFO] [stdout]    |               ^                     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 38 -     Owned(Box<(dyn Any + Send + Sync)>),
[INFO] [stdout] 38 +     Owned(Box<dyn Any + Send + Sync >),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/canvas.rs:171:9
[INFO] [stdout]     |
[INFO] [stdout] 171 |         &mut self,
[INFO] [stdout]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 178 |     ) -> CanvasSubviewMut {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^ the same lifetime is hidden 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: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 178 |     ) -> CanvasSubviewMut<'_> {
[INFO] [stdout]     |                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/context.rs:79:19
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn borrow(&mut self) -> Context {
[INFO] [stdout]    |                   ^^^^^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn borrow(&mut self) -> Context<'_> {
[INFO] [stdout]    |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/context.rs:120:32
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn get_context<T: Any>(&self) -> Option<Ref<T>> {
[INFO] [stdout]     |                                ^^^^^            ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn get_context<T: Any>(&self) -> Option<Ref<'_, T>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/context.rs:131:36
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<T>> {
[INFO] [stdout]     |                                    ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<'_, T>> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:160:18
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn props_mut(&mut self) -> AnyProps;
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn props_mut(&mut self) -> AnyProps<'_>;
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:277:18
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:311:18
[INFO] [stdout]     |
[INFO] [stdout] 311 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 311 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:348:18
[INFO] [stdout]     |
[INFO] [stdout] 348 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 348 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:384:18
[INFO] [stdout]     |
[INFO] [stdout] 384 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 384 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/render.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn get_context<T: Any>(&self) -> Option<Ref<T>> {
[INFO] [stdout]    |                                ^^^^^            ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn get_context<T: Any>(&self) -> Option<Ref<'_, T>> {
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/render.rs:97:36
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<T>> {
[INFO] [stdout]    |                                    ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<'_, T>> {
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/render.rs:257:19
[INFO] [stdout]     |
[INFO] [stdout] 257 |     pub fn canvas(&mut self) -> CanvasSubviewMut {
[INFO] [stdout]     |                   ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 257 |     pub fn canvas(&mut self) -> CanvasSubviewMut<'_> {
[INFO] [stdout]     |                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/segmented_string.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         &self,
[INFO] [stdout]    |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 96 |     ) -> SegmentedStringLineSegment {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 96 |     ) -> SegmentedStringLineSegment<'_> {
[INFO] [stdout]    |                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/segmented_string.rs:132:17
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn wrap(&self, width: usize) -> Vec<SegmentedStringLine> {
[INFO] [stdout]     |                 ^^^^^                       ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn wrap(&self, width: usize) -> Vec<SegmentedStringLine<'_>> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/hooks/use_ref.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn read(&self) -> RefRef<T> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn read(&self) -> RefRef<'_, T> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_ref.rs:105:21
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn try_read(&self) -> Option<RefRef<T>> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn try_read(&self) -> Option<RefRef<'_, T>> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_ref.rs:127:18
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub fn write(&mut self) -> RefMutRef<T> {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub fn write(&mut self) -> RefMutRef<'_, T> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_ref.rs:140:22
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub fn try_write(&mut self) -> Option<RefMutRef<T>> {
[INFO] [stdout]     |                      ^^^^^^^^^            ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub fn try_write(&mut self) -> Option<RefMutRef<'_, T>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_state.rs:218:17
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn read(&self) -> StateRef<T> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn read(&self) -> StateRef<'_, T> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_state.rs:231:21
[INFO] [stdout]     |
[INFO] [stdout] 231 |     pub fn try_read(&self) -> Option<StateRef<T>> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 231 |     pub fn try_read(&self) -> Option<StateRef<'_, T>> {
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_state.rs:253:18
[INFO] [stdout]     |
[INFO] [stdout] 253 |     pub fn write(&mut self) -> StateMutRef<T> {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 253 |     pub fn write(&mut self) -> StateMutRef<'_, T> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_state.rs:266:22
[INFO] [stdout]     |
[INFO] [stdout] 266 |     pub fn try_write(&mut self) -> Option<StateMutRef<T>> {
[INFO] [stdout]     |                      ^^^^^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 266 |     pub fn try_write(&mut self) -> Option<StateMutRef<'_, T>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.21s
[INFO] running `Command { std: "docker" "inspect" "b48bcb10d2f0c236ab7a1e66f9c57f19a09fdf8301429061e8317ce0b5833ddd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b48bcb10d2f0c236ab7a1e66f9c57f19a09fdf8301429061e8317ce0b5833ddd", kill_on_drop: false }`
[INFO] [stdout] b48bcb10d2f0c236ab7a1e66f9c57f19a09fdf8301429061e8317ce0b5833ddd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1ef7943ee607160a564655b6596f83670ef95df5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 38ef21315da5e7a057cb97ea2dcffe99c446d08a00c5b2c42456a419f793e86d
[INFO] running `Command { std: "docker" "start" "-a" "38ef21315da5e7a057cb97ea2dcffe99c446d08a00c5b2c42456a419f793e86d", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling macro_rules_attribute-proc_macro v0.2.2
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling macro_rules_attribute v0.2.2
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling async-executor v1.13.3
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling async-channel v2.5.0
[INFO] [stderr]    Compiling async-lock v3.4.1
[INFO] [stderr]    Compiling blocking v1.6.2
[INFO] [stderr]    Compiling async-fs v2.2.0
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling iocraft v0.7.14 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/context.rs:38:15
[INFO] [stdout]    |
[INFO] [stdout] 38 |     Owned(Box<(dyn Any + Send + Sync)>),
[INFO] [stdout]    |               ^                     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 38 -     Owned(Box<(dyn Any + Send + Sync)>),
[INFO] [stdout] 38 +     Owned(Box<dyn Any + Send + Sync >),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling polling v3.11.0
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/canvas.rs:171:9
[INFO] [stdout]     |
[INFO] [stdout] 171 |         &mut self,
[INFO] [stdout]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 178 |     ) -> CanvasSubviewMut {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^ the same lifetime is hidden 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: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 178 |     ) -> CanvasSubviewMut<'_> {
[INFO] [stdout]     |                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/context.rs:79:19
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn borrow(&mut self) -> Context {
[INFO] [stdout]    |                   ^^^^^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn borrow(&mut self) -> Context<'_> {
[INFO] [stdout]    |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/context.rs:120:32
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn get_context<T: Any>(&self) -> Option<Ref<T>> {
[INFO] [stdout]     |                                ^^^^^            ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn get_context<T: Any>(&self) -> Option<Ref<'_, T>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/context.rs:131:36
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<T>> {
[INFO] [stdout]     |                                    ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<'_, T>> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:160:18
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn props_mut(&mut self) -> AnyProps;
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn props_mut(&mut self) -> AnyProps<'_>;
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:277:18
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:311:18
[INFO] [stdout]     |
[INFO] [stdout] 311 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 311 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:348:18
[INFO] [stdout]     |
[INFO] [stdout] 348 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 348 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:384:18
[INFO] [stdout]     |
[INFO] [stdout] 384 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 384 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/render.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn get_context<T: Any>(&self) -> Option<Ref<T>> {
[INFO] [stdout]    |                                ^^^^^            ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn get_context<T: Any>(&self) -> Option<Ref<'_, T>> {
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/render.rs:97:36
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<T>> {
[INFO] [stdout]    |                                    ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<'_, T>> {
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/render.rs:257:19
[INFO] [stdout]     |
[INFO] [stdout] 257 |     pub fn canvas(&mut self) -> CanvasSubviewMut {
[INFO] [stdout]     |                   ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 257 |     pub fn canvas(&mut self) -> CanvasSubviewMut<'_> {
[INFO] [stdout]     |                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/segmented_string.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         &self,
[INFO] [stdout]    |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 96 |     ) -> SegmentedStringLineSegment {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 96 |     ) -> SegmentedStringLineSegment<'_> {
[INFO] [stdout]    |                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/segmented_string.rs:132:17
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn wrap(&self, width: usize) -> Vec<SegmentedStringLine> {
[INFO] [stdout]     |                 ^^^^^                       ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn wrap(&self, width: usize) -> Vec<SegmentedStringLine<'_>> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/hooks/use_ref.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn read(&self) -> RefRef<T> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn read(&self) -> RefRef<'_, T> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_ref.rs:105:21
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn try_read(&self) -> Option<RefRef<T>> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn try_read(&self) -> Option<RefRef<'_, T>> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_ref.rs:127:18
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub fn write(&mut self) -> RefMutRef<T> {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub fn write(&mut self) -> RefMutRef<'_, T> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_ref.rs:140:22
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub fn try_write(&mut self) -> Option<RefMutRef<T>> {
[INFO] [stdout]     |                      ^^^^^^^^^            ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub fn try_write(&mut self) -> Option<RefMutRef<'_, T>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_state.rs:218:17
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn read(&self) -> StateRef<T> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn read(&self) -> StateRef<'_, T> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_state.rs:231:21
[INFO] [stdout]     |
[INFO] [stdout] 231 |     pub fn try_read(&self) -> Option<StateRef<T>> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 231 |     pub fn try_read(&self) -> Option<StateRef<'_, T>> {
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_state.rs:253:18
[INFO] [stdout]     |
[INFO] [stdout] 253 |     pub fn write(&mut self) -> StateMutRef<T> {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 253 |     pub fn write(&mut self) -> StateMutRef<'_, T> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_state.rs:266:22
[INFO] [stdout]     |
[INFO] [stdout] 266 |     pub fn try_write(&mut self) -> Option<StateMutRef<T>> {
[INFO] [stdout]     |                      ^^^^^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 266 |     pub fn try_write(&mut self) -> Option<StateMutRef<'_, T>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling async-signal v0.2.13
[INFO] [stderr]    Compiling async-net v2.0.0
[INFO] [stderr]    Compiling smol-macros v0.1.1
[INFO] [stderr]    Compiling async-process v2.5.0
[INFO] [stderr]    Compiling smol v2.0.2
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/context.rs:38:15
[INFO] [stdout]    |
[INFO] [stdout] 38 |     Owned(Box<(dyn Any + Send + Sync)>),
[INFO] [stdout]    |               ^                     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 38 -     Owned(Box<(dyn Any + Send + Sync)>),
[INFO] [stdout] 38 +     Owned(Box<dyn Any + Send + Sync >),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/canvas.rs:171:9
[INFO] [stdout]     |
[INFO] [stdout] 171 |         &mut self,
[INFO] [stdout]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 178 |     ) -> CanvasSubviewMut {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^ the same lifetime is hidden 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: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 178 |     ) -> CanvasSubviewMut<'_> {
[INFO] [stdout]     |                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/context.rs:79:19
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn borrow(&mut self) -> Context {
[INFO] [stdout]    |                   ^^^^^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn borrow(&mut self) -> Context<'_> {
[INFO] [stdout]    |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/context.rs:120:32
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn get_context<T: Any>(&self) -> Option<Ref<T>> {
[INFO] [stdout]     |                                ^^^^^            ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn get_context<T: Any>(&self) -> Option<Ref<'_, T>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/context.rs:131:36
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<T>> {
[INFO] [stdout]     |                                    ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<'_, T>> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:160:18
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn props_mut(&mut self) -> AnyProps;
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 160 |     fn props_mut(&mut self) -> AnyProps<'_>;
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:277:18
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:311:18
[INFO] [stdout]     |
[INFO] [stdout] 311 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 311 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:348:18
[INFO] [stdout]     |
[INFO] [stdout] 348 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 348 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/element.rs:384:18
[INFO] [stdout]     |
[INFO] [stdout] 384 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 384 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/render.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn get_context<T: Any>(&self) -> Option<Ref<T>> {
[INFO] [stdout]    |                                ^^^^^            ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn get_context<T: Any>(&self) -> Option<Ref<'_, T>> {
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/render.rs:97:36
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<T>> {
[INFO] [stdout]    |                                    ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<'_, T>> {
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/render.rs:257:19
[INFO] [stdout]     |
[INFO] [stdout] 257 |     pub fn canvas(&mut self) -> CanvasSubviewMut {
[INFO] [stdout]     |                   ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 257 |     pub fn canvas(&mut self) -> CanvasSubviewMut<'_> {
[INFO] [stdout]     |                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/segmented_string.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         &self,
[INFO] [stdout]    |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 96 |     ) -> SegmentedStringLineSegment {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 96 |     ) -> SegmentedStringLineSegment<'_> {
[INFO] [stdout]    |                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/segmented_string.rs:132:17
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn wrap(&self, width: usize) -> Vec<SegmentedStringLine> {
[INFO] [stdout]     |                 ^^^^^                       ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn wrap(&self, width: usize) -> Vec<SegmentedStringLine<'_>> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/hooks/use_ref.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn read(&self) -> RefRef<T> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn read(&self) -> RefRef<'_, T> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_ref.rs:105:21
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn try_read(&self) -> Option<RefRef<T>> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn try_read(&self) -> Option<RefRef<'_, T>> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_ref.rs:127:18
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub fn write(&mut self) -> RefMutRef<T> {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub fn write(&mut self) -> RefMutRef<'_, T> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_ref.rs:140:22
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub fn try_write(&mut self) -> Option<RefMutRef<T>> {
[INFO] [stdout]     |                      ^^^^^^^^^            ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub fn try_write(&mut self) -> Option<RefMutRef<'_, T>> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_state.rs:218:17
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn read(&self) -> StateRef<T> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 218 |     pub fn read(&self) -> StateRef<'_, T> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_state.rs:231:21
[INFO] [stdout]     |
[INFO] [stdout] 231 |     pub fn try_read(&self) -> Option<StateRef<T>> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 231 |     pub fn try_read(&self) -> Option<StateRef<'_, T>> {
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_state.rs:253:18
[INFO] [stdout]     |
[INFO] [stdout] 253 |     pub fn write(&mut self) -> StateMutRef<T> {
[INFO] [stdout]     |                  ^^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 253 |     pub fn write(&mut self) -> StateMutRef<'_, T> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hooks/use_state.rs:266:22
[INFO] [stdout]     |
[INFO] [stdout] 266 |     pub fn try_write(&mut self) -> Option<StateMutRef<T>> {
[INFO] [stdout]     |                      ^^^^^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 266 |     pub fn try_write(&mut self) -> Option<StateMutRef<'_, T>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 14.03s
[INFO] running `Command { std: "docker" "inspect" "38ef21315da5e7a057cb97ea2dcffe99c446d08a00c5b2c42456a419f793e86d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "38ef21315da5e7a057cb97ea2dcffe99c446d08a00c5b2c42456a419f793e86d", kill_on_drop: false }`
[INFO] [stdout] 38ef21315da5e7a057cb97ea2dcffe99c446d08a00c5b2c42456a419f793e86d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1ef7943ee607160a564655b6596f83670ef95df5" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 4f93a5da27e7a9bf726f56a4ec02c27ae392302619ab8f67745a5f5266f96d5e
[INFO] running `Command { std: "docker" "start" "-a" "4f93a5da27e7a9bf726f56a4ec02c27ae392302619ab8f67745a5f5266f96d5e", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/context.rs:38:15
[INFO] [stderr]    |
[INFO] [stderr] 38 |     Owned(Box<(dyn Any + Send + Sync)>),
[INFO] [stderr]    |               ^                     ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 38 -     Owned(Box<(dyn Any + Send + Sync)>),
[INFO] [stderr] 38 +     Owned(Box<dyn Any + Send + Sync >),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/canvas.rs:171:9
[INFO] [stderr]     |
[INFO] [stderr] 171 |         &mut self,
[INFO] [stderr]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] ...
[INFO] [stderr] 178 |     ) -> CanvasSubviewMut {
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^ the same lifetime is hidden 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: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 178 |     ) -> CanvasSubviewMut<'_> {
[INFO] [stderr]     |                          ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/context.rs:79:19
[INFO] [stderr]    |
[INFO] [stderr] 79 |     pub fn borrow(&mut self) -> Context {
[INFO] [stderr]    |                   ^^^^^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 79 |     pub fn borrow(&mut self) -> Context<'_> {
[INFO] [stderr]    |                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/context.rs:120:32
[INFO] [stderr]     |
[INFO] [stderr] 120 |     pub fn get_context<T: Any>(&self) -> Option<Ref<T>> {
[INFO] [stderr]     |                                ^^^^^            ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                |
[INFO] [stderr]     |                                the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 120 |     pub fn get_context<T: Any>(&self) -> Option<Ref<'_, T>> {
[INFO] [stderr]     |                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/context.rs:131:36
[INFO] [stderr]     |
[INFO] [stderr] 131 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<T>> {
[INFO] [stderr]     |                                    ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                    |
[INFO] [stderr]     |                                    the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 131 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<'_, T>> {
[INFO] [stderr]     |                                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/element.rs:160:18
[INFO] [stderr]     |
[INFO] [stderr] 160 |     fn props_mut(&mut self) -> AnyProps;
[INFO] [stderr]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 160 |     fn props_mut(&mut self) -> AnyProps<'_>;
[INFO] [stderr]     |                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/element.rs:277:18
[INFO] [stderr]     |
[INFO] [stderr] 277 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stderr]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 277 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stderr]     |                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/element.rs:311:18
[INFO] [stderr]     |
[INFO] [stderr] 311 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stderr]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 311 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stderr]     |                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/element.rs:348:18
[INFO] [stderr]     |
[INFO] [stderr] 348 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stderr]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 348 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stderr]     |                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/element.rs:384:18
[INFO] [stderr]     |
[INFO] [stderr] 384 |     fn props_mut(&mut self) -> AnyProps {
[INFO] [stderr]     |                  ^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 384 |     fn props_mut(&mut self) -> AnyProps<'_> {
[INFO] [stderr]     |                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/render.rs:92:32
[INFO] [stderr]    |
[INFO] [stderr] 92 |     pub fn get_context<T: Any>(&self) -> Option<Ref<T>> {
[INFO] [stderr]    |                                ^^^^^            ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                                |
[INFO] [stderr]    |                                the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 92 |     pub fn get_context<T: Any>(&self) -> Option<Ref<'_, T>> {
[INFO] [stderr]    |                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/render.rs:97:36
[INFO] [stderr]    |
[INFO] [stderr] 97 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<T>> {
[INFO] [stderr]    |                                    ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                                    |
[INFO] [stderr]    |                                    the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 97 |     pub fn get_context_mut<T: Any>(&self) -> Option<RefMut<'_, T>> {
[INFO] [stderr]    |                                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/render.rs:257:19
[INFO] [stderr]     |
[INFO] [stderr] 257 |     pub fn canvas(&mut self) -> CanvasSubviewMut {
[INFO] [stderr]     |                   ^^^^^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                   |
[INFO] [stderr]     |                   the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 257 |     pub fn canvas(&mut self) -> CanvasSubviewMut<'_> {
[INFO] [stderr]     |                                                 ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/segmented_string.rs:92:9
[INFO] [stderr]    |
[INFO] [stderr] 92 |         &self,
[INFO] [stderr]    |         ^^^^^ the lifetime is elided here
[INFO] [stderr] ...
[INFO] [stderr] 96 |     ) -> SegmentedStringLineSegment {
[INFO] [stderr]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 96 |     ) -> SegmentedStringLineSegment<'_> {
[INFO] [stderr]    |                                    ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/segmented_string.rs:132:17
[INFO] [stderr]     |
[INFO] [stderr] 132 |     pub fn wrap(&self, width: usize) -> Vec<SegmentedStringLine> {
[INFO] [stderr]     |                 ^^^^^                       ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 132 |     pub fn wrap(&self, width: usize) -> Vec<SegmentedStringLine<'_>> {
[INFO] [stderr]     |                                                                ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/hooks/use_ref.rs:92:17
[INFO] [stderr]    |
[INFO] [stderr] 92 |     pub fn read(&self) -> RefRef<T> {
[INFO] [stderr]    |                 ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 92 |     pub fn read(&self) -> RefRef<'_, T> {
[INFO] [stderr]    |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hooks/use_ref.rs:105:21
[INFO] [stderr]     |
[INFO] [stderr] 105 |     pub fn try_read(&self) -> Option<RefRef<T>> {
[INFO] [stderr]     |                     ^^^^^            ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 105 |     pub fn try_read(&self) -> Option<RefRef<'_, T>> {
[INFO] [stderr]     |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hooks/use_ref.rs:127:18
[INFO] [stderr]     |
[INFO] [stderr] 127 |     pub fn write(&mut self) -> RefMutRef<T> {
[INFO] [stderr]     |                  ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 127 |     pub fn write(&mut self) -> RefMutRef<'_, T> {
[INFO] [stderr]     |                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hooks/use_ref.rs:140:22
[INFO] [stderr]     |
[INFO] [stderr] 140 |     pub fn try_write(&mut self) -> Option<RefMutRef<T>> {
[INFO] [stderr]     |                      ^^^^^^^^^            ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 140 |     pub fn try_write(&mut self) -> Option<RefMutRef<'_, T>> {
[INFO] [stderr]     |                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hooks/use_state.rs:218:17
[INFO] [stderr]     |
[INFO] [stderr] 218 |     pub fn read(&self) -> StateRef<T> {
[INFO] [stderr]     |                 ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 218 |     pub fn read(&self) -> StateRef<'_, T> {
[INFO] [stderr]     |                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hooks/use_state.rs:231:21
[INFO] [stderr]     |
[INFO] [stderr] 231 |     pub fn try_read(&self) -> Option<StateRef<T>> {
[INFO] [stderr]     |                     ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 231 |     pub fn try_read(&self) -> Option<StateRef<'_, T>> {
[INFO] [stderr]     |                                               +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hooks/use_state.rs:253:18
[INFO] [stderr]     |
[INFO] [stderr] 253 |     pub fn write(&mut self) -> StateMutRef<T> {
[INFO] [stderr]     |                  ^^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 253 |     pub fn write(&mut self) -> StateMutRef<'_, T> {
[INFO] [stderr]     |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hooks/use_state.rs:266:22
[INFO] [stderr]     |
[INFO] [stderr] 266 |     pub fn try_write(&mut self) -> Option<StateMutRef<T>> {
[INFO] [stderr]     |                      ^^^^^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 266 |     pub fn try_write(&mut self) -> Option<StateMutRef<'_, T>> {
[INFO] [stderr]     |                                                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: `iocraft` (lib) generated 23 warnings (run `cargo fix --lib -p iocraft` to apply 23 suggestions)
[INFO] [stderr] warning: `iocraft` (lib test) generated 23 warnings (23 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.23s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/iocraft-2f3c6d40ca371153)
[INFO] [stdout] 
[INFO] [stdout] running 44 tests
[INFO] [stdout] test canvas::tests::test_ansi_erase_for_full_rows ... ok
[INFO] [stdout] test canvas::tests::test_canvas_text_clearing ... ok
[INFO] [stdout] test canvas::tests::test_canvas_background_color ... ok
[INFO] [stdout] test canvas::tests::test_canvas_full_background_color ... ok
[INFO] [stdout] test canvas::tests::test_canvas_text_styles ... ok
[INFO] [stdout] test canvas::tests::test_write_ansi_without_final_newline ... ok
[INFO] [stdout] test components::text_input::tests::test_test_buffer_row_column_for_offset ... ok
[INFO] [stdout] test components::mixed_text::tests::test_mixed_text ... ok
[INFO] [stdout] test canvas::tests::test_canvas_text_clipping ... ok
[INFO] [stdout] test components::text_input::tests::test_text_input ... ok
[INFO] [stdout] test components::button::tests::test_button_key_input ... ok
[INFO] [stdout] test components::text_input::tests::test_text_input_initial_value ... ok
[INFO] [stdout] test components::text::tests::test_text ... ok
[INFO] [stdout] test components::text_input::tests::test_text_input_kanji ... ok
[INFO] [stdout] [?25ltest components::button::tests::test_button_click ... ok
[INFO] [stdout] test components::text_input::tests::test_text_input_overflow ... ok
[INFO] [stdout] test components::text_input::tests::test_new_cursor_offset ... ok
[INFO] [stdout] test components::text_input::tests::test_text_buffer_cursor_movement ... ok
[INFO] [stdout] test handler::tests::test_handler ... ok
[INFO] [stdout] test hooks::use_memo::tests::test_use_memo ... ok
[INFO] [stdout] test hooks::use_state::tests::test_state ... ok
[INFO] [stdout] test hooks::use_output::tests::test_use_output_polling ... ok
[INFO] [stdout] test hooks::use_ref::tests::test_ref ... ok
[INFO] [stdout] test hooks::use_const::tests::test_use_const ... ok
[INFO] [stdout] test hooks::use_state::tests::test_dropped_state ... ok
[INFO] [stdout] test hooks::use_async_handler::tests::test_use_async_handler ... ok
[INFO] [stdout] test hooks::use_terminal_events::tests::test_use_local_terminal_events ... ok
[INFO] [stdout] test hooks::use_ref::tests::test_dropped_ref ... ok
[INFO] [stdout] [?25l[0m[K[0m
[INFO] [stdout] [?25htest components::fragment::tests::test_fragment ... ok
[INFO] [stdout] test segmented_string::tests::test_segmented_string_wrap ... ok
[INFO] [stdout] test unicode_linebreak::tests::it_works ... ok
[INFO] [stdout] test terminal::tests::test_std_terminal ... ok
[INFO] [stdout] test render::tests::test_transparent_layout ... ok
[INFO] [stdout] test render::tests::test_negative_dimensions ... ok
[INFO] [stdout] test components::text_input::tests::test_text_input_multiline_newline ... ok
[INFO] [stdout] test hooks::use_terminal_size::tests::test_use_terminal_size ... ok
[INFO] [stdout] test hooks::use_terminal_events::tests::test_use_terminal_events ... ok
[INFO] [stdout] test render::tests::test_terminal_render_loop_send ... ok
[INFO] [stdout] [?2026h[0m[?2026l[?25htest hooks::use_output::tests::test_use_output ... ok
[INFO] [stdout] test render::tests::test_terminal_render_loop ... ok
[INFO] [stdout] test element::tests::test_element ... ok
[INFO] [stdout] test components::view::tests::test_view ... ok
[INFO] [stdout] test components::context_provider::tests::test_context_provider ... ok
[INFO] [stdout] test render::tests::test_async_ticker_container ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 44 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests iocraft
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/context.rs:38:15
[INFO] [stderr]    |
[INFO] [stderr] 38 |     Owned(Box<(dyn Any + Send + Sync)>),
[INFO] [stderr]    |               ^                     ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 38 -     Owned(Box<(dyn Any + Send + Sync)>),
[INFO] [stderr] 38 +     Owned(Box<dyn Any + Send + Sync >),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 25 tests
[INFO] [stdout] test src/components/text.rs - components::text::Text (line 70) ... ok
[INFO] [stdout] test src/hooks/use_memo.rs - hooks::use_memo::UseMemo (line 18) ... ok
[INFO] [stdout] test src/element.rs - element::ElementExt::mock_terminal_render_loop (line 234) ... ok
[INFO] [stdout] test src/components/view.rs - components::view::View (line 163) ... ok
[INFO] [stdout] test src/hooks/use_ref.rs - hooks::use_ref::UseRef (line 272) ... ok
[INFO] [stdout] test src/components/text_input.rs - components::text_input::TextInputHandle (line 18) ... ok
[INFO] [stdout] test src/hooks/use_const.rs - hooks::use_const::UseConst (line 20) ... ok
[INFO] [stdout] test src/components/button.rs - components::button::Button (line 30) ... ok
[INFO] [stdout] test src/hooks/mod.rs - hooks (line 8) ... ok
[INFO] [stdout] test src/components/text_input.rs - components::text_input::TextInput (line 290) ... ok
[INFO] [stdout] test src/components/mixed_text.rs - components::mixed_text::MixedText (line 81) ... ok
[INFO] [stdout] test src/hooks/use_output.rs - hooks::use_output::UseOutput (line 21) ... ok
[INFO] [stdout] test src/props.rs - props::Props (line 28) - compile fail ... ok
[INFO] [stdout] test src/props.rs - props::Props (line 65) - compile fail ... ok
[INFO] [stdout] test src/lib.rs - (line 50) - compile ... ok
[INFO] [stdout] test src/hooks/use_future.rs - hooks::use_future::UseFuture (line 19) ... ok
[INFO] [stdout] test src/components/fragment.rs - components::fragment::Fragment (line 18) ... ok
[INFO] [stdout] test src/props.rs - props::Props (line 17) ... ok
[INFO] [stdout] test src/hooks/use_context.rs - hooks::use_context::UseContext (line 20) ... ok
[INFO] [stdout] test src/hooks/use_terminal_events.rs - hooks::use_terminal_events::UseTerminalEvents (line 18) ... ok
[INFO] [stdout] test src/lib.rs - (line 23) ... ok
[INFO] [stdout] test src/hooks/use_state.rs - hooks::use_state::UseState (line 25) ... ok
[INFO] [stdout] test src/props.rs - props::Props (line 39) ... ok
[INFO] [stdout] test src/components/context_provider.rs - components::context_provider::ContextProvider (line 21) ... ok
[INFO] [stdout] test src/props.rs - props::Props (line 7) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.40s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "4f93a5da27e7a9bf726f56a4ec02c27ae392302619ab8f67745a5f5266f96d5e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4f93a5da27e7a9bf726f56a4ec02c27ae392302619ab8f67745a5f5266f96d5e", kill_on_drop: false }`
[INFO] [stdout] 4f93a5da27e7a9bf726f56a4ec02c27ae392302619ab8f67745a5f5266f96d5e
