[INFO] cloning repository https://github.com/ParadeTo/big-react-wasm
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ParadeTo/big-react-wasm" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FParadeTo%2Fbig-react-wasm", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FParadeTo%2Fbig-react-wasm'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 08ee809148f7e5058db9ec73318f85474a4ce840
[INFO] testing ParadeTo/big-react-wasm against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FParadeTo%2Fbig-react-wasm" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/ParadeTo/big-react-wasm on toolchain 1871252fc8bb672d40787e67404e6eaae7059369
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/ParadeTo/big-react-wasm
[INFO] finished tweaking git repo https://github.com/ParadeTo/big-react-wasm
[INFO] tweaked toml for git repo https://github.com/ParadeTo/big-react-wasm written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/ParadeTo/big-react-wasm 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" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-1-tc1/source/packages/react/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-1-tc1/source/packages/react-dom/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-1-tc1/source/packages/react-reconciler/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a21b8f4012dd8a584d3e9bedd1c7148409148fe8328b57da23fd1b11b5083fdf
[INFO] running `Command { std: "docker" "start" "-a" "a21b8f4012dd8a584d3e9bedd1c7148409148fe8328b57da23fd1b11b5083fdf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a21b8f4012dd8a584d3e9bedd1c7148409148fe8328b57da23fd1b11b5083fdf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a21b8f4012dd8a584d3e9bedd1c7148409148fe8328b57da23fd1b11b5083fdf", kill_on_drop: false }`
[INFO] [stdout] a21b8f4012dd8a584d3e9bedd1c7148409148fe8328b57da23fd1b11b5083fdf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 239504e334cad69a442c06d0e7acb09be34e81b2e148a95dcbd9546612f3a2fe
[INFO] running `Command { std: "docker" "start" "-a" "239504e334cad69a442c06d0e7acb09be34e81b2e148a95dcbd9546612f3a2fe", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react-dom/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react-reconciler/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]    Compiling proc-macro2 v1.0.79
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.92
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling bumpalo v3.15.4
[INFO] [stderr]    Compiling wasm-bindgen v0.2.92
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling serde v1.0.199
[INFO] [stderr]    Compiling itoa v1.0.11
[INFO] [stderr]    Compiling serde_json v1.0.116
[INFO] [stderr]    Compiling ryu v1.0.17
[INFO] [stderr]    Compiling autocfg v1.2.0
[INFO] [stderr]    Compiling thiserror v1.0.59
[INFO] [stderr]    Compiling futures-core v0.3.30
[INFO] [stderr]    Compiling futures-sink v0.3.30
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling toml_datetime v0.6.5
[INFO] [stderr]    Compiling futures-io v0.3.30
[INFO] [stderr]    Compiling futures-channel v0.3.30
[INFO] [stderr]    Compiling pin-project-lite v0.2.14
[INFO] [stderr]    Compiling rustversion v1.0.15
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling memchr v2.7.2
[INFO] [stderr]    Compiling winnow v0.5.40
[INFO] [stderr]    Compiling futures-task v0.3.30
[INFO] [stderr]    Compiling percent-encoding v2.3.1
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling bytes v1.6.0
[INFO] [stderr]    Compiling bitflags v2.5.0
[INFO] [stderr]    Compiling form_urlencoded v1.2.1
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling http v0.2.12
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling indexmap v2.2.6
[INFO] [stderr]    Compiling syn v2.0.53
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.92
[INFO] [stderr]    Compiling serde_derive v1.0.199
[INFO] [stderr]    Compiling thiserror-impl v1.0.59
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]    Compiling gloo-worker-macros v0.1.0
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.92
[INFO] [stderr]    Compiling futures-util v0.3.30
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.92
[INFO] [stderr]    Compiling pin-project v1.1.5
[INFO] [stderr]    Compiling js-sys v0.3.69
[INFO] [stderr]    Compiling console_error_panic_hook v0.1.7
[INFO] [stderr]    Compiling futures v0.3.30
[INFO] [stderr]    Compiling pinned v0.1.0
[INFO] [stderr]    Compiling web-sys v0.3.69
[INFO] [stderr]    Compiling wasm-bindgen-futures v0.4.42
[INFO] [stderr]    Compiling gloo-timers v0.3.0
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling serde-wasm-bindgen v0.6.5
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling gloo-utils v0.2.0
[INFO] [stderr]    Compiling shared v0.1.0 (/opt/rustwide/workdir/packages/shared)
[INFO] [stderr]    Compiling gloo-events v0.2.0
[INFO] [stderr]    Compiling gloo-render v0.2.0
[INFO] [stderr]    Compiling gloo-dialogs v0.2.0
[INFO] [stderr]    Compiling scheduler v0.1.0 (/opt/rustwide/workdir/packages/scheduler)
[INFO] [stderr]    Compiling gloo-worker v0.5.0
[INFO] [stderr]    Compiling gloo-console v0.3.0
[INFO] [stderr]    Compiling gloo-net v0.5.0
[INFO] [stderr]    Compiling gloo-storage v0.3.0
[INFO] [stderr]    Compiling gloo-file v0.3.0
[INFO] [stderr]    Compiling gloo-history v0.2.2
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]  --> packages/scheduler/src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::any::Any;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:111:35
[INFO] [stdout]     |
[INFO] [stdout] 111 |             sort_index_ordering = (Ordering::Greater)
[INFO] [stdout]     |                                   ^                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 111 -             sort_index_ordering = (Ordering::Greater)
[INFO] [stdout] 111 +             sort_index_ordering = Ordering::Greater
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:246:34
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let mut timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let mut timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:250:21
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:252:29
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:254:22
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 push(&mut TASK_QUEUE, task.clone());
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 push(addr_of_mut!(TASK_QUEUE), task.clone());
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:258:30
[INFO] [stdout]     |
[INFO] [stdout] 258 |             timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 258 |             timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                              ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:302:41
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 |         CURRENT_TASK = peek(&mut TASK_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 304 |         CURRENT_TASK = peek(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:328:35
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     if match peek(&TASK_QUEUE) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     if match peek(addr_of!(TASK_QUEUE)) {
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:334:29
[INFO] [stdout]     |
[INFO] [stdout] 334 |                         pop(&mut TASK_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 334 |                         pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:340:21
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 pop(&mut TASK_QUEUE);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:343:37
[INFO] [stdout]     |
[INFO] [stdout] 343 |             current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 343 |             current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:344:33
[INFO] [stdout]     |
[INFO] [stdout] 344 |             CURRENT_TASK = peek(&TASK_QUEUE);
[INFO] [stdout]     |                                 ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 344 |             CURRENT_TASK = peek(addr_of!(TASK_QUEUE));
[INFO] [stdout]     |                                 ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:350:36
[INFO] [stdout]     |
[INFO] [stdout] 350 |             let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 350 |             let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:378:21
[INFO] [stdout]     |
[INFO] [stdout] 378 |             if peek(&mut TASK_QUEUE).is_some() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 378 |             if peek(addr_of_mut!(TASK_QUEUE)).is_some() {
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:382:40
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:408:25
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in addr_of_mut!(TASK_QUEUE) {
[INFO] [stdout]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:414:25
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in addr_of_mut!(TIMER_QUEUE) {
[INFO] [stdout]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:442:18
[INFO] [stdout]     |
[INFO] [stdout] 442 |             push(&mut TIMER_QUEUE, new_task.clone());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 442 |             push(addr_of_mut!(TIMER_QUEUE), new_task.clone());
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:444:21
[INFO] [stdout]     |
[INFO] [stdout] 444 |             if peek(&mut TASK_QUEUE).is_none() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 444 |             if peek(addr_of_mut!(TASK_QUEUE)).is_none() {
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:445:42
[INFO] [stdout]     |
[INFO] [stdout] 445 |                 if let Some(task) = peek(&mut TIMER_QUEUE) {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 445 |                 if let Some(task) = peek(addr_of_mut!(TIMER_QUEUE)) {
[INFO] [stdout]     |                                          ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:458:18
[INFO] [stdout]     |
[INFO] [stdout] 458 |             push(&mut TASK_QUEUE, new_task);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 458 |             push(addr_of_mut!(TASK_QUEUE), new_task);
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let mut sort_index_ordering;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:306:17
[INFO] [stdout]     |
[INFO] [stdout] 306 |             let mut t = current_task.unwrap();
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:408:13
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:414:13
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `MESSAGE_CHANNEL` is never used
[INFO] [stdout]   --> packages/scheduler/src/lib.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | static mut MESSAGE_CHANNEL: Option<MessageChannel> = None;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_empty` is never used
[INFO] [stdout]   --> packages/scheduler/src/heap.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn is_empty<T: Ord>(heap: &Vec<T>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 30 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling gloo v0.11.0
[INFO] [stderr]    Compiling react v0.1.0 (/opt/rustwide/workdir/packages/react)
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> packages/react/src/lib.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let _ = use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling react-reconciler v0.1.0 (/opt/rustwide/workdir/packages/react-reconciler)
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 |             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stdout]    |                ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 46 -             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stdout] 46 +             if update_queue.borrow().last_effect.is_none() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]   --> packages/react-reconciler/src/complete_work.rs:90:20
[INFO] [stdout]    |
[INFO] [stdout] 90 |             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stdout]    |                    ^^                                              ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 90 -             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stdout] 90 +             node = node.clone().unwrap().borrow().sibling.clone();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:51:39
[INFO] [stdout]    |
[INFO] [stdout] 51 |         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stdout]    |                                       ^^                             ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 51 -         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stdout] 51 +         update_rc.borrow_mut().next = pending.borrow().next.clone();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:185:35
[INFO] [stdout]     |
[INFO] [stdout] 185 |         next_current_hook = match &CURRENT_HOOK {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 185 |         next_current_hook = match addr_of!(CURRENT_HOOK) {
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:206:44
[INFO] [stdout]     |
[INFO] [stdout] 206 |         next_work_in_progress_hook = match &WORK_IN_PROGRESS_HOOK {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 206 |         next_work_in_progress_hook = match addr_of!(WORK_IN_PROGRESS_HOOK) {
[INFO] [stdout]     |                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HostConfig`
[INFO] [stdout]   --> packages/react-reconciler/src/work_loop.rs:12:54
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::{COMMIT_WORK, COMPLETE_WORK, HOST_CONFIG, HostConfig};
[INFO] [stdout]    |                                                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/child_fiber.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let mut del = &mut return_fiber.borrow_mut().deletions;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:72:17
[INFO] [stdout]    |
[INFO] [stdout] 72 |             let mut effect_rc = effect.clone().unwrap();
[INFO] [stdout]    |                 ----^^^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]    --> packages/react-reconciler/src/fiber.rs:303:39
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...                   node: next,
[INFO] [stdout]     |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_current_hook` is never read
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:181:13
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let mut next_current_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_work_in_progress_hook` is never read
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut next_work_in_progress_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:339:5
[INFO] [stdout]     |
[INFO] [stdout] 339 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:356:9
[INFO] [stdout]     |
[INFO] [stdout] 356 |     let mut effect = Rc::new(RefCell::new(Effect::new(
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:43:63
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn enqueue_update(update_queue: Rc<RefCell<UpdateQueue>>, mut update: Update) {
[INFO] [stdout]    |                                                               ----^^^^^^
[INFO] [stdout]    |                                                               |
[INFO] [stdout]    |                                                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpdateAction` is never constructed
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct UpdateAction;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UpdateAction` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 | /                 destroy
[INFO] [stdout] 90 | |                     .dyn_ref::<Function>()
[INFO] [stdout] 91 | |                     .unwrap()
[INFO] [stdout] 92 | |                     .call0(&JsValue::null());
[INFO] [stdout]    | |____________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |                 let _ = destroy
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> packages/react-reconciler/src/commit_work.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 | /                 destroy
[INFO] [stdout] 103 | |                     .dyn_ref::<Function>()
[INFO] [stdout] 104 | |                     .unwrap()
[INFO] [stdout] 105 | |                     .call0(&JsValue::null());
[INFO] [stdout]     | |____________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 let _ = destroy
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling react-dom v0.1.0 (/opt/rustwide/workdir/packages/react-dom)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> packages/react-reconciler/src/main.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut a = Lane::NoLane | Lane::SyncLane;
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_highest_priority` is never used
[INFO] [stdout]   --> packages/react-reconciler/src/fiber_lanes.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn get_highest_priority(lanes: Lane) -> Lane {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_lanes` is never used
[INFO] [stdout]   --> packages/react-reconciler/src/fiber_lanes.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn merge_lanes(lane_a: Lane, lane_b: Lane) -> Lane {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `request_update_lane` is never used
[INFO] [stdout]   --> packages/react-reconciler/src/fiber_lanes.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn request_update_lane() -> Lane {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.68s
[INFO] running `Command { std: "docker" "inspect" "239504e334cad69a442c06d0e7acb09be34e81b2e148a95dcbd9546612f3a2fe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "239504e334cad69a442c06d0e7acb09be34e81b2e148a95dcbd9546612f3a2fe", kill_on_drop: false }`
[INFO] [stdout] 239504e334cad69a442c06d0e7acb09be34e81b2e148a95dcbd9546612f3a2fe
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1dab157a7c2df9f139fe532cebe4038a00edfcbfc56c2e21d5156af8504b4423
[INFO] running `Command { std: "docker" "start" "-a" "1dab157a7c2df9f139fe532cebe4038a00edfcbfc56c2e21d5156af8504b4423", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react-dom/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react-reconciler/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]    Compiling scoped-tls v1.0.1
[INFO] [stderr]    Compiling wasm-bindgen-test-macro v0.3.42
[INFO] [stderr]    Compiling shared v0.1.0 (/opt/rustwide/workdir/packages/shared)
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> packages/react/src/lib.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let _ = use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]  --> packages/scheduler/src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::any::Any;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:111:35
[INFO] [stdout]     |
[INFO] [stdout] 111 |             sort_index_ordering = (Ordering::Greater)
[INFO] [stdout]     |                                   ^                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 111 -             sort_index_ordering = (Ordering::Greater)
[INFO] [stdout] 111 +             sort_index_ordering = Ordering::Greater
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:246:34
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let mut timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let mut timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:250:21
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:252:29
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:254:22
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 push(&mut TASK_QUEUE, task.clone());
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 push(addr_of_mut!(TASK_QUEUE), task.clone());
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:258:30
[INFO] [stdout]     |
[INFO] [stdout] 258 |             timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 258 |             timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                              ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:302:41
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 |         CURRENT_TASK = peek(&mut TASK_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 304 |         CURRENT_TASK = peek(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:328:35
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     if match peek(&TASK_QUEUE) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     if match peek(addr_of!(TASK_QUEUE)) {
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:334:29
[INFO] [stdout]     |
[INFO] [stdout] 334 |                         pop(&mut TASK_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 334 |                         pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:340:21
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 pop(&mut TASK_QUEUE);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:343:37
[INFO] [stdout]     |
[INFO] [stdout] 343 |             current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 343 |             current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:344:33
[INFO] [stdout]     |
[INFO] [stdout] 344 |             CURRENT_TASK = peek(&TASK_QUEUE);
[INFO] [stdout]     |                                 ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 344 |             CURRENT_TASK = peek(addr_of!(TASK_QUEUE));
[INFO] [stdout]     |                                 ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:350:36
[INFO] [stdout]     |
[INFO] [stdout] 350 |             let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 350 |             let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:378:21
[INFO] [stdout]     |
[INFO] [stdout] 378 |             if peek(&mut TASK_QUEUE).is_some() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 378 |             if peek(addr_of_mut!(TASK_QUEUE)).is_some() {
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:382:40
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:408:25
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in addr_of_mut!(TASK_QUEUE) {
[INFO] [stdout]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:414:25
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in addr_of_mut!(TIMER_QUEUE) {
[INFO] [stdout]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:442:18
[INFO] [stdout]     |
[INFO] [stdout] 442 |             push(&mut TIMER_QUEUE, new_task.clone());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 442 |             push(addr_of_mut!(TIMER_QUEUE), new_task.clone());
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:444:21
[INFO] [stdout]     |
[INFO] [stdout] 444 |             if peek(&mut TASK_QUEUE).is_none() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 444 |             if peek(addr_of_mut!(TASK_QUEUE)).is_none() {
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:445:42
[INFO] [stdout]     |
[INFO] [stdout] 445 |                 if let Some(task) = peek(&mut TIMER_QUEUE) {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 445 |                 if let Some(task) = peek(addr_of_mut!(TIMER_QUEUE)) {
[INFO] [stdout]     |                                          ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:458:18
[INFO] [stdout]     |
[INFO] [stdout] 458 |             push(&mut TASK_QUEUE, new_task);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 458 |             push(addr_of_mut!(TASK_QUEUE), new_task);
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let mut sort_index_ordering;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:306:17
[INFO] [stdout]     |
[INFO] [stdout] 306 |             let mut t = current_task.unwrap();
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:408:13
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:414:13
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `MESSAGE_CHANNEL` is never used
[INFO] [stdout]   --> packages/scheduler/src/lib.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | static mut MESSAGE_CHANNEL: Option<MessageChannel> = None;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_empty` is never used
[INFO] [stdout]   --> packages/scheduler/src/heap.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn is_empty<T: Ord>(heap: &Vec<T>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 30 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling scheduler v0.1.0 (/opt/rustwide/workdir/packages/scheduler)
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 |             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stdout]    |                ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 46 -             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stdout] 46 +             if update_queue.borrow().last_effect.is_none() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]   --> packages/react-reconciler/src/complete_work.rs:90:20
[INFO] [stdout]    |
[INFO] [stdout] 90 |             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stdout]    |                    ^^                                              ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 90 -             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stdout] 90 +             node = node.clone().unwrap().borrow().sibling.clone();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:51:39
[INFO] [stdout]    |
[INFO] [stdout] 51 |         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stdout]    |                                       ^^                             ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 51 -         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stdout] 51 +         update_rc.borrow_mut().next = pending.borrow().next.clone();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:185:35
[INFO] [stdout]     |
[INFO] [stdout] 185 |         next_current_hook = match &CURRENT_HOOK {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 185 |         next_current_hook = match addr_of!(CURRENT_HOOK) {
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:206:44
[INFO] [stdout]     |
[INFO] [stdout] 206 |         next_work_in_progress_hook = match &WORK_IN_PROGRESS_HOOK {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 206 |         next_work_in_progress_hook = match addr_of!(WORK_IN_PROGRESS_HOOK) {
[INFO] [stdout]     |                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HostConfig`
[INFO] [stdout]   --> packages/react-reconciler/src/work_loop.rs:12:54
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::{COMMIT_WORK, COMPLETE_WORK, HOST_CONFIG, HostConfig};
[INFO] [stdout]    |                                                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/child_fiber.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let mut del = &mut return_fiber.borrow_mut().deletions;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:72:17
[INFO] [stdout]    |
[INFO] [stdout] 72 |             let mut effect_rc = effect.clone().unwrap();
[INFO] [stdout]    |                 ----^^^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]    --> packages/react-reconciler/src/fiber.rs:303:39
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...                   node: next,
[INFO] [stdout]     |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_current_hook` is never read
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:181:13
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let mut next_current_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_work_in_progress_hook` is never read
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut next_work_in_progress_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:339:5
[INFO] [stdout]     |
[INFO] [stdout] 339 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:356:9
[INFO] [stdout]     |
[INFO] [stdout] 356 |     let mut effect = Rc::new(RefCell::new(Effect::new(
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:43:63
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn enqueue_update(update_queue: Rc<RefCell<UpdateQueue>>, mut update: Update) {
[INFO] [stdout]    |                                                               ----^^^^^^
[INFO] [stdout]    |                                                               |
[INFO] [stdout]    |                                                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpdateAction` is never constructed
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct UpdateAction;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UpdateAction` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 | /                 destroy
[INFO] [stdout] 90 | |                     .dyn_ref::<Function>()
[INFO] [stdout] 91 | |                     .unwrap()
[INFO] [stdout] 92 | |                     .call0(&JsValue::null());
[INFO] [stdout]    | |____________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |                 let _ = destroy
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> packages/react-reconciler/src/commit_work.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 | /                 destroy
[INFO] [stdout] 103 | |                     .dyn_ref::<Function>()
[INFO] [stdout] 104 | |                     .unwrap()
[INFO] [stdout] 105 | |                     .call0(&JsValue::null());
[INFO] [stdout]     | |____________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 let _ = destroy
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]  --> packages/scheduler/src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::any::Any;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> packages/scheduler/src/heap.rs:124:39
[INFO] [stdout]     |
[INFO] [stdout] 124 |                 sort_index_ordering = (Ordering::Greater)
[INFO] [stdout]     |                                       ^                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 124 -                 sort_index_ordering = (Ordering::Greater)
[INFO] [stdout] 124 +                 sort_index_ordering = Ordering::Greater
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:111:35
[INFO] [stdout]     |
[INFO] [stdout] 111 |             sort_index_ordering = (Ordering::Greater)
[INFO] [stdout]     |                                   ^                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 111 -             sort_index_ordering = (Ordering::Greater)
[INFO] [stdout] 111 +             sort_index_ordering = Ordering::Greater
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:246:34
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let mut timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let mut timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:250:21
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:252:29
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:254:22
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 push(&mut TASK_QUEUE, task.clone());
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 push(addr_of_mut!(TASK_QUEUE), task.clone());
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:258:30
[INFO] [stdout]     |
[INFO] [stdout] 258 |             timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 258 |             timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                              ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:302:41
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 |         CURRENT_TASK = peek(&mut TASK_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 304 |         CURRENT_TASK = peek(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:328:35
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     if match peek(&TASK_QUEUE) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     if match peek(addr_of!(TASK_QUEUE)) {
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:334:29
[INFO] [stdout]     |
[INFO] [stdout] 334 |                         pop(&mut TASK_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 334 |                         pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:340:21
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 pop(&mut TASK_QUEUE);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:343:37
[INFO] [stdout]     |
[INFO] [stdout] 343 |             current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 343 |             current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:344:33
[INFO] [stdout]     |
[INFO] [stdout] 344 |             CURRENT_TASK = peek(&TASK_QUEUE);
[INFO] [stdout]     |                                 ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 344 |             CURRENT_TASK = peek(addr_of!(TASK_QUEUE));
[INFO] [stdout]     |                                 ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:350:36
[INFO] [stdout]     |
[INFO] [stdout] 350 |             let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 350 |             let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:378:21
[INFO] [stdout]     |
[INFO] [stdout] 378 |             if peek(&mut TASK_QUEUE).is_some() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 378 |             if peek(addr_of_mut!(TASK_QUEUE)).is_some() {
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:382:40
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:408:25
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in addr_of_mut!(TASK_QUEUE) {
[INFO] [stdout]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:414:25
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in addr_of_mut!(TIMER_QUEUE) {
[INFO] [stdout]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:442:18
[INFO] [stdout]     |
[INFO] [stdout] 442 |             push(&mut TIMER_QUEUE, new_task.clone());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 442 |             push(addr_of_mut!(TIMER_QUEUE), new_task.clone());
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:444:21
[INFO] [stdout]     |
[INFO] [stdout] 444 |             if peek(&mut TASK_QUEUE).is_none() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 444 |             if peek(addr_of_mut!(TASK_QUEUE)).is_none() {
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:445:42
[INFO] [stdout]     |
[INFO] [stdout] 445 |                 if let Some(task) = peek(&mut TIMER_QUEUE) {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 445 |                 if let Some(task) = peek(addr_of_mut!(TIMER_QUEUE)) {
[INFO] [stdout]     |                                          ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:458:18
[INFO] [stdout]     |
[INFO] [stdout] 458 |             push(&mut TASK_QUEUE, new_task);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 458 |             push(addr_of_mut!(TASK_QUEUE), new_task);
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/heap.rs:115:17
[INFO] [stdout]     |
[INFO] [stdout] 115 |             let mut sort_index_ordering;
[INFO] [stdout]     |                 ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let mut sort_index_ordering;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:306:17
[INFO] [stdout]     |
[INFO] [stdout] 306 |             let mut t = current_task.unwrap();
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:408:13
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:414:13
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `MESSAGE_CHANNEL` is never used
[INFO] [stdout]   --> packages/scheduler/src/lib.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | static mut MESSAGE_CHANNEL: Option<MessageChannel> = None;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_empty` is never used
[INFO] [stdout]   --> packages/scheduler/src/heap.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn is_empty<T: Ord>(heap: &Vec<T>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wasm-bindgen-test v0.3.42
[INFO] [stderr]    Compiling react-dom v0.1.0 (/opt/rustwide/workdir/packages/react-dom)
[INFO] [stderr]    Compiling react-reconciler v0.1.0 (/opt/rustwide/workdir/packages/react-reconciler)
[INFO] [stderr]    Compiling react v0.1.0 (/opt/rustwide/workdir/packages/react)
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 |             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stdout]    |                ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 46 -             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stdout] 46 +             if update_queue.borrow().last_effect.is_none() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]   --> packages/react-reconciler/src/complete_work.rs:90:20
[INFO] [stdout]    |
[INFO] [stdout] 90 |             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stdout]    |                    ^^                                              ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 90 -             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stdout] 90 +             node = node.clone().unwrap().borrow().sibling.clone();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:51:39
[INFO] [stdout]    |
[INFO] [stdout] 51 |         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stdout]    |                                       ^^                             ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 51 -         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stdout] 51 +         update_rc.borrow_mut().next = pending.borrow().next.clone();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> packages/react-reconciler/src/main.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut a = Lane::NoLane | Lane::SyncLane;
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> packages/react/src/lib.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let _ = use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_highest_priority` is never used
[INFO] [stdout]   --> packages/react-reconciler/src/fiber_lanes.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn get_highest_priority(lanes: Lane) -> Lane {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_lanes` is never used
[INFO] [stdout]   --> packages/react-reconciler/src/fiber_lanes.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn merge_lanes(lane_a: Lane, lane_b: Lane) -> Lane {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `request_update_lane` is never used
[INFO] [stdout]   --> packages/react-reconciler/src/fiber_lanes.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn request_update_lane() -> Lane {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:185:35
[INFO] [stdout]     |
[INFO] [stdout] 185 |         next_current_hook = match &CURRENT_HOOK {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 185 |         next_current_hook = match addr_of!(CURRENT_HOOK) {
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:206:44
[INFO] [stdout]     |
[INFO] [stdout] 206 |         next_work_in_progress_hook = match &WORK_IN_PROGRESS_HOOK {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 206 |         next_work_in_progress_hook = match addr_of!(WORK_IN_PROGRESS_HOOK) {
[INFO] [stdout]     |                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HostConfig`
[INFO] [stdout]   --> packages/react-reconciler/src/work_loop.rs:12:54
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::{COMMIT_WORK, COMPLETE_WORK, HOST_CONFIG, HostConfig};
[INFO] [stdout]    |                                                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/child_fiber.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let mut del = &mut return_fiber.borrow_mut().deletions;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:72:17
[INFO] [stdout]    |
[INFO] [stdout] 72 |             let mut effect_rc = effect.clone().unwrap();
[INFO] [stdout]    |                 ----^^^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]    --> packages/react-reconciler/src/fiber.rs:303:39
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...                   node: next,
[INFO] [stdout]     |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_current_hook` is never read
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:181:13
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let mut next_current_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_work_in_progress_hook` is never read
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut next_work_in_progress_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:339:5
[INFO] [stdout]     |
[INFO] [stdout] 339 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:356:9
[INFO] [stdout]     |
[INFO] [stdout] 356 |     let mut effect = Rc::new(RefCell::new(Effect::new(
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:43:63
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn enqueue_update(update_queue: Rc<RefCell<UpdateQueue>>, mut update: Update) {
[INFO] [stdout]    |                                                               ----^^^^^^
[INFO] [stdout]    |                                                               |
[INFO] [stdout]    |                                                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpdateAction` is never constructed
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct UpdateAction;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UpdateAction` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 | /                 destroy
[INFO] [stdout] 90 | |                     .dyn_ref::<Function>()
[INFO] [stdout] 91 | |                     .unwrap()
[INFO] [stdout] 92 | |                     .call0(&JsValue::null());
[INFO] [stdout]    | |____________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |                 let _ = destroy
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> packages/react-reconciler/src/commit_work.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 | /                 destroy
[INFO] [stdout] 103 | |                     .dyn_ref::<Function>()
[INFO] [stdout] 104 | |                     .unwrap()
[INFO] [stdout] 105 | |                     .call0(&JsValue::null());
[INFO] [stdout]     | |____________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 let _ = destroy
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.37s
[INFO] running `Command { std: "docker" "inspect" "1dab157a7c2df9f139fe532cebe4038a00edfcbfc56c2e21d5156af8504b4423", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1dab157a7c2df9f139fe532cebe4038a00edfcbfc56c2e21d5156af8504b4423", kill_on_drop: false }`
[INFO] [stdout] 1dab157a7c2df9f139fe532cebe4038a00edfcbfc56c2e21d5156af8504b4423
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c10898f0c91f14f0f7cc3d80f305860e94d4c37ad6d20c60dc301f4e325e9b53
[INFO] running `Command { std: "docker" "start" "-a" "c10898f0c91f14f0f7cc3d80f305860e94d4c37ad6d20c60dc301f4e325e9b53", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react-dom/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react-reconciler/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> packages/react/src/lib.rs:122:5
[INFO] [stderr]     |
[INFO] [stderr] 122 |     use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 122 |     let _ = use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::any::Any`
[INFO] [stderr]  --> packages/scheduler/src/lib.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::any::Any;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:111:35
[INFO] [stderr]     |
[INFO] [stderr] 111 |             sort_index_ordering = (Ordering::Greater)
[INFO] [stderr]     |                                   ^                 ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 111 -             sort_index_ordering = (Ordering::Greater)
[INFO] [stderr] 111 +             sort_index_ordering = Ordering::Greater
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:246:34
[INFO] [stderr]     |
[INFO] [stderr] 246 |         let mut timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 246 |         let mut timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stderr]     |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:250:21
[INFO] [stderr]     |
[INFO] [stderr] 250 |                 pop(&mut TIMER_QUEUE);
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 250 |                 pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stderr]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:252:29
[INFO] [stderr]     |
[INFO] [stderr] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 252 |                 let t = pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stderr]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:254:22
[INFO] [stderr]     |
[INFO] [stderr] 254 |                 push(&mut TASK_QUEUE, task.clone());
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 254 |                 push(addr_of_mut!(TASK_QUEUE), task.clone());
[INFO] [stderr]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:258:30
[INFO] [stderr]     |
[INFO] [stderr] 258 |             timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stderr]     |                              ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 258 |             timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stderr]     |                              ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:302:41
[INFO] [stderr]     |
[INFO] [stderr] 302 |         let mut current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stderr]     |                                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 302 |         let mut current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stderr]     |                                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:304:29
[INFO] [stderr]     |
[INFO] [stderr] 304 |         CURRENT_TASK = peek(&mut TASK_QUEUE);
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 304 |         CURRENT_TASK = peek(addr_of_mut!(TASK_QUEUE));
[INFO] [stderr]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:328:35
[INFO] [stderr]     |
[INFO] [stderr] 328 |                     if match peek(&TASK_QUEUE) {
[INFO] [stderr]     |                                   ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 328 |                     if match peek(addr_of!(TASK_QUEUE)) {
[INFO] [stderr]     |                                   ~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:334:29
[INFO] [stderr]     |
[INFO] [stderr] 334 |                         pop(&mut TASK_QUEUE);
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 334 |                         pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stderr]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:340:21
[INFO] [stderr]     |
[INFO] [stderr] 340 |                 pop(&mut TASK_QUEUE);
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 340 |                 pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stderr]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:343:37
[INFO] [stderr]     |
[INFO] [stderr] 343 |             current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stderr]     |                                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 343 |             current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stderr]     |                                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:344:33
[INFO] [stderr]     |
[INFO] [stderr] 344 |             CURRENT_TASK = peek(&TASK_QUEUE);
[INFO] [stderr]     |                                 ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 344 |             CURRENT_TASK = peek(addr_of!(TASK_QUEUE));
[INFO] [stderr]     |                                 ~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:350:36
[INFO] [stderr]     |
[INFO] [stderr] 350 |             let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 350 |             let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stderr]     |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:378:21
[INFO] [stderr]     |
[INFO] [stderr] 378 |             if peek(&mut TASK_QUEUE).is_some() {
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 378 |             if peek(addr_of_mut!(TASK_QUEUE)).is_some() {
[INFO] [stderr]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:382:40
[INFO] [stderr]     |
[INFO] [stderr] 382 |                 let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 382 |                 let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stderr]     |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:408:25
[INFO] [stderr]     |
[INFO] [stderr] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 408 |         for mut task in addr_of_mut!(TASK_QUEUE) {
[INFO] [stderr]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:414:25
[INFO] [stderr]     |
[INFO] [stderr] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 414 |         for mut task in addr_of_mut!(TIMER_QUEUE) {
[INFO] [stderr]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:442:18
[INFO] [stderr]     |
[INFO] [stderr] 442 |             push(&mut TIMER_QUEUE, new_task.clone());
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 442 |             push(addr_of_mut!(TIMER_QUEUE), new_task.clone());
[INFO] [stderr]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:444:21
[INFO] [stderr]     |
[INFO] [stderr] 444 |             if peek(&mut TASK_QUEUE).is_none() {
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 444 |             if peek(addr_of_mut!(TASK_QUEUE)).is_none() {
[INFO] [stderr]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:445:42
[INFO] [stderr]     |
[INFO] [stderr] 445 |                 if let Some(task) = peek(&mut TIMER_QUEUE) {
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 445 |                 if let Some(task) = peek(addr_of_mut!(TIMER_QUEUE)) {
[INFO] [stderr]     |                                          ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:458:18
[INFO] [stderr]     |
[INFO] [stderr] 458 |             push(&mut TASK_QUEUE, new_task);
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 458 |             push(addr_of_mut!(TASK_QUEUE), new_task);
[INFO] [stderr]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:102:13
[INFO] [stderr]     |
[INFO] [stderr] 102 |         let mut sort_index_ordering;
[INFO] [stderr]     |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `t`
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:252:21
[INFO] [stderr]     |
[INFO] [stderr] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stderr]     |                     ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:306:17
[INFO] [stderr]     |
[INFO] [stderr] 306 |             let mut t = current_task.unwrap();
[INFO] [stderr]     |                 ----^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:408:13
[INFO] [stderr]     |
[INFO] [stderr] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stderr]     |             ----^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:414:13
[INFO] [stderr]     |
[INFO] [stderr] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stderr]     |             ----^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: static `MESSAGE_CHANNEL` is never used
[INFO] [stderr]   --> packages/scheduler/src/lib.rs:22:12
[INFO] [stderr]    |
[INFO] [stderr] 22 | static mut MESSAGE_CHANNEL: Option<MessageChannel> = None;
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_empty` is never used
[INFO] [stderr]   --> packages/scheduler/src/heap.rs:64:8
[INFO] [stderr]    |
[INFO] [stderr] 64 | pub fn is_empty<T: Ord>(heap: &Vec<T>) -> bool {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> packages/scheduler/src/heap.rs:124:39
[INFO] [stderr]     |
[INFO] [stderr] 124 |                 sort_index_ordering = (Ordering::Greater)
[INFO] [stderr]     |                                       ^                 ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 124 -                 sort_index_ordering = (Ordering::Greater)
[INFO] [stderr] 124 +                 sort_index_ordering = Ordering::Greater
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:111:35
[INFO] [stderr]     |
[INFO] [stderr] 111 |             sort_index_ordering = (Ordering::Greater)
[INFO] [stderr]     |                                   ^                 ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 111 -             sort_index_ordering = (Ordering::Greater)
[INFO] [stderr] 111 +             sort_index_ordering = Ordering::Greater
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/scheduler/src/heap.rs:115:17
[INFO] [stderr]     |
[INFO] [stderr] 115 |             let mut sort_index_ordering;
[INFO] [stderr]     |                 ----^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:102:13
[INFO] [stderr]     |
[INFO] [stderr] 102 |         let mut sort_index_ordering;
[INFO] [stderr]     |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: `react` (lib) generated 1 warning
[INFO] [stderr] warning: `scheduler` (lib) generated 30 warnings (run `cargo fix --lib -p scheduler` to apply 6 suggestions)
[INFO] [stderr] warning: `scheduler` (lib test) generated 32 warnings (28 duplicates) (run `cargo fix --lib -p scheduler --tests` to apply 4 suggestions)
[INFO] [stderr] warning: `react` (lib test) generated 1 warning (1 duplicate)
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> packages/react-reconciler/src/commit_work.rs:46:16
[INFO] [stderr]    |
[INFO] [stderr] 46 |             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stderr]    |                ^                                           ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 46 -             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stderr] 46 +             if update_queue.borrow().last_effect.is_none() {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]   --> packages/react-reconciler/src/complete_work.rs:90:20
[INFO] [stderr]    |
[INFO] [stderr] 90 |             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stderr]    |                    ^^                                              ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 90 -             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stderr] 90 +             node = node.clone().unwrap().borrow().sibling.clone();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]   --> packages/react-reconciler/src/update_queue.rs:51:39
[INFO] [stderr]    |
[INFO] [stderr] 51 |         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stderr]    |                                       ^^                             ^^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 51 -         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stderr] 51 +         update_rc.borrow_mut().next = pending.borrow().next.clone();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static is discouraged
[INFO] [stderr]    --> packages/react-reconciler/src/fiber_hooks.rs:185:35
[INFO] [stderr]     |
[INFO] [stderr] 185 |         next_current_hook = match &CURRENT_HOOK {
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stderr]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stderr] help: use `addr_of!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 185 |         next_current_hook = match addr_of!(CURRENT_HOOK) {
[INFO] [stderr]     |                                   ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static is discouraged
[INFO] [stderr]    --> packages/react-reconciler/src/fiber_hooks.rs:206:44
[INFO] [stderr]     |
[INFO] [stderr] 206 |         next_work_in_progress_hook = match &WORK_IN_PROGRESS_HOOK {
[INFO] [stderr]     |                                            ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 206 |         next_work_in_progress_hook = match addr_of!(WORK_IN_PROGRESS_HOOK) {
[INFO] [stderr]     |                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HostConfig`
[INFO] [stderr]   --> packages/react-reconciler/src/work_loop.rs:12:54
[INFO] [stderr]    |
[INFO] [stderr] 12 | use crate::{COMMIT_WORK, COMPLETE_WORK, HOST_CONFIG, HostConfig};
[INFO] [stderr]    |                                                      ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> packages/react-reconciler/src/child_fiber.rs:52:13
[INFO] [stderr]    |
[INFO] [stderr] 52 |         let mut del = &mut return_fiber.borrow_mut().deletions;
[INFO] [stderr]    |             ----^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> packages/react-reconciler/src/commit_work.rs:72:17
[INFO] [stderr]    |
[INFO] [stderr] 72 |             let mut effect_rc = effect.clone().unwrap();
[INFO] [stderr]    |                 ----^^^^^^^^^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `next`
[INFO] [stderr]    --> packages/react-reconciler/src/fiber.rs:303:39
[INFO] [stderr]     |
[INFO] [stderr] 303 | ...                   node: next,
[INFO] [stderr]     |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `next_current_hook` is never read
[INFO] [stderr]    --> packages/react-reconciler/src/fiber_hooks.rs:181:13
[INFO] [stderr]     |
[INFO] [stderr] 181 |     let mut next_current_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `next_work_in_progress_hook` is never read
[INFO] [stderr]    --> packages/react-reconciler/src/fiber_hooks.rs:182:13
[INFO] [stderr]     |
[INFO] [stderr] 182 |     let mut next_work_in_progress_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> packages/react-reconciler/src/fiber_hooks.rs:339:5
[INFO] [stderr]     |
[INFO] [stderr] 339 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/react-reconciler/src/fiber_hooks.rs:356:9
[INFO] [stderr]     |
[INFO] [stderr] 356 |     let mut effect = Rc::new(RefCell::new(Effect::new(
[INFO] [stderr]     |         ----^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> packages/react-reconciler/src/update_queue.rs:43:63
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub fn enqueue_update(update_queue: Rc<RefCell<UpdateQueue>>, mut update: Update) {
[INFO] [stderr]    |                                                               ----^^^^^^
[INFO] [stderr]    |                                                               |
[INFO] [stderr]    |                                                               help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: struct `UpdateAction` is never constructed
[INFO] [stderr]   --> packages/react-reconciler/src/update_queue.rs:14:12
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub struct UpdateAction;
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `UpdateAction` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> packages/react-reconciler/src/commit_work.rs:89:17
[INFO] [stderr]    |
[INFO] [stderr] 89 | /                 destroy
[INFO] [stderr] 90 | |                     .dyn_ref::<Function>()
[INFO] [stderr] 91 | |                     .unwrap()
[INFO] [stderr] 92 | |                     .call0(&JsValue::null());
[INFO] [stderr]    | |____________________________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 89 |                 let _ = destroy
[INFO] [stderr]    |                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> packages/react-reconciler/src/commit_work.rs:102:17
[INFO] [stderr]     |
[INFO] [stderr] 102 | /                 destroy
[INFO] [stderr] 103 | |                     .dyn_ref::<Function>()
[INFO] [stderr] 104 | |                     .unwrap()
[INFO] [stderr] 105 | |                     .call0(&JsValue::null());
[INFO] [stderr]     | |____________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 102 |                 let _ = destroy
[INFO] [stderr]     |                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `react-reconciler` (lib) generated 17 warnings (run `cargo fix --lib -p react-reconciler` to apply 7 suggestions)
[INFO] [stderr] warning: `react-reconciler` (lib test) generated 17 warnings (17 duplicates)
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]  --> packages/react-reconciler/src/main.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let mut a = Lane::NoLane | Lane::SyncLane;
[INFO] [stderr]   |         ----^
[INFO] [stderr]   |         |
[INFO] [stderr]   |         help: remove this `mut`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_highest_priority` is never used
[INFO] [stderr]   --> packages/react-reconciler/src/fiber_lanes.rs:12:8
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub fn get_highest_priority(lanes: Lane) -> Lane {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `merge_lanes` is never used
[INFO] [stderr]   --> packages/react-reconciler/src/fiber_lanes.rs:18:8
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub fn merge_lanes(lane_a: Lane, lane_b: Lane) -> Lane {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `request_update_lane` is never used
[INFO] [stderr]   --> packages/react-reconciler/src/fiber_lanes.rs:22:8
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub fn request_update_lane() -> Lane {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `react-reconciler` (bin "react-reconciler" test) generated 4 warnings (run `cargo fix --bin "react-reconciler" --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/react-daee8ba834f6642b)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/web.rs (/opt/rustwide/target/debug/deps/web-aafc801ac7c256a3)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/react_dom-3790cf01debce635)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/web.rs (/opt/rustwide/target/debug/deps/web-cda46d4cd9a34555)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/react_reconciler-ad52fdfe6b0d65d4)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/react_reconciler-58e9f660c7249357)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/scheduler-2eb3b044c5a9dc23)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test heap::tests::test_min_heap ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/web.rs (/opt/rustwide/target/debug/deps/web-e582d4e2f99b7469)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/shared-2c11055ee10554c5)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests react
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests react_dom
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests react_reconciler
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> packages/react-reconciler/src/commit_work.rs:46:16
[INFO] [stderr]    |
[INFO] [stderr] 46 |             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stderr]    |                ^                                           ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 46 -             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stderr] 46 +             if update_queue.borrow().last_effect.is_none() {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]   --> packages/react-reconciler/src/complete_work.rs:90:20
[INFO] [stderr]    |
[INFO] [stderr] 90 |             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stderr]    |                    ^^                                              ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 90 -             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stderr] 90 +             node = node.clone().unwrap().borrow().sibling.clone();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]   --> packages/react-reconciler/src/update_queue.rs:51:39
[INFO] [stderr]    |
[INFO] [stderr] 51 |         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stderr]    |                                       ^^                             ^^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 51 -         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stderr] 51 +         update_rc.borrow_mut().next = pending.borrow().next.clone();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: 3 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests scheduler
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:111:35
[INFO] [stderr]     |
[INFO] [stderr] 111 |             sort_index_ordering = (Ordering::Greater)
[INFO] [stderr]     |                                   ^                 ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 111 -             sort_index_ordering = (Ordering::Greater)
[INFO] [stderr] 111 +             sort_index_ordering = Ordering::Greater
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test packages/scheduler/src/lib.rs - advance_timers (line 231) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- packages/scheduler/src/lib.rs - advance_timers (line 231) stdout ----
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]   --> packages/scheduler/src/lib.rs:241:55
[INFO] [stdout]    |
[INFO] [stdout] 2  | fn main() { #[allow(non_snake_case)] fn _doctest_main_packages_scheduler_src_lib_rs_231_0() {
[INFO] [stdout]    |           - this opening brace...
[INFO] [stdout] ...
[INFO] [stdout] 12 | } _doctest_main_packages_scheduler_src_lib_rs_231_0() }
[INFO] [stdout]    | - ...matches this closing brace                       ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     packages/scheduler/src/lib.rs - advance_timers (line 231)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `-p scheduler --doc`
[INFO] running `Command { std: "docker" "inspect" "c10898f0c91f14f0f7cc3d80f305860e94d4c37ad6d20c60dc301f4e325e9b53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c10898f0c91f14f0f7cc3d80f305860e94d4c37ad6d20c60dc301f4e325e9b53", kill_on_drop: false }`
[INFO] [stdout] c10898f0c91f14f0f7cc3d80f305860e94d4c37ad6d20c60dc301f4e325e9b53
[INFO] testing ParadeTo/big-react-wasm against try#b642703cf9526da1e72c0b6755753b939a9c6b6d for pr-125151
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FParadeTo%2Fbig-react-wasm" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/ParadeTo/big-react-wasm on toolchain b642703cf9526da1e72c0b6755753b939a9c6b6d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/ParadeTo/big-react-wasm
[INFO] finished tweaking git repo https://github.com/ParadeTo/big-react-wasm
[INFO] tweaked toml for git repo https://github.com/ParadeTo/big-react-wasm written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/ParadeTo/big-react-wasm 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" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-1-tc2/source/packages/react/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-1-tc2/source/packages/react-dom/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /workspace/builds/worker-1-tc2/source/packages/react-reconciler/Cargo.toml
[INFO] [stderr] workspace: /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ea1acb6558e09e240c8ba106b6c688805ad1b456aeedbfc1b7526429357088b2
[INFO] running `Command { std: "docker" "start" "-a" "ea1acb6558e09e240c8ba106b6c688805ad1b456aeedbfc1b7526429357088b2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ea1acb6558e09e240c8ba106b6c688805ad1b456aeedbfc1b7526429357088b2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ea1acb6558e09e240c8ba106b6c688805ad1b456aeedbfc1b7526429357088b2", kill_on_drop: false }`
[INFO] [stdout] ea1acb6558e09e240c8ba106b6c688805ad1b456aeedbfc1b7526429357088b2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 14a35a702fc9db59b28166bf7e7b342b7fa0165dfaa8262bdccb97ddd8a37995
[INFO] running `Command { std: "docker" "start" "-a" "14a35a702fc9db59b28166bf7e7b342b7fa0165dfaa8262bdccb97ddd8a37995", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react-dom/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react-reconciler/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]    Compiling proc-macro2 v1.0.79
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.92
[INFO] [stderr]    Compiling bumpalo v3.15.4
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling wasm-bindgen v0.2.92
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling serde v1.0.199
[INFO] [stderr]    Compiling itoa v1.0.11
[INFO] [stderr]    Compiling serde_json v1.0.116
[INFO] [stderr]    Compiling ryu v1.0.17
[INFO] [stderr]    Compiling thiserror v1.0.59
[INFO] [stderr]    Compiling autocfg v1.2.0
[INFO] [stderr]    Compiling futures-core v0.3.30
[INFO] [stderr]    Compiling futures-sink v0.3.30
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling futures-channel v0.3.30
[INFO] [stderr]    Compiling futures-io v0.3.30
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling rustversion v1.0.15
[INFO] [stderr]    Compiling toml_datetime v0.6.5
[INFO] [stderr]    Compiling futures-task v0.3.30
[INFO] [stderr]    Compiling memchr v2.7.2
[INFO] [stderr]    Compiling pin-project-lite v0.2.14
[INFO] [stderr]    Compiling winnow v0.5.40
[INFO] [stderr]    Compiling percent-encoding v2.3.1
[INFO] [stderr]    Compiling bytes v1.6.0
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling bitflags v2.5.0
[INFO] [stderr]    Compiling form_urlencoded v1.2.1
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling indexmap v2.2.6
[INFO] [stderr]    Compiling http v0.2.12
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling syn v2.0.53
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.92
[INFO] [stderr]    Compiling serde_derive v1.0.199
[INFO] [stderr]    Compiling thiserror-impl v1.0.59
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]    Compiling gloo-worker-macros v0.1.0
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.92
[INFO] [stderr]    Compiling futures-util v0.3.30
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.92
[INFO] [stderr]    Compiling pin-project v1.1.5
[INFO] [stderr]    Compiling js-sys v0.3.69
[INFO] [stderr]    Compiling console_error_panic_hook v0.1.7
[INFO] [stderr]    Compiling futures v0.3.30
[INFO] [stderr]    Compiling pinned v0.1.0
[INFO] [stderr]    Compiling web-sys v0.3.69
[INFO] [stderr]    Compiling wasm-bindgen-futures v0.4.42
[INFO] [stderr]    Compiling gloo-timers v0.3.0
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling serde-wasm-bindgen v0.6.5
[INFO] [stderr]    Compiling gloo-utils v0.2.0
[INFO] [stderr]    Compiling shared v0.1.0 (/opt/rustwide/workdir/packages/shared)
[INFO] [stderr]    Compiling gloo-events v0.2.0
[INFO] [stderr]    Compiling gloo-render v0.2.0
[INFO] [stderr]    Compiling gloo-dialogs v0.2.0
[INFO] [stderr]    Compiling scheduler v0.1.0 (/opt/rustwide/workdir/packages/scheduler)
[INFO] [stderr]    Compiling gloo-console v0.3.0
[INFO] [stderr]    Compiling gloo-net v0.5.0
[INFO] [stderr]    Compiling gloo-worker v0.5.0
[INFO] [stderr]    Compiling gloo-storage v0.3.0
[INFO] [stderr]    Compiling gloo-file v0.3.0
[INFO] [stderr]    Compiling gloo-history v0.2.2
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]  --> packages/scheduler/src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::any::Any;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:111:35
[INFO] [stdout]     |
[INFO] [stdout] 111 |             sort_index_ordering = (Ordering::Greater)
[INFO] [stdout]     |                                   ^                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 111 -             sort_index_ordering = (Ordering::Greater)
[INFO] [stdout] 111 +             sort_index_ordering = Ordering::Greater
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:246:34
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let mut timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let mut timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:250:21
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:252:29
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:254:22
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 push(&mut TASK_QUEUE, task.clone());
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 push(addr_of_mut!(TASK_QUEUE), task.clone());
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:258:30
[INFO] [stdout]     |
[INFO] [stdout] 258 |             timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 258 |             timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                              ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:302:41
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 |         CURRENT_TASK = peek(&mut TASK_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 304 |         CURRENT_TASK = peek(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:328:35
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     if match peek(&TASK_QUEUE) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     if match peek(addr_of!(TASK_QUEUE)) {
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:334:29
[INFO] [stdout]     |
[INFO] [stdout] 334 |                         pop(&mut TASK_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 334 |                         pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:340:21
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 pop(&mut TASK_QUEUE);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:343:37
[INFO] [stdout]     |
[INFO] [stdout] 343 |             current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 343 |             current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:344:33
[INFO] [stdout]     |
[INFO] [stdout] 344 |             CURRENT_TASK = peek(&TASK_QUEUE);
[INFO] [stdout]     |                                 ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 344 |             CURRENT_TASK = peek(addr_of!(TASK_QUEUE));
[INFO] [stdout]     |                                 ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:350:36
[INFO] [stdout]     |
[INFO] [stdout] 350 |             let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 350 |             let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:378:21
[INFO] [stdout]     |
[INFO] [stdout] 378 |             if peek(&mut TASK_QUEUE).is_some() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 378 |             if peek(addr_of_mut!(TASK_QUEUE)).is_some() {
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:382:40
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:408:25
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in addr_of_mut!(TASK_QUEUE) {
[INFO] [stdout]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:414:25
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in addr_of_mut!(TIMER_QUEUE) {
[INFO] [stdout]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:442:18
[INFO] [stdout]     |
[INFO] [stdout] 442 |             push(&mut TIMER_QUEUE, new_task.clone());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 442 |             push(addr_of_mut!(TIMER_QUEUE), new_task.clone());
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:444:21
[INFO] [stdout]     |
[INFO] [stdout] 444 |             if peek(&mut TASK_QUEUE).is_none() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 444 |             if peek(addr_of_mut!(TASK_QUEUE)).is_none() {
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:445:42
[INFO] [stdout]     |
[INFO] [stdout] 445 |                 if let Some(task) = peek(&mut TIMER_QUEUE) {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 445 |                 if let Some(task) = peek(addr_of_mut!(TIMER_QUEUE)) {
[INFO] [stdout]     |                                          ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:458:18
[INFO] [stdout]     |
[INFO] [stdout] 458 |             push(&mut TASK_QUEUE, new_task);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 458 |             push(addr_of_mut!(TASK_QUEUE), new_task);
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let mut sort_index_ordering;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:306:17
[INFO] [stdout]     |
[INFO] [stdout] 306 |             let mut t = current_task.unwrap();
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:408:13
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:414:13
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `MESSAGE_CHANNEL` is never used
[INFO] [stdout]   --> packages/scheduler/src/lib.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | static mut MESSAGE_CHANNEL: Option<MessageChannel> = None;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_empty` is never used
[INFO] [stdout]   --> packages/scheduler/src/heap.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn is_empty<T: Ord>(heap: &Vec<T>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 30 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling gloo v0.11.0
[INFO] [stderr]    Compiling react v0.1.0 (/opt/rustwide/workdir/packages/react)
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> packages/react/src/lib.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let _ = use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling react-reconciler v0.1.0 (/opt/rustwide/workdir/packages/react-reconciler)
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 |             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stdout]    |                ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 46 -             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stdout] 46 +             if update_queue.borrow().last_effect.is_none() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]   --> packages/react-reconciler/src/complete_work.rs:90:20
[INFO] [stdout]    |
[INFO] [stdout] 90 |             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stdout]    |                    ^^                                              ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 90 -             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stdout] 90 +             node = node.clone().unwrap().borrow().sibling.clone();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:51:39
[INFO] [stdout]    |
[INFO] [stdout] 51 |         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stdout]    |                                       ^^                             ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 51 -         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stdout] 51 +         update_rc.borrow_mut().next = pending.borrow().next.clone();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:185:35
[INFO] [stdout]     |
[INFO] [stdout] 185 |         next_current_hook = match &CURRENT_HOOK {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 185 |         next_current_hook = match addr_of!(CURRENT_HOOK) {
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:206:44
[INFO] [stdout]     |
[INFO] [stdout] 206 |         next_work_in_progress_hook = match &WORK_IN_PROGRESS_HOOK {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 206 |         next_work_in_progress_hook = match addr_of!(WORK_IN_PROGRESS_HOOK) {
[INFO] [stdout]     |                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HostConfig`
[INFO] [stdout]   --> packages/react-reconciler/src/work_loop.rs:12:54
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::{COMMIT_WORK, COMPLETE_WORK, HOST_CONFIG, HostConfig};
[INFO] [stdout]    |                                                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/child_fiber.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let mut del = &mut return_fiber.borrow_mut().deletions;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:72:17
[INFO] [stdout]    |
[INFO] [stdout] 72 |             let mut effect_rc = effect.clone().unwrap();
[INFO] [stdout]    |                 ----^^^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]    --> packages/react-reconciler/src/fiber.rs:303:39
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...                   node: next,
[INFO] [stdout]     |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_current_hook` is never read
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:181:13
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let mut next_current_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_work_in_progress_hook` is never read
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut next_work_in_progress_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:339:5
[INFO] [stdout]     |
[INFO] [stdout] 339 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:356:9
[INFO] [stdout]     |
[INFO] [stdout] 356 |     let mut effect = Rc::new(RefCell::new(Effect::new(
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:43:63
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn enqueue_update(update_queue: Rc<RefCell<UpdateQueue>>, mut update: Update) {
[INFO] [stdout]    |                                                               ----^^^^^^
[INFO] [stdout]    |                                                               |
[INFO] [stdout]    |                                                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpdateAction` is never constructed
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct UpdateAction;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UpdateAction` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 | /                 destroy
[INFO] [stdout] 90 | |                     .dyn_ref::<Function>()
[INFO] [stdout] 91 | |                     .unwrap()
[INFO] [stdout] 92 | |                     .call0(&JsValue::null());
[INFO] [stdout]    | |____________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |                 let _ = destroy
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> packages/react-reconciler/src/commit_work.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 | /                 destroy
[INFO] [stdout] 103 | |                     .dyn_ref::<Function>()
[INFO] [stdout] 104 | |                     .unwrap()
[INFO] [stdout] 105 | |                     .call0(&JsValue::null());
[INFO] [stdout]     | |____________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 let _ = destroy
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling react-dom v0.1.0 (/opt/rustwide/workdir/packages/react-dom)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> packages/react-reconciler/src/main.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut a = Lane::NoLane | Lane::SyncLane;
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_highest_priority` is never used
[INFO] [stdout]   --> packages/react-reconciler/src/fiber_lanes.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn get_highest_priority(lanes: Lane) -> Lane {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_lanes` is never used
[INFO] [stdout]   --> packages/react-reconciler/src/fiber_lanes.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn merge_lanes(lane_a: Lane, lane_b: Lane) -> Lane {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `request_update_lane` is never used
[INFO] [stdout]   --> packages/react-reconciler/src/fiber_lanes.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn request_update_lane() -> Lane {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.92s
[INFO] running `Command { std: "docker" "inspect" "14a35a702fc9db59b28166bf7e7b342b7fa0165dfaa8262bdccb97ddd8a37995", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "14a35a702fc9db59b28166bf7e7b342b7fa0165dfaa8262bdccb97ddd8a37995", kill_on_drop: false }`
[INFO] [stdout] 14a35a702fc9db59b28166bf7e7b342b7fa0165dfaa8262bdccb97ddd8a37995
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5dbf54ae40bcd407c9285994f607c3f036971fe5da15d7224b9a1db900b8bfdf
[INFO] running `Command { std: "docker" "start" "-a" "5dbf54ae40bcd407c9285994f607c3f036971fe5da15d7224b9a1db900b8bfdf", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react-dom/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react-reconciler/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]    Compiling scoped-tls v1.0.1
[INFO] [stderr]    Compiling wasm-bindgen-test-macro v0.3.42
[INFO] [stderr]    Compiling shared v0.1.0 (/opt/rustwide/workdir/packages/shared)
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]  --> packages/scheduler/src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::any::Any;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:111:35
[INFO] [stdout]     |
[INFO] [stdout] 111 |             sort_index_ordering = (Ordering::Greater)
[INFO] [stdout]     |                                   ^                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 111 -             sort_index_ordering = (Ordering::Greater)
[INFO] [stdout] 111 +             sort_index_ordering = Ordering::Greater
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:246:34
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let mut timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let mut timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:250:21
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:252:29
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:254:22
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 push(&mut TASK_QUEUE, task.clone());
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 push(addr_of_mut!(TASK_QUEUE), task.clone());
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:258:30
[INFO] [stdout]     |
[INFO] [stdout] 258 |             timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 258 |             timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                              ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:302:41
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 |         CURRENT_TASK = peek(&mut TASK_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 304 |         CURRENT_TASK = peek(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:328:35
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     if match peek(&TASK_QUEUE) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     if match peek(addr_of!(TASK_QUEUE)) {
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:334:29
[INFO] [stdout]     |
[INFO] [stdout] 334 |                         pop(&mut TASK_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 334 |                         pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:340:21
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 pop(&mut TASK_QUEUE);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:343:37
[INFO] [stdout]     |
[INFO] [stdout] 343 |             current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 343 |             current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:344:33
[INFO] [stdout]     |
[INFO] [stdout] 344 |             CURRENT_TASK = peek(&TASK_QUEUE);
[INFO] [stdout]     |                                 ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 344 |             CURRENT_TASK = peek(addr_of!(TASK_QUEUE));
[INFO] [stdout]     |                                 ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:350:36
[INFO] [stdout]     |
[INFO] [stdout] 350 |             let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 350 |             let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:378:21
[INFO] [stdout]     |
[INFO] [stdout] 378 |             if peek(&mut TASK_QUEUE).is_some() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 378 |             if peek(addr_of_mut!(TASK_QUEUE)).is_some() {
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:382:40
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:408:25
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in addr_of_mut!(TASK_QUEUE) {
[INFO] [stdout]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:414:25
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in addr_of_mut!(TIMER_QUEUE) {
[INFO] [stdout]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:442:18
[INFO] [stdout]     |
[INFO] [stdout] 442 |             push(&mut TIMER_QUEUE, new_task.clone());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 442 |             push(addr_of_mut!(TIMER_QUEUE), new_task.clone());
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:444:21
[INFO] [stdout]     |
[INFO] [stdout] 444 |             if peek(&mut TASK_QUEUE).is_none() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 444 |             if peek(addr_of_mut!(TASK_QUEUE)).is_none() {
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:445:42
[INFO] [stdout]     |
[INFO] [stdout] 445 |                 if let Some(task) = peek(&mut TIMER_QUEUE) {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 445 |                 if let Some(task) = peek(addr_of_mut!(TIMER_QUEUE)) {
[INFO] [stdout]     |                                          ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:458:18
[INFO] [stdout]     |
[INFO] [stdout] 458 |             push(&mut TASK_QUEUE, new_task);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 458 |             push(addr_of_mut!(TASK_QUEUE), new_task);
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let mut sort_index_ordering;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:306:17
[INFO] [stdout]     |
[INFO] [stdout] 306 |             let mut t = current_task.unwrap();
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:408:13
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:414:13
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `MESSAGE_CHANNEL` is never used
[INFO] [stdout]   --> packages/scheduler/src/lib.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | static mut MESSAGE_CHANNEL: Option<MessageChannel> = None;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_empty` is never used
[INFO] [stdout]   --> packages/scheduler/src/heap.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn is_empty<T: Ord>(heap: &Vec<T>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 30 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> packages/react/src/lib.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let _ = use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling scheduler v0.1.0 (/opt/rustwide/workdir/packages/scheduler)
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 |             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stdout]    |                ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 46 -             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stdout] 46 +             if update_queue.borrow().last_effect.is_none() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]   --> packages/react-reconciler/src/complete_work.rs:90:20
[INFO] [stdout]    |
[INFO] [stdout] 90 |             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stdout]    |                    ^^                                              ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 90 -             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stdout] 90 +             node = node.clone().unwrap().borrow().sibling.clone();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:51:39
[INFO] [stdout]    |
[INFO] [stdout] 51 |         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stdout]    |                                       ^^                             ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 51 -         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stdout] 51 +         update_rc.borrow_mut().next = pending.borrow().next.clone();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:185:35
[INFO] [stdout]     |
[INFO] [stdout] 185 |         next_current_hook = match &CURRENT_HOOK {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 185 |         next_current_hook = match addr_of!(CURRENT_HOOK) {
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:206:44
[INFO] [stdout]     |
[INFO] [stdout] 206 |         next_work_in_progress_hook = match &WORK_IN_PROGRESS_HOOK {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 206 |         next_work_in_progress_hook = match addr_of!(WORK_IN_PROGRESS_HOOK) {
[INFO] [stdout]     |                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HostConfig`
[INFO] [stdout]   --> packages/react-reconciler/src/work_loop.rs:12:54
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::{COMMIT_WORK, COMPLETE_WORK, HOST_CONFIG, HostConfig};
[INFO] [stdout]    |                                                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/child_fiber.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let mut del = &mut return_fiber.borrow_mut().deletions;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:72:17
[INFO] [stdout]    |
[INFO] [stdout] 72 |             let mut effect_rc = effect.clone().unwrap();
[INFO] [stdout]    |                 ----^^^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]    --> packages/react-reconciler/src/fiber.rs:303:39
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...                   node: next,
[INFO] [stdout]     |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_current_hook` is never read
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:181:13
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let mut next_current_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_work_in_progress_hook` is never read
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut next_work_in_progress_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:339:5
[INFO] [stdout]     |
[INFO] [stdout] 339 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:356:9
[INFO] [stdout]     |
[INFO] [stdout] 356 |     let mut effect = Rc::new(RefCell::new(Effect::new(
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:43:63
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn enqueue_update(update_queue: Rc<RefCell<UpdateQueue>>, mut update: Update) {
[INFO] [stdout]    |                                                               ----^^^^^^
[INFO] [stdout]    |                                                               |
[INFO] [stdout]    |                                                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpdateAction` is never constructed
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct UpdateAction;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UpdateAction` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 | /                 destroy
[INFO] [stdout] 90 | |                     .dyn_ref::<Function>()
[INFO] [stdout] 91 | |                     .unwrap()
[INFO] [stdout] 92 | |                     .call0(&JsValue::null());
[INFO] [stdout]    | |____________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |                 let _ = destroy
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> packages/react-reconciler/src/commit_work.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 | /                 destroy
[INFO] [stdout] 103 | |                     .dyn_ref::<Function>()
[INFO] [stdout] 104 | |                     .unwrap()
[INFO] [stdout] 105 | |                     .call0(&JsValue::null());
[INFO] [stdout]     | |____________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 let _ = destroy
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]  --> packages/scheduler/src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::any::Any;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> packages/scheduler/src/heap.rs:124:39
[INFO] [stdout]     |
[INFO] [stdout] 124 |                 sort_index_ordering = (Ordering::Greater)
[INFO] [stdout]     |                                       ^                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 124 -                 sort_index_ordering = (Ordering::Greater)
[INFO] [stdout] 124 +                 sort_index_ordering = Ordering::Greater
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:111:35
[INFO] [stdout]     |
[INFO] [stdout] 111 |             sort_index_ordering = (Ordering::Greater)
[INFO] [stdout]     |                                   ^                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 111 -             sort_index_ordering = (Ordering::Greater)
[INFO] [stdout] 111 +             sort_index_ordering = Ordering::Greater
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:246:34
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let mut timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let mut timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:250:21
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:252:29
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:254:22
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 push(&mut TASK_QUEUE, task.clone());
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 254 |                 push(addr_of_mut!(TASK_QUEUE), task.clone());
[INFO] [stdout]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:258:30
[INFO] [stdout]     |
[INFO] [stdout] 258 |             timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 258 |             timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                              ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:302:41
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:304:29
[INFO] [stdout]     |
[INFO] [stdout] 304 |         CURRENT_TASK = peek(&mut TASK_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 304 |         CURRENT_TASK = peek(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:328:35
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     if match peek(&TASK_QUEUE) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 328 |                     if match peek(addr_of!(TASK_QUEUE)) {
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:334:29
[INFO] [stdout]     |
[INFO] [stdout] 334 |                         pop(&mut TASK_QUEUE);
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 334 |                         pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:340:21
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 pop(&mut TASK_QUEUE);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:343:37
[INFO] [stdout]     |
[INFO] [stdout] 343 |             current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 343 |             current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stdout]     |                                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:344:33
[INFO] [stdout]     |
[INFO] [stdout] 344 |             CURRENT_TASK = peek(&TASK_QUEUE);
[INFO] [stdout]     |                                 ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 344 |             CURRENT_TASK = peek(addr_of!(TASK_QUEUE));
[INFO] [stdout]     |                                 ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:350:36
[INFO] [stdout]     |
[INFO] [stdout] 350 |             let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 350 |             let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:378:21
[INFO] [stdout]     |
[INFO] [stdout] 378 |             if peek(&mut TASK_QUEUE).is_some() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 378 |             if peek(addr_of_mut!(TASK_QUEUE)).is_some() {
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:382:40
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stdout]     |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:408:25
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in addr_of_mut!(TASK_QUEUE) {
[INFO] [stdout]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:414:25
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in addr_of_mut!(TIMER_QUEUE) {
[INFO] [stdout]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:442:18
[INFO] [stdout]     |
[INFO] [stdout] 442 |             push(&mut TIMER_QUEUE, new_task.clone());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 442 |             push(addr_of_mut!(TIMER_QUEUE), new_task.clone());
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:444:21
[INFO] [stdout]     |
[INFO] [stdout] 444 |             if peek(&mut TASK_QUEUE).is_none() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 444 |             if peek(addr_of_mut!(TASK_QUEUE)).is_none() {
[INFO] [stdout]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:445:42
[INFO] [stdout]     |
[INFO] [stdout] 445 |                 if let Some(task) = peek(&mut TIMER_QUEUE) {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 445 |                 if let Some(task) = peek(addr_of_mut!(TIMER_QUEUE)) {
[INFO] [stdout]     |                                          ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:458:18
[INFO] [stdout]     |
[INFO] [stdout] 458 |             push(&mut TASK_QUEUE, new_task);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 458 |             push(addr_of_mut!(TASK_QUEUE), new_task);
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/heap.rs:115:17
[INFO] [stdout]     |
[INFO] [stdout] 115 |             let mut sort_index_ordering;
[INFO] [stdout]     |                 ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let mut sort_index_ordering;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:252:21
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:306:17
[INFO] [stdout]     |
[INFO] [stdout] 306 |             let mut t = current_task.unwrap();
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:408:13
[INFO] [stdout]     |
[INFO] [stdout] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/scheduler/src/lib.rs:414:13
[INFO] [stdout]     |
[INFO] [stdout] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `MESSAGE_CHANNEL` is never used
[INFO] [stdout]   --> packages/scheduler/src/lib.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | static mut MESSAGE_CHANNEL: Option<MessageChannel> = None;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_empty` is never used
[INFO] [stdout]   --> packages/scheduler/src/heap.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn is_empty<T: Ord>(heap: &Vec<T>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wasm-bindgen-test v0.3.42
[INFO] [stderr]    Compiling react-reconciler v0.1.0 (/opt/rustwide/workdir/packages/react-reconciler)
[INFO] [stderr]    Compiling react-dom v0.1.0 (/opt/rustwide/workdir/packages/react-dom)
[INFO] [stderr]    Compiling react v0.1.0 (/opt/rustwide/workdir/packages/react)
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 |             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stdout]    |                ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 46 -             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stdout] 46 +             if update_queue.borrow().last_effect.is_none() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]   --> packages/react-reconciler/src/complete_work.rs:90:20
[INFO] [stdout]    |
[INFO] [stdout] 90 |             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stdout]    |                    ^^                                              ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 90 -             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stdout] 90 +             node = node.clone().unwrap().borrow().sibling.clone();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:51:39
[INFO] [stdout]    |
[INFO] [stdout] 51 |         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stdout]    |                                       ^^                             ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 51 -         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stdout] 51 +         update_rc.borrow_mut().next = pending.borrow().next.clone();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> packages/react-reconciler/src/main.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut a = Lane::NoLane | Lane::SyncLane;
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> packages/react/src/lib.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let _ = use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_highest_priority` is never used
[INFO] [stdout]   --> packages/react-reconciler/src/fiber_lanes.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn get_highest_priority(lanes: Lane) -> Lane {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_lanes` is never used
[INFO] [stdout]   --> packages/react-reconciler/src/fiber_lanes.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn merge_lanes(lane_a: Lane, lane_b: Lane) -> Lane {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `request_update_lane` is never used
[INFO] [stdout]   --> packages/react-reconciler/src/fiber_lanes.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn request_update_lane() -> Lane {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:185:35
[INFO] [stdout]     |
[INFO] [stdout] 185 |         next_current_hook = match &CURRENT_HOOK {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 185 |         next_current_hook = match addr_of!(CURRENT_HOOK) {
[INFO] [stdout]     |                                   ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:206:44
[INFO] [stdout]     |
[INFO] [stdout] 206 |         next_work_in_progress_hook = match &WORK_IN_PROGRESS_HOOK {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 206 |         next_work_in_progress_hook = match addr_of!(WORK_IN_PROGRESS_HOOK) {
[INFO] [stdout]     |                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HostConfig`
[INFO] [stdout]   --> packages/react-reconciler/src/work_loop.rs:12:54
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::{COMMIT_WORK, COMPLETE_WORK, HOST_CONFIG, HostConfig};
[INFO] [stdout]    |                                                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/child_fiber.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let mut del = &mut return_fiber.borrow_mut().deletions;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:72:17
[INFO] [stdout]    |
[INFO] [stdout] 72 |             let mut effect_rc = effect.clone().unwrap();
[INFO] [stdout]    |                 ----^^^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]    --> packages/react-reconciler/src/fiber.rs:303:39
[INFO] [stdout]     |
[INFO] [stdout] 303 | ...                   node: next,
[INFO] [stdout]     |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_current_hook` is never read
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:181:13
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let mut next_current_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `next_work_in_progress_hook` is never read
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut next_work_in_progress_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:339:5
[INFO] [stdout]     |
[INFO] [stdout] 339 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> packages/react-reconciler/src/fiber_hooks.rs:356:9
[INFO] [stdout]     |
[INFO] [stdout] 356 |     let mut effect = Rc::new(RefCell::new(Effect::new(
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:43:63
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn enqueue_update(update_queue: Rc<RefCell<UpdateQueue>>, mut update: Update) {
[INFO] [stdout]    |                                                               ----^^^^^^
[INFO] [stdout]    |                                                               |
[INFO] [stdout]    |                                                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpdateAction` is never constructed
[INFO] [stdout]   --> packages/react-reconciler/src/update_queue.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct UpdateAction;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UpdateAction` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> packages/react-reconciler/src/commit_work.rs:89:17
[INFO] [stdout]    |
[INFO] [stdout] 89 | /                 destroy
[INFO] [stdout] 90 | |                     .dyn_ref::<Function>()
[INFO] [stdout] 91 | |                     .unwrap()
[INFO] [stdout] 92 | |                     .call0(&JsValue::null());
[INFO] [stdout]    | |____________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 89 |                 let _ = destroy
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> packages/react-reconciler/src/commit_work.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 | /                 destroy
[INFO] [stdout] 103 | |                     .dyn_ref::<Function>()
[INFO] [stdout] 104 | |                     .unwrap()
[INFO] [stdout] 105 | |                     .call0(&JsValue::null());
[INFO] [stdout]     | |____________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 let _ = destroy
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.35s
[INFO] running `Command { std: "docker" "inspect" "5dbf54ae40bcd407c9285994f607c3f036971fe5da15d7224b9a1db900b8bfdf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5dbf54ae40bcd407c9285994f607c3f036971fe5da15d7224b9a1db900b8bfdf", kill_on_drop: false }`
[INFO] [stdout] 5dbf54ae40bcd407c9285994f607c3f036971fe5da15d7224b9a1db900b8bfdf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] e57066951723500e4771b485f95cd57fd99a0984ebe4bcea87251363ac587c1b
[INFO] running `Command { std: "docker" "start" "-a" "e57066951723500e4771b485f95cd57fd99a0984ebe4bcea87251363ac587c1b", kill_on_drop: false }`
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react-dom/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
[INFO] [stderr] package:   /opt/rustwide/workdir/packages/react-reconciler/Cargo.toml
[INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> packages/react/src/lib.rs:122:5
[INFO] [stderr]     |
[INFO] [stderr] 122 |     use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 122 |     let _ = use_effect.call2(&JsValue::null(), create, deps);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::any::Any`
[INFO] [stderr]  --> packages/scheduler/src/lib.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::any::Any;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:111:35
[INFO] [stderr]     |
[INFO] [stderr] 111 |             sort_index_ordering = (Ordering::Greater)
[INFO] [stderr]     |                                   ^                 ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 111 -             sort_index_ordering = (Ordering::Greater)
[INFO] [stderr] 111 +             sort_index_ordering = Ordering::Greater
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:246:34
[INFO] [stderr]     |
[INFO] [stderr] 246 |         let mut timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 246 |         let mut timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stderr]     |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:250:21
[INFO] [stderr]     |
[INFO] [stderr] 250 |                 pop(&mut TIMER_QUEUE);
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 250 |                 pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stderr]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:252:29
[INFO] [stderr]     |
[INFO] [stderr] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 252 |                 let t = pop(addr_of_mut!(TIMER_QUEUE));
[INFO] [stderr]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:254:22
[INFO] [stderr]     |
[INFO] [stderr] 254 |                 push(&mut TASK_QUEUE, task.clone());
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 254 |                 push(addr_of_mut!(TASK_QUEUE), task.clone());
[INFO] [stderr]     |                      ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:258:30
[INFO] [stderr]     |
[INFO] [stderr] 258 |             timer = peek_mut(&mut TIMER_QUEUE);
[INFO] [stderr]     |                              ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 258 |             timer = peek_mut(addr_of_mut!(TIMER_QUEUE));
[INFO] [stderr]     |                              ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:302:41
[INFO] [stderr]     |
[INFO] [stderr] 302 |         let mut current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stderr]     |                                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 302 |         let mut current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stderr]     |                                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:304:29
[INFO] [stderr]     |
[INFO] [stderr] 304 |         CURRENT_TASK = peek(&mut TASK_QUEUE);
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 304 |         CURRENT_TASK = peek(addr_of_mut!(TASK_QUEUE));
[INFO] [stderr]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:328:35
[INFO] [stderr]     |
[INFO] [stderr] 328 |                     if match peek(&TASK_QUEUE) {
[INFO] [stderr]     |                                   ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 328 |                     if match peek(addr_of!(TASK_QUEUE)) {
[INFO] [stderr]     |                                   ~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:334:29
[INFO] [stderr]     |
[INFO] [stderr] 334 |                         pop(&mut TASK_QUEUE);
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 334 |                         pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stderr]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:340:21
[INFO] [stderr]     |
[INFO] [stderr] 340 |                 pop(&mut TASK_QUEUE);
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 340 |                 pop(addr_of_mut!(TASK_QUEUE));
[INFO] [stderr]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:343:37
[INFO] [stderr]     |
[INFO] [stderr] 343 |             current_task = peek_mut(&mut TASK_QUEUE);
[INFO] [stderr]     |                                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 343 |             current_task = peek_mut(addr_of_mut!(TASK_QUEUE));
[INFO] [stderr]     |                                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:344:33
[INFO] [stderr]     |
[INFO] [stderr] 344 |             CURRENT_TASK = peek(&TASK_QUEUE);
[INFO] [stderr]     |                                 ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 344 |             CURRENT_TASK = peek(addr_of!(TASK_QUEUE));
[INFO] [stderr]     |                                 ~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:350:36
[INFO] [stderr]     |
[INFO] [stderr] 350 |             let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 350 |             let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stderr]     |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:378:21
[INFO] [stderr]     |
[INFO] [stderr] 378 |             if peek(&mut TASK_QUEUE).is_some() {
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 378 |             if peek(addr_of_mut!(TASK_QUEUE)).is_some() {
[INFO] [stderr]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:382:40
[INFO] [stderr]     |
[INFO] [stderr] 382 |                 let first_timer = peek(&mut TIMER_QUEUE);
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 382 |                 let first_timer = peek(addr_of_mut!(TIMER_QUEUE));
[INFO] [stderr]     |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:408:25
[INFO] [stderr]     |
[INFO] [stderr] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 408 |         for mut task in addr_of_mut!(TASK_QUEUE) {
[INFO] [stderr]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:414:25
[INFO] [stderr]     |
[INFO] [stderr] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 414 |         for mut task in addr_of_mut!(TIMER_QUEUE) {
[INFO] [stderr]     |                         ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:442:18
[INFO] [stderr]     |
[INFO] [stderr] 442 |             push(&mut TIMER_QUEUE, new_task.clone());
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 442 |             push(addr_of_mut!(TIMER_QUEUE), new_task.clone());
[INFO] [stderr]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:444:21
[INFO] [stderr]     |
[INFO] [stderr] 444 |             if peek(&mut TASK_QUEUE).is_none() {
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 444 |             if peek(addr_of_mut!(TASK_QUEUE)).is_none() {
[INFO] [stderr]     |                     ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:445:42
[INFO] [stderr]     |
[INFO] [stderr] 445 |                 if let Some(task) = peek(&mut TIMER_QUEUE) {
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 445 |                 if let Some(task) = peek(addr_of_mut!(TIMER_QUEUE)) {
[INFO] [stderr]     |                                          ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:458:18
[INFO] [stderr]     |
[INFO] [stderr] 458 |             push(&mut TASK_QUEUE, new_task);
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 458 |             push(addr_of_mut!(TASK_QUEUE), new_task);
[INFO] [stderr]     |                  ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:102:13
[INFO] [stderr]     |
[INFO] [stderr] 102 |         let mut sort_index_ordering;
[INFO] [stderr]     |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `t`
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:252:21
[INFO] [stderr]     |
[INFO] [stderr] 252 |                 let t = pop(&mut TIMER_QUEUE);
[INFO] [stderr]     |                     ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:306:17
[INFO] [stderr]     |
[INFO] [stderr] 306 |             let mut t = current_task.unwrap();
[INFO] [stderr]     |                 ----^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:408:13
[INFO] [stderr]     |
[INFO] [stderr] 408 |         for mut task in &mut TASK_QUEUE {
[INFO] [stderr]     |             ----^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:414:13
[INFO] [stderr]     |
[INFO] [stderr] 414 |         for mut task in &mut TIMER_QUEUE {
[INFO] [stderr]     |             ----^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: static `MESSAGE_CHANNEL` is never used
[INFO] [stderr]   --> packages/scheduler/src/lib.rs:22:12
[INFO] [stderr]    |
[INFO] [stderr] 22 | static mut MESSAGE_CHANNEL: Option<MessageChannel> = None;
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_empty` is never used
[INFO] [stderr]   --> packages/scheduler/src/heap.rs:64:8
[INFO] [stderr]    |
[INFO] [stderr] 64 | pub fn is_empty<T: Ord>(heap: &Vec<T>) -> bool {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> packages/scheduler/src/heap.rs:124:39
[INFO] [stderr]     |
[INFO] [stderr] 124 |                 sort_index_ordering = (Ordering::Greater)
[INFO] [stderr]     |                                       ^                 ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 124 -                 sort_index_ordering = (Ordering::Greater)
[INFO] [stderr] 124 +                 sort_index_ordering = Ordering::Greater
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:111:35
[INFO] [stderr]     |
[INFO] [stderr] 111 |             sort_index_ordering = (Ordering::Greater)
[INFO] [stderr]     |                                   ^                 ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 111 -             sort_index_ordering = (Ordering::Greater)
[INFO] [stderr] 111 +             sort_index_ordering = Ordering::Greater
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/scheduler/src/heap.rs:115:17
[INFO] [stderr]     |
[INFO] [stderr] 115 |             let mut sort_index_ordering;
[INFO] [stderr]     |                 ----^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:102:13
[INFO] [stderr]     |
[INFO] [stderr] 102 |         let mut sort_index_ordering;
[INFO] [stderr]     |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: `react` (lib) generated 1 warning
[INFO] [stderr] warning: `scheduler` (lib) generated 30 warnings (run `cargo fix --lib -p scheduler` to apply 6 suggestions)
[INFO] [stderr] warning: `scheduler` (lib test) generated 32 warnings (28 duplicates) (run `cargo fix --lib -p scheduler --tests` to apply 4 suggestions)
[INFO] [stderr] warning: `react` (lib test) generated 1 warning (1 duplicate)
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> packages/react-reconciler/src/commit_work.rs:46:16
[INFO] [stderr]    |
[INFO] [stderr] 46 |             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stderr]    |                ^                                           ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 46 -             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stderr] 46 +             if update_queue.borrow().last_effect.is_none() {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]   --> packages/react-reconciler/src/complete_work.rs:90:20
[INFO] [stderr]    |
[INFO] [stderr] 90 |             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stderr]    |                    ^^                                              ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 90 -             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stderr] 90 +             node = node.clone().unwrap().borrow().sibling.clone();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]   --> packages/react-reconciler/src/update_queue.rs:51:39
[INFO] [stderr]    |
[INFO] [stderr] 51 |         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stderr]    |                                       ^^                             ^^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 51 -         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stderr] 51 +         update_rc.borrow_mut().next = pending.borrow().next.clone();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static is discouraged
[INFO] [stderr]    --> packages/react-reconciler/src/fiber_hooks.rs:185:35
[INFO] [stderr]     |
[INFO] [stderr] 185 |         next_current_hook = match &CURRENT_HOOK {
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stderr]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stderr] help: use `addr_of!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 185 |         next_current_hook = match addr_of!(CURRENT_HOOK) {
[INFO] [stderr]     |                                   ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static is discouraged
[INFO] [stderr]    --> packages/react-reconciler/src/fiber_hooks.rs:206:44
[INFO] [stderr]     |
[INFO] [stderr] 206 |         next_work_in_progress_hook = match &WORK_IN_PROGRESS_HOOK {
[INFO] [stderr]     |                                            ^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 206 |         next_work_in_progress_hook = match addr_of!(WORK_IN_PROGRESS_HOOK) {
[INFO] [stderr]     |                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HostConfig`
[INFO] [stderr]   --> packages/react-reconciler/src/work_loop.rs:12:54
[INFO] [stderr]    |
[INFO] [stderr] 12 | use crate::{COMMIT_WORK, COMPLETE_WORK, HOST_CONFIG, HostConfig};
[INFO] [stderr]    |                                                      ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> packages/react-reconciler/src/child_fiber.rs:52:13
[INFO] [stderr]    |
[INFO] [stderr] 52 |         let mut del = &mut return_fiber.borrow_mut().deletions;
[INFO] [stderr]    |             ----^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> packages/react-reconciler/src/commit_work.rs:72:17
[INFO] [stderr]    |
[INFO] [stderr] 72 |             let mut effect_rc = effect.clone().unwrap();
[INFO] [stderr]    |                 ----^^^^^^^^^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `next`
[INFO] [stderr]    --> packages/react-reconciler/src/fiber.rs:303:39
[INFO] [stderr]     |
[INFO] [stderr] 303 | ...                   node: next,
[INFO] [stderr]     |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `next_current_hook` is never read
[INFO] [stderr]    --> packages/react-reconciler/src/fiber_hooks.rs:181:13
[INFO] [stderr]     |
[INFO] [stderr] 181 |     let mut next_current_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `next_work_in_progress_hook` is never read
[INFO] [stderr]    --> packages/react-reconciler/src/fiber_hooks.rs:182:13
[INFO] [stderr]     |
[INFO] [stderr] 182 |     let mut next_work_in_progress_hook: Option<Rc<RefCell<Hook>>> = None;
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> packages/react-reconciler/src/fiber_hooks.rs:339:5
[INFO] [stderr]     |
[INFO] [stderr] 339 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> packages/react-reconciler/src/fiber_hooks.rs:356:9
[INFO] [stderr]     |
[INFO] [stderr] 356 |     let mut effect = Rc::new(RefCell::new(Effect::new(
[INFO] [stderr]     |         ----^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> packages/react-reconciler/src/update_queue.rs:43:63
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub fn enqueue_update(update_queue: Rc<RefCell<UpdateQueue>>, mut update: Update) {
[INFO] [stderr]    |                                                               ----^^^^^^
[INFO] [stderr]    |                                                               |
[INFO] [stderr]    |                                                               help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: struct `UpdateAction` is never constructed
[INFO] [stderr]   --> packages/react-reconciler/src/update_queue.rs:14:12
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub struct UpdateAction;
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `UpdateAction` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> packages/react-reconciler/src/commit_work.rs:89:17
[INFO] [stderr]    |
[INFO] [stderr] 89 | /                 destroy
[INFO] [stderr] 90 | |                     .dyn_ref::<Function>()
[INFO] [stderr] 91 | |                     .unwrap()
[INFO] [stderr] 92 | |                     .call0(&JsValue::null());
[INFO] [stderr]    | |____________________________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 89 |                 let _ = destroy
[INFO] [stderr]    |                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> packages/react-reconciler/src/commit_work.rs:102:17
[INFO] [stderr]     |
[INFO] [stderr] 102 | /                 destroy
[INFO] [stderr] 103 | |                     .dyn_ref::<Function>()
[INFO] [stderr] 104 | |                     .unwrap()
[INFO] [stderr] 105 | |                     .call0(&JsValue::null());
[INFO] [stderr]     | |____________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 102 |                 let _ = destroy
[INFO] [stderr]     |                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `react-reconciler` (lib) generated 17 warnings (run `cargo fix --lib -p react-reconciler` to apply 7 suggestions)
[INFO] [stderr] warning: `react-reconciler` (lib test) generated 17 warnings (17 duplicates)
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]  --> packages/react-reconciler/src/main.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let mut a = Lane::NoLane | Lane::SyncLane;
[INFO] [stderr]   |         ----^
[INFO] [stderr]   |         |
[INFO] [stderr]   |         help: remove this `mut`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_highest_priority` is never used
[INFO] [stderr]   --> packages/react-reconciler/src/fiber_lanes.rs:12:8
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub fn get_highest_priority(lanes: Lane) -> Lane {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `merge_lanes` is never used
[INFO] [stderr]   --> packages/react-reconciler/src/fiber_lanes.rs:18:8
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub fn merge_lanes(lane_a: Lane, lane_b: Lane) -> Lane {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `request_update_lane` is never used
[INFO] [stderr]   --> packages/react-reconciler/src/fiber_lanes.rs:22:8
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub fn request_update_lane() -> Lane {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `react-reconciler` (bin "react-reconciler" test) generated 4 warnings (run `cargo fix --bin "react-reconciler" --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/react-daee8ba834f6642b)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/web.rs (/opt/rustwide/target/debug/deps/web-aafc801ac7c256a3)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/react_dom-3790cf01debce635)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/web.rs (/opt/rustwide/target/debug/deps/web-cda46d4cd9a34555)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/react_reconciler-ad52fdfe6b0d65d4)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/react_reconciler-58e9f660c7249357)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/scheduler-2eb3b044c5a9dc23)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test heap::tests::test_min_heap ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/web.rs (/opt/rustwide/target/debug/deps/web-e582d4e2f99b7469)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/shared-2c11055ee10554c5)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests react
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests react_dom
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests react_reconciler
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> packages/react-reconciler/src/commit_work.rs:46:16
[INFO] [stderr]    |
[INFO] [stderr] 46 |             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stderr]    |                ^                                           ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 46 -             if (update_queue.borrow().last_effect.is_none()) {
[INFO] [stderr] 46 +             if update_queue.borrow().last_effect.is_none() {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]   --> packages/react-reconciler/src/complete_work.rs:90:20
[INFO] [stderr]    |
[INFO] [stderr] 90 |             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stderr]    |                    ^^                                              ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 90 -             node = { node.clone().unwrap().borrow().sibling.clone() };
[INFO] [stderr] 90 +             node = node.clone().unwrap().borrow().sibling.clone();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]   --> packages/react-reconciler/src/update_queue.rs:51:39
[INFO] [stderr]    |
[INFO] [stderr] 51 |         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stderr]    |                                       ^^                             ^^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 51 -         update_rc.borrow_mut().next = { pending.borrow().next.clone() };
[INFO] [stderr] 51 +         update_rc.borrow_mut().next = pending.borrow().next.clone();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: 3 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests scheduler
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> packages/scheduler/src/lib.rs:111:35
[INFO] [stderr]     |
[INFO] [stderr] 111 |             sort_index_ordering = (Ordering::Greater)
[INFO] [stderr]     |                                   ^                 ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 111 -             sort_index_ordering = (Ordering::Greater)
[INFO] [stderr] 111 +             sort_index_ordering = Ordering::Greater
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test packages/scheduler/src/lib.rs - advance_timers (line 231) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- packages/scheduler/src/lib.rs - advance_timers (line 231) stdout ----
[INFO] [stdout] error: unexpected closing delimiter: `}`
[INFO] [stdout]   --> packages/scheduler/src/lib.rs:241:55
[INFO] [stdout]    |
[INFO] [stdout] 2  | fn main() { #[allow(non_snake_case)] fn _doctest_main_packages_scheduler_src_lib_rs_231_0() {
[INFO] [stdout]    |           - this opening brace...
[INFO] [stdout] ...
[INFO] [stdout] 12 | } _doctest_main_packages_scheduler_src_lib_rs_231_0() }
[INFO] [stdout]    | - ...matches this closing brace                       ^ unexpected closing delimiter
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     packages/scheduler/src/lib.rs - advance_timers (line 231)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `-p scheduler --doc`
[INFO] running `Command { std: "docker" "inspect" "e57066951723500e4771b485f95cd57fd99a0984ebe4bcea87251363ac587c1b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e57066951723500e4771b485f95cd57fd99a0984ebe4bcea87251363ac587c1b", kill_on_drop: false }`
[INFO] [stdout] e57066951723500e4771b485f95cd57fd99a0984ebe4bcea87251363ac587c1b
