[INFO] fetching crate zng-app 0.13.7... [INFO] checking zng-app-0.13.7 against try#65132f36b923285d5da381c2fbafee6ce899e841 for pr-132712-1 [INFO] extracting crate zng-app 0.13.7 into /workspace/builds/worker-5-tc2/source [INFO] validating manifest of crates.io crate zng-app 0.13.7 on toolchain 65132f36b923285d5da381c2fbafee6ce899e841 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+65132f36b923285d5da381c2fbafee6ce899e841" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate zng-app 0.13.7 [INFO] finished tweaking crates.io crate zng-app 0.13.7 [INFO] tweaked toml for crates.io crate zng-app 0.13.7 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+65132f36b923285d5da381c2fbafee6ce899e841" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 253 packages to latest compatible versions [INFO] [stderr] Adding linkme v0.3.28 (available: v0.3.31) [INFO] [stderr] Adding linkme-impl v0.3.28 (available: v0.3.31) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+65132f36b923285d5da381c2fbafee6ce899e841" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+65132f36b923285d5da381c2fbafee6ce899e841" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7946968ee102c62a6fded9631cddcd03461b72bfbdb1f5bf811ba817b272a77b [INFO] running `Command { std: "docker" "start" "-a" "7946968ee102c62a6fded9631cddcd03461b72bfbdb1f5bf811ba817b272a77b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7946968ee102c62a6fded9631cddcd03461b72bfbdb1f5bf811ba817b272a77b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7946968ee102c62a6fded9631cddcd03461b72bfbdb1f5bf811ba817b272a77b", kill_on_drop: false }` [INFO] [stdout] 7946968ee102c62a6fded9631cddcd03461b72bfbdb1f5bf811ba817b272a77b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=allow" "-e" "RUSTDOCFLAGS=--cap-lints=allow" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+65132f36b923285d5da381c2fbafee6ce899e841" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ee9c1704199d3781183308cc9566460a30b50a48c3b3d887dd22f161b8d73de9 [INFO] running `Command { std: "docker" "start" "-a" "ee9c1704199d3781183308cc9566460a30b50a48c3b3d887dd22f161b8d73de9", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Migrating Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Compiling proc-macro2 v1.0.92 [INFO] [stderr] Compiling serde v1.0.215 [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Compiling libc v0.2.164 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Checking pin-project-lite v0.2.15 [INFO] [stderr] Checking once_cell v1.20.2 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Checking equivalent v1.0.1 [INFO] [stderr] Checking foldhash v0.1.3 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking allocator-api2 v0.2.20 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling hashbrown v0.15.1 [INFO] [stderr] Compiling winnow v0.6.20 [INFO] [stderr] Compiling syn v2.0.89 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Compiling cpufeatures v0.2.16 [INFO] [stderr] Checking option-ext v0.2.0 [INFO] [stderr] Checking dirs-sys v0.4.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking fastrand v2.2.0 [INFO] [stderr] Checking directories v5.0.1 [INFO] [stderr] Compiling indexmap v2.6.0 [INFO] [stderr] Compiling zng-app-context v0.5.12 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking parking v2.2.1 [INFO] [stderr] Checking log v0.4.22 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Checking rustc-hash v2.0.0 [INFO] [stderr] Compiling rustix v0.38.41 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Checking event-listener v5.3.1 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking linux-raw-sys v0.4.14 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Compiling zng-var v0.5.9 [INFO] [stderr] Checking pretty-type-name v1.0.1 [INFO] [stderr] Compiling anstyle-parse v0.2.6 [INFO] [stderr] Checking event-listener-strategy v0.5.2 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Compiling colorchoice v1.0.3 [INFO] [stderr] Checking zng-handle v0.2.5 [INFO] [stderr] Compiling anstyle v1.0.10 [INFO] [stderr] Checking zng-clone-move v0.2.5 [INFO] [stderr] Compiling anstyle-query v1.1.2 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.1 [INFO] [stderr] Checking take_mut v0.2.2 [INFO] [stderr] Checking mio v1.0.2 [INFO] [stderr] Checking uuid v1.11.0 [INFO] [stderr] Checking nanorand v0.7.0 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Compiling anstream v0.6.18 [INFO] [stderr] Checking crossbeam-channel v0.5.13 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Checking atomic-waker v1.1.2 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Compiling clap_lex v0.7.3 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Checking flume v0.11.1 [INFO] [stderr] Compiling clap_builder v4.5.21 [INFO] [stderr] Checking piper v0.2.4 [INFO] [stderr] Checking futures-lite v2.5.0 [INFO] [stderr] Checking async-channel v2.3.1 [INFO] [stderr] Compiling zng-view-api v0.10.5 [INFO] [stderr] Checking dunce v1.0.5 [INFO] [stderr] Checking async-task v4.7.1 [INFO] [stderr] Checking async-lock v3.4.0 [INFO] [stderr] Compiling zng-task v0.4.11 [INFO] [stderr] Checking shared_child v1.0.1 [INFO] [stderr] Checking os_pipe v1.2.1 [INFO] [stderr] Checking unicode-bidi v0.3.17 [INFO] [stderr] Checking overload v0.1.1 [INFO] [stderr] Checking duct v0.13.7 [INFO] [stderr] Checking nu-ansi-term v0.46.0 [INFO] [stderr] Checking sharded-slab v0.1.7 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking thread_local v1.1.8 [INFO] [stderr] Compiling zng-app v0.13.7 (/tmp/fixit) [INFO] [stderr] Migrating build.rs from 2021 edition to 2024 [INFO] [stderr] Checking futures-timer v3.0.3 [INFO] [stderr] Checking unicase v2.8.0 [INFO] [stderr] Checking blocking v1.6.1 [INFO] [stderr] Checking async-fs v2.1.2 [INFO] [stderr] Checking tracing-subscriber v0.3.18 [INFO] [stderr] Compiling clap v4.5.21 [INFO] [stderr] Compiling minifier v0.3.2 [INFO] [stderr] Compiling serde_derive v1.0.215 [INFO] [stderr] Compiling bytemuck_derive v1.8.0 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Compiling linkme-impl v0.3.28 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling zng-var-proc-macros v0.2.8 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Checking tinystr v0.7.6 [INFO] [stderr] Compiling unic-langid-impl v0.9.5 [INFO] [stderr] Compiling zng-task-proc-macros v0.2.6 [INFO] [stderr] Checking linkme v0.3.28 [INFO] [stderr] Compiling zng-color-proc-macros v0.2.7 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Compiling unic-langid v0.9.5 [INFO] [stderr] Checking bytemuck v1.20.0 [INFO] [stderr] Checking atomic v0.6.0 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Compiling fluent-syntax v0.11.1 [INFO] [stderr] Checking tracing-shared v0.1.5 [INFO] [stderr] Compiling zng-app-proc-macros v0.3.8 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking zng-txt v0.2.8 [INFO] [stderr] Checking serde_spanned v0.6.8 [INFO] [stderr] Checking toml_datetime v0.6.8 [INFO] [stderr] Checking bitflags v2.6.0 [INFO] [stderr] Checking euclid v0.22.11 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking zng-unique-id v0.4.7 [INFO] [stderr] Checking toml_edit v0.22.22 [INFO] [stderr] Checking zng-tp-licenses v0.2.9 [INFO] [stderr] Checking serde_bytes v0.11.15 [INFO] [stderr] Checking serde_variant v0.1.3 [INFO] [stderr] Checking zng-state-map v0.3.7 [INFO] [stderr] Checking zng-unit v0.2.10 [INFO] [stderr] Checking toml v0.8.19 [INFO] [stderr] Checking tempfile v3.14.0 [INFO] [stderr] Checking ipc-channel v0.19.0 [INFO] [stderr] Compiling zng-env-proc-macros v0.2.2 [INFO] [stderr] Checking zng-env v0.3.7 [INFO] [stderr] Checking zng-time v0.2.24 [INFO] [stderr] Checking zng-layout v0.2.30 [INFO] [stderr] Checking zng-color v0.3.16 [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/render.rs:184:13 [INFO] [stdout] | [INFO] [stdout] 184 | let gen = renderer [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/render.rs:188:38 [INFO] [stdout] | [INFO] [stdout] 188 | let view_process_has_frame = gen != ViewProcessGen::INVALID && gen == info_tree.view_process_gen(); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `zng_app` [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/render.rs:188:72 [INFO] [stdout] | [INFO] [stdout] 188 | let view_process_has_frame = gen != ViewProcessGen::INVALID && gen == info_tree.view_process_gen(); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:295:37 [INFO] [stdout] | [INFO] [stdout] 295 | pub fn handle_disconnect(&self, gen: ViewProcessGen) { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:296:48 [INFO] [stdout] | [INFO] [stdout] 296 | self.write().process.handle_disconnect(gen) [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:358:40 [INFO] [stdout] | [INFO] [stdout] 358 | pub(super) fn handle_inited(&self, gen: ViewProcessGen, extensions: ApiExtensions) { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] * src/lib.rs [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:361:34 [INFO] [stdout] | [INFO] [stdout] 361 | me.process.handle_inited(gen); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] * src/render.rs [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:550:13 [INFO] [stdout] | [INFO] [stdout] 550 | let gen = self.process.generation(); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] * src/tests/a.rs [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:551:23 [INFO] [stdout] | [INFO] [stdout] 551 | let invalid = gen != self.data_generation; [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] * src/tests/b.rs [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:553:36 [INFO] [stdout] | [INFO] [stdout] 553 | self.data_generation = gen; [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] * src/tests/ui_node.rs [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/widget/info.rs:299:21 [INFO] [stdout] | [INFO] [stdout] 299 | if let Some(gen) = view_process_gen { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] * src/tests/ui_node_list.rs [INFO] [stderr] * src/tests/widget.rs [INFO] [stderr] * src/update.rs [INFO] [stderr] * src/widget/base.rs [INFO] [stderr] * src/widget/builder.rs [INFO] [stderr] * src/widget/info.rs [INFO] [stderr] * src/widget/info/builder.rs [INFO] [stderr] * src/widget/inspector.rs [INFO] [stderr] * src/widget/node.rs [INFO] [stderr] * src/window.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error: expected item after attributes [INFO] [stderr] --> src/widget/base.rs:916:1 [INFO] [stderr] | [INFO] [stderr] 913 | / /// Unique ID of the widget instance. [INFO] [stderr] 914 | | /// [INFO] [stderr] 915 | | /// Note that the `id` can convert from a `&'static str` unique name. [INFO] [stderr] | |_____________________________________________________________________- other attributes here [INFO] [stderr] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] + use<> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: expected item after attributes [INFO] [stderr] --> src/widget/node.rs:382:1 [INFO] [stderr] | [INFO] [stderr] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] + use<> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: expected item after attributes [INFO] [stderr] --> src/tests/widget.rs:49:1 [INFO] [stderr] | [INFO] [stderr] 49 | #[property(CONTEXT)] + use<> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: expected item after attributes [INFO] [stderr] --> src/tests/ui_node_list.rs:112:1 [INFO] [stderr] | [INFO] [stderr] 112 | #[property(CHILD, capture, widget_impl(ListWgt))] + use<> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `crate::widget::base::Parallel`, `crate::widget::base::PARALLEL_VAR` [INFO] [stderr] --> src/render.rs:34:16 [INFO] [stderr] | [INFO] [stderr] 34 | base::{Parallel, PARALLEL_VAR}, [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^^^^ no `PARALLEL_VAR` in `widget::base` [INFO] [stderr] | | [INFO] [stderr] | no `Parallel` in `widget::base` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `crate::widget::node::BoxedUiNode`, `crate::widget::node::UiNode` [INFO] [stderr] --> src/update.rs:22:16 [INFO] [stderr] | [INFO] [stderr] 22 | node::{BoxedUiNode, UiNode}, [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^ no `UiNode` in `widget::node` [INFO] [stderr] | | [INFO] [stderr] | no `BoxedUiNode` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `crate::widget::node::WhenUiNodeListBuilder` [INFO] [stderr] --> src/widget/builder.rs:3:37 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::{handler::WidgetHandler, widget::node::WhenUiNodeListBuilder}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `WhenUiNodeListBuilder` in `widget::node` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `super::base::WidgetBase`, `super::base::WidgetExt`, `super::node::with_new_context_init_id`, `super::node::ArcNode`, `super::node::ArcNodeList`, `super::node::BoxedUiNode`, `super::node::BoxedUiNodeList`, `super::node::FillUiNode`, `super::node::UiNode`, `super::node::UiNodeList`, `super::node::WhenUiNodeBuilder` [INFO] [stderr] --> src/widget/builder.rs:228:12 [INFO] [stderr] | [INFO] [stderr] 228 | base::{WidgetBase, WidgetExt}, [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^ no `WidgetExt` in `widget::base` [INFO] [stderr] | | [INFO] [stderr] | no `WidgetBase` in `widget::base` [INFO] [stderr] 229 | node::{ [INFO] [stderr] 230 | with_new_context_init_id, ArcNode, ArcNodeList, BoxedUiNode, BoxedUiNodeList, FillUiNode, UiNode, UiNodeList, WhenUiNodeBuilder, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | | | | | | | | [INFO] [stderr] | | | | | | | | no `UiNodeList` in `widget::node` [INFO] [stderr] | | | | | | | no `UiNode` in `widget::node` [INFO] [stderr] | | | | | | no `FillUiNode` in `widget::node` [INFO] [stderr] | | | | | no `BoxedUiNodeList` in `widget::node` [INFO] [stderr] | | | | no `BoxedUiNode` in `widget::node` [INFO] [stderr] | | | no `ArcNodeList` in `widget::node` [INFO] [stderr] | | no `ArcNode` in `widget::node` [INFO] [stderr] | no `with_new_context_init_id` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNodeList [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `crate::widget::node::UiNode` [INFO] [stderr] --> src/widget/info/builder.rs:12:30 [INFO] [stderr] | [INFO] [stderr] 12 | widget::{border::BORDER, node::UiNode, WidgetId, WidgetUpdateMode, WIDGET}, [INFO] [stderr] | ^^^^^^^^^^^^ no `UiNode` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `super::node::ZIndex` [INFO] [stderr] --> src/widget/info.rs:41:13 [INFO] [stderr] | [INFO] [stderr] 41 | use super::{node::ZIndex, WidgetId}; [INFO] [stderr] | ^^^^^^^^^^^^ no `ZIndex` in `widget::node` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `crate::widget::node::match_node`, `crate::widget::node::BoxedUiNode`, `crate::widget::node::UiNode`, `crate::widget::node::UiNodeOp` [INFO] [stderr] --> src/widget/inspector.rs:12:16 [INFO] [stderr] | [INFO] [stderr] 12 | node::{match_node, BoxedUiNode, UiNode, UiNodeOp}, [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^ ^^^^^^^^ no `UiNodeOp` in `widget::node` [INFO] [stderr] | | | | [INFO] [stderr] | | | no `UiNode` in `widget::node` [INFO] [stderr] | | no `BoxedUiNode` in `widget::node` [INFO] [stderr] | no `match_node` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `crate::widget::node::UiNode` [INFO] [stderr] --> src/window.rs:239:13 [INFO] [stderr] | [INFO] [stderr] 239 | node::UiNode, [INFO] [stderr] | ^^^^^^^^^^^^ no `UiNode` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `crate::widget::node::UiNode`, `crate::widget::node::UiNodeList` [INFO] [stderr] --> src/tests/ui_node.rs:13:16 [INFO] [stderr] | [INFO] [stderr] 13 | node::{UiNode, UiNodeList}, [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^ no `UiNodeList` in `widget::node` [INFO] [stderr] | | [INFO] [stderr] | no `UiNode` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNodeList [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `crate::widget::node::UiNode` [INFO] [stderr] --> src/tests/ui_node.rs:270:13 [INFO] [stderr] | [INFO] [stderr] 270 | node::UiNode, [INFO] [stderr] | ^^^^^^^^^^^^ no `UiNode` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing one of these items instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] crate::tests::ui_node::UiNode [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `crate::widget::base::NonWidgetBase`, `crate::widget::base::WidgetBase`, `crate::widget::base::WidgetExt`, `crate::widget::base::WidgetImpl` [INFO] [stderr] --> src/lib.rs:115:43 [INFO] [stderr] | [INFO] [stderr] 115 | pub use crate::widget::base::{NonWidgetBase, WidgetBase, WidgetExt, WidgetImpl}; [INFO] [stderr] | ^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^ no `WidgetImpl` in `widget::base` [INFO] [stderr] | | | | [INFO] [stderr] | | | no `WidgetExt` in `widget::base` [INFO] [stderr] | | no `WidgetBase` in `widget::base` [INFO] [stderr] | no `NonWidgetBase` in `widget::base` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `crate::widget::node::ui_node_list_default`, `crate::widget::node::ArcNode`, `crate::widget::node::ArcNodeList`, `crate::widget::node::BoxedUiNode`, `crate::widget::node::BoxedUiNodeList`, `crate::widget::node::NilUiNode`, `crate::widget::node::UiNode`, `crate::widget::node::UiNodeList`, `crate::widget::node::UiVec` [INFO] [stderr] --> src/lib.rs:121:17 [INFO] [stderr] | [INFO] [stderr] 121 | ui_node_list_default, ArcNode, ArcNodeList, BoxedUiNode, BoxedUiNodeList, NilUiNode, UiNode, UiNodeList, UiVec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^ ^^^^^^^^^^ ^^^^^ no `UiVec` in `widget::node` [INFO] [stderr] | | | | | | | | | [INFO] [stderr] | | | | | | | | no `UiNodeList` in `widget::node` [INFO] [stderr] | | | | | | | no `UiNode` in `widget::node` [INFO] [stderr] | | | | | | no `NilUiNode` in `widget::node` [INFO] [stderr] | | | | | no `BoxedUiNodeList` in `widget::node` [INFO] [stderr] | | | | no `BoxedUiNode` in `widget::node` [INFO] [stderr] | | | no `ArcNodeList` in `widget::node` [INFO] [stderr] | | no `ArcNode` in `widget::node` [INFO] [stderr] | no `ui_node_list_default` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNodeList [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `crate::ui_vec` [INFO] [stderr] --> src/tests/ui_node.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | ui_vec, [INFO] [stderr] | ^^^^^^ no `ui_vec` in the root [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `zng_app` [INFO] [stderr] --> src/widget/builder.rs:235:1 [INFO] [stderr] | [INFO] [stderr] 235 | #[widget($crate::widget::builder::PropertyArgsGetter)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `WidgetImpl` in `widget::base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: consider importing this unresolved item through its public re-export instead [INFO] [stderr] | [INFO] [stderr] 235 | crate::__proc_macro_util::widget::base::WidgetImpl [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `zng_app` [INFO] [stderr] --> src/tests/a.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[widget($crate::tests::FooA)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `WidgetImpl` in `widget::base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: consider importing this unresolved item through its public re-export instead [INFO] [stderr] | [INFO] [stderr] 3 | crate::__proc_macro_util::widget::base::WidgetImpl [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `zng_app` [INFO] [stderr] --> src/tests/b.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[widget($crate::tests::FooB)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `WidgetImpl` in `widget::base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: consider importing this unresolved item through its public re-export instead [INFO] [stderr] | [INFO] [stderr] 3 | crate::__proc_macro_util::widget::base::WidgetImpl [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `WidgetImpl` in `base` [INFO] [stderr] --> src/widget/builder.rs:235:1 [INFO] [stderr] | [INFO] [stderr] 235 | #[widget($crate::widget::builder::PropertyArgsGetter)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ could not find `WidgetImpl` in `base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `UiNode` in `node` [INFO] [stderr] --> src/tests/ui_node.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | #[ui_node(struct Node { child: impl UiNode })] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ could not find `UiNode` in `node` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `ui_node` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: there is an enum variant `crate::__proc_macro_util::widget::builder::InputKind::UiNode`; try using the variant's enum [INFO] [stderr] | [INFO] [stderr] 22 | crate::__proc_macro_util::widget::builder::InputKind [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `UiNode` in `node` [INFO] [stderr] --> src/tests/ui_node.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | #[ui_node(delegate = &mut self.inner)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ could not find `UiNode` in `node` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `ui_node` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: there is an enum variant `crate::__proc_macro_util::widget::builder::InputKind::UiNode`; try using the variant's enum [INFO] [stderr] | [INFO] [stderr] 34 | crate::__proc_macro_util::widget::builder::InputKind [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `ui_node_list_default` in `node` [INFO] [stderr] --> src/tests/ui_node.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | #[ui_node(struct Node { children: impl UiNodeList })] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ could not find `ui_node_list_default` in `node` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `ui_node` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `ui_node_list_default` in `node` [INFO] [stderr] --> src/tests/ui_node.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | #[ui_node(delegate_list = &mut self.inner)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ could not find `ui_node_list_default` in `node` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `ui_node` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `UiNode` in `node` [INFO] [stderr] --> src/tests/ui_node.rs:95:5 [INFO] [stderr] | [INFO] [stderr] 95 | #[ui_node(struct Node1 { child: impl UiNode })] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ could not find `UiNode` in `node` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `ui_node` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: there is an enum variant `crate::__proc_macro_util::widget::builder::InputKind::UiNode`; try using the variant's enum [INFO] [stderr] | [INFO] [stderr] 95 | crate::__proc_macro_util::widget::builder::InputKind [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `UiNode` in `node` [INFO] [stderr] --> src/tests/ui_node.rs:102:5 [INFO] [stderr] | [INFO] [stderr] 102 | #[ui_node(struct Node2 { child: impl UiNode })] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ could not find `UiNode` in `node` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `ui_node` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: there is an enum variant `crate::__proc_macro_util::widget::builder::InputKind::UiNode`; try using the variant's enum [INFO] [stderr] | [INFO] [stderr] 102 | crate::__proc_macro_util::widget::builder::InputKind [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `UiNode` in `node` [INFO] [stderr] --> src/tests/ui_node.rs:369:5 [INFO] [stderr] | [INFO] [stderr] 369 | #[ui_node(child)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ could not find `UiNode` in `node` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `ui_node` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: there is an enum variant `crate::__proc_macro_util::widget::builder::InputKind::UiNode`; try using the variant's enum [INFO] [stderr] | [INFO] [stderr] 369 | crate::__proc_macro_util::widget::builder::InputKind [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `WidgetImpl` in `base` [INFO] [stderr] --> src/tests/a.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[widget($crate::tests::FooA)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ could not find `WidgetImpl` in `base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `WidgetImpl` in `base` [INFO] [stderr] --> src/tests/b.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[widget($crate::tests::FooB)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ could not find `WidgetImpl` in `base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0405]: cannot find trait `WidgetImpl` in module `zng_app::widget::base` [INFO] [stderr] --> src/widget/builder.rs:235:1 [INFO] [stderr] | [INFO] [stderr] 235 | #[widget($crate::widget::builder::PropertyArgsGetter)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in `zng_app::widget::base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `WidgetBase` in module `zng_app::widget::base` [INFO] [stderr] --> src/widget/builder.rs:235:1 [INFO] [stderr] | [INFO] [stderr] 235 | #[widget($crate::widget::builder::PropertyArgsGetter)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in `zng_app::widget::base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `match_node` in module `crate::widget::node` [INFO] [stderr] --> src/widget/builder.rs:2629:41 [INFO] [stderr] | [INFO] [stderr] 2629 | node = crate::widget::node::match_node(node, move |c, op| { [INFO] [stderr] | ^^^^^^^^^^ not found in `crate::widget::node` [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `WidgetBase` in module `crate::widget::base` [INFO] [stderr] --> src/tests/a.rs:4:37 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct Foo(crate::widget::base::WidgetBase); [INFO] [stderr] | ^^^^^^^^^^ not found in `crate::widget::base` [INFO] [stderr] [INFO] [stderr] error[E0405]: cannot find trait `WidgetImpl` in module `zng_app::widget::base` [INFO] [stderr] --> src/tests/a.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[widget($crate::tests::FooA)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in `zng_app::widget::base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `WidgetBase` in module `zng_app::widget::base` [INFO] [stderr] --> src/tests/a.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[widget($crate::tests::FooA)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in `zng_app::widget::base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `WidgetBase` in module `crate::widget::base` [INFO] [stderr] --> src/tests/b.rs:4:37 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct Foo(crate::widget::base::WidgetBase); [INFO] [stderr] | ^^^^^^^^^^ not found in `crate::widget::base` [INFO] [stderr] [INFO] [stderr] error[E0405]: cannot find trait `WidgetImpl` in module `zng_app::widget::base` [INFO] [stderr] --> src/tests/b.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[widget($crate::tests::FooB)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in `zng_app::widget::base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `WidgetBase` in module `zng_app::widget::base` [INFO] [stderr] --> src/tests/b.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[widget($crate::tests::FooB)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in `zng_app::widget::base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: aborting due to 39 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0405, E0412, E0425, E0432, E0433. [INFO] [stderr] For more information about an error, try `rustc --explain E0405`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/widget/info.rs:300:38 [INFO] [stdout] | [INFO] [stdout] 300 | frame.view_process_gen = gen; [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/running.rs:618:51 [INFO] [stdout] | [INFO] [stdout] 618 | zng_view_api::Event::Disconnected(gen) => { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/running.rs:620:52 [INFO] [stdout] | [INFO] [stdout] 620 | VIEW_PROCESS.handle_disconnect(gen); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/event/command.rs:140:75 [INFO] [stdout] | [INFO] [stdout] 140 | ... $vis:vis static $COMMAND:ident $(=> |$cmd:ident|$custom_meta_init:expr ;)? $(= { $($meta_ident:ident $(!)? : $meta_init:expr),* $(,... [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 140 | $vis:vis static $COMMAND:ident $(=> |$cmd:ident|$custom_meta_init:expr_2021 ;)? $(= { $($meta_ident:ident $(!)? : $meta_init:expr),* $(,)? };)? $(;)? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/event/command.rs:140:129 [INFO] [stdout] | [INFO] [stdout] 140 | ... $vis:vis static $COMMAND:ident $(=> |$cmd:ident|$custom_meta_init:expr ;)? $(= { $($meta_ident:ident $(!)? : $meta_init:expr),* $(,... [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 140 | $vis:vis static $COMMAND:ident $(=> |$cmd:ident|$custom_meta_init:expr ;)? $(= { $($meta_ident:ident $(!)? : $meta_init:expr_2021),* $(,)? };)? $(;)? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/event/command.rs:172:67 [INFO] [stdout] | [INFO] [stdout] 172 | $vis:vis static $COMMAND:ident => |$cmd:ident| $meta_init:expr; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 172 | $vis:vis static $COMMAND:ident => |$cmd:ident| $meta_init:expr_2021; [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/event/command.rs:188:60 [INFO] [stdout] | [INFO] [stdout] 188 | $vis:vis static $COMMAND:ident = { l10n: $l10n_arg:expr, $($meta_ident:ident : $meta_init:expr),* $(,)? }; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 188 | $vis:vis static $COMMAND:ident = { l10n: $l10n_arg:expr_2021, $($meta_ident:ident : $meta_init:expr),* $(,)? }; [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/event/command.rs:188:99 [INFO] [stdout] | [INFO] [stdout] 188 | $vis:vis static $COMMAND:ident = { l10n: $l10n_arg:expr, $($meta_ident:ident : $meta_init:expr),* $(,)? }; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 188 | $vis:vis static $COMMAND:ident = { l10n: $l10n_arg:expr, $($meta_ident:ident : $meta_init:expr_2021),* $(,)? }; [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/event/command.rs:219:77 [INFO] [stdout] | [INFO] [stdout] 219 | $vis:vis static $COMMAND:ident = { $($meta_ident:ident : $meta_init:expr),* $(,)? }; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 219 | $vis:vis static $COMMAND:ident = { $($meta_ident:ident : $meta_init:expr_2021),* $(,)? }; [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/widget/node/list.rs:53:12 [INFO] [stdout] | [INFO] [stdout] 53 | ($node:expr; $n:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ($node:expr_2021; $n:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/widget/node/list.rs:53:21 [INFO] [stdout] | [INFO] [stdout] 53 | ($node:expr; $n:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ($node:expr; $n:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/widget/node/list.rs:99:23 [INFO] [stdout] | [INFO] [stdout] 99 | match { $node:expr, $($tt:tt)* } [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 99 | match { $node:expr_2021, $($tt:tt)* } [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/widget/node/list.rs:109:23 [INFO] [stdout] | [INFO] [stdout] 109 | match { $node:expr } [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 109 | match { $node:expr_2021 } [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/widget.rs:492:25 [INFO] [stdout] | [INFO] [stdout] 492 | $wgt_borrow_mut:expr; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 492 | $wgt_borrow_mut:expr_2021; [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/tests/ui_node.rs:217:30 [INFO] [stdout] | [INFO] [stdout] 217 | ($wgt:ident, $method:expr) => {{ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 217 | ($wgt:ident, $method:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event.rs:495:12 [INFO] [stdout] | [INFO] [stdout] 495 | if let Some(mut write) = self.local.try_write() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^---------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event.rs:506:9 [INFO] [stdout] | [INFO] [stdout] 506 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 495 ~ match self.local.try_write() { Some(mut write) => { [INFO] [stdout] 496 | match write.widget_subs.entry(widget_id) { [INFO] [stdout] ... [INFO] [stdout] 505 | } [INFO] [stdout] 506 ~ } _ => { [INFO] [stdout] 507 | // fallback without cleanup [INFO] [stdout] ... [INFO] [stdout] 511 | } [INFO] [stdout] 512 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event.rs:654:12 [INFO] [stdout] | [INFO] [stdout] 654 | if let Some(rc) = self.0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event.rs:656:9 [INFO] [stdout] | [INFO] [stdout] 656 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 654 ~ match self.0 { Some(rc) => { [INFO] [stdout] 655 | rc.perm.store(true, Ordering::Relaxed); [INFO] [stdout] 656 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event/command.rs:530:20 [INFO] [stdout] | [INFO] [stdout] 530 | if let Some(scope) = parent.tree().get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event/command.rs:534:17 [INFO] [stdout] | [INFO] [stdout] 534 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 530 ~ match parent.tree().get(id) { Some(scope) => { [INFO] [stdout] 531 | if scope.is_descendant(parent) { [INFO] [stdout] 532 | parse_cmd.notify(); [INFO] [stdout] 533 | } [INFO] [stdout] 534 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event/command.rs:604:19 [INFO] [stdout] | [INFO] [stdout] 604 | } else if let hash_map::Entry::Occupied(entry) = write.scopes.entry(self.scope) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event/command.rs:621:9 [INFO] [stdout] | [INFO] [stdout] 621 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 604 ~ } else { match write.scopes.entry(self.scope) { hash_map::Entry::Occupied(entry) => { [INFO] [stdout] 605 | let scope = entry.get(); [INFO] [stdout] ... [INFO] [stdout] 620 | true [INFO] [stdout] 621 ~ } _ => { [INFO] [stdout] 622 | false [INFO] [stdout] 623 ~ }}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event/command.rs:849:28 [INFO] [stdout] | [INFO] [stdout] 849 | if let Some(data) = write.scopes.get_mut(&scope) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event/command.rs:855:25 [INFO] [stdout] | [INFO] [stdout] 855 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 849 ~ match write.scopes.get_mut(&scope) { Some(data) => { [INFO] [stdout] 850 | if enabled { [INFO] [stdout] ... [INFO] [stdout] 854 | } [INFO] [stdout] 855 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event/command.rs:906:24 [INFO] [stdout] | [INFO] [stdout] 906 | if let Some(data) = write.scopes.get_mut(&scope) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event/command.rs:911:21 [INFO] [stdout] | [INFO] [stdout] 911 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 906 ~ match write.scopes.get_mut(&scope) { Some(data) => { [INFO] [stdout] 907 | data.handle_count -= 1; [INFO] [stdout] ... [INFO] [stdout] 910 | } [INFO] [stdout] 911 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event/events.rs:129:16 [INFO] [stdout] | [INFO] [stdout] 129 | if let EventsL10n::Init(f) = &sv.l10n { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event/events.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 129 ~ match &sv.l10n { EventsL10n::Init(f) => { [INFO] [stdout] 130 | f(file, cmd, meta_name, txt); [INFO] [stdout] 131 | return; [INFO] [stdout] 132 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event/channel.rs:64:16 [INFO] [stdout] | [INFO] [stdout] 64 | if let Some(args) = (e.0.args)().args.as_any().downcast_ref::() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-----------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event/channel.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 64 ~ match (e.0.args)().args.as_any().downcast_ref::() { Some(args) => { [INFO] [stdout] 65 | AppDisconnected(args.clone()) [INFO] [stdout] 66 ~ } _ => { [INFO] [stdout] 67 | unreachable!() [INFO] [stdout] 68 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/handler.rs:600:12 [INFO] [stdout] | [INFO] [stdout] 600 | if let Some(handle) = self.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^-------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/handler.rs:602:9 [INFO] [stdout] | [INFO] [stdout] 602 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 600 ~ match self.upgrade() { Some(handle) => { [INFO] [stdout] 601 | handle.force_drop(); [INFO] [stdout] 602 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/handler.rs:794:12 [INFO] [stdout] | [INFO] [stdout] 794 | if let Some(handler) = self.handler.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/handler.rs:797:9 [INFO] [stdout] | [INFO] [stdout] 797 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 794 ~ match self.handler.take() { Some(handler) => { [INFO] [stdout] 795 | handler(args); [INFO] [stdout] 796 | handler_args.handle.unsubscribe(); [INFO] [stdout] 797 ~ } _ => { [INFO] [stdout] 798 | tracing::error!("`app_hn_once!` called after requesting unsubscribe"); [INFO] [stdout] 799 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/handler.rs:1060:12 [INFO] [stdout] | [INFO] [stdout] 1060 | if let Some(handler) = self.handler.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/handler.rs:1083:9 [INFO] [stdout] | [INFO] [stdout] 1083 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1060 ~ match self.handler.take() { Some(handler) => { [INFO] [stdout] 1061 | handler_args.handle.unsubscribe(); [INFO] [stdout] ... [INFO] [stdout] 1082 | } [INFO] [stdout] 1083 ~ } _ => { [INFO] [stdout] 1084 | tracing::error!("`async_app_hn_once!` called after requesting unsubscribe"); [INFO] [stdout] 1085 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/render.rs:1126:16 [INFO] [stdout] | [INFO] [stdout] 1126 | if let Some(r) = &self.renderer { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/render.rs:1129:13 [INFO] [stdout] | [INFO] [stdout] 1129 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1126 ~ match &self.renderer { Some(r) => { [INFO] [stdout] 1127 | self.display_list.push_mask(image.renderer_id(r), rect); [INFO] [stdout] 1128 | pop = true; [INFO] [stdout] 1129 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/render.rs:1287:12 [INFO] [stdout] | [INFO] [stdout] 1287 | if let (true, Some(r)) = (self.visible, &self.renderer) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/render.rs:1297:9 [INFO] [stdout] | [INFO] [stdout] 1297 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1287 ~ match (self.visible, &self.renderer) { (true, Some(r)) => { [INFO] [stdout] 1288 | let image_id = image.renderer_id(r); [INFO] [stdout] ... [INFO] [stdout] 1296 | ) [INFO] [stdout] 1297 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future + Send + Sync` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/timer.rs:99:56 [INFO] [stdout] | [INFO] [stdout] 99 | fn wait_deadline(&mut self, deadline: Deadline) -> impl std::future::Future + Send + Sync { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/timer.rs:99:22 [INFO] [stdout] | [INFO] [stdout] 99 | fn wait_deadline(&mut self, deadline: Deadline) -> impl std::future::Future + Send + Sync { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 99 | fn wait_deadline(&mut self, deadline: Deadline) -> impl std::future::Future + Send + Sync + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:161:16 [INFO] [stdout] | [INFO] [stdout] 161 | if let Some(var) = wk.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:163:13 [INFO] [stdout] | [INFO] [stdout] 163 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 161 ~ match wk.upgrade() { Some(var) => { [INFO] [stdout] 162 | timer.register(var.get()); [INFO] [stdout] 163 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:167:16 [INFO] [stdout] | [INFO] [stdout] 167 | if let Some(e) = wk.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 167 ~ match wk.upgrade() { Some(e) => { [INFO] [stdout] 168 | timer.register(e.deadline); [INFO] [stdout] 169 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:173:16 [INFO] [stdout] | [INFO] [stdout] 173 | if let Some(var) = t.weak_var.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 173 ~ match t.weak_var.upgrade() { Some(var) => { [INFO] [stdout] 174 | if !t.handle.is_dropped() && !t.handle.data().paused.load(Ordering::Relaxed) { [INFO] [stdout] ... [INFO] [stdout] 180 | } [INFO] [stdout] 181 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future + Send + Sync` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/timer.rs:485:67 [INFO] [stdout] | [INFO] [stdout] 485 | pub fn wait_deadline(&self, deadline: impl Into) -> impl std::future::Future + Send + Sync { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/timer.rs:485:26 [INFO] [stdout] | [INFO] [stdout] 485 | pub fn wait_deadline(&self, deadline: impl Into) -> impl std::future::Future + Send + Sync { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/timer.rs:485:43 [INFO] [stdout] | [INFO] [stdout] 485 | pub fn wait_deadline(&self, deadline: impl Into) -> impl std::future::Future + Send + Sync { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 485 | pub fn wait_deadline>(&self, deadline: T) -> impl std::future::Future + Send + Sync + use { [INFO] [stdout] | +++++++++++++++++++ ~ ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:982:12 [INFO] [stdout] | [INFO] [stdout] 982 | if let Some(h) = self.handle() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:984:9 [INFO] [stdout] | [INFO] [stdout] 984 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 982 ~ match self.handle() { Some(h) => { [INFO] [stdout] 983 | h.set_interval(new_interval) [INFO] [stdout] 984 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:1001:12 [INFO] [stdout] | [INFO] [stdout] 1001 | if let Some(h) = self.handle() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:1003:9 [INFO] [stdout] | [INFO] [stdout] 1003 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1001 ~ match self.handle() { Some(h) => { [INFO] [stdout] 1002 | h.pause(); [INFO] [stdout] 1003 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:1012:12 [INFO] [stdout] | [INFO] [stdout] 1012 | if let Some(h) = self.handle() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:1014:9 [INFO] [stdout] | [INFO] [stdout] 1014 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1012 ~ match self.handle() { Some(h) => { [INFO] [stdout] 1013 | h.play(reset); [INFO] [stdout] 1014 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:1024:12 [INFO] [stdout] | [INFO] [stdout] 1024 | if let Some(h) = self.handle() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:1026:9 [INFO] [stdout] | [INFO] [stdout] 1026 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1024 ~ match self.handle() { Some(h) => { [INFO] [stdout] 1025 | h.set_count(count) [INFO] [stdout] 1026 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/update.rs:144:20 [INFO] [stdout] | [INFO] [stdout] 144 | if let Some(w) = window.get(*w) { [INFO] [stdout] | ^^^^^^^^^^^^^^-------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/update.rs:150:17 [INFO] [stdout] | [INFO] [stdout] 150 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 144 ~ match window.get(*w) { Some(w) => { [INFO] [stdout] 145 | for w in w.widget_and_ancestors() { [INFO] [stdout] ... [INFO] [stdout] 149 | false [INFO] [stdout] 150 ~ } _ => { [INFO] [stdout] 151 | true [INFO] [stdout] 152 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:435:12 [INFO] [stdout] | [INFO] [stdout] 435 | if let Some(i) = self.loading_image_index(data.id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:449:9 [INFO] [stdout] | [INFO] [stdout] 449 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 435 ~ match self.loading_image_index(data.id) { Some(i) => { [INFO] [stdout] 436 | let img = self.write().loading_images.swap_remove(i).upgrade().unwrap(); [INFO] [stdout] ... [INFO] [stdout] 448 | Some(ViewImage(img)) [INFO] [stdout] 449 ~ } _ => { [INFO] [stdout] 450 | None [INFO] [stdout] 451 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:521:12 [INFO] [stdout] | [INFO] [stdout] 521 | if let Some(i) = app.message_dialogs.iter().position(|(i, _)| *i == id) { [INFO] [stdout] | ^^^^^^^^^^^^^^-------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:524:9 [INFO] [stdout] | [INFO] [stdout] 524 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 521 ~ match app.message_dialogs.iter().position(|(i, _)| *i == id) { Some(i) => { [INFO] [stdout] 522 | let (_, r) = app.message_dialogs.swap_remove(i); [INFO] [stdout] 523 | r.respond(response); [INFO] [stdout] 524 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:529:12 [INFO] [stdout] | [INFO] [stdout] 529 | if let Some(i) = app.file_dialogs.iter().position(|(i, _)| *i == id) { [INFO] [stdout] | ^^^^^^^^^^^^^^----------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:532:9 [INFO] [stdout] | [INFO] [stdout] 532 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 529 ~ match app.file_dialogs.iter().position(|(i, _)| *i == id) { Some(i) => { [INFO] [stdout] 530 | let (_, r) = app.file_dialogs.swap_remove(i); [INFO] [stdout] 531 | r.respond(response); [INFO] [stdout] 532 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1026:12 [INFO] [stdout] | [INFO] [stdout] 1026 | if let (Some(s), Some(o)) = (self.0.upgrade(), other.0.upgrade()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1028:9 [INFO] [stdout] | [INFO] [stdout] 1028 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1026 ~ match (self.0.upgrade(), other.0.upgrade()) { (Some(s), Some(o)) => { [INFO] [stdout] 1027 | Arc::ptr_eq(&s, &o) [INFO] [stdout] 1028 ~ } _ => { [INFO] [stdout] 1029 | false [INFO] [stdout] 1030 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1037:12 [INFO] [stdout] | [INFO] [stdout] 1037 | if let Some(c) = self.0.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1039:9 [INFO] [stdout] | [INFO] [stdout] 1039 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1037 ~ match self.0.upgrade() { Some(c) => { [INFO] [stdout] 1038 | c.call(f) [INFO] [stdout] 1039 ~ } _ => { [INFO] [stdout] 1040 | Err(ViewProcessOffline) [INFO] [stdout] 1041 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1112:12 [INFO] [stdout] | [INFO] [stdout] 1112 | if let Some(c) = self.0.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1115:9 [INFO] [stdout] | [INFO] [stdout] 1115 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1112 ~ match self.0.upgrade() { Some(c) => { [INFO] [stdout] 1113 | let id = c.call(|id, p| p.frame_image(id, mask))?; [INFO] [stdout] 1114 | Ok(Self::add_frame_image(c.app_id, id)) [INFO] [stdout] 1115 ~ } _ => { [INFO] [stdout] 1116 | Err(ViewProcessOffline) [INFO] [stdout] 1117 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1122:12 [INFO] [stdout] | [INFO] [stdout] 1122 | if let Some(c) = self.0.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1125:9 [INFO] [stdout] | [INFO] [stdout] 1125 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1122 ~ match self.0.upgrade() { Some(c) => { [INFO] [stdout] 1123 | let id = c.call(|id, p| p.frame_image_rect(id, rect, mask))?; [INFO] [stdout] 1124 | Ok(Self::add_frame_image(c.app_id, id)) [INFO] [stdout] 1125 ~ } _ => { [INFO] [stdout] 1126 | Err(ViewProcessOffline) [INFO] [stdout] 1127 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1160:12 [INFO] [stdout] | [INFO] [stdout] 1160 | if let Some(w) = self.0.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1164:9 [INFO] [stdout] | [INFO] [stdout] 1164 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1160 ~ match self.0.upgrade() { Some(w) => { [INFO] [stdout] 1161 | w.call(|id, p| p.render(id, frame))?; [INFO] [stdout] 1162 | VIEW_PROCESS.handle_write(w.app_id).pending_frames += 1; [INFO] [stdout] 1163 | Ok(()) [INFO] [stdout] 1164 ~ } _ => { [INFO] [stdout] 1165 | Err(ViewProcessOffline) [INFO] [stdout] 1166 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1173:12 [INFO] [stdout] | [INFO] [stdout] 1173 | if let Some(w) = self.0.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1177:9 [INFO] [stdout] | [INFO] [stdout] 1177 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1173 ~ match self.0.upgrade() { Some(w) => { [INFO] [stdout] 1174 | w.call(|id, p| p.render_update(id, frame))?; [INFO] [stdout] 1175 | VIEW_PROCESS.handle_write(w.app_id).pending_frames += 1; [INFO] [stdout] 1176 | Ok(()) [INFO] [stdout] 1177 ~ } _ => { [INFO] [stdout] 1178 | Err(ViewProcessOffline) [INFO] [stdout] 1179 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1184:12 [INFO] [stdout] | [INFO] [stdout] 1184 | if let Some(w) = self.0.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1186:9 [INFO] [stdout] | [INFO] [stdout] 1186 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1184 ~ match self.0.upgrade() { Some(w) => { [INFO] [stdout] 1185 | w.call(|id, p| p.render_extension(id, extension_id, request)) [INFO] [stdout] 1186 ~ } _ => { [INFO] [stdout] 1187 | Err(ViewProcessOffline) [INFO] [stdout] 1188 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1409:16 [INFO] [stdout] | [INFO] [stdout] 1409 | if let Some(id) = img.id { [INFO] [stdout] | ^^^^^^^^^^^^^^^---^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1425:13 [INFO] [stdout] | [INFO] [stdout] 1425 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1409 ~ match img.id { Some(id) => { [INFO] [stdout] 1410 | let mut app = VIEW_PROCESS.handle_write(img.app_id.unwrap()); [INFO] [stdout] ... [INFO] [stdout] 1424 | receiver [INFO] [stdout] 1425 ~ } _ => { [INFO] [stdout] 1426 | return Err(EncodeError::Dummy); [INFO] [stdout] 1427 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1415:20 [INFO] [stdout] | [INFO] [stdout] 1415 | if let Some(entry) = app.encoding_images.iter_mut().find(|r| r.image_id == id && r.format == format) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1417:17 [INFO] [stdout] | [INFO] [stdout] 1417 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1415 ~ match app.encoding_images.iter_mut().find(|r| r.image_id == id && r.format == format) { Some(entry) => { [INFO] [stdout] 1416 | entry.listeners.push(sender); [INFO] [stdout] 1417 ~ } _ => { [INFO] [stdout] 1418 | app.encoding_images.push(EncodeRequest { [INFO] [stdout] ... [INFO] [stdout] 1422 | }); [INFO] [stdout] 1423 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget.rs:682:20 [INFO] [stdout] | [INFO] [stdout] 682 | if let Some(wgt) = tree.get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget.rs:684:17 [INFO] [stdout] | [INFO] [stdout] 684 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 682 ~ match tree.get(id) { Some(wgt) => { [INFO] [stdout] 683 | wgt.trace_path() [INFO] [stdout] 684 ~ } _ => { [INFO] [stdout] 685 | formatx!("{w_id:?}///{id:?}") [INFO] [stdout] 686 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget.rs:707:20 [INFO] [stdout] | [INFO] [stdout] 707 | if let Some(wgt) = tree.get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget.rs:709:17 [INFO] [stdout] | [INFO] [stdout] 709 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 707 ~ match tree.get(id) { Some(wgt) => { [INFO] [stdout] 708 | wgt.trace_id() [INFO] [stdout] 709 ~ } _ => { [INFO] [stdout] 710 | formatx!("{id:?}") [INFO] [stdout] 711 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget.rs:1080:12 [INFO] [stdout] | [INFO] [stdout] 1080 | if let Some(ctx) = ctx.0.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget.rs:1082:9 [INFO] [stdout] | [INFO] [stdout] 1082 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1080 ~ match ctx.0.as_mut() { Some(ctx) => { [INFO] [stdout] 1081 | ctx.parent_id.store(parent_id, Relaxed); [INFO] [stdout] 1082 ~ } _ => { [INFO] [stdout] 1083 | unreachable!() [INFO] [stdout] 1084 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget.rs:1103:20 [INFO] [stdout] | [INFO] [stdout] 1103 | if let Some(parent) = parent_id.map(|_| WIDGET_CTX.get()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget.rs:1120:17 [INFO] [stdout] | [INFO] [stdout] 1120 | } else if let Some(window_id) = WINDOW.try_id() { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1103 ~ match parent_id.map(|_| WIDGET_CTX.get()) { Some(parent) => { [INFO] [stdout] 1104 | let propagate = wgt_flags [INFO] [stdout] ... [INFO] [stdout] 1119 | ctx.parent_id.store(None, Relaxed); [INFO] [stdout] 1120 ~ } _ => if let Some(window_id) = WINDOW.try_id() { [INFO] [stdout] 1121 | // is at root, register `UPDATES` [INFO] [stdout] ... [INFO] [stdout] 1128 | ctx.flags.store(UpdateFlags::empty(), Relaxed); [INFO] [stdout] 1129 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget.rs:1451:16 [INFO] [stdout] | [INFO] [stdout] 1451 | if let zng_var::types::Response::Done(value) = &args.value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget.rs:1459:13 [INFO] [stdout] | [INFO] [stdout] 1459 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1451 ~ match &args.value { zng_var::types::Response::Done(value) => { [INFO] [stdout] 1452 | handler.event( [INFO] [stdout] ... [INFO] [stdout] 1458 | ) [INFO] [stdout] 1459 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget.rs:1472:16 [INFO] [stdout] | [INFO] [stdout] 1472 | if let zng_var::types::Response::Done(value) = &args.value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget.rs:1480:13 [INFO] [stdout] | [INFO] [stdout] 1480 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1472 ~ match &args.value { zng_var::types::Response::Done(value) => { [INFO] [stdout] 1473 | handler.event( [INFO] [stdout] ... [INFO] [stdout] 1479 | ) [INFO] [stdout] 1480 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl widget::node::UiNode` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/base.rs:73:39 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn widget_build(&mut self) -> impl UiNode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/base.rs:73:25 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn widget_build(&mut self) -> impl UiNode { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 73 | pub fn widget_build(&mut self) -> impl UiNode + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/base.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 118 | if let Some(when) = &mut *self.when.borrow_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/base.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 120 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 118 ~ match &mut *self.when.borrow_mut() { Some(when) => { [INFO] [stdout] 119 | when.assigns.push(args); [INFO] [stdout] 120 ~ } _ => { [INFO] [stdout] 121 | self.builder [INFO] [stdout] ... [INFO] [stdout] 125 | .push_property(self.importance, args); [INFO] [stdout] 126 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/base.rs:254:12 [INFO] [stdout] | [INFO] [stdout] 254 | if let Some(when) = self.when.get_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/base.rs:256:9 [INFO] [stdout] | [INFO] [stdout] 256 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 254 ~ match self.when.get_mut() { Some(when) => { [INFO] [stdout] 255 | when.assigns.push(args); [INFO] [stdout] 256 ~ } _ => { [INFO] [stdout] 257 | self.builder [INFO] [stdout] ... [INFO] [stdout] 261 | .push_property(self.importance, args); [INFO] [stdout] 262 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/base.rs:916:1 [INFO] [stdout] | [INFO] [stdout] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/base.rs:916:1 [INFO] [stdout] | [INFO] [stdout] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/base.rs:916:1 [INFO] [stdout] | [INFO] [stdout] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/base.rs:916:1 [INFO] [stdout] | [INFO] [stdout] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/base.rs:525:36 [INFO] [stdout] | [INFO] [stdout] 525 | ... if let Some(child_inline) = child_inline { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/base.rs:527:33 [INFO] [stdout] | [INFO] [stdout] 527 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 525 ~ match child_inline { Some(child_inline) => { [INFO] [stdout] 526 | inline.clone_from(&*child_inline); [INFO] [stdout] 527 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/base.rs:603:32 [INFO] [stdout] | [INFO] [stdout] 603 | ... if let Some(inline) = WIDGET.bounds().inline() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/base.rs:607:29 [INFO] [stdout] | [INFO] [stdout] 607 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 603 ~ match WIDGET.bounds().inline() { Some(inline) => { [INFO] [stdout] 604 | for r in inline.negative_space().iter() { [INFO] [stdout] 605 | c.push_clip_rect(*r, true); [INFO] [stdout] 606 | } [INFO] [stdout] 607 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1346:12 [INFO] [stdout] | [INFO] [stdout] 1346 | if let Some(i) = self.data.iter().position(|(i, _)| i == &handle) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1348:9 [INFO] [stdout] | [INFO] [stdout] 1348 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1346 ~ match self.data.iter().position(|(i, _)| i == &handle) { Some(i) => { [INFO] [stdout] 1347 | self.data[i].1 = var; [INFO] [stdout] 1348 ~ } _ => { [INFO] [stdout] 1349 | self.data.push((handle, var)); [INFO] [stdout] 1350 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1640:12 [INFO] [stdout] | [INFO] [stdout] 1640 | if let Some(i) = self.p.property_index(property_id) { [INFO] [stdout] | ^^^^^^^^^^^^^^------^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1658:9 [INFO] [stdout] | [INFO] [stdout] 1658 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1640 ~ match self.p.property_index(property_id) { Some(i) => { [INFO] [stdout] 1641 | match &self.p.items[i].item { [INFO] [stdout] ... [INFO] [stdout] 1657 | } [INFO] [stdout] 1658 ~ } _ => { [INFO] [stdout] 1659 | if let Some(imp) = self.unset.get(&property_id) { [INFO] [stdout] ... [INFO] [stdout] 1672 | }); [INFO] [stdout] 1673 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1865:12 [INFO] [stdout] | [INFO] [stdout] 1865 | if let Some(c) = other.custom_build { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1867:9 [INFO] [stdout] | [INFO] [stdout] 1867 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1865 ~ match other.custom_build { Some(c) => { [INFO] [stdout] 1866 | self.custom_build = Some(c); [INFO] [stdout] 1867 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1995:12 [INFO] [stdout] | [INFO] [stdout] 1995 | if let Some(custom) = self.custom_build.clone() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:2000:9 [INFO] [stdout] | [INFO] [stdout] 2000 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1995 ~ match self.custom_build.clone() { Some(custom) => { [INFO] [stdout] 1996 | match custom.try_lock() { [INFO] [stdout] ... [INFO] [stdout] 1999 | } [INFO] [stdout] 2000 ~ } _ => { [INFO] [stdout] 2001 | self.default_build() [INFO] [stdout] 2002 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:2491:24 [INFO] [stdout] | [INFO] [stdout] 2491 | if let Some(data) = actions_data.remove(action_key) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:2497:21 [INFO] [stdout] | [INFO] [stdout] 2497 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2491 ~ match actions_data.remove(action_key) { Some(data) => { [INFO] [stdout] 2492 | let mut data = data.clone(); [INFO] [stdout] ... [INFO] [stdout] 2496 | b_actions_data.push(data.0); [INFO] [stdout] 2497 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:2502:20 [INFO] [stdout] | [INFO] [stdout] 2502 | if let Some(default) = default { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:2510:17 [INFO] [stdout] | [INFO] [stdout] 2510 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2502 ~ match default { Some(default) => { [INFO] [stdout] 2503 | let action = default(); [INFO] [stdout] ... [INFO] [stdout] 2509 | b_actions_data.push(data); [INFO] [stdout] 2510 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl ExactSizeIterator + Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:230:36 [INFO] [stdout] | [INFO] [stdout] 230 | pub fn out_of_bounds(&self) -> impl std::iter::ExactSizeIterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:230:26 [INFO] [stdout] | [INFO] [stdout] 230 | pub fn out_of_bounds(&self) -> impl std::iter::ExactSizeIterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 230 | pub fn out_of_bounds(&self) -> impl std::iter::ExactSizeIterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info.rs:308:16 [INFO] [stdout] | [INFO] [stdout] 308 | if let Some(wgt) = self.get(wid) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info.rs:321:13 [INFO] [stdout] | [INFO] [stdout] 321 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 308 ~ match self.get(wid) { Some(wgt) => { [INFO] [stdout] 309 | let transform = wgt.inner_transform(); [INFO] [stdout] ... [INFO] [stdout] 320 | } [INFO] [stdout] 321 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info.rs:336:16 [INFO] [stdout] | [INFO] [stdout] 336 | if let Some(wgt) = self.get(wid) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info.rs:350:13 [INFO] [stdout] | [INFO] [stdout] 350 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 336 ~ match self.get(wid) { Some(wgt) => { [INFO] [stdout] 337 | let visibility = wgt.visibility(); [INFO] [stdout] ... [INFO] [stdout] 349 | } [INFO] [stdout] 350 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info.rs:665:12 [INFO] [stdout] | [INFO] [stdout] 665 | if let Some(prev) = m.is_in_bounds { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info.rs:670:9 [INFO] [stdout] | [INFO] [stdout] 670 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 665 ~ match m.is_in_bounds { Some(prev) => { [INFO] [stdout] 666 | if prev != in_bounds { [INFO] [stdout] ... [INFO] [stdout] 669 | } [INFO] [stdout] 670 ~ } _ => { [INFO] [stdout] 671 | m.is_in_bounds = Some(in_bounds); [INFO] [stdout] ... [INFO] [stdout] 674 | } [INFO] [stdout] 675 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info.rs:1047:20 [INFO] [stdout] | [INFO] [stdout] 1047 | if let Some(info) = w.inspector_info() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info.rs:1062:17 [INFO] [stdout] | [INFO] [stdout] 1062 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1047 ~ match w.inspector_info() { Some(info) => { [INFO] [stdout] 1048 | let mod_path = info.builder.widget_type().path; [INFO] [stdout] ... [INFO] [stdout] 1061 | } [INFO] [stdout] 1062 ~ } _ => { [INFO] [stdout] 1063 | let _ = write!(&mut s, "/{}", w.id()); [INFO] [stdout] 1064 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info.rs:1083:16 [INFO] [stdout] | [INFO] [stdout] 1083 | if let Some(info) = self.inspector_info() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info.rs:1098:13 [INFO] [stdout] | [INFO] [stdout] 1098 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1083 ~ match self.inspector_info() { Some(info) => { [INFO] [stdout] 1084 | let mod_path = info.builder.widget_type().path; [INFO] [stdout] ... [INFO] [stdout] 1097 | } [INFO] [stdout] 1098 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info.rs:1280:16 [INFO] [stdout] | [INFO] [stdout] 1280 | if let Some(p) = self.parent() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info.rs:1282:13 [INFO] [stdout] | [INFO] [stdout] 1282 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1280 ~ match self.parent() { Some(p) => { [INFO] [stdout] 1281 | p.bounds_info().transform_style() [INFO] [stdout] 1282 ~ } _ => { [INFO] [stdout] 1283 | TransformStyle::Flat [INFO] [stdout] 1284 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1416:31 [INFO] [stdout] | [INFO] [stdout] 1416 | pub fn siblings(&self) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1416:21 [INFO] [stdout] | [INFO] [stdout] 1416 | pub fn siblings(&self) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1416 | pub fn siblings(&self) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1631:36 [INFO] [stdout] | [INFO] [stdout] 1631 | pub fn out_of_bounds(&self) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1631:26 [INFO] [stdout] | [INFO] [stdout] 1631 | pub fn out_of_bounds(&self) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1631 | pub fn out_of_bounds(&self) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1641:81 [INFO] [stdout] | [INFO] [stdout] 1641 | pub fn spatial_iter(&self, filter: impl Fn(&WidgetInfo) -> bool + Clone) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1641:25 [INFO] [stdout] | [INFO] [stdout] 1641 | pub fn spatial_iter(&self, filter: impl Fn(&WidgetInfo) -> bool + Clone) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/widget/info.rs:1641:40 [INFO] [stdout] | [INFO] [stdout] 1641 | pub fn spatial_iter(&self, filter: impl Fn(&WidgetInfo) -> bool + Clone) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1641 | pub fn spatial_iter bool + Clone>(&self, filter: T) -> impl Iterator + use { [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++ ~ ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1664:53 [INFO] [stdout] | [INFO] [stdout] 1664 | pub fn inner_contains(&self, point: PxPoint) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1664:27 [INFO] [stdout] | [INFO] [stdout] 1664 | pub fn inner_contains(&self, point: PxPoint) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1664 | pub fn inner_contains(&self, point: PxPoint) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1669:53 [INFO] [stdout] | [INFO] [stdout] 1669 | pub fn inner_intersects(&self, rect: PxRect) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1669:29 [INFO] [stdout] | [INFO] [stdout] 1669 | pub fn inner_intersects(&self, rect: PxRect) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1669 | pub fn inner_intersects(&self, rect: PxRect) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1675:56 [INFO] [stdout] | [INFO] [stdout] 1675 | pub fn inner_contains_rect(&self, rect: PxRect) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1675:32 [INFO] [stdout] | [INFO] [stdout] 1675 | pub fn inner_contains_rect(&self, rect: PxRect) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1675 | pub fn inner_contains_rect(&self, rect: PxRect) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1681:52 [INFO] [stdout] | [INFO] [stdout] 1681 | pub fn inner_contained(&self, rect: PxRect) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1681:28 [INFO] [stdout] | [INFO] [stdout] 1681 | pub fn inner_contained(&self, rect: PxRect) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1681 | pub fn inner_contained(&self, rect: PxRect) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1687:53 [INFO] [stdout] | [INFO] [stdout] 1687 | pub fn center_contained(&self, area: PxRect) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1687:29 [INFO] [stdout] | [INFO] [stdout] 1687 | pub fn center_contained(&self, area: PxRect) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1687 | pub fn center_contained(&self, area: PxRect) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1818:94 [INFO] [stdout] | [INFO] [stdout] 1818 | pub fn oriented(&self, origin: PxPoint, max_distance: Px, orientation: Orientation2D) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1818:21 [INFO] [stdout] | [INFO] [stdout] 1818 | pub fn oriented(&self, origin: PxPoint, max_distance: Px, orientation: Orientation2D) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1818 | pub fn oriented(&self, origin: PxPoint, max_distance: Px, orientation: Orientation2D) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1854:96 [INFO] [stdout] | [INFO] [stdout] 1854 | pub fn oriented_box(&self, origin: PxBox, max_distance: Px, orientation: Orientation2D) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1854:25 [INFO] [stdout] | [INFO] [stdout] 1854 | pub fn oriented_box(&self, origin: PxBox, max_distance: Px, orientation: Orientation2D) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1854 | pub fn oriented_box(&self, origin: PxBox, max_distance: Px, orientation: Orientation2D) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:520:16 [INFO] [stdout] | [INFO] [stdout] 520 | if let Some(a) = wgt.access() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:527:13 [INFO] [stdout] | [INFO] [stdout] 527 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 520 ~ match wgt.access() { Some(a) => { [INFO] [stdout] 521 | if let Some(t) = a.labels() { [INFO] [stdout] ... [INFO] [stdout] 526 | } [INFO] [stdout] 527 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:524:20 [INFO] [stdout] | [INFO] [stdout] 524 | if let Some(t) = a.describes() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:526:17 [INFO] [stdout] | [INFO] [stdout] 526 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 524 ~ match a.describes() { Some(t) => { [INFO] [stdout] 525 | state.described_by.entry(t.id()).or_default().push(wgt.id()); [INFO] [stdout] 526 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:550:38 [INFO] [stdout] | [INFO] [stdout] 550 | pub fn access_children(&self) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info/access.rs:550:28 [INFO] [stdout] | [INFO] [stdout] 550 | pub fn access_children(&self) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 550 | pub fn access_children(&self) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:1065:16 [INFO] [stdout] | [INFO] [stdout] 1065 | if let (true, Some(prev)) = (was_accessible, prev.access()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:1102:13 [INFO] [stdout] | [INFO] [stdout] 1102 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1065 ~ match (was_accessible, prev.access()) { (true, Some(prev)) => { [INFO] [stdout] 1066 | let mut children = None; [INFO] [stdout] ... [INFO] [stdout] 1101 | } [INFO] [stdout] 1102 ~ } _ => { [INFO] [stdout] 1103 | // was not accessible [INFO] [stdout] 1104 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:1203:12 [INFO] [stdout] | [INFO] [stdout] 1203 | if let Some(present) = self.state_source.iter_mut().find(|s| std::mem::discriminant(&**s) == discriminant) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^-----------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:1205:9 [INFO] [stdout] | [INFO] [stdout] 1205 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1203 ~ match self.state_source.iter_mut().find(|s| std::mem::discriminant(&**s) == discriminant) { Some(present) => { [INFO] [stdout] 1204 | *present = state; [INFO] [stdout] 1205 ~ } _ => { [INFO] [stdout] 1206 | self.state_source.push(state); [INFO] [stdout] 1207 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/tree.rs:257:12 [INFO] [stdout] | [INFO] [stdout] 257 | if let Some(mut c) = split.root_mut().first_child() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-----^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/tree.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 257 ~ match split.root_mut().first_child() { Some(mut c) => { [INFO] [stdout] 258 | self.parallel_fold_node(&mut c, take); [INFO] [stdout] ... [INFO] [stdout] 265 | } [INFO] [stdout] 266 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl DoubleEndedIterator + Iterator + ExactSizeIterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info/path.rs:264:39 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn interaction_path(&self) -> impl DoubleEndedIterator + ExactSizeIterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info/path.rs:264:29 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn interaction_path(&self) -> impl DoubleEndedIterator + ExactSizeIterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 264 | pub fn interaction_path(&self) -> impl DoubleEndedIterator + ExactSizeIterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/path.rs:402:16 [INFO] [stdout] | [INFO] [stdout] 402 | if let Some(i) = self.zip().zip(other.zip()).position(|(a, b)| a != b) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/path.rs:416:13 [INFO] [stdout] | [INFO] [stdout] 416 | } else if self.path.path.len() <= other.path.path.len() { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 402 ~ match self.zip().zip(other.zip()).position(|(a, b)| a != b) { Some(i) => { [INFO] [stdout] 403 | if i == 0 { [INFO] [stdout] ... [INFO] [stdout] 415 | } [INFO] [stdout] 416 ~ } _ => if self.path.path.len() <= other.path.path.len() { [INFO] [stdout] 417 | Some(Cow::Borrowed(self)) [INFO] [stdout] 418 | } else { [INFO] [stdout] 419 | Some(Cow::Borrowed(other)) [INFO] [stdout] 420 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:146:16 [INFO] [stdout] | [INFO] [stdout] 146 | if let Some(wgt) = tree.get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:157:13 [INFO] [stdout] | [INFO] [stdout] 157 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 146 ~ match tree.get(id) { Some(wgt) => { [INFO] [stdout] 147 | self.tree.index_mut(self.node).push_reuse(wgt.node(), &mut |old_data| { [INFO] [stdout] ... [INFO] [stdout] 156 | return; [INFO] [stdout] 157 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:307:12 [INFO] [stdout] | [INFO] [stdout] 307 | if let Some(t) = &previous_tree { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:314:9 [INFO] [stdout] | [INFO] [stdout] 314 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 307 ~ match &previous_tree { Some(t) => { [INFO] [stdout] 308 | let t = t.0.frame.read(); [INFO] [stdout] ... [INFO] [stdout] 313 | visibility_changed_subs = t.visibility_changed_subs.clone(); [INFO] [stdout] 314 ~ } _ => { [INFO] [stdout] 315 | generation = 0; [INFO] [stdout] ... [INFO] [stdout] 319 | visibility_changed_subs = IdMap::new(); [INFO] [stdout] 320 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:366:20 [INFO] [stdout] | [INFO] [stdout] 366 | if let Some(wgt) = tree.get(wid) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:372:17 [INFO] [stdout] | [INFO] [stdout] 372 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 366 ~ match tree.get(wid) { Some(wgt) => { [INFO] [stdout] 367 | let prev = prev_tree.get(wid).map(|w| w.interactivity()); [INFO] [stdout] ... [INFO] [stdout] 371 | } [INFO] [stdout] 372 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:444:20 [INFO] [stdout] | [INFO] [stdout] 444 | if let Some(wgt) = self.tree.get(*id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:446:17 [INFO] [stdout] | [INFO] [stdout] 446 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 444 ~ match self.tree.get(*id) { Some(wgt) => { [INFO] [stdout] 445 | list.insert_wgt(&wgt); [INFO] [stdout] 446 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:464:20 [INFO] [stdout] | [INFO] [stdout] 464 | if let Some(wgt) = self.tree.get(*id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:466:17 [INFO] [stdout] | [INFO] [stdout] 466 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 464 ~ match self.tree.get(*id) { Some(wgt) => { [INFO] [stdout] 465 | list.insert_wgt(&wgt); [INFO] [stdout] 466 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:487:20 [INFO] [stdout] | [INFO] [stdout] 487 | if let Some(wgt) = self.tree.get(*id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:489:17 [INFO] [stdout] | [INFO] [stdout] 489 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 487 ~ match self.tree.get(*id) { Some(wgt) => { [INFO] [stdout] 488 | list.insert_wgt(&wgt); [INFO] [stdout] 489 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:528:12 [INFO] [stdout] | [INFO] [stdout] 528 | if let Some(w) = self.tree.get(widget_id) { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:530:9 [INFO] [stdout] | [INFO] [stdout] 530 | } else if self.changed.contains(&widget_id) { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 528 ~ match self.tree.get(widget_id) { Some(w) => { [INFO] [stdout] 529 | w.interactivity() [INFO] [stdout] 530 ~ } _ => if self.changed.contains(&widget_id) { [INFO] [stdout] 531 | panic!("widget {widget_id} was in targets and not in new tree, invalid args"); [INFO] [stdout] 532 | } else { [INFO] [stdout] 533 | panic!("widget {widget_id} is not in targets"); [INFO] [stdout] 534 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1506:12 [INFO] [stdout] | [INFO] [stdout] 1506 | if let Some(w) = tree.get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1521:9 [INFO] [stdout] | [INFO] [stdout] 1521 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1506 ~ match tree.get(id) { Some(w) => { [INFO] [stdout] 1507 | for w in w.self_and_descendants() { [INFO] [stdout] ... [INFO] [stdout] 1520 | } [INFO] [stdout] 1521 ~ } _ => { [INFO] [stdout] 1522 | tracing::error!("collapse did not find `{}` in the info tree", id) [INFO] [stdout] 1523 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1537:12 [INFO] [stdout] | [INFO] [stdout] 1537 | if let Some(w) = tree.get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1551:9 [INFO] [stdout] | [INFO] [stdout] 1551 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1537 ~ match tree.get(id) { Some(w) => { [INFO] [stdout] 1538 | for w in w.descendants() { [INFO] [stdout] ... [INFO] [stdout] 1550 | } [INFO] [stdout] 1551 ~ } _ => { [INFO] [stdout] 1552 | tracing::error!("collapse_descendants did not find `{}` in the info tree", id) [INFO] [stdout] 1553 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1567:12 [INFO] [stdout] | [INFO] [stdout] 1567 | if let Some(w) = tree.get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1589:9 [INFO] [stdout] | [INFO] [stdout] 1589 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1567 ~ match tree.get(id) { Some(w) => { [INFO] [stdout] 1568 | if let Some(w) = w.children().nth(index) { [INFO] [stdout] ... [INFO] [stdout] 1588 | } [INFO] [stdout] 1589 ~ } _ => { [INFO] [stdout] 1590 | tracing::error!("collapse_child did not find `{}` in the info tree", id) [INFO] [stdout] 1591 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1568:16 [INFO] [stdout] | [INFO] [stdout] 1568 | if let Some(w) = w.children().nth(index) { [INFO] [stdout] | ^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1582:13 [INFO] [stdout] | [INFO] [stdout] 1582 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1568 ~ match w.children().nth(index) { Some(w) => { [INFO] [stdout] 1569 | for w in w.self_and_descendants() { [INFO] [stdout] ... [INFO] [stdout] 1581 | } [INFO] [stdout] 1582 ~ } _ => { [INFO] [stdout] 1583 | tracing::error!( [INFO] [stdout] ... [INFO] [stdout] 1587 | ) [INFO] [stdout] 1588 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:98:19 [INFO] [stdout] | [INFO] [stdout] 98 | } else if let Some(next) = self.front.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^----------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 98 ~ } else { match self.front.take() { Some(next) => { [INFO] [stdout] 99 | self.front = next.next_sibling(); [INFO] [stdout] 100 | Some(next) [INFO] [stdout] 101 ~ } _ => { [INFO] [stdout] 102 | None [INFO] [stdout] 103 ~ }}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:116:19 [INFO] [stdout] | [INFO] [stdout] 116 | } else if let Some(next) = self.back.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 119 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 116 ~ } else { match self.back.take() { Some(next) => { [INFO] [stdout] 117 | self.back = next.prev_sibling(); [INFO] [stdout] 118 | Some(next) [INFO] [stdout] 119 ~ } _ => { [INFO] [stdout] 120 | None [INFO] [stdout] 121 ~ }}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:143:12 [INFO] [stdout] | [INFO] [stdout] 143 | if let Some(n) = self.node.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 146 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 143 ~ match self.node.take() { Some(n) => { [INFO] [stdout] 144 | self.node = n.prev_sibling(); [INFO] [stdout] 145 | Some(n) [INFO] [stdout] 146 ~ } _ => { [INFO] [stdout] 147 | None [INFO] [stdout] 148 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:170:12 [INFO] [stdout] | [INFO] [stdout] 170 | if let Some(n) = self.node.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 170 ~ match self.node.take() { Some(n) => { [INFO] [stdout] 171 | self.node = n.next_sibling(); [INFO] [stdout] 172 | Some(n) [INFO] [stdout] 173 ~ } _ => { [INFO] [stdout] 174 | None [INFO] [stdout] 175 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:197:12 [INFO] [stdout] | [INFO] [stdout] 197 | if let Some(n) = self.node.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:200:9 [INFO] [stdout] | [INFO] [stdout] 200 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 197 ~ match self.node.take() { Some(n) => { [INFO] [stdout] 198 | self.node = n.parent(); [INFO] [stdout] 199 | Some(n) [INFO] [stdout] 200 ~ } _ => { [INFO] [stdout] 201 | None [INFO] [stdout] 202 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:265:12 [INFO] [stdout] | [INFO] [stdout] 265 | if let Some(wgt) = wgt.prev_sibling() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 266 | return Self::self_and_prev_siblings_in(wgt, ancestor); [INFO] [stdout] 267 | } else if let Some(parent) = wgt.parent() { [INFO] [stdout] | ------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:267:9 [INFO] [stdout] | [INFO] [stdout] 267 | } else if let Some(parent) = wgt.parent() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 265 ~ match wgt.prev_sibling() { Some(wgt) => { [INFO] [stdout] 266 | return Self::self_and_prev_siblings_in(wgt, ancestor); [INFO] [stdout] 267 ~ } _ => { match wgt.parent() { Some(parent) => { [INFO] [stdout] 268 | if parent != ancestor && wgt.tree == ancestor.tree { [INFO] [stdout] 269 | return Self::prev_siblings_in(parent, ancestor); [INFO] [stdout] 270 | } [INFO] [stdout] 271 ~ } _ => {}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:294:12 [INFO] [stdout] | [INFO] [stdout] 294 | if let Some(wgt) = wgt.next_sibling() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 295 | return Self::self_and_next_siblings_in(wgt, ancestor); [INFO] [stdout] 296 | } else if let Some(parent) = wgt.parent() { [INFO] [stdout] | ------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:296:9 [INFO] [stdout] | [INFO] [stdout] 296 | } else if let Some(parent) = wgt.parent() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:300:9 [INFO] [stdout] | [INFO] [stdout] 300 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 294 ~ match wgt.next_sibling() { Some(wgt) => { [INFO] [stdout] 295 | return Self::self_and_next_siblings_in(wgt, ancestor); [INFO] [stdout] 296 ~ } _ => { match wgt.parent() { Some(parent) => { [INFO] [stdout] 297 | if parent != ancestor && wgt.tree == ancestor.tree { [INFO] [stdout] 298 | return Self::next_siblings_in(parent, ancestor); [INFO] [stdout] 299 | } [INFO] [stdout] 300 ~ } _ => {}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node.rs:382:1 [INFO] [stdout] | [INFO] [stdout] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node.rs:382:1 [INFO] [stdout] | [INFO] [stdout] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `zng_app_proc_macros::property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node.rs:382:1 [INFO] [stdout] | [INFO] [stdout] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node.rs:382:1 [INFO] [stdout] | [INFO] [stdout] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `zng_app_proc_macros::property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node.rs:1421:12 [INFO] [stdout] | [INFO] [stdout] 1421 | if let Some(n) = self.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^----------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node.rs:1423:9 [INFO] [stdout] | [INFO] [stdout] 1423 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1421 ~ match self.take() { Some(n) => { [INFO] [stdout] 1422 | vec.push(n); [INFO] [stdout] 1423 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl impls::TakeOn` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:107:69 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn take_when(&self, var: impl IntoVar) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node/arc.rs:107:22 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn take_when(&self, var: impl IntoVar) -> TakeSlot { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/widget/node/arc.rs:107:34 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn take_when(&self, var: impl IntoVar) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 107 | pub fn take_when>(&self, var: T) -> TakeSlot> { [INFO] [stdout] | ++++++++++++++++++ ~ +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl impls::TakeOn` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:126:22 [INFO] [stdout] | [INFO] [stdout] 126 | ) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node/arc.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/widget/node/arc.rs:124:17 [INFO] [stdout] | [INFO] [stdout] 124 | filter: impl FnMut(&A) -> bool + Send + 'static, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 121 ~ pub fn take_on bool + Send + 'static>( [INFO] [stdout] 122 | &self, [INFO] [stdout] 123 | event: Event, [INFO] [stdout] 124 ~ filter: T, [INFO] [stdout] 125 | take_on_init: bool, [INFO] [stdout] 126 ~ ) -> TakeSlot> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl impls::TakeOn` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:144:47 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn take_on_init(&self) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node/arc.rs:144:25 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn take_on_init(&self) -> TakeSlot { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 144 | pub fn take_on_init(&self) -> TakeSlot> { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl impls::TakeOn` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:231:69 [INFO] [stdout] | [INFO] [stdout] 231 | pub fn take_when(&self, var: impl IntoVar) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node/arc.rs:231:22 [INFO] [stdout] | [INFO] [stdout] 231 | pub fn take_when(&self, var: impl IntoVar) -> TakeSlot { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/widget/node/arc.rs:231:34 [INFO] [stdout] | [INFO] [stdout] 231 | pub fn take_when(&self, var: impl IntoVar) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 231 | pub fn take_when>(&self, var: T) -> TakeSlot> { [INFO] [stdout] | ++++++++++++++++++ ~ +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl impls::TakeOn` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:252:22 [INFO] [stdout] | [INFO] [stdout] 252 | ) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node/arc.rs:248:9 [INFO] [stdout] | [INFO] [stdout] 248 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/widget/node/arc.rs:250:17 [INFO] [stdout] | [INFO] [stdout] 250 | filter: impl FnMut(&A) -> bool + Send + 'static, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 247 ~ pub fn take_on bool + Send + 'static>( [INFO] [stdout] 248 | &self, [INFO] [stdout] 249 | event: Event, [INFO] [stdout] 250 ~ filter: T, [INFO] [stdout] 251 | take_on_init: bool, [INFO] [stdout] 252 ~ ) -> TakeSlot> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl impls::TakeOn` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:270:47 [INFO] [stdout] | [INFO] [stdout] 270 | pub fn take_on_init(&self) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node/arc.rs:270:25 [INFO] [stdout] | [INFO] [stdout] 270 | pub fn take_on_init(&self) -> TakeSlot { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 270 | pub fn take_on_init(&self) -> TakeSlot> { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:418:20 [INFO] [stdout] | [INFO] [stdout] 418 | if let Some((_, id)) = slots.move_request { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^-----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 436 | } else if let Some(mut new) = slots.replacement.take() { [INFO] [stdout] | ------------------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:436:17 [INFO] [stdout] | [INFO] [stdout] 436 | } else if let Some(mut new) = slots.replacement.take() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:453:17 [INFO] [stdout] | [INFO] [stdout] 453 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 418 ~ match slots.move_request { Some((_, id)) => { [INFO] [stdout] 419 | // deinit to move to other slot. [INFO] [stdout] ... [INFO] [stdout] 435 | UPDATES.update(id); [INFO] [stdout] 436 ~ } _ => { match slots.replacement.take() { Some(mut new) => { [INFO] [stdout] 437 | // apply replacement. [INFO] [stdout] ... [INFO] [stdout] 452 | WIDGET.update_info().layout().render(); [INFO] [stdout] 453 ~ } _ => {}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:459:20 [INFO] [stdout] | [INFO] [stdout] 459 | if let Some((slot, _)) = &slots.move_request { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^-----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:466:17 [INFO] [stdout] | [INFO] [stdout] 466 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 459 ~ match &slots.move_request { Some((slot, _)) => { [INFO] [stdout] 460 | if *slot == self.slot && slots.owner.is_none() { [INFO] [stdout] ... [INFO] [stdout] 465 | } [INFO] [stdout] 466 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1130:12 [INFO] [stdout] | [INFO] [stdout] 1130 | if let Some(r) = self.ctrl.take_requests() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1270:9 [INFO] [stdout] | [INFO] [stdout] 1270 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1130 ~ match self.ctrl.take_requests() { Some(r) => { [INFO] [stdout] 1131 | if r.clear { [INFO] [stdout] ... [INFO] [stdout] 1269 | } [INFO] [stdout] 1270 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1164:24 [INFO] [stdout] | [INFO] [stdout] 1164 | if let Some(r) = self [INFO] [stdout] | _________________________^ - [INFO] [stdout] | | ______________________________________| [INFO] [stdout] 1165 | || .vec [INFO] [stdout] | ||____________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 1166 | | .iter_mut() [INFO] [stdout] 1167 | | .position(|w| w.with_context(WidgetUpdateMode::Ignore, || WIDGET.id() == id).unwrap_or(false)) [INFO] [stdout] | |_______________________________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1182:21 [INFO] [stdout] | [INFO] [stdout] 1182 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1164 ~ match self [INFO] [stdout] 1165 | .vec [INFO] [stdout] 1166 | .iter_mut() [INFO] [stdout] 1167 | .position(|w| w.with_context(WidgetUpdateMode::Ignore, || WIDGET.id() == id).unwrap_or(false)) [INFO] [stdout] 1168 ~ { Some(r) => { [INFO] [stdout] 1169 | let i = to(r, self.len()); [INFO] [stdout] ... [INFO] [stdout] 1181 | } [INFO] [stdout] 1182 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1246:24 [INFO] [stdout] | [INFO] [stdout] 1246 | if let Some(r) = self [INFO] [stdout] | _________________________^ - [INFO] [stdout] | | ______________________________________| [INFO] [stdout] 1247 | || .vec [INFO] [stdout] | ||____________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 1248 | | .iter_mut() [INFO] [stdout] 1249 | | .position(|w| w.with_context(WidgetUpdateMode::Ignore, || WIDGET.id() == id).unwrap_or(false)) [INFO] [stdout] | |_______________________________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1267:21 [INFO] [stdout] | [INFO] [stdout] 1267 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1246 ~ match self [INFO] [stdout] 1247 | .vec [INFO] [stdout] 1248 | .iter_mut() [INFO] [stdout] 1249 | .position(|w| w.with_context(WidgetUpdateMode::Ignore, || WIDGET.id() == id).unwrap_or(false)) [INFO] [stdout] 1250 ~ { Some(r) => { [INFO] [stdout] 1251 | let i = to(r, self.len()); [INFO] [stdout] ... [INFO] [stdout] 1266 | } [INFO] [stdout] 1267 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1926:24 [INFO] [stdout] | [INFO] [stdout] 1926 | if let (Some(s), Some(e)) = (tree.get(s), tree.get(e)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1931:21 [INFO] [stdout] | [INFO] [stdout] 1931 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1926 ~ match (tree.get(s), tree.get(e)) { (Some(s), Some(e)) => { [INFO] [stdout] 1927 | let parent = Some(parent); [INFO] [stdout] ... [INFO] [stdout] 1930 | } [INFO] [stdout] 1931 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1943:16 [INFO] [stdout] | [INFO] [stdout] 1943 | if let (Some(s), Some(e)) = (tree.get(s), tree.get(e)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1948:13 [INFO] [stdout] | [INFO] [stdout] 1948 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1943 ~ match (tree.get(s), tree.get(e)) { (Some(s), Some(e)) => { [INFO] [stdout] 1944 | let parent = Some(parent); [INFO] [stdout] ... [INFO] [stdout] 1947 | } [INFO] [stdout] 1948 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/easing.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | if let Some(when) = (*self).as_unboxed_any().downcast_ref::>() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 51 | } else if let Some(when) = (*self).as_unboxed_any().downcast_ref::>() { [INFO] [stdout] | ------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/easing.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | } else if let Some(when) = (*self).as_unboxed_any().downcast_ref::>() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/easing.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 34 ~ match (*self).as_unboxed_any().downcast_ref::>() { Some(when) => { [INFO] [stdout] 35 | let conditions: Vec<_> = when_conditions_data [INFO] [stdout] ... [INFO] [stdout] 50 | } [INFO] [stdout] 51 ~ } _ => { match (*self).as_unboxed_any().downcast_ref::>() { Some(when) => { [INFO] [stdout] 52 | let conditions: Vec<_> = when_conditions_data [INFO] [stdout] ... [INFO] [stdout] 59 | } [INFO] [stdout] 60 ~ } _ => {}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:49:1 [INFO] [stdout] | [INFO] [stdout] 49 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:49:1 [INFO] [stdout] | [INFO] [stdout] 49 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 49 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:49:1 [INFO] [stdout] | [INFO] [stdout] 49 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:49:1 [INFO] [stdout] | [INFO] [stdout] 49 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 49 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | #[property(CONTEXT, widget_impl(BarWgt))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | #[property(CONTEXT, widget_impl(BarWgt))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 54 | #[property(CONTEXT, widget_impl(BarWgt))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | #[property(CONTEXT, widget_impl(BarWgt))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | #[property(CONTEXT, widget_impl(BarWgt))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 54 | #[property(CONTEXT, widget_impl(BarWgt))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:213:1 [INFO] [stdout] | [INFO] [stdout] 213 | #[property(BORDER)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:213:1 [INFO] [stdout] | [INFO] [stdout] 213 | #[property(BORDER)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 213 | #[property(BORDER)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:213:1 [INFO] [stdout] | [INFO] [stdout] 213 | #[property(BORDER)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:213:1 [INFO] [stdout] | [INFO] [stdout] 213 | #[property(BORDER)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 213 | #[property(BORDER)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:218:1 [INFO] [stdout] | [INFO] [stdout] 218 | #[property(BORDER)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:218:1 [INFO] [stdout] | [INFO] [stdout] 218 | #[property(BORDER)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 218 | #[property(BORDER)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:218:1 [INFO] [stdout] | [INFO] [stdout] 218 | #[property(BORDER)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:218:1 [INFO] [stdout] | [INFO] [stdout] 218 | #[property(BORDER)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 218 | #[property(BORDER)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:401:1 [INFO] [stdout] | [INFO] [stdout] 401 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:401:1 [INFO] [stdout] | [INFO] [stdout] 401 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 401 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:401:1 [INFO] [stdout] | [INFO] [stdout] 401 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:401:1 [INFO] [stdout] | [INFO] [stdout] 401 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 401 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:971:1 [INFO] [stdout] | [INFO] [stdout] 971 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:971:1 [INFO] [stdout] | [INFO] [stdout] 971 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 971 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:971:1 [INFO] [stdout] | [INFO] [stdout] 971 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:971:1 [INFO] [stdout] | [INFO] [stdout] 971 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 971 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1099:13 [INFO] [stdout] | [INFO] [stdout] 1099 | #[property(CONTEXT, widget_impl($name))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1110 | / test! { [INFO] [stdout] 1111 | | Bar [INFO] [stdout] 1112 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1099:13 [INFO] [stdout] | [INFO] [stdout] 1099 | #[property(CONTEXT, widget_impl($name))] [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 1110 | / test! { [INFO] [stdout] 1111 | | Bar [INFO] [stdout] 1112 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the macro `test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1099 | #[property(CONTEXT, widget_impl($name))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1099:13 [INFO] [stdout] | [INFO] [stdout] 1099 | #[property(CONTEXT, widget_impl($name))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1110 | / test! { [INFO] [stdout] 1111 | | Bar [INFO] [stdout] 1112 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1099:13 [INFO] [stdout] | [INFO] [stdout] 1099 | #[property(CONTEXT, widget_impl($name))] [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 1110 | / test! { [INFO] [stdout] 1111 | | Bar [INFO] [stdout] 1112 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the macro `test` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1099 | #[property(CONTEXT, widget_impl($name))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1139:5 [INFO] [stdout] | [INFO] [stdout] 1139 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1139:5 [INFO] [stdout] | [INFO] [stdout] 1139 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1139 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1139:5 [INFO] [stdout] | [INFO] [stdout] 1139 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1139:5 [INFO] [stdout] | [INFO] [stdout] 1139 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1139 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1165:5 [INFO] [stdout] | [INFO] [stdout] 1165 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1165:5 [INFO] [stdout] | [INFO] [stdout] 1165 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1165 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1165:5 [INFO] [stdout] | [INFO] [stdout] 1165 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1165:5 [INFO] [stdout] | [INFO] [stdout] 1165 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1165 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1171:5 [INFO] [stdout] | [INFO] [stdout] 1171 | #[property(CHILD_CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1171:5 [INFO] [stdout] | [INFO] [stdout] 1171 | #[property(CHILD_CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1171 | #[property(CHILD_CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1171:5 [INFO] [stdout] | [INFO] [stdout] 1171 | #[property(CHILD_CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1171:5 [INFO] [stdout] | [INFO] [stdout] 1171 | #[property(CHILD_CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1171 | #[property(CHILD_CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1176:5 [INFO] [stdout] | [INFO] [stdout] 1176 | #[property(CHILD_CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1176:5 [INFO] [stdout] | [INFO] [stdout] 1176 | #[property(CHILD_CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1176 | #[property(CHILD_CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1176:5 [INFO] [stdout] | [INFO] [stdout] 1176 | #[property(CHILD_CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1176:5 [INFO] [stdout] | [INFO] [stdout] 1176 | #[property(CHILD_CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1176 | #[property(CHILD_CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1182:5 [INFO] [stdout] | [INFO] [stdout] 1182 | #[property(CHILD_LAYOUT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1182:5 [INFO] [stdout] | [INFO] [stdout] 1182 | #[property(CHILD_LAYOUT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1182 | #[property(CHILD_LAYOUT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1182:5 [INFO] [stdout] | [INFO] [stdout] 1182 | #[property(CHILD_LAYOUT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1182:5 [INFO] [stdout] | [INFO] [stdout] 1182 | #[property(CHILD_LAYOUT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1182 | #[property(CHILD_LAYOUT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1187:5 [INFO] [stdout] | [INFO] [stdout] 1187 | #[property(CHILD_LAYOUT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1187:5 [INFO] [stdout] | [INFO] [stdout] 1187 | #[property(CHILD_LAYOUT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1187 | #[property(CHILD_LAYOUT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1187:5 [INFO] [stdout] | [INFO] [stdout] 1187 | #[property(CHILD_LAYOUT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1187:5 [INFO] [stdout] | [INFO] [stdout] 1187 | #[property(CHILD_LAYOUT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1187 | #[property(CHILD_LAYOUT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1193:5 [INFO] [stdout] | [INFO] [stdout] 1193 | #[property(BORDER)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1193:5 [INFO] [stdout] | [INFO] [stdout] 1193 | #[property(BORDER)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1193 | #[property(BORDER)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1193:5 [INFO] [stdout] | [INFO] [stdout] 1193 | #[property(BORDER)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1193:5 [INFO] [stdout] | [INFO] [stdout] 1193 | #[property(BORDER)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1193 | #[property(BORDER)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1198:5 [INFO] [stdout] | [INFO] [stdout] 1198 | #[property(BORDER)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1198:5 [INFO] [stdout] | [INFO] [stdout] 1198 | #[property(BORDER)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1198 | #[property(BORDER)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1198:5 [INFO] [stdout] | [INFO] [stdout] 1198 | #[property(BORDER)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1198:5 [INFO] [stdout] | [INFO] [stdout] 1198 | #[property(BORDER)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1198 | #[property(BORDER)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1204:5 [INFO] [stdout] | [INFO] [stdout] 1204 | #[property(LAYOUT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1204:5 [INFO] [stdout] | [INFO] [stdout] 1204 | #[property(LAYOUT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1204 | #[property(LAYOUT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1204:5 [INFO] [stdout] | [INFO] [stdout] 1204 | #[property(LAYOUT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1204:5 [INFO] [stdout] | [INFO] [stdout] 1204 | #[property(LAYOUT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1204 | #[property(LAYOUT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1209:5 [INFO] [stdout] | [INFO] [stdout] 1209 | #[property(LAYOUT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1209:5 [INFO] [stdout] | [INFO] [stdout] 1209 | #[property(LAYOUT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1209 | #[property(LAYOUT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1209:5 [INFO] [stdout] | [INFO] [stdout] 1209 | #[property(LAYOUT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1209:5 [INFO] [stdout] | [INFO] [stdout] 1209 | #[property(LAYOUT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1209 | #[property(LAYOUT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1215:5 [INFO] [stdout] | [INFO] [stdout] 1215 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1215:5 [INFO] [stdout] | [INFO] [stdout] 1215 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1215 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1215:5 [INFO] [stdout] | [INFO] [stdout] 1215 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1215:5 [INFO] [stdout] | [INFO] [stdout] 1215 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1215 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1220:5 [INFO] [stdout] | [INFO] [stdout] 1220 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1220:5 [INFO] [stdout] | [INFO] [stdout] 1220 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1220 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1220:5 [INFO] [stdout] | [INFO] [stdout] 1220 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1220:5 [INFO] [stdout] | [INFO] [stdout] 1220 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1220 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1226:5 [INFO] [stdout] | [INFO] [stdout] 1226 | #[property(SIZE)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1226:5 [INFO] [stdout] | [INFO] [stdout] 1226 | #[property(SIZE)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1226 | #[property(SIZE)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1226:5 [INFO] [stdout] | [INFO] [stdout] 1226 | #[property(SIZE)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1226:5 [INFO] [stdout] | [INFO] [stdout] 1226 | #[property(SIZE)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1226 | #[property(SIZE)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1231:5 [INFO] [stdout] | [INFO] [stdout] 1231 | #[property(SIZE)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1231:5 [INFO] [stdout] | [INFO] [stdout] 1231 | #[property(SIZE)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1231 | #[property(SIZE)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1231:5 [INFO] [stdout] | [INFO] [stdout] 1231 | #[property(SIZE)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1231:5 [INFO] [stdout] | [INFO] [stdout] 1231 | #[property(SIZE)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1231 | #[property(SIZE)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1237:5 [INFO] [stdout] | [INFO] [stdout] 1237 | #[property(EVENT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1237:5 [INFO] [stdout] | [INFO] [stdout] 1237 | #[property(EVENT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1237 | #[property(EVENT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1237:5 [INFO] [stdout] | [INFO] [stdout] 1237 | #[property(EVENT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1237:5 [INFO] [stdout] | [INFO] [stdout] 1237 | #[property(EVENT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1237 | #[property(EVENT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1242:5 [INFO] [stdout] | [INFO] [stdout] 1242 | #[property(EVENT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1242:5 [INFO] [stdout] | [INFO] [stdout] 1242 | #[property(EVENT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1242 | #[property(EVENT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1242:5 [INFO] [stdout] | [INFO] [stdout] 1242 | #[property(EVENT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1242:5 [INFO] [stdout] | [INFO] [stdout] 1242 | #[property(EVENT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1242 | #[property(EVENT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1328:5 [INFO] [stdout] | [INFO] [stdout] 1328 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1328:5 [INFO] [stdout] | [INFO] [stdout] 1328 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1328 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1328:5 [INFO] [stdout] | [INFO] [stdout] 1328 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1328:5 [INFO] [stdout] | [INFO] [stdout] 1328 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1328 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1382:20 [INFO] [stdout] | [INFO] [stdout] 1382 | if let Some(trace) = trace.get_new() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1386:17 [INFO] [stdout] | [INFO] [stdout] 1386 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1382 ~ match trace.get_new() { Some(trace) => { [INFO] [stdout] 1383 | WIDGET.with_state_mut(|mut s| { [INFO] [stdout] 1384 | s.entry(*TRACE_ID).or_default().insert(trace); [INFO] [stdout] 1385 | }) [INFO] [stdout] 1386 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1369:5 [INFO] [stdout] | [INFO] [stdout] 1369 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1369:5 [INFO] [stdout] | [INFO] [stdout] 1369 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1369 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1369:5 [INFO] [stdout] | [INFO] [stdout] 1369 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1369:5 [INFO] [stdout] | [INFO] [stdout] 1369 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1369 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1392:5 [INFO] [stdout] | [INFO] [stdout] 1392 | #[property(CONTEXT, default("default-trace"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1392:5 [INFO] [stdout] | [INFO] [stdout] 1392 | #[property(CONTEXT, default("default-trace"))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1392 | #[property(CONTEXT, default("default-trace"))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1392:5 [INFO] [stdout] | [INFO] [stdout] 1392 | #[property(CONTEXT, default("default-trace"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1392:5 [INFO] [stdout] | [INFO] [stdout] 1392 | #[property(CONTEXT, default("default-trace"))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1392 | #[property(CONTEXT, default("default-trace"))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1398:5 [INFO] [stdout] | [INFO] [stdout] 1398 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1398:5 [INFO] [stdout] | [INFO] [stdout] 1398 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1398 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1398:5 [INFO] [stdout] | [INFO] [stdout] 1398 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1398:5 [INFO] [stdout] | [INFO] [stdout] 1398 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1398 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1406:5 [INFO] [stdout] | [INFO] [stdout] 1406 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1406:5 [INFO] [stdout] | [INFO] [stdout] 1406 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1406 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1406:5 [INFO] [stdout] | [INFO] [stdout] 1406 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1406:5 [INFO] [stdout] | [INFO] [stdout] 1406 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1406 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1406:5 [INFO] [stdout] | [INFO] [stdout] 1406 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1406:5 [INFO] [stdout] | [INFO] [stdout] 1406 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1406 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var<&'static str>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/widget.rs:1406:5 [INFO] [stdout] | [INFO] [stdout] 1406 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/widget.rs:1406:5 [INFO] [stdout] | [INFO] [stdout] 1406 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1406 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/ui_node_list.rs:112:1 [INFO] [stdout] | [INFO] [stdout] 112 | #[property(CHILD, capture, widget_impl(ListWgt))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/ui_node_list.rs:112:1 [INFO] [stdout] | [INFO] [stdout] 112 | #[property(CHILD, capture, widget_impl(ListWgt))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 112 | #[property(CHILD, capture, widget_impl(ListWgt))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/ui_node_list.rs:112:1 [INFO] [stdout] | [INFO] [stdout] 112 | #[property(CHILD, capture, widget_impl(ListWgt))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/ui_node_list.rs:112:1 [INFO] [stdout] | [INFO] [stdout] 112 | #[property(CHILD, capture, widget_impl(ListWgt))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 112 | #[property(CHILD, capture, widget_impl(ListWgt))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/ui_node_list.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/ui_node_list.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 135 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/ui_node_list.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | #[property(CONTEXT)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/ui_node_list.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | #[property(CONTEXT)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 135 | #[property(CONTEXT)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/ui_node_list.rs:163:5 [INFO] [stdout] | [INFO] [stdout] 163 | #[property(CONTEXT, default(*CTX_VAL.get()))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/ui_node_list.rs:163:5 [INFO] [stdout] | [INFO] [stdout] 163 | #[property(CONTEXT, default(*CTX_VAL.get()))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 163 | #[property(CONTEXT, default(*CTX_VAL.get()))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/ui_node_list.rs:163:5 [INFO] [stdout] | [INFO] [stdout] 163 | #[property(CONTEXT, default(*CTX_VAL.get()))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/ui_node_list.rs:163:5 [INFO] [stdout] | [INFO] [stdout] 163 | #[property(CONTEXT, default(*CTX_VAL.get()))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 163 | #[property(CONTEXT, default(*CTX_VAL.get()))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/ui_node_list.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 168 | #[property(CHILD)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/ui_node_list.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 168 | #[property(CHILD)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 168 | #[property(CHILD)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/tests/ui_node_list.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 168 | #[property(CHILD)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/tests/ui_node_list.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 168 | #[property(CHILD)] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 168 | #[property(CHILD)] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:347:20 [INFO] [stdout] | [INFO] [stdout] 347 | if let Some(img) = VIEW_PROCESS.on_image_metadata_loaded(id, size, ppi, is_mask) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:350:17 [INFO] [stdout] | [INFO] [stdout] 350 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 347 ~ match VIEW_PROCESS.on_image_metadata_loaded(id, size, ppi, is_mask) { Some(img) => { [INFO] [stdout] 348 | let args = RawImageArgs::now(img); [INFO] [stdout] 349 | self.notify_event(RAW_IMAGE_METADATA_LOADED_EVENT.new_update(args), observer); [INFO] [stdout] 350 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:360:20 [INFO] [stdout] | [INFO] [stdout] 360 | if let Some(img) = VIEW_PROCESS.on_image_partially_loaded(id, partial_size, ppi, is_opaque, is_mask, partial_bgra8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------------------------------------------------------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:363:17 [INFO] [stdout] | [INFO] [stdout] 363 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 360 ~ match VIEW_PROCESS.on_image_partially_loaded(id, partial_size, ppi, is_opaque, is_mask, partial_bgra8) { Some(img) => { [INFO] [stdout] 361 | let args = RawImageArgs::now(img); [INFO] [stdout] 362 | self.notify_event(RAW_IMAGE_PARTIALLY_LOADED_EVENT.new_update(args), observer); [INFO] [stdout] 363 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:366:20 [INFO] [stdout] | [INFO] [stdout] 366 | if let Some(img) = VIEW_PROCESS.on_image_loaded(image) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:369:17 [INFO] [stdout] | [INFO] [stdout] 369 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 366 ~ match VIEW_PROCESS.on_image_loaded(image) { Some(img) => { [INFO] [stdout] 367 | let args = RawImageArgs::now(img); [INFO] [stdout] 368 | self.notify_event(RAW_IMAGE_LOADED_EVENT.new_update(args), observer); [INFO] [stdout] 369 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:372:20 [INFO] [stdout] | [INFO] [stdout] 372 | if let Some(img) = VIEW_PROCESS.on_image_error(id, error) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:375:17 [INFO] [stdout] | [INFO] [stdout] 375 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 372 ~ match VIEW_PROCESS.on_image_error(id, error) { Some(img) => { [INFO] [stdout] 373 | let args = RawImageArgs::now(img); [INFO] [stdout] 374 | self.notify_event(RAW_IMAGE_LOAD_ERROR_EVENT.new_update(args), observer); [INFO] [stdout] 375 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:387:20 [INFO] [stdout] | [INFO] [stdout] 387 | if let Some(img) = VIEW_PROCESS.on_frame_image_ready(image_id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:390:17 [INFO] [stdout] | [INFO] [stdout] 390 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 387 ~ match VIEW_PROCESS.on_frame_image_ready(image_id) { Some(img) => { [INFO] [stdout] 388 | let args = RawFrameImageReadyArgs::now(img, window_id(w_id), frame_id, selection); [INFO] [stdout] 389 | self.notify_event(RAW_FRAME_IMAGE_READY_EVENT.new_update(args), observer); [INFO] [stdout] 390 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:401:20 [INFO] [stdout] | [INFO] [stdout] 401 | if let Some(update) = crate::access::on_access_command(window_id(win_id), WidgetId::from_raw(wgt_id.0), command) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------------------------------------------------------------------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:403:17 [INFO] [stdout] | [INFO] [stdout] 403 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 401 ~ match crate::access::on_access_command(window_id(win_id), WidgetId::from_raw(wgt_id.0), command) { Some(update) => { [INFO] [stdout] 402 | self.notify_event(update, observer); [INFO] [stdout] 403 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:623:24 [INFO] [stdout] | [INFO] [stdout] 623 | if let Some(last) = self.pending_view_events.last_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------------------^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:628:21 [INFO] [stdout] | [INFO] [stdout] 628 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 623 ~ match self.pending_view_events.last_mut() { Some(last) => { [INFO] [stdout] 624 | match last.coalesce(ev) { [INFO] [stdout] ... [INFO] [stdout] 627 | } [INFO] [stdout] 628 ~ } _ => { [INFO] [stdout] 629 | self.pending_view_events.push(ev); [INFO] [stdout] 630 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:1260:12 [INFO] [stdout] | [INFO] [stdout] 1260 | if let Some(pending) = self.pending_exit.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:1267:9 [INFO] [stdout] | [INFO] [stdout] 1267 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1260 ~ match self.pending_exit.take() { Some(pending) => { [INFO] [stdout] 1261 | if pending.handle.is_stopped() { [INFO] [stdout] ... [INFO] [stdout] 1266 | } [INFO] [stdout] 1267 ~ } _ => { [INFO] [stdout] 1268 | false [INFO] [stdout] 1269 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:1282:12 [INFO] [stdout] | [INFO] [stdout] 1282 | if let Some(response) = APP_PROCESS_SV.write().take_requests() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^-------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:1289:9 [INFO] [stdout] | [INFO] [stdout] 1289 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1282 ~ match APP_PROCESS_SV.write().take_requests() { Some(response) => { [INFO] [stdout] 1283 | let args = ExitRequestedArgs::now(); [INFO] [stdout] ... [INFO] [stdout] 1288 | EXIT_REQUESTED_EVENT.notify(args); [INFO] [stdout] 1289 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:1373:12 [INFO] [stdout] | [INFO] [stdout] 1373 | if let Some(r) = &self.exit_requests { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:1375:9 [INFO] [stdout] | [INFO] [stdout] 1375 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1373 ~ match &self.exit_requests { Some(r) => { [INFO] [stdout] 1374 | r.response_var() [INFO] [stdout] 1375 ~ } _ => { [INFO] [stdout] 1376 | let (responder, response) = response_var(); [INFO] [stdout] ... [INFO] [stdout] 1379 | response [INFO] [stdout] 1380 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `zng_app` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/lib.rs [INFO] [stderr] * src/render.rs [INFO] [stderr] * src/update.rs [INFO] [stderr] * src/widget/base.rs [INFO] [stderr] * src/widget/builder.rs [INFO] [stderr] * src/widget/info.rs [INFO] [stderr] * src/widget/info/builder.rs [INFO] [stderr] * src/widget/inspector.rs [INFO] [stderr] * src/widget/node.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error: expected item after attributes [INFO] [stderr] --> src/widget/base.rs:916:1 [INFO] [stderr] | [INFO] [stderr] 913 | / /// Unique ID of the widget instance. [INFO] [stderr] 914 | | /// [INFO] [stderr] 915 | | /// Note that the `id` can convert from a `&'static str` unique name. [INFO] [stderr] | |_____________________________________________________________________- other attributes here [INFO] [stderr] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] + use<> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: expected item after attributes [INFO] [stderr] --> src/widget/node.rs:382:1 [INFO] [stderr] | [INFO] [stderr] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] + use<> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `crate::widget::base::Parallel`, `crate::widget::base::PARALLEL_VAR` [INFO] [stderr] --> src/render.rs:34:16 [INFO] [stderr] | [INFO] [stderr] 34 | base::{Parallel, PARALLEL_VAR}, [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^^^^ no `PARALLEL_VAR` in `widget::base` [INFO] [stderr] | | [INFO] [stderr] | no `Parallel` in `widget::base` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `crate::widget::node::BoxedUiNode`, `crate::widget::node::UiNode` [INFO] [stderr] --> src/update.rs:22:16 [INFO] [stderr] | [INFO] [stderr] 22 | node::{BoxedUiNode, UiNode}, [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^ no `UiNode` in `widget::node` [INFO] [stderr] | | [INFO] [stderr] | no `BoxedUiNode` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/render.rs:184:13 [INFO] [stdout] | [INFO] [stdout] 184 | let gen = renderer [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0432]: unresolved import `crate::widget::node::WhenUiNodeListBuilder` [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/render.rs:188:38 [INFO] [stdout] | [INFO] [stdout] 188 | let view_process_has_frame = gen != ViewProcessGen::INVALID && gen == info_tree.view_process_gen(); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/widget/builder.rs:3:37 [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/render.rs:188:72 [INFO] [stdout] | [INFO] [stdout] 188 | let view_process_has_frame = gen != ViewProcessGen::INVALID && gen == info_tree.view_process_gen(); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:295:37 [INFO] [stdout] | [INFO] [stdout] 295 | pub fn handle_disconnect(&self, gen: ViewProcessGen) { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 3 | use crate::{handler::WidgetHandler, widget::node::WhenUiNodeListBuilder}; [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:296:48 [INFO] [stdout] | [INFO] [stdout] 296 | self.write().process.handle_disconnect(gen) [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `WhenUiNodeListBuilder` in `widget::node` [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:358:40 [INFO] [stdout] | [INFO] [stdout] 358 | pub(super) fn handle_inited(&self, gen: ViewProcessGen, extensions: ApiExtensions) { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:361:34 [INFO] [stdout] | [INFO] [stdout] 361 | me.process.handle_inited(gen); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0432]: unresolved imports `super::base::WidgetBase`, `super::base::WidgetExt`, `super::node::with_new_context_init_id`, `super::node::ArcNode`, `super::node::ArcNodeList`, `super::node::BoxedUiNode`, `super::node::BoxedUiNodeList`, `super::node::FillUiNode`, `super::node::UiNode`, `super::node::UiNodeList`, `super::node::WhenUiNodeBuilder` [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:550:13 [INFO] [stdout] | [INFO] [stdout] 550 | let gen = self.process.generation(); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/widget/builder.rs:228:12 [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:551:23 [INFO] [stdout] | [INFO] [stdout] 551 | let invalid = gen != self.data_generation; [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/view_process.rs:553:36 [INFO] [stdout] | [INFO] [stdout] 553 | self.data_generation = gen; [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 228 | base::{WidgetBase, WidgetExt}, [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/widget/info.rs:299:21 [INFO] [stdout] | [INFO] [stdout] 299 | if let Some(gen) = view_process_gen { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^ no `WidgetExt` in `widget::base` [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/widget/info.rs:300:38 [INFO] [stdout] | [INFO] [stdout] 300 | frame.view_process_gen = gen; [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | | [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/running.rs:618:51 [INFO] [stdout] | [INFO] [stdout] 618 | zng_view_api::Event::Disconnected(gen) => { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | no `WidgetBase` in `widget::base` [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/running.rs:620:52 [INFO] [stdout] | [INFO] [stdout] 620 | VIEW_PROCESS.handle_disconnect(gen); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 229 | node::{ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/event/command.rs:140:75 [INFO] [stdout] | [INFO] [stdout] 140 | ... $vis:vis static $COMMAND:ident $(=> |$cmd:ident|$custom_meta_init:expr ;)? $(= { $($meta_ident:ident $(!)? : $meta_init:expr),* $(,... [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 140 | $vis:vis static $COMMAND:ident $(=> |$cmd:ident|$custom_meta_init:expr_2021 ;)? $(= { $($meta_ident:ident $(!)? : $meta_init:expr),* $(,)? };)? $(;)? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 230 | with_new_context_init_id, ArcNode, ArcNodeList, BoxedUiNode, BoxedUiNodeList, FillUiNode, UiNode, UiNodeList, WhenUiNodeBuilder, [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/event/command.rs:140:129 [INFO] [stdout] | [INFO] [stdout] 140 | ... $vis:vis static $COMMAND:ident $(=> |$cmd:ident|$custom_meta_init:expr ;)? $(= { $($meta_ident:ident $(!)? : $meta_init:expr),* $(,... [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 140 | $vis:vis static $COMMAND:ident $(=> |$cmd:ident|$custom_meta_init:expr ;)? $(= { $($meta_ident:ident $(!)? : $meta_init:expr_2021),* $(,)? };)? $(;)? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/event/command.rs:172:67 [INFO] [stdout] | [INFO] [stdout] 172 | $vis:vis static $COMMAND:ident => |$cmd:ident| $meta_init:expr; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 172 | $vis:vis static $COMMAND:ident => |$cmd:ident| $meta_init:expr_2021; [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | | | | | | | | | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/event/command.rs:188:60 [INFO] [stdout] | [INFO] [stdout] 188 | $vis:vis static $COMMAND:ident = { l10n: $l10n_arg:expr, $($meta_ident:ident : $meta_init:expr),* $(,)? }; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 188 | $vis:vis static $COMMAND:ident = { l10n: $l10n_arg:expr_2021, $($meta_ident:ident : $meta_init:expr),* $(,)? }; [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | | | | | | | | no `UiNodeList` in `widget::node` [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/event/command.rs:188:99 [INFO] [stdout] | [INFO] [stdout] 188 | $vis:vis static $COMMAND:ident = { l10n: $l10n_arg:expr, $($meta_ident:ident : $meta_init:expr),* $(,)? }; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 188 | $vis:vis static $COMMAND:ident = { l10n: $l10n_arg:expr, $($meta_ident:ident : $meta_init:expr_2021),* $(,)? }; [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | | | | | | | no `UiNode` in `widget::node` [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/event/command.rs:219:77 [INFO] [stdout] | [INFO] [stdout] 219 | $vis:vis static $COMMAND:ident = { $($meta_ident:ident : $meta_init:expr),* $(,)? }; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 219 | $vis:vis static $COMMAND:ident = { $($meta_ident:ident : $meta_init:expr_2021),* $(,)? }; [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | | | | | | no `FillUiNode` in `widget::node` [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/widget/node/list.rs:53:12 [INFO] [stdout] | [INFO] [stdout] 53 | ($node:expr; $n:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ($node:expr_2021; $n:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | | | | | no `BoxedUiNodeList` in `widget::node` [INFO] [stderr] | | | | no `BoxedUiNode` in `widget::node` [INFO] [stderr] | | | no `ArcNodeList` in `widget::node` [INFO] [stderr] | | no `ArcNode` in `widget::node` [INFO] [stderr] | no `with_new_context_init_id` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNodeList [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `crate::widget::node::UiNode` [INFO] [stderr] --> src/widget/info/builder.rs:12:30 [INFO] [stderr] | [INFO] [stderr] 12 | widget::{border::BORDER, node::UiNode, WidgetId, WidgetUpdateMode, WIDGET}, [INFO] [stderr] | ^^^^^^^^^^^^ no `UiNode` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `super::node::ZIndex` [INFO] [stderr] --> src/widget/info.rs:41:13 [INFO] [stderr] | [INFO] [stderr] 41 | use super::{node::ZIndex, WidgetId}; [INFO] [stderr] | ^^^^^^^^^^^^ no `ZIndex` in `widget::node` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `crate::widget::node::match_node`, `crate::widget::node::BoxedUiNode`, `crate::widget::node::UiNode`, `crate::widget::node::UiNodeOp` [INFO] [stderr] --> src/widget/inspector.rs:12:16 [INFO] [stderr] | [INFO] [stderr] 12 | node::{match_node, BoxedUiNode, UiNode, UiNodeOp}, [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^ ^^^^^^^^ no `UiNodeOp` in `widget::node` [INFO] [stderr] | | | | [INFO] [stderr] | | | no `UiNode` in `widget::node` [INFO] [stderr] | | no `BoxedUiNode` in `widget::node` [INFO] [stderr] | no `match_node` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `crate::widget::base::NonWidgetBase`, `crate::widget::base::WidgetBase`, `crate::widget::base::WidgetExt`, `crate::widget::base::WidgetImpl` [INFO] [stderr] --> src/lib.rs:115:43 [INFO] [stderr] | [INFO] [stderr] 115 | pub use crate::widget::base::{NonWidgetBase, WidgetBase, WidgetExt, WidgetImpl}; [INFO] [stderr] | ^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^ no `WidgetImpl` in `widget::base` [INFO] [stderr] | | | | [INFO] [stderr] | | | no `WidgetExt` in `widget::base` [INFO] [stderr] | | no `WidgetBase` in `widget::base` [INFO] [stderr] | no `NonWidgetBase` in `widget::base` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `crate::widget::node::ui_node_list_default`, `crate::widget::node::ArcNode`, `crate::widget::node::ArcNodeList`, `crate::widget::node::BoxedUiNode`, `crate::widget::node::BoxedUiNodeList`, `crate::widget::node::NilUiNode`, `crate::widget::node::UiNode`, `crate::widget::node::UiNodeList`, `crate::widget::node::UiVec` [INFO] [stderr] --> src/lib.rs:121:17 [INFO] [stderr] | [INFO] [stderr] 121 | ui_node_list_default, ArcNode, ArcNodeList, BoxedUiNode, BoxedUiNodeList, NilUiNode, UiNode, UiNodeList, UiVec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^ ^^^^^^^^^^ ^^^^^ no `UiVec` in `widget::node` [INFO] [stderr] | | | | | | | | | [INFO] [stderr] | | | | | | | | no `UiNodeList` in `widget::node` [INFO] [stderr] | | | | | | | no `UiNode` in `widget::node` [INFO] [stderr] | | | | | | no `NilUiNode` in `widget::node` [INFO] [stderr] | | | | | no `BoxedUiNodeList` in `widget::node` [INFO] [stderr] | | | | no `BoxedUiNode` in `widget::node` [INFO] [stderr] | | | no `ArcNodeList` in `widget::node` [INFO] [stderr] | | no `ArcNode` in `widget::node` [INFO] [stderr] | no `ui_node_list_default` in `widget::node` [INFO] [stderr] | [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNode [INFO] [stderr] = help: consider importing this variant instead: [INFO] [stderr] crate::__proc_macro_util::widget::builder::InputKind::UiNodeList [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `zng_app` [INFO] [stderr] --> src/widget/builder.rs:235:1 [INFO] [stderr] | [INFO] [stderr] 235 | #[widget($crate::widget::builder::PropertyArgsGetter)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `WidgetImpl` in `widget::base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: consider importing this unresolved item through its public re-export instead [INFO] [stderr] | [INFO] [stderr] 235 | crate::__proc_macro_util::widget::base::WidgetImpl [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `WidgetImpl` in `base` [INFO] [stderr] --> src/widget/builder.rs:235:1 [INFO] [stderr] | [INFO] [stderr] 235 | #[widget($crate::widget::builder::PropertyArgsGetter)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ could not find `WidgetImpl` in `base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0405]: cannot find trait `WidgetImpl` in module `zng_app::widget::base` [INFO] [stderr] --> src/widget/builder.rs:235:1 [INFO] [stderr] | [INFO] [stderr] 235 | #[widget($crate::widget::builder::PropertyArgsGetter)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in `zng_app::widget::base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0412]: cannot find type `WidgetBase` in module `zng_app::widget::base` [INFO] [stderr] --> src/widget/builder.rs:235:1 [INFO] [stderr] | [INFO] [stderr] 235 | #[widget($crate::widget::builder::PropertyArgsGetter)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in `zng_app::widget::base` [INFO] [stderr] | [INFO] [stderr] = note: this error originates in the attribute macro `widget` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `match_node` in module `crate::widget::node` [INFO] [stderr] --> src/widget/builder.rs:2629:41 [INFO] [stderr] | [INFO] [stderr] 2629 | node = crate::widget::node::match_node(node, move |c, op| { [INFO] [stderr] | ^^^^^^^^^^ not found in `crate::widget::node` [INFO] [stderr] [INFO] [stderr] error: aborting due to 16 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0405, E0412, E0425, E0432, E0433. [INFO] [stderr] For more information about an error, try `rustc --explain E0405`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/widget/node/list.rs:53:21 [INFO] [stdout] | [INFO] [stdout] 53 | ($node:expr; $n:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 53 | ($node:expr; $n:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/widget/node/list.rs:99:23 [INFO] [stdout] | [INFO] [stdout] 99 | match { $node:expr, $($tt:tt)* } [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 99 | match { $node:expr_2021, $($tt:tt)* } [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/widget/node/list.rs:109:23 [INFO] [stdout] | [INFO] [stdout] 109 | match { $node:expr } [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 109 | match { $node:expr_2021 } [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/widget.rs:492:25 [INFO] [stdout] | [INFO] [stdout] 492 | $wgt_borrow_mut:expr; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 492 | $wgt_borrow_mut:expr_2021; [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event.rs:495:12 [INFO] [stdout] | [INFO] [stdout] 495 | if let Some(mut write) = self.local.try_write() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^---------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event.rs:506:9 [INFO] [stdout] | [INFO] [stdout] 506 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 495 ~ match self.local.try_write() { Some(mut write) => { [INFO] [stdout] 496 | match write.widget_subs.entry(widget_id) { [INFO] [stdout] ... [INFO] [stdout] 505 | } [INFO] [stdout] 506 ~ } _ => { [INFO] [stdout] 507 | // fallback without cleanup [INFO] [stdout] ... [INFO] [stdout] 511 | } [INFO] [stdout] 512 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event.rs:654:12 [INFO] [stdout] | [INFO] [stdout] 654 | if let Some(rc) = self.0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event.rs:656:9 [INFO] [stdout] | [INFO] [stdout] 656 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 654 ~ match self.0 { Some(rc) => { [INFO] [stdout] 655 | rc.perm.store(true, Ordering::Relaxed); [INFO] [stdout] 656 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event/command.rs:530:20 [INFO] [stdout] | [INFO] [stdout] 530 | if let Some(scope) = parent.tree().get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event/command.rs:534:17 [INFO] [stdout] | [INFO] [stdout] 534 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 530 ~ match parent.tree().get(id) { Some(scope) => { [INFO] [stdout] 531 | if scope.is_descendant(parent) { [INFO] [stdout] 532 | parse_cmd.notify(); [INFO] [stdout] 533 | } [INFO] [stdout] 534 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event/command.rs:604:19 [INFO] [stdout] | [INFO] [stdout] 604 | } else if let hash_map::Entry::Occupied(entry) = write.scopes.entry(self.scope) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event/command.rs:621:9 [INFO] [stdout] | [INFO] [stdout] 621 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 604 ~ } else { match write.scopes.entry(self.scope) { hash_map::Entry::Occupied(entry) => { [INFO] [stdout] 605 | let scope = entry.get(); [INFO] [stdout] ... [INFO] [stdout] 620 | true [INFO] [stdout] 621 ~ } _ => { [INFO] [stdout] 622 | false [INFO] [stdout] 623 ~ }}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event/command.rs:849:28 [INFO] [stdout] | [INFO] [stdout] 849 | if let Some(data) = write.scopes.get_mut(&scope) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event/command.rs:855:25 [INFO] [stdout] | [INFO] [stdout] 855 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 849 ~ match write.scopes.get_mut(&scope) { Some(data) => { [INFO] [stdout] 850 | if enabled { [INFO] [stdout] ... [INFO] [stdout] 854 | } [INFO] [stdout] 855 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event/command.rs:906:24 [INFO] [stdout] | [INFO] [stdout] 906 | if let Some(data) = write.scopes.get_mut(&scope) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event/command.rs:911:21 [INFO] [stdout] | [INFO] [stdout] 911 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 906 ~ match write.scopes.get_mut(&scope) { Some(data) => { [INFO] [stdout] 907 | data.handle_count -= 1; [INFO] [stdout] ... [INFO] [stdout] 910 | } [INFO] [stdout] 911 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event/events.rs:129:16 [INFO] [stdout] | [INFO] [stdout] 129 | if let EventsL10n::Init(f) = &sv.l10n { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event/events.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 129 ~ match &sv.l10n { EventsL10n::Init(f) => { [INFO] [stdout] 130 | f(file, cmd, meta_name, txt); [INFO] [stdout] 131 | return; [INFO] [stdout] 132 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/event/channel.rs:64:16 [INFO] [stdout] | [INFO] [stdout] 64 | if let Some(args) = (e.0.args)().args.as_any().downcast_ref::() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-----------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/event/channel.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 64 ~ match (e.0.args)().args.as_any().downcast_ref::() { Some(args) => { [INFO] [stdout] 65 | AppDisconnected(args.clone()) [INFO] [stdout] 66 ~ } _ => { [INFO] [stdout] 67 | unreachable!() [INFO] [stdout] 68 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/handler.rs:600:12 [INFO] [stdout] | [INFO] [stdout] 600 | if let Some(handle) = self.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^-------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/handler.rs:602:9 [INFO] [stdout] | [INFO] [stdout] 602 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 600 ~ match self.upgrade() { Some(handle) => { [INFO] [stdout] 601 | handle.force_drop(); [INFO] [stdout] 602 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/handler.rs:794:12 [INFO] [stdout] | [INFO] [stdout] 794 | if let Some(handler) = self.handler.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/handler.rs:797:9 [INFO] [stdout] | [INFO] [stdout] 797 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 794 ~ match self.handler.take() { Some(handler) => { [INFO] [stdout] 795 | handler(args); [INFO] [stdout] 796 | handler_args.handle.unsubscribe(); [INFO] [stdout] 797 ~ } _ => { [INFO] [stdout] 798 | tracing::error!("`app_hn_once!` called after requesting unsubscribe"); [INFO] [stdout] 799 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/handler.rs:1060:12 [INFO] [stdout] | [INFO] [stdout] 1060 | if let Some(handler) = self.handler.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/handler.rs:1083:9 [INFO] [stdout] | [INFO] [stdout] 1083 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1060 ~ match self.handler.take() { Some(handler) => { [INFO] [stdout] 1061 | handler_args.handle.unsubscribe(); [INFO] [stdout] ... [INFO] [stdout] 1082 | } [INFO] [stdout] 1083 ~ } _ => { [INFO] [stdout] 1084 | tracing::error!("`async_app_hn_once!` called after requesting unsubscribe"); [INFO] [stdout] 1085 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/render.rs:1126:16 [INFO] [stdout] | [INFO] [stdout] 1126 | if let Some(r) = &self.renderer { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/render.rs:1129:13 [INFO] [stdout] | [INFO] [stdout] 1129 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1126 ~ match &self.renderer { Some(r) => { [INFO] [stdout] 1127 | self.display_list.push_mask(image.renderer_id(r), rect); [INFO] [stdout] 1128 | pop = true; [INFO] [stdout] 1129 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/render.rs:1287:12 [INFO] [stdout] | [INFO] [stdout] 1287 | if let (true, Some(r)) = (self.visible, &self.renderer) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/render.rs:1297:9 [INFO] [stdout] | [INFO] [stdout] 1297 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1287 ~ match (self.visible, &self.renderer) { (true, Some(r)) => { [INFO] [stdout] 1288 | let image_id = image.renderer_id(r); [INFO] [stdout] ... [INFO] [stdout] 1296 | ) [INFO] [stdout] 1297 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future + Send + Sync` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/timer.rs:99:56 [INFO] [stdout] | [INFO] [stdout] 99 | fn wait_deadline(&mut self, deadline: Deadline) -> impl std::future::Future + Send + Sync { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/timer.rs:99:22 [INFO] [stdout] | [INFO] [stdout] 99 | fn wait_deadline(&mut self, deadline: Deadline) -> impl std::future::Future + Send + Sync { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 99 | fn wait_deadline(&mut self, deadline: Deadline) -> impl std::future::Future + Send + Sync + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:161:16 [INFO] [stdout] | [INFO] [stdout] 161 | if let Some(var) = wk.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:163:13 [INFO] [stdout] | [INFO] [stdout] 163 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 161 ~ match wk.upgrade() { Some(var) => { [INFO] [stdout] 162 | timer.register(var.get()); [INFO] [stdout] 163 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:167:16 [INFO] [stdout] | [INFO] [stdout] 167 | if let Some(e) = wk.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 167 ~ match wk.upgrade() { Some(e) => { [INFO] [stdout] 168 | timer.register(e.deadline); [INFO] [stdout] 169 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:173:16 [INFO] [stdout] | [INFO] [stdout] 173 | if let Some(var) = t.weak_var.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 173 ~ match t.weak_var.upgrade() { Some(var) => { [INFO] [stdout] 174 | if !t.handle.is_dropped() && !t.handle.data().paused.load(Ordering::Relaxed) { [INFO] [stdout] ... [INFO] [stdout] 180 | } [INFO] [stdout] 181 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future + Send + Sync` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/timer.rs:485:67 [INFO] [stdout] | [INFO] [stdout] 485 | pub fn wait_deadline(&self, deadline: impl Into) -> impl std::future::Future + Send + Sync { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/timer.rs:485:26 [INFO] [stdout] | [INFO] [stdout] 485 | pub fn wait_deadline(&self, deadline: impl Into) -> impl std::future::Future + Send + Sync { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/timer.rs:485:43 [INFO] [stdout] | [INFO] [stdout] 485 | pub fn wait_deadline(&self, deadline: impl Into) -> impl std::future::Future + Send + Sync { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 485 | pub fn wait_deadline>(&self, deadline: T) -> impl std::future::Future + Send + Sync + use { [INFO] [stdout] | +++++++++++++++++++ ~ ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:982:12 [INFO] [stdout] | [INFO] [stdout] 982 | if let Some(h) = self.handle() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:984:9 [INFO] [stdout] | [INFO] [stdout] 984 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 982 ~ match self.handle() { Some(h) => { [INFO] [stdout] 983 | h.set_interval(new_interval) [INFO] [stdout] 984 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:1001:12 [INFO] [stdout] | [INFO] [stdout] 1001 | if let Some(h) = self.handle() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:1003:9 [INFO] [stdout] | [INFO] [stdout] 1003 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1001 ~ match self.handle() { Some(h) => { [INFO] [stdout] 1002 | h.pause(); [INFO] [stdout] 1003 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:1012:12 [INFO] [stdout] | [INFO] [stdout] 1012 | if let Some(h) = self.handle() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:1014:9 [INFO] [stdout] | [INFO] [stdout] 1014 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1012 ~ match self.handle() { Some(h) => { [INFO] [stdout] 1013 | h.play(reset); [INFO] [stdout] 1014 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer.rs:1024:12 [INFO] [stdout] | [INFO] [stdout] 1024 | if let Some(h) = self.handle() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/timer.rs:1026:9 [INFO] [stdout] | [INFO] [stdout] 1026 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1024 ~ match self.handle() { Some(h) => { [INFO] [stdout] 1025 | h.set_count(count) [INFO] [stdout] 1026 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/update.rs:144:20 [INFO] [stdout] | [INFO] [stdout] 144 | if let Some(w) = window.get(*w) { [INFO] [stdout] | ^^^^^^^^^^^^^^-------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/update.rs:150:17 [INFO] [stdout] | [INFO] [stdout] 150 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 144 ~ match window.get(*w) { Some(w) => { [INFO] [stdout] 145 | for w in w.widget_and_ancestors() { [INFO] [stdout] ... [INFO] [stdout] 149 | false [INFO] [stdout] 150 ~ } _ => { [INFO] [stdout] 151 | true [INFO] [stdout] 152 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:435:12 [INFO] [stdout] | [INFO] [stdout] 435 | if let Some(i) = self.loading_image_index(data.id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:449:9 [INFO] [stdout] | [INFO] [stdout] 449 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 435 ~ match self.loading_image_index(data.id) { Some(i) => { [INFO] [stdout] 436 | let img = self.write().loading_images.swap_remove(i).upgrade().unwrap(); [INFO] [stdout] ... [INFO] [stdout] 448 | Some(ViewImage(img)) [INFO] [stdout] 449 ~ } _ => { [INFO] [stdout] 450 | None [INFO] [stdout] 451 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:521:12 [INFO] [stdout] | [INFO] [stdout] 521 | if let Some(i) = app.message_dialogs.iter().position(|(i, _)| *i == id) { [INFO] [stdout] | ^^^^^^^^^^^^^^-------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:524:9 [INFO] [stdout] | [INFO] [stdout] 524 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 521 ~ match app.message_dialogs.iter().position(|(i, _)| *i == id) { Some(i) => { [INFO] [stdout] 522 | let (_, r) = app.message_dialogs.swap_remove(i); [INFO] [stdout] 523 | r.respond(response); [INFO] [stdout] 524 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:529:12 [INFO] [stdout] | [INFO] [stdout] 529 | if let Some(i) = app.file_dialogs.iter().position(|(i, _)| *i == id) { [INFO] [stdout] | ^^^^^^^^^^^^^^----------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:532:9 [INFO] [stdout] | [INFO] [stdout] 532 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 529 ~ match app.file_dialogs.iter().position(|(i, _)| *i == id) { Some(i) => { [INFO] [stdout] 530 | let (_, r) = app.file_dialogs.swap_remove(i); [INFO] [stdout] 531 | r.respond(response); [INFO] [stdout] 532 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1026:12 [INFO] [stdout] | [INFO] [stdout] 1026 | if let (Some(s), Some(o)) = (self.0.upgrade(), other.0.upgrade()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1028:9 [INFO] [stdout] | [INFO] [stdout] 1028 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1026 ~ match (self.0.upgrade(), other.0.upgrade()) { (Some(s), Some(o)) => { [INFO] [stdout] 1027 | Arc::ptr_eq(&s, &o) [INFO] [stdout] 1028 ~ } _ => { [INFO] [stdout] 1029 | false [INFO] [stdout] 1030 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1037:12 [INFO] [stdout] | [INFO] [stdout] 1037 | if let Some(c) = self.0.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1039:9 [INFO] [stdout] | [INFO] [stdout] 1039 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1037 ~ match self.0.upgrade() { Some(c) => { [INFO] [stdout] 1038 | c.call(f) [INFO] [stdout] 1039 ~ } _ => { [INFO] [stdout] 1040 | Err(ViewProcessOffline) [INFO] [stdout] 1041 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1112:12 [INFO] [stdout] | [INFO] [stdout] 1112 | if let Some(c) = self.0.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1115:9 [INFO] [stdout] | [INFO] [stdout] 1115 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1112 ~ match self.0.upgrade() { Some(c) => { [INFO] [stdout] 1113 | let id = c.call(|id, p| p.frame_image(id, mask))?; [INFO] [stdout] 1114 | Ok(Self::add_frame_image(c.app_id, id)) [INFO] [stdout] 1115 ~ } _ => { [INFO] [stdout] 1116 | Err(ViewProcessOffline) [INFO] [stdout] 1117 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1122:12 [INFO] [stdout] | [INFO] [stdout] 1122 | if let Some(c) = self.0.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1125:9 [INFO] [stdout] | [INFO] [stdout] 1125 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1122 ~ match self.0.upgrade() { Some(c) => { [INFO] [stdout] 1123 | let id = c.call(|id, p| p.frame_image_rect(id, rect, mask))?; [INFO] [stdout] 1124 | Ok(Self::add_frame_image(c.app_id, id)) [INFO] [stdout] 1125 ~ } _ => { [INFO] [stdout] 1126 | Err(ViewProcessOffline) [INFO] [stdout] 1127 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1160:12 [INFO] [stdout] | [INFO] [stdout] 1160 | if let Some(w) = self.0.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1164:9 [INFO] [stdout] | [INFO] [stdout] 1164 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1160 ~ match self.0.upgrade() { Some(w) => { [INFO] [stdout] 1161 | w.call(|id, p| p.render(id, frame))?; [INFO] [stdout] 1162 | VIEW_PROCESS.handle_write(w.app_id).pending_frames += 1; [INFO] [stdout] 1163 | Ok(()) [INFO] [stdout] 1164 ~ } _ => { [INFO] [stdout] 1165 | Err(ViewProcessOffline) [INFO] [stdout] 1166 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1173:12 [INFO] [stdout] | [INFO] [stdout] 1173 | if let Some(w) = self.0.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1177:9 [INFO] [stdout] | [INFO] [stdout] 1177 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1173 ~ match self.0.upgrade() { Some(w) => { [INFO] [stdout] 1174 | w.call(|id, p| p.render_update(id, frame))?; [INFO] [stdout] 1175 | VIEW_PROCESS.handle_write(w.app_id).pending_frames += 1; [INFO] [stdout] 1176 | Ok(()) [INFO] [stdout] 1177 ~ } _ => { [INFO] [stdout] 1178 | Err(ViewProcessOffline) [INFO] [stdout] 1179 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1184:12 [INFO] [stdout] | [INFO] [stdout] 1184 | if let Some(w) = self.0.upgrade() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1186:9 [INFO] [stdout] | [INFO] [stdout] 1186 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1184 ~ match self.0.upgrade() { Some(w) => { [INFO] [stdout] 1185 | w.call(|id, p| p.render_extension(id, extension_id, request)) [INFO] [stdout] 1186 ~ } _ => { [INFO] [stdout] 1187 | Err(ViewProcessOffline) [INFO] [stdout] 1188 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1409:16 [INFO] [stdout] | [INFO] [stdout] 1409 | if let Some(id) = img.id { [INFO] [stdout] | ^^^^^^^^^^^^^^^---^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1425:13 [INFO] [stdout] | [INFO] [stdout] 1425 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1409 ~ match img.id { Some(id) => { [INFO] [stdout] 1410 | let mut app = VIEW_PROCESS.handle_write(img.app_id.unwrap()); [INFO] [stdout] ... [INFO] [stdout] 1424 | receiver [INFO] [stdout] 1425 ~ } _ => { [INFO] [stdout] 1426 | return Err(EncodeError::Dummy); [INFO] [stdout] 1427 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/view_process.rs:1415:20 [INFO] [stdout] | [INFO] [stdout] 1415 | if let Some(entry) = app.encoding_images.iter_mut().find(|r| r.image_id == id && r.format == format) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/view_process.rs:1417:17 [INFO] [stdout] | [INFO] [stdout] 1417 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1415 ~ match app.encoding_images.iter_mut().find(|r| r.image_id == id && r.format == format) { Some(entry) => { [INFO] [stdout] 1416 | entry.listeners.push(sender); [INFO] [stdout] 1417 ~ } _ => { [INFO] [stdout] 1418 | app.encoding_images.push(EncodeRequest { [INFO] [stdout] ... [INFO] [stdout] 1422 | }); [INFO] [stdout] 1423 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget.rs:682:20 [INFO] [stdout] | [INFO] [stdout] 682 | if let Some(wgt) = tree.get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget.rs:684:17 [INFO] [stdout] | [INFO] [stdout] 684 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 682 ~ match tree.get(id) { Some(wgt) => { [INFO] [stdout] 683 | wgt.trace_path() [INFO] [stdout] 684 ~ } _ => { [INFO] [stdout] 685 | formatx!("{w_id:?}///{id:?}") [INFO] [stdout] 686 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget.rs:707:20 [INFO] [stdout] | [INFO] [stdout] 707 | if let Some(wgt) = tree.get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget.rs:709:17 [INFO] [stdout] | [INFO] [stdout] 709 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 707 ~ match tree.get(id) { Some(wgt) => { [INFO] [stdout] 708 | wgt.trace_id() [INFO] [stdout] 709 ~ } _ => { [INFO] [stdout] 710 | formatx!("{id:?}") [INFO] [stdout] 711 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget.rs:1080:12 [INFO] [stdout] | [INFO] [stdout] 1080 | if let Some(ctx) = ctx.0.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget.rs:1082:9 [INFO] [stdout] | [INFO] [stdout] 1082 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1080 ~ match ctx.0.as_mut() { Some(ctx) => { [INFO] [stdout] 1081 | ctx.parent_id.store(parent_id, Relaxed); [INFO] [stdout] 1082 ~ } _ => { [INFO] [stdout] 1083 | unreachable!() [INFO] [stdout] 1084 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget.rs:1103:20 [INFO] [stdout] | [INFO] [stdout] 1103 | if let Some(parent) = parent_id.map(|_| WIDGET_CTX.get()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget.rs:1120:17 [INFO] [stdout] | [INFO] [stdout] 1120 | } else if let Some(window_id) = WINDOW.try_id() { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1103 ~ match parent_id.map(|_| WIDGET_CTX.get()) { Some(parent) => { [INFO] [stdout] 1104 | let propagate = wgt_flags [INFO] [stdout] ... [INFO] [stdout] 1119 | ctx.parent_id.store(None, Relaxed); [INFO] [stdout] 1120 ~ } _ => if let Some(window_id) = WINDOW.try_id() { [INFO] [stdout] 1121 | // is at root, register `UPDATES` [INFO] [stdout] ... [INFO] [stdout] 1128 | ctx.flags.store(UpdateFlags::empty(), Relaxed); [INFO] [stdout] 1129 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget.rs:1451:16 [INFO] [stdout] | [INFO] [stdout] 1451 | if let zng_var::types::Response::Done(value) = &args.value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget.rs:1459:13 [INFO] [stdout] | [INFO] [stdout] 1459 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1451 ~ match &args.value { zng_var::types::Response::Done(value) => { [INFO] [stdout] 1452 | handler.event( [INFO] [stdout] ... [INFO] [stdout] 1458 | ) [INFO] [stdout] 1459 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget.rs:1472:16 [INFO] [stdout] | [INFO] [stdout] 1472 | if let zng_var::types::Response::Done(value) = &args.value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget.rs:1480:13 [INFO] [stdout] | [INFO] [stdout] 1480 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1472 ~ match &args.value { zng_var::types::Response::Done(value) => { [INFO] [stdout] 1473 | handler.event( [INFO] [stdout] ... [INFO] [stdout] 1479 | ) [INFO] [stdout] 1480 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl widget::node::UiNode` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/base.rs:73:39 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn widget_build(&mut self) -> impl UiNode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/base.rs:73:25 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn widget_build(&mut self) -> impl UiNode { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 73 | pub fn widget_build(&mut self) -> impl UiNode + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/base.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 118 | if let Some(when) = &mut *self.when.borrow_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/base.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 120 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 118 ~ match &mut *self.when.borrow_mut() { Some(when) => { [INFO] [stdout] 119 | when.assigns.push(args); [INFO] [stdout] 120 ~ } _ => { [INFO] [stdout] 121 | self.builder [INFO] [stdout] ... [INFO] [stdout] 125 | .push_property(self.importance, args); [INFO] [stdout] 126 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/base.rs:254:12 [INFO] [stdout] | [INFO] [stdout] 254 | if let Some(when) = self.when.get_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/base.rs:256:9 [INFO] [stdout] | [INFO] [stdout] 256 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 254 ~ match self.when.get_mut() { Some(when) => { [INFO] [stdout] 255 | when.assigns.push(args); [INFO] [stdout] 256 ~ } _ => { [INFO] [stdout] 257 | self.builder [INFO] [stdout] ... [INFO] [stdout] 261 | .push_property(self.importance, args); [INFO] [stdout] 262 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/base.rs:916:1 [INFO] [stdout] | [INFO] [stdout] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/base.rs:916:1 [INFO] [stdout] | [INFO] [stdout] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/base.rs:916:1 [INFO] [stdout] | [INFO] [stdout] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/base.rs:916:1 [INFO] [stdout] | [INFO] [stdout] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 916 | #[property(CONTEXT, capture, default(WidgetId::new_unique()), widget_impl(WidgetBase))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/base.rs:525:36 [INFO] [stdout] | [INFO] [stdout] 525 | ... if let Some(child_inline) = child_inline { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/base.rs:527:33 [INFO] [stdout] | [INFO] [stdout] 527 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 525 ~ match child_inline { Some(child_inline) => { [INFO] [stdout] 526 | inline.clone_from(&*child_inline); [INFO] [stdout] 527 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/base.rs:603:32 [INFO] [stdout] | [INFO] [stdout] 603 | ... if let Some(inline) = WIDGET.bounds().inline() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/base.rs:607:29 [INFO] [stdout] | [INFO] [stdout] 607 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 603 ~ match WIDGET.bounds().inline() { Some(inline) => { [INFO] [stdout] 604 | for r in inline.negative_space().iter() { [INFO] [stdout] 605 | c.push_clip_rect(*r, true); [INFO] [stdout] 606 | } [INFO] [stdout] 607 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1346:12 [INFO] [stdout] | [INFO] [stdout] 1346 | if let Some(i) = self.data.iter().position(|(i, _)| i == &handle) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1348:9 [INFO] [stdout] | [INFO] [stdout] 1348 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1346 ~ match self.data.iter().position(|(i, _)| i == &handle) { Some(i) => { [INFO] [stdout] 1347 | self.data[i].1 = var; [INFO] [stdout] 1348 ~ } _ => { [INFO] [stdout] 1349 | self.data.push((handle, var)); [INFO] [stdout] 1350 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1640:12 [INFO] [stdout] | [INFO] [stdout] 1640 | if let Some(i) = self.p.property_index(property_id) { [INFO] [stdout] | ^^^^^^^^^^^^^^------^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1658:9 [INFO] [stdout] | [INFO] [stdout] 1658 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1640 ~ match self.p.property_index(property_id) { Some(i) => { [INFO] [stdout] 1641 | match &self.p.items[i].item { [INFO] [stdout] ... [INFO] [stdout] 1657 | } [INFO] [stdout] 1658 ~ } _ => { [INFO] [stdout] 1659 | if let Some(imp) = self.unset.get(&property_id) { [INFO] [stdout] ... [INFO] [stdout] 1672 | }); [INFO] [stdout] 1673 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1865:12 [INFO] [stdout] | [INFO] [stdout] 1865 | if let Some(c) = other.custom_build { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1867:9 [INFO] [stdout] | [INFO] [stdout] 1867 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1865 ~ match other.custom_build { Some(c) => { [INFO] [stdout] 1866 | self.custom_build = Some(c); [INFO] [stdout] 1867 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:1995:12 [INFO] [stdout] | [INFO] [stdout] 1995 | if let Some(custom) = self.custom_build.clone() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:2000:9 [INFO] [stdout] | [INFO] [stdout] 2000 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1995 ~ match self.custom_build.clone() { Some(custom) => { [INFO] [stdout] 1996 | match custom.try_lock() { [INFO] [stdout] ... [INFO] [stdout] 1999 | } [INFO] [stdout] 2000 ~ } _ => { [INFO] [stdout] 2001 | self.default_build() [INFO] [stdout] 2002 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:2491:24 [INFO] [stdout] | [INFO] [stdout] 2491 | if let Some(data) = actions_data.remove(action_key) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:2497:21 [INFO] [stdout] | [INFO] [stdout] 2497 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2491 ~ match actions_data.remove(action_key) { Some(data) => { [INFO] [stdout] 2492 | let mut data = data.clone(); [INFO] [stdout] ... [INFO] [stdout] 2496 | b_actions_data.push(data.0); [INFO] [stdout] 2497 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:2502:20 [INFO] [stdout] | [INFO] [stdout] 2502 | if let Some(default) = default { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/builder.rs:2510:17 [INFO] [stdout] | [INFO] [stdout] 2510 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2502 ~ match default { Some(default) => { [INFO] [stdout] 2503 | let action = default(); [INFO] [stdout] ... [INFO] [stdout] 2509 | b_actions_data.push(data); [INFO] [stdout] 2510 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl ExactSizeIterator + Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:230:36 [INFO] [stdout] | [INFO] [stdout] 230 | pub fn out_of_bounds(&self) -> impl std::iter::ExactSizeIterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:230:26 [INFO] [stdout] | [INFO] [stdout] 230 | pub fn out_of_bounds(&self) -> impl std::iter::ExactSizeIterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 230 | pub fn out_of_bounds(&self) -> impl std::iter::ExactSizeIterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info.rs:308:16 [INFO] [stdout] | [INFO] [stdout] 308 | if let Some(wgt) = self.get(wid) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info.rs:321:13 [INFO] [stdout] | [INFO] [stdout] 321 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 308 ~ match self.get(wid) { Some(wgt) => { [INFO] [stdout] 309 | let transform = wgt.inner_transform(); [INFO] [stdout] ... [INFO] [stdout] 320 | } [INFO] [stdout] 321 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info.rs:336:16 [INFO] [stdout] | [INFO] [stdout] 336 | if let Some(wgt) = self.get(wid) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info.rs:350:13 [INFO] [stdout] | [INFO] [stdout] 350 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 336 ~ match self.get(wid) { Some(wgt) => { [INFO] [stdout] 337 | let visibility = wgt.visibility(); [INFO] [stdout] ... [INFO] [stdout] 349 | } [INFO] [stdout] 350 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info.rs:665:12 [INFO] [stdout] | [INFO] [stdout] 665 | if let Some(prev) = m.is_in_bounds { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info.rs:670:9 [INFO] [stdout] | [INFO] [stdout] 670 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 665 ~ match m.is_in_bounds { Some(prev) => { [INFO] [stdout] 666 | if prev != in_bounds { [INFO] [stdout] ... [INFO] [stdout] 669 | } [INFO] [stdout] 670 ~ } _ => { [INFO] [stdout] 671 | m.is_in_bounds = Some(in_bounds); [INFO] [stdout] ... [INFO] [stdout] 674 | } [INFO] [stdout] 675 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info.rs:1047:20 [INFO] [stdout] | [INFO] [stdout] 1047 | if let Some(info) = w.inspector_info() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info.rs:1062:17 [INFO] [stdout] | [INFO] [stdout] 1062 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1047 ~ match w.inspector_info() { Some(info) => { [INFO] [stdout] 1048 | let mod_path = info.builder.widget_type().path; [INFO] [stdout] ... [INFO] [stdout] 1061 | } [INFO] [stdout] 1062 ~ } _ => { [INFO] [stdout] 1063 | let _ = write!(&mut s, "/{}", w.id()); [INFO] [stdout] 1064 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info.rs:1083:16 [INFO] [stdout] | [INFO] [stdout] 1083 | if let Some(info) = self.inspector_info() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info.rs:1098:13 [INFO] [stdout] | [INFO] [stdout] 1098 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1083 ~ match self.inspector_info() { Some(info) => { [INFO] [stdout] 1084 | let mod_path = info.builder.widget_type().path; [INFO] [stdout] ... [INFO] [stdout] 1097 | } [INFO] [stdout] 1098 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info.rs:1280:16 [INFO] [stdout] | [INFO] [stdout] 1280 | if let Some(p) = self.parent() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info.rs:1282:13 [INFO] [stdout] | [INFO] [stdout] 1282 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1280 ~ match self.parent() { Some(p) => { [INFO] [stdout] 1281 | p.bounds_info().transform_style() [INFO] [stdout] 1282 ~ } _ => { [INFO] [stdout] 1283 | TransformStyle::Flat [INFO] [stdout] 1284 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1416:31 [INFO] [stdout] | [INFO] [stdout] 1416 | pub fn siblings(&self) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1416:21 [INFO] [stdout] | [INFO] [stdout] 1416 | pub fn siblings(&self) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1416 | pub fn siblings(&self) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1631:36 [INFO] [stdout] | [INFO] [stdout] 1631 | pub fn out_of_bounds(&self) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1631:26 [INFO] [stdout] | [INFO] [stdout] 1631 | pub fn out_of_bounds(&self) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1631 | pub fn out_of_bounds(&self) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1641:81 [INFO] [stdout] | [INFO] [stdout] 1641 | pub fn spatial_iter(&self, filter: impl Fn(&WidgetInfo) -> bool + Clone) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1641:25 [INFO] [stdout] | [INFO] [stdout] 1641 | pub fn spatial_iter(&self, filter: impl Fn(&WidgetInfo) -> bool + Clone) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/widget/info.rs:1641:40 [INFO] [stdout] | [INFO] [stdout] 1641 | pub fn spatial_iter(&self, filter: impl Fn(&WidgetInfo) -> bool + Clone) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1641 | pub fn spatial_iter bool + Clone>(&self, filter: T) -> impl Iterator + use { [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++ ~ ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1664:53 [INFO] [stdout] | [INFO] [stdout] 1664 | pub fn inner_contains(&self, point: PxPoint) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1664:27 [INFO] [stdout] | [INFO] [stdout] 1664 | pub fn inner_contains(&self, point: PxPoint) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1664 | pub fn inner_contains(&self, point: PxPoint) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1669:53 [INFO] [stdout] | [INFO] [stdout] 1669 | pub fn inner_intersects(&self, rect: PxRect) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1669:29 [INFO] [stdout] | [INFO] [stdout] 1669 | pub fn inner_intersects(&self, rect: PxRect) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1669 | pub fn inner_intersects(&self, rect: PxRect) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1675:56 [INFO] [stdout] | [INFO] [stdout] 1675 | pub fn inner_contains_rect(&self, rect: PxRect) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1675:32 [INFO] [stdout] | [INFO] [stdout] 1675 | pub fn inner_contains_rect(&self, rect: PxRect) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1675 | pub fn inner_contains_rect(&self, rect: PxRect) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1681:52 [INFO] [stdout] | [INFO] [stdout] 1681 | pub fn inner_contained(&self, rect: PxRect) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1681:28 [INFO] [stdout] | [INFO] [stdout] 1681 | pub fn inner_contained(&self, rect: PxRect) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1681 | pub fn inner_contained(&self, rect: PxRect) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1687:53 [INFO] [stdout] | [INFO] [stdout] 1687 | pub fn center_contained(&self, area: PxRect) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1687:29 [INFO] [stdout] | [INFO] [stdout] 1687 | pub fn center_contained(&self, area: PxRect) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1687 | pub fn center_contained(&self, area: PxRect) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1818:94 [INFO] [stdout] | [INFO] [stdout] 1818 | pub fn oriented(&self, origin: PxPoint, max_distance: Px, orientation: Orientation2D) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1818:21 [INFO] [stdout] | [INFO] [stdout] 1818 | pub fn oriented(&self, origin: PxPoint, max_distance: Px, orientation: Orientation2D) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1818 | pub fn oriented(&self, origin: PxPoint, max_distance: Px, orientation: Orientation2D) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info.rs:1854:96 [INFO] [stdout] | [INFO] [stdout] 1854 | pub fn oriented_box(&self, origin: PxBox, max_distance: Px, orientation: Orientation2D) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info.rs:1854:25 [INFO] [stdout] | [INFO] [stdout] 1854 | pub fn oriented_box(&self, origin: PxBox, max_distance: Px, orientation: Orientation2D) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1854 | pub fn oriented_box(&self, origin: PxBox, max_distance: Px, orientation: Orientation2D) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:520:16 [INFO] [stdout] | [INFO] [stdout] 520 | if let Some(a) = wgt.access() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:527:13 [INFO] [stdout] | [INFO] [stdout] 527 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 520 ~ match wgt.access() { Some(a) => { [INFO] [stdout] 521 | if let Some(t) = a.labels() { [INFO] [stdout] ... [INFO] [stdout] 526 | } [INFO] [stdout] 527 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:524:20 [INFO] [stdout] | [INFO] [stdout] 524 | if let Some(t) = a.describes() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:526:17 [INFO] [stdout] | [INFO] [stdout] 526 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 524 ~ match a.describes() { Some(t) => { [INFO] [stdout] 525 | state.described_by.entry(t.id()).or_default().push(wgt.id()); [INFO] [stdout] 526 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:550:38 [INFO] [stdout] | [INFO] [stdout] 550 | pub fn access_children(&self) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info/access.rs:550:28 [INFO] [stdout] | [INFO] [stdout] 550 | pub fn access_children(&self) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 550 | pub fn access_children(&self) -> impl Iterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:1065:16 [INFO] [stdout] | [INFO] [stdout] 1065 | if let (true, Some(prev)) = (was_accessible, prev.access()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:1102:13 [INFO] [stdout] | [INFO] [stdout] 1102 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1065 ~ match (was_accessible, prev.access()) { (true, Some(prev)) => { [INFO] [stdout] 1066 | let mut children = None; [INFO] [stdout] ... [INFO] [stdout] 1101 | } [INFO] [stdout] 1102 ~ } _ => { [INFO] [stdout] 1103 | // was not accessible [INFO] [stdout] 1104 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:1203:12 [INFO] [stdout] | [INFO] [stdout] 1203 | if let Some(present) = self.state_source.iter_mut().find(|s| std::mem::discriminant(&**s) == discriminant) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^-----------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/access.rs:1205:9 [INFO] [stdout] | [INFO] [stdout] 1205 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1203 ~ match self.state_source.iter_mut().find(|s| std::mem::discriminant(&**s) == discriminant) { Some(present) => { [INFO] [stdout] 1204 | *present = state; [INFO] [stdout] 1205 ~ } _ => { [INFO] [stdout] 1206 | self.state_source.push(state); [INFO] [stdout] 1207 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/tree.rs:257:12 [INFO] [stdout] | [INFO] [stdout] 257 | if let Some(mut c) = split.root_mut().first_child() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-----^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/tree.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 257 ~ match split.root_mut().first_child() { Some(mut c) => { [INFO] [stdout] 258 | self.parallel_fold_node(&mut c, take); [INFO] [stdout] ... [INFO] [stdout] 265 | } [INFO] [stdout] 266 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl DoubleEndedIterator + Iterator + ExactSizeIterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/info/path.rs:264:39 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn interaction_path(&self) -> impl DoubleEndedIterator + ExactSizeIterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/info/path.rs:264:29 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn interaction_path(&self) -> impl DoubleEndedIterator + ExactSizeIterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 264 | pub fn interaction_path(&self) -> impl DoubleEndedIterator + ExactSizeIterator + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/path.rs:402:16 [INFO] [stdout] | [INFO] [stdout] 402 | if let Some(i) = self.zip().zip(other.zip()).position(|(a, b)| a != b) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/path.rs:416:13 [INFO] [stdout] | [INFO] [stdout] 416 | } else if self.path.path.len() <= other.path.path.len() { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 402 ~ match self.zip().zip(other.zip()).position(|(a, b)| a != b) { Some(i) => { [INFO] [stdout] 403 | if i == 0 { [INFO] [stdout] ... [INFO] [stdout] 415 | } [INFO] [stdout] 416 ~ } _ => if self.path.path.len() <= other.path.path.len() { [INFO] [stdout] 417 | Some(Cow::Borrowed(self)) [INFO] [stdout] 418 | } else { [INFO] [stdout] 419 | Some(Cow::Borrowed(other)) [INFO] [stdout] 420 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:146:16 [INFO] [stdout] | [INFO] [stdout] 146 | if let Some(wgt) = tree.get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:157:13 [INFO] [stdout] | [INFO] [stdout] 157 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 146 ~ match tree.get(id) { Some(wgt) => { [INFO] [stdout] 147 | self.tree.index_mut(self.node).push_reuse(wgt.node(), &mut |old_data| { [INFO] [stdout] ... [INFO] [stdout] 156 | return; [INFO] [stdout] 157 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:307:12 [INFO] [stdout] | [INFO] [stdout] 307 | if let Some(t) = &previous_tree { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:314:9 [INFO] [stdout] | [INFO] [stdout] 314 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 307 ~ match &previous_tree { Some(t) => { [INFO] [stdout] 308 | let t = t.0.frame.read(); [INFO] [stdout] ... [INFO] [stdout] 313 | visibility_changed_subs = t.visibility_changed_subs.clone(); [INFO] [stdout] 314 ~ } _ => { [INFO] [stdout] 315 | generation = 0; [INFO] [stdout] ... [INFO] [stdout] 319 | visibility_changed_subs = IdMap::new(); [INFO] [stdout] 320 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:366:20 [INFO] [stdout] | [INFO] [stdout] 366 | if let Some(wgt) = tree.get(wid) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:372:17 [INFO] [stdout] | [INFO] [stdout] 372 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 366 ~ match tree.get(wid) { Some(wgt) => { [INFO] [stdout] 367 | let prev = prev_tree.get(wid).map(|w| w.interactivity()); [INFO] [stdout] ... [INFO] [stdout] 371 | } [INFO] [stdout] 372 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:444:20 [INFO] [stdout] | [INFO] [stdout] 444 | if let Some(wgt) = self.tree.get(*id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:446:17 [INFO] [stdout] | [INFO] [stdout] 446 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 444 ~ match self.tree.get(*id) { Some(wgt) => { [INFO] [stdout] 445 | list.insert_wgt(&wgt); [INFO] [stdout] 446 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:464:20 [INFO] [stdout] | [INFO] [stdout] 464 | if let Some(wgt) = self.tree.get(*id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:466:17 [INFO] [stdout] | [INFO] [stdout] 466 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 464 ~ match self.tree.get(*id) { Some(wgt) => { [INFO] [stdout] 465 | list.insert_wgt(&wgt); [INFO] [stdout] 466 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:487:20 [INFO] [stdout] | [INFO] [stdout] 487 | if let Some(wgt) = self.tree.get(*id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:489:17 [INFO] [stdout] | [INFO] [stdout] 489 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 487 ~ match self.tree.get(*id) { Some(wgt) => { [INFO] [stdout] 488 | list.insert_wgt(&wgt); [INFO] [stdout] 489 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:528:12 [INFO] [stdout] | [INFO] [stdout] 528 | if let Some(w) = self.tree.get(widget_id) { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:530:9 [INFO] [stdout] | [INFO] [stdout] 530 | } else if self.changed.contains(&widget_id) { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 528 ~ match self.tree.get(widget_id) { Some(w) => { [INFO] [stdout] 529 | w.interactivity() [INFO] [stdout] 530 ~ } _ => if self.changed.contains(&widget_id) { [INFO] [stdout] 531 | panic!("widget {widget_id} was in targets and not in new tree, invalid args"); [INFO] [stdout] 532 | } else { [INFO] [stdout] 533 | panic!("widget {widget_id} is not in targets"); [INFO] [stdout] 534 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1506:12 [INFO] [stdout] | [INFO] [stdout] 1506 | if let Some(w) = tree.get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1521:9 [INFO] [stdout] | [INFO] [stdout] 1521 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1506 ~ match tree.get(id) { Some(w) => { [INFO] [stdout] 1507 | for w in w.self_and_descendants() { [INFO] [stdout] ... [INFO] [stdout] 1520 | } [INFO] [stdout] 1521 ~ } _ => { [INFO] [stdout] 1522 | tracing::error!("collapse did not find `{}` in the info tree", id) [INFO] [stdout] 1523 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1537:12 [INFO] [stdout] | [INFO] [stdout] 1537 | if let Some(w) = tree.get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1551:9 [INFO] [stdout] | [INFO] [stdout] 1551 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1537 ~ match tree.get(id) { Some(w) => { [INFO] [stdout] 1538 | for w in w.descendants() { [INFO] [stdout] ... [INFO] [stdout] 1550 | } [INFO] [stdout] 1551 ~ } _ => { [INFO] [stdout] 1552 | tracing::error!("collapse_descendants did not find `{}` in the info tree", id) [INFO] [stdout] 1553 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1567:12 [INFO] [stdout] | [INFO] [stdout] 1567 | if let Some(w) = tree.get(id) { [INFO] [stdout] | ^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1589:9 [INFO] [stdout] | [INFO] [stdout] 1589 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1567 ~ match tree.get(id) { Some(w) => { [INFO] [stdout] 1568 | if let Some(w) = w.children().nth(index) { [INFO] [stdout] ... [INFO] [stdout] 1588 | } [INFO] [stdout] 1589 ~ } _ => { [INFO] [stdout] 1590 | tracing::error!("collapse_child did not find `{}` in the info tree", id) [INFO] [stdout] 1591 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1568:16 [INFO] [stdout] | [INFO] [stdout] 1568 | if let Some(w) = w.children().nth(index) { [INFO] [stdout] | ^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/builder.rs:1582:13 [INFO] [stdout] | [INFO] [stdout] 1582 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1568 ~ match w.children().nth(index) { Some(w) => { [INFO] [stdout] 1569 | for w in w.self_and_descendants() { [INFO] [stdout] ... [INFO] [stdout] 1581 | } [INFO] [stdout] 1582 ~ } _ => { [INFO] [stdout] 1583 | tracing::error!( [INFO] [stdout] ... [INFO] [stdout] 1587 | ) [INFO] [stdout] 1588 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:98:19 [INFO] [stdout] | [INFO] [stdout] 98 | } else if let Some(next) = self.front.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^----------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 98 ~ } else { match self.front.take() { Some(next) => { [INFO] [stdout] 99 | self.front = next.next_sibling(); [INFO] [stdout] 100 | Some(next) [INFO] [stdout] 101 ~ } _ => { [INFO] [stdout] 102 | None [INFO] [stdout] 103 ~ }}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:116:19 [INFO] [stdout] | [INFO] [stdout] 116 | } else if let Some(next) = self.back.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 119 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 116 ~ } else { match self.back.take() { Some(next) => { [INFO] [stdout] 117 | self.back = next.prev_sibling(); [INFO] [stdout] 118 | Some(next) [INFO] [stdout] 119 ~ } _ => { [INFO] [stdout] 120 | None [INFO] [stdout] 121 ~ }}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:143:12 [INFO] [stdout] | [INFO] [stdout] 143 | if let Some(n) = self.node.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 146 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 143 ~ match self.node.take() { Some(n) => { [INFO] [stdout] 144 | self.node = n.prev_sibling(); [INFO] [stdout] 145 | Some(n) [INFO] [stdout] 146 ~ } _ => { [INFO] [stdout] 147 | None [INFO] [stdout] 148 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:170:12 [INFO] [stdout] | [INFO] [stdout] 170 | if let Some(n) = self.node.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 170 ~ match self.node.take() { Some(n) => { [INFO] [stdout] 171 | self.node = n.next_sibling(); [INFO] [stdout] 172 | Some(n) [INFO] [stdout] 173 ~ } _ => { [INFO] [stdout] 174 | None [INFO] [stdout] 175 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:197:12 [INFO] [stdout] | [INFO] [stdout] 197 | if let Some(n) = self.node.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:200:9 [INFO] [stdout] | [INFO] [stdout] 200 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 197 ~ match self.node.take() { Some(n) => { [INFO] [stdout] 198 | self.node = n.parent(); [INFO] [stdout] 199 | Some(n) [INFO] [stdout] 200 ~ } _ => { [INFO] [stdout] 201 | None [INFO] [stdout] 202 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:265:12 [INFO] [stdout] | [INFO] [stdout] 265 | if let Some(wgt) = wgt.prev_sibling() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 266 | return Self::self_and_prev_siblings_in(wgt, ancestor); [INFO] [stdout] 267 | } else if let Some(parent) = wgt.parent() { [INFO] [stdout] | ------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:267:9 [INFO] [stdout] | [INFO] [stdout] 267 | } else if let Some(parent) = wgt.parent() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 265 ~ match wgt.prev_sibling() { Some(wgt) => { [INFO] [stdout] 266 | return Self::self_and_prev_siblings_in(wgt, ancestor); [INFO] [stdout] 267 ~ } _ => { match wgt.parent() { Some(parent) => { [INFO] [stdout] 268 | if parent != ancestor && wgt.tree == ancestor.tree { [INFO] [stdout] 269 | return Self::prev_siblings_in(parent, ancestor); [INFO] [stdout] 270 | } [INFO] [stdout] 271 ~ } _ => {}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:294:12 [INFO] [stdout] | [INFO] [stdout] 294 | if let Some(wgt) = wgt.next_sibling() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 295 | return Self::self_and_next_siblings_in(wgt, ancestor); [INFO] [stdout] 296 | } else if let Some(parent) = wgt.parent() { [INFO] [stdout] | ------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:296:9 [INFO] [stdout] | [INFO] [stdout] 296 | } else if let Some(parent) = wgt.parent() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/info/iter.rs:300:9 [INFO] [stdout] | [INFO] [stdout] 300 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 294 ~ match wgt.next_sibling() { Some(wgt) => { [INFO] [stdout] 295 | return Self::self_and_next_siblings_in(wgt, ancestor); [INFO] [stdout] 296 ~ } _ => { match wgt.parent() { Some(parent) => { [INFO] [stdout] 297 | if parent != ancestor && wgt.tree == ancestor.tree { [INFO] [stdout] 298 | return Self::next_siblings_in(parent, ancestor); [INFO] [stdout] 299 | } [INFO] [stdout] 300 ~ } _ => {}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node.rs:382:1 [INFO] [stdout] | [INFO] [stdout] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node.rs:382:1 [INFO] [stdout] | [INFO] [stdout] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `zng_app_proc_macros::property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl zng_var::Var` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node.rs:382:1 [INFO] [stdout] | [INFO] [stdout] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node.rs:382:1 [INFO] [stdout] | [INFO] [stdout] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: this warning originates in the attribute macro `zng_app_proc_macros::property` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 382 | #[zng_app_proc_macros::property(CHILD, capture, widget_impl(into_widget))] + use<> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node.rs:1421:12 [INFO] [stdout] | [INFO] [stdout] 1421 | if let Some(n) = self.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^----------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node.rs:1423:9 [INFO] [stdout] | [INFO] [stdout] 1423 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1421 ~ match self.take() { Some(n) => { [INFO] [stdout] 1422 | vec.push(n); [INFO] [stdout] 1423 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl impls::TakeOn` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:107:69 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn take_when(&self, var: impl IntoVar) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node/arc.rs:107:22 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn take_when(&self, var: impl IntoVar) -> TakeSlot { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/widget/node/arc.rs:107:34 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn take_when(&self, var: impl IntoVar) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 107 | pub fn take_when>(&self, var: T) -> TakeSlot> { [INFO] [stdout] | ++++++++++++++++++ ~ +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl impls::TakeOn` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:126:22 [INFO] [stdout] | [INFO] [stdout] 126 | ) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node/arc.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/widget/node/arc.rs:124:17 [INFO] [stdout] | [INFO] [stdout] 124 | filter: impl FnMut(&A) -> bool + Send + 'static, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 121 ~ pub fn take_on bool + Send + 'static>( [INFO] [stdout] 122 | &self, [INFO] [stdout] 123 | event: Event, [INFO] [stdout] 124 ~ filter: T, [INFO] [stdout] 125 | take_on_init: bool, [INFO] [stdout] 126 ~ ) -> TakeSlot> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl impls::TakeOn` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:144:47 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn take_on_init(&self) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node/arc.rs:144:25 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn take_on_init(&self) -> TakeSlot { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 144 | pub fn take_on_init(&self) -> TakeSlot> { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl impls::TakeOn` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:231:69 [INFO] [stdout] | [INFO] [stdout] 231 | pub fn take_when(&self, var: impl IntoVar) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node/arc.rs:231:22 [INFO] [stdout] | [INFO] [stdout] 231 | pub fn take_when(&self, var: impl IntoVar) -> TakeSlot { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/widget/node/arc.rs:231:34 [INFO] [stdout] | [INFO] [stdout] 231 | pub fn take_when(&self, var: impl IntoVar) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 231 | pub fn take_when>(&self, var: T) -> TakeSlot> { [INFO] [stdout] | ++++++++++++++++++ ~ +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl impls::TakeOn` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:252:22 [INFO] [stdout] | [INFO] [stdout] 252 | ) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node/arc.rs:248:9 [INFO] [stdout] | [INFO] [stdout] 248 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/widget/node/arc.rs:250:17 [INFO] [stdout] | [INFO] [stdout] 250 | filter: impl FnMut(&A) -> bool + Send + 'static, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 247 ~ pub fn take_on bool + Send + 'static>( [INFO] [stdout] 248 | &self, [INFO] [stdout] 249 | event: Event, [INFO] [stdout] 250 ~ filter: T, [INFO] [stdout] 251 | take_on_init: bool, [INFO] [stdout] 252 ~ ) -> TakeSlot> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl impls::TakeOn` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:270:47 [INFO] [stdout] | [INFO] [stdout] 270 | pub fn take_on_init(&self) -> TakeSlot { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/widget/node/arc.rs:270:25 [INFO] [stdout] | [INFO] [stdout] 270 | pub fn take_on_init(&self) -> TakeSlot { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 270 | pub fn take_on_init(&self) -> TakeSlot> { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:418:20 [INFO] [stdout] | [INFO] [stdout] 418 | if let Some((_, id)) = slots.move_request { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^-----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 436 | } else if let Some(mut new) = slots.replacement.take() { [INFO] [stdout] | ------------------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:436:17 [INFO] [stdout] | [INFO] [stdout] 436 | } else if let Some(mut new) = slots.replacement.take() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:453:17 [INFO] [stdout] | [INFO] [stdout] 453 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 418 ~ match slots.move_request { Some((_, id)) => { [INFO] [stdout] 419 | // deinit to move to other slot. [INFO] [stdout] ... [INFO] [stdout] 435 | UPDATES.update(id); [INFO] [stdout] 436 ~ } _ => { match slots.replacement.take() { Some(mut new) => { [INFO] [stdout] 437 | // apply replacement. [INFO] [stdout] ... [INFO] [stdout] 452 | WIDGET.update_info().layout().render(); [INFO] [stdout] 453 ~ } _ => {}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:459:20 [INFO] [stdout] | [INFO] [stdout] 459 | if let Some((slot, _)) = &slots.move_request { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^-----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/arc.rs:466:17 [INFO] [stdout] | [INFO] [stdout] 466 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 459 ~ match &slots.move_request { Some((slot, _)) => { [INFO] [stdout] 460 | if *slot == self.slot && slots.owner.is_none() { [INFO] [stdout] ... [INFO] [stdout] 465 | } [INFO] [stdout] 466 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1130:12 [INFO] [stdout] | [INFO] [stdout] 1130 | if let Some(r) = self.ctrl.take_requests() { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1270:9 [INFO] [stdout] | [INFO] [stdout] 1270 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1130 ~ match self.ctrl.take_requests() { Some(r) => { [INFO] [stdout] 1131 | if r.clear { [INFO] [stdout] ... [INFO] [stdout] 1269 | } [INFO] [stdout] 1270 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1164:24 [INFO] [stdout] | [INFO] [stdout] 1164 | if let Some(r) = self [INFO] [stdout] | _________________________^ - [INFO] [stdout] | | ______________________________________| [INFO] [stdout] 1165 | || .vec [INFO] [stdout] | ||____________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 1166 | | .iter_mut() [INFO] [stdout] 1167 | | .position(|w| w.with_context(WidgetUpdateMode::Ignore, || WIDGET.id() == id).unwrap_or(false)) [INFO] [stdout] | |_______________________________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1182:21 [INFO] [stdout] | [INFO] [stdout] 1182 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1164 ~ match self [INFO] [stdout] 1165 | .vec [INFO] [stdout] 1166 | .iter_mut() [INFO] [stdout] 1167 | .position(|w| w.with_context(WidgetUpdateMode::Ignore, || WIDGET.id() == id).unwrap_or(false)) [INFO] [stdout] 1168 ~ { Some(r) => { [INFO] [stdout] 1169 | let i = to(r, self.len()); [INFO] [stdout] ... [INFO] [stdout] 1181 | } [INFO] [stdout] 1182 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1246:24 [INFO] [stdout] | [INFO] [stdout] 1246 | if let Some(r) = self [INFO] [stdout] | _________________________^ - [INFO] [stdout] | | ______________________________________| [INFO] [stdout] 1247 | || .vec [INFO] [stdout] | ||____________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 1248 | | .iter_mut() [INFO] [stdout] 1249 | | .position(|w| w.with_context(WidgetUpdateMode::Ignore, || WIDGET.id() == id).unwrap_or(false)) [INFO] [stdout] | |_______________________________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1267:21 [INFO] [stdout] | [INFO] [stdout] 1267 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1246 ~ match self [INFO] [stdout] 1247 | .vec [INFO] [stdout] 1248 | .iter_mut() [INFO] [stdout] 1249 | .position(|w| w.with_context(WidgetUpdateMode::Ignore, || WIDGET.id() == id).unwrap_or(false)) [INFO] [stdout] 1250 ~ { Some(r) => { [INFO] [stdout] 1251 | let i = to(r, self.len()); [INFO] [stdout] ... [INFO] [stdout] 1266 | } [INFO] [stdout] 1267 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1926:24 [INFO] [stdout] | [INFO] [stdout] 1926 | if let (Some(s), Some(e)) = (tree.get(s), tree.get(e)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1931:21 [INFO] [stdout] | [INFO] [stdout] 1931 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1926 ~ match (tree.get(s), tree.get(e)) { (Some(s), Some(e)) => { [INFO] [stdout] 1927 | let parent = Some(parent); [INFO] [stdout] ... [INFO] [stdout] 1930 | } [INFO] [stdout] 1931 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1943:16 [INFO] [stdout] | [INFO] [stdout] 1943 | if let (Some(s), Some(e)) = (tree.get(s), tree.get(e)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/node/list.rs:1948:13 [INFO] [stdout] | [INFO] [stdout] 1948 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1943 ~ match (tree.get(s), tree.get(e)) { (Some(s), Some(e)) => { [INFO] [stdout] 1944 | let parent = Some(parent); [INFO] [stdout] ... [INFO] [stdout] 1947 | } [INFO] [stdout] 1948 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/widget/easing.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | if let Some(when) = (*self).as_unboxed_any().downcast_ref::>() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 51 | } else if let Some(when) = (*self).as_unboxed_any().downcast_ref::>() { [INFO] [stdout] | ------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/easing.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | } else if let Some(when) = (*self).as_unboxed_any().downcast_ref::>() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/widget/easing.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 34 ~ match (*self).as_unboxed_any().downcast_ref::>() { Some(when) => { [INFO] [stdout] 35 | let conditions: Vec<_> = when_conditions_data [INFO] [stdout] ... [INFO] [stdout] 50 | } [INFO] [stdout] 51 ~ } _ => { match (*self).as_unboxed_any().downcast_ref::>() { Some(when) => { [INFO] [stdout] 52 | let conditions: Vec<_> = when_conditions_data [INFO] [stdout] ... [INFO] [stdout] 59 | } [INFO] [stdout] 60 ~ } _ => {}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:347:20 [INFO] [stdout] | [INFO] [stdout] 347 | if let Some(img) = VIEW_PROCESS.on_image_metadata_loaded(id, size, ppi, is_mask) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:350:17 [INFO] [stdout] | [INFO] [stdout] 350 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 347 ~ match VIEW_PROCESS.on_image_metadata_loaded(id, size, ppi, is_mask) { Some(img) => { [INFO] [stdout] 348 | let args = RawImageArgs::now(img); [INFO] [stdout] 349 | self.notify_event(RAW_IMAGE_METADATA_LOADED_EVENT.new_update(args), observer); [INFO] [stdout] 350 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:360:20 [INFO] [stdout] | [INFO] [stdout] 360 | if let Some(img) = VIEW_PROCESS.on_image_partially_loaded(id, partial_size, ppi, is_opaque, is_mask, partial_bgra8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------------------------------------------------------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:363:17 [INFO] [stdout] | [INFO] [stdout] 363 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 360 ~ match VIEW_PROCESS.on_image_partially_loaded(id, partial_size, ppi, is_opaque, is_mask, partial_bgra8) { Some(img) => { [INFO] [stdout] 361 | let args = RawImageArgs::now(img); [INFO] [stdout] 362 | self.notify_event(RAW_IMAGE_PARTIALLY_LOADED_EVENT.new_update(args), observer); [INFO] [stdout] 363 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:366:20 [INFO] [stdout] | [INFO] [stdout] 366 | if let Some(img) = VIEW_PROCESS.on_image_loaded(image) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:369:17 [INFO] [stdout] | [INFO] [stdout] 369 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 366 ~ match VIEW_PROCESS.on_image_loaded(image) { Some(img) => { [INFO] [stdout] 367 | let args = RawImageArgs::now(img); [INFO] [stdout] 368 | self.notify_event(RAW_IMAGE_LOADED_EVENT.new_update(args), observer); [INFO] [stdout] 369 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:372:20 [INFO] [stdout] | [INFO] [stdout] 372 | if let Some(img) = VIEW_PROCESS.on_image_error(id, error) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:375:17 [INFO] [stdout] | [INFO] [stdout] 375 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 372 ~ match VIEW_PROCESS.on_image_error(id, error) { Some(img) => { [INFO] [stdout] 373 | let args = RawImageArgs::now(img); [INFO] [stdout] 374 | self.notify_event(RAW_IMAGE_LOAD_ERROR_EVENT.new_update(args), observer); [INFO] [stdout] 375 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:387:20 [INFO] [stdout] | [INFO] [stdout] 387 | if let Some(img) = VIEW_PROCESS.on_frame_image_ready(image_id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:390:17 [INFO] [stdout] | [INFO] [stdout] 390 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 387 ~ match VIEW_PROCESS.on_frame_image_ready(image_id) { Some(img) => { [INFO] [stdout] 388 | let args = RawFrameImageReadyArgs::now(img, window_id(w_id), frame_id, selection); [INFO] [stdout] 389 | self.notify_event(RAW_FRAME_IMAGE_READY_EVENT.new_update(args), observer); [INFO] [stdout] 390 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:401:20 [INFO] [stdout] | [INFO] [stdout] 401 | if let Some(update) = crate::access::on_access_command(window_id(win_id), WidgetId::from_raw(wgt_id.0), command) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------------------------------------------------------------------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:403:17 [INFO] [stdout] | [INFO] [stdout] 403 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 401 ~ match crate::access::on_access_command(window_id(win_id), WidgetId::from_raw(wgt_id.0), command) { Some(update) => { [INFO] [stdout] 402 | self.notify_event(update, observer); [INFO] [stdout] 403 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:623:24 [INFO] [stdout] | [INFO] [stdout] 623 | if let Some(last) = self.pending_view_events.last_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------------------^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:628:21 [INFO] [stdout] | [INFO] [stdout] 628 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 623 ~ match self.pending_view_events.last_mut() { Some(last) => { [INFO] [stdout] 624 | match last.coalesce(ev) { [INFO] [stdout] ... [INFO] [stdout] 627 | } [INFO] [stdout] 628 ~ } _ => { [INFO] [stdout] 629 | self.pending_view_events.push(ev); [INFO] [stdout] 630 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:1260:12 [INFO] [stdout] | [INFO] [stdout] 1260 | if let Some(pending) = self.pending_exit.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:1267:9 [INFO] [stdout] | [INFO] [stdout] 1267 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1260 ~ match self.pending_exit.take() { Some(pending) => { [INFO] [stdout] 1261 | if pending.handle.is_stopped() { [INFO] [stdout] ... [INFO] [stdout] 1266 | } [INFO] [stdout] 1267 ~ } _ => { [INFO] [stdout] 1268 | false [INFO] [stdout] 1269 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 10s [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:1282:12 [INFO] [stdout] | [INFO] [stdout] 1282 | if let Some(response) = APP_PROCESS_SV.write().take_requests() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^-------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:1289:9 [INFO] [stdout] | [INFO] [stdout] 1289 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1282 ~ match APP_PROCESS_SV.write().take_requests() { Some(response) => { [INFO] [stdout] 1283 | let args = ExitRequestedArgs::now(); [INFO] [stdout] ... [INFO] [stdout] 1288 | EXIT_REQUESTED_EVENT.notify(args); [INFO] [stdout] 1289 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/running.rs:1373:12 [INFO] [stdout] | [INFO] [stdout] 1373 | if let Some(r) = &self.exit_requests { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/running.rs:1375:9 [INFO] [stdout] | [INFO] [stdout] 1375 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1373 ~ match &self.exit_requests { Some(r) => { [INFO] [stdout] 1374 | r.response_var() [INFO] [stdout] 1375 ~ } _ => { [INFO] [stdout] 1376 | let (responder, response) = response_var(); [INFO] [stdout] ... [INFO] [stdout] 1379 | response [INFO] [stdout] 1380 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Compiling zng-app v0.13.7 (/tmp/fixit) [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/render.rs:184:13 [INFO] [stdout] | [INFO] [stdout] 184 | let gen = renderer [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 184 | let r#gen = renderer [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/render.rs:188:38 [INFO] [stdout] | [INFO] [stdout] 188 | let view_process_has_frame = gen != ViewProcessGen::INVALID && gen == info_tree.view_process_gen(); [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/view_process.rs:295:37 [INFO] [stdout] | [INFO] [stdout] 295 | pub fn handle_disconnect(&self, gen: ViewProcessGen) { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 295 | pub fn handle_disconnect(&self, r#gen: ViewProcessGen) { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/view_process.rs:296:48 [INFO] [stdout] | [INFO] [stdout] 296 | self.write().process.handle_disconnect(gen) [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/view_process.rs:358:40 [INFO] [stdout] | [INFO] [stdout] 358 | pub(super) fn handle_inited(&self, gen: ViewProcessGen, extensions: ApiExtensions) { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 358 | pub(super) fn handle_inited(&self, r#gen: ViewProcessGen, extensions: ApiExtensions) { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/view_process.rs:361:34 [INFO] [stdout] | [INFO] [stdout] 361 | me.process.handle_inited(gen); [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/view_process.rs:550:13 [INFO] [stdout] | [INFO] [stdout] 550 | let gen = self.process.generation(); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 550 | let r#gen = self.process.generation(); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/view_process.rs:551:23 [INFO] [stdout] | [INFO] [stdout] 551 | let invalid = gen != self.data_generation; [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/render.rs:184:13 [INFO] [stdout] | [INFO] [stdout] 184 | let gen = renderer [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 184 | let r#gen = renderer [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/render.rs:188:38 [INFO] [stdout] | [INFO] [stdout] 188 | let view_process_has_frame = gen != ViewProcessGen::INVALID && gen == info_tree.view_process_gen(); [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/view_process.rs:295:37 [INFO] [stdout] | [INFO] [stdout] 295 | pub fn handle_disconnect(&self, gen: ViewProcessGen) { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 295 | pub fn handle_disconnect(&self, r#gen: ViewProcessGen) { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/view_process.rs:296:48 [INFO] [stdout] | [INFO] [stdout] 296 | self.write().process.handle_disconnect(gen) [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/view_process.rs:358:40 [INFO] [stdout] | [INFO] [stdout] 358 | pub(super) fn handle_inited(&self, gen: ViewProcessGen, extensions: ApiExtensions) { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 358 | pub(super) fn handle_inited(&self, r#gen: ViewProcessGen, extensions: ApiExtensions) { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/view_process.rs:361:34 [INFO] [stdout] | [INFO] [stdout] 361 | me.process.handle_inited(gen); [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/view_process.rs:550:13 [INFO] [stdout] | [INFO] [stdout] 550 | let gen = self.process.generation(); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 550 | let r#gen = self.process.generation(); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/view_process.rs:551:23 [INFO] [stdout] | [INFO] [stdout] 551 | let invalid = gen != self.data_generation; [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/widget/info.rs:299:21 [INFO] [stdout] | [INFO] [stdout] 299 | if let Some(gen) = view_process_gen { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 299 | if let Some(r#gen) = view_process_gen { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/widget/info.rs:300:38 [INFO] [stdout] | [INFO] [stdout] 300 | frame.view_process_gen = gen; [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/widget/info.rs:299:21 [INFO] [stdout] | [INFO] [stdout] 299 | if let Some(gen) = view_process_gen { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 299 | if let Some(r#gen) = view_process_gen { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/widget/info.rs:300:38 [INFO] [stdout] | [INFO] [stdout] 300 | frame.view_process_gen = gen; [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/running.rs:618:51 [INFO] [stdout] | [INFO] [stdout] 618 | zng_view_api::Event::Disconnected(gen) => { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 618 | zng_view_api::Event::Disconnected(r#gen) => { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/running.rs:620:52 [INFO] [stdout] | [INFO] [stdout] 620 | VIEW_PROCESS.handle_disconnect(gen); [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/running.rs:618:51 [INFO] [stdout] | [INFO] [stdout] 618 | zng_view_api::Event::Disconnected(gen) => { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 618 | zng_view_api::Event::Disconnected(r#gen) => { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/running.rs:620:52 [INFO] [stdout] | [INFO] [stdout] 620 | VIEW_PROCESS.handle_disconnect(gen); [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/timer.rs:486:9 [INFO] [stdout] | [INFO] [stdout] 485 | pub fn wait_deadline(&self, deadline: impl Into) -> impl std::future::Future + Send + Sync { [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] 486 | TIMERS_SV.write().wait_deadline(deadline.into()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | temporary value is freed at the end of this statement [INFO] [stdout] | creates a temporary value which is freed while still in use [INFO] [stdout] | argument requires that borrow lasts for `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: captured variable cannot escape `FnMut` closure body [INFO] [stdout] --> src/widget/info.rs:1828:33 [INFO] [stdout] | [INFO] [stdout] 1825 | let me = self.clone(); [INFO] [stdout] | -- variable defined here [INFO] [stdout] ... [INFO] [stdout] 1828 | .flat_map(move |sq| me.inner_intersects(sq.to_rect()).map(move |w| (sq, w))) [INFO] [stdout] | - --^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | returns a closure that contains a reference to a captured variable, which then escapes the closure body [INFO] [stdout] | | variable captured here [INFO] [stdout] | inferred to be a `FnMut` closure [INFO] [stdout] | [INFO] [stdout] = note: `FnMut` closures only have access to their captured variables while they are executing... [INFO] [stdout] = note: ...therefore, they cannot allow references to captured variables to escape [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: captured variable cannot escape `FnMut` closure body [INFO] [stdout] --> src/widget/info.rs:1865:33 [INFO] [stdout] | [INFO] [stdout] 1861 | let me = self.clone(); [INFO] [stdout] | -- variable defined here [INFO] [stdout] ... [INFO] [stdout] 1865 | .flat_map(move |sq| me.inner_intersects(sq.to_rect()).map(move |w| (sq, w))) [INFO] [stdout] | - --^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | returns a closure that contains a reference to a captured variable, which then escapes the closure body [INFO] [stdout] | | variable captured here [INFO] [stdout] | inferred to be a `FnMut` closure [INFO] [stdout] | [INFO] [stdout] = note: `FnMut` closures only have access to their captured variables while they are executing... [INFO] [stdout] = note: ...therefore, they cannot allow references to captured variables to escape [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/timer.rs:486:9 [INFO] [stdout] | [INFO] [stdout] 485 | pub fn wait_deadline(&self, deadline: impl Into) -> impl std::future::Future + Send + Sync { [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] 486 | TIMERS_SV.write().wait_deadline(deadline.into()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | temporary value is freed at the end of this statement [INFO] [stdout] | creates a temporary value which is freed while still in use [INFO] [stdout] | argument requires that borrow lasts for `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: captured variable cannot escape `FnMut` closure body [INFO] [stdout] --> src/widget/info.rs:1828:33 [INFO] [stdout] | [INFO] [stdout] 1825 | let me = self.clone(); [INFO] [stdout] | -- variable defined here [INFO] [stdout] ... [INFO] [stdout] 1828 | .flat_map(move |sq| me.inner_intersects(sq.to_rect()).map(move |w| (sq, w))) [INFO] [stdout] | - --^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | returns a closure that contains a reference to a captured variable, which then escapes the closure body [INFO] [stdout] | | variable captured here [INFO] [stdout] | inferred to be a `FnMut` closure [INFO] [stdout] | [INFO] [stdout] = note: `FnMut` closures only have access to their captured variables while they are executing... [INFO] [stdout] = note: ...therefore, they cannot allow references to captured variables to escape [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: captured variable cannot escape `FnMut` closure body [INFO] [stdout] --> src/widget/info.rs:1865:33 [INFO] [stdout] | [INFO] [stdout] 1861 | let me = self.clone(); [INFO] [stdout] | -- variable defined here [INFO] [stdout] ... [INFO] [stdout] 1865 | .flat_map(move |sq| me.inner_intersects(sq.to_rect()).map(move |w| (sq, w))) [INFO] [stdout] | - --^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | returns a closure that contains a reference to a captured variable, which then escapes the closure body [INFO] [stdout] | | variable captured here [INFO] [stdout] | inferred to be a `FnMut` closure [INFO] [stdout] | [INFO] [stdout] = note: `FnMut` closures only have access to their captured variables while they are executing... [INFO] [stdout] = note: ...therefore, they cannot allow references to captured variables to escape [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `wgt__` does not live long enough [INFO] [stdout] --> src/tests/widget.rs:546:1 [INFO] [stdout] | [INFO] [stdout] 546 | #[widget($crate::tests::widget::PropertyNestGroupSortingWgt)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- [INFO] [stdout] | | | [INFO] [stdout] | | `wgt__` dropped here while still borrowed [INFO] [stdout] | borrowed value does not live long enough [INFO] [stdout] | binding `wgt__` declared here [INFO] [stdout] | argument requires that `wgt__` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 550 | / PropertyNestGroupSortingWgt! { [INFO] [stdout] 551 | | util::count_border = Position::next("count_border"); [INFO] [stdout] 552 | | util::count_border2 = Position::next("count_border2"); [INFO] [stdout] 553 | | util::count_size = Position::next("count_size"); [INFO] [stdout] ... | [INFO] [stdout] 565 | | util::count_child_context2 = Position::next("count_child_context2"); [INFO] [stdout] 566 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `$crate::tests::widget::PropertyNestGroupSortingWgt` which comes from the expansion of the macro `PropertyNestGroupSortingWgt` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `wgt__` does not live long enough [INFO] [stdout] --> src/tests/widget.rs:546:1 [INFO] [stdout] | [INFO] [stdout] 546 | #[widget($crate::tests::widget::PropertyNestGroupSortingWgt)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- [INFO] [stdout] | | | [INFO] [stdout] | | `wgt__` dropped here while still borrowed [INFO] [stdout] | borrowed value does not live long enough [INFO] [stdout] | binding `wgt__` declared here [INFO] [stdout] | argument requires that `wgt__` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 601 | / PropertyNestGroupSortingWgt! { [INFO] [stdout] 602 | | util::count_child_context = Position::next("count_child_context"); [INFO] [stdout] 603 | | util::count_child_context2 = Position::next("count_child_context2"); [INFO] [stdout] 604 | | util::count_child_layout = Position::next("count_child_layout"); [INFO] [stdout] ... | [INFO] [stdout] 616 | | util::count_border2 = Position::next("count_border2"); [INFO] [stdout] 617 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `$crate::tests::widget::PropertyNestGroupSortingWgt` which comes from the expansion of the macro `PropertyNestGroupSortingWgt` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0716`. [INFO] [stdout] [INFO] [stderr] error: could not compile `zng-app` (lib) due to 15 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0515]: cannot return reference to local variable `wgt__` [INFO] [stdout] --> src/tests/ui_node_list.rs:102:1 [INFO] [stdout] | [INFO] [stdout] 58 | / ListWgt! { [INFO] [stdout] 59 | | children = ui_vec![ [INFO] [stdout] 60 | | EmptyWgt! { [INFO] [stdout] 61 | | util::ctx_val = true; [INFO] [stdout] ... | [INFO] [stdout] 67 | | ]; [INFO] [stdout] 68 | | } [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] ... [INFO] [stdout] 102 | #[widget($crate::tests::ui_node_list::ListWgt)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ returns a reference to data owned by the current function [INFO] [stdout] | [INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules [INFO] [stdout] --> src/tests/ui_node_list.rs:102:1 [INFO] [stdout] | [INFO] [stdout] 58 | / ListWgt! { [INFO] [stdout] 59 | | children = ui_vec![ [INFO] [stdout] 60 | | EmptyWgt! { [INFO] [stdout] 61 | | util::ctx_val = true; [INFO] [stdout] ... | [INFO] [stdout] 67 | | ]; [INFO] [stdout] 68 | | } [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] ... [INFO] [stdout] 102 | #[widget($crate::tests::ui_node_list::ListWgt)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `$crate::tests::ui_node_list::ListWgt` which comes from the expansion of the macro `ListWgt` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] --> src/widget/base.rs:73:50 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn widget_build(&mut self) -> impl UiNode + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0515, E0597, E0716. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0515`. [INFO] [stdout] [INFO] [stderr] error: could not compile `zng-app` (lib test) due to 18 previous errors [INFO] [stderr] error: failed to check after updating to 2024 [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo check --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "ee9c1704199d3781183308cc9566460a30b50a48c3b3d887dd22f161b8d73de9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ee9c1704199d3781183308cc9566460a30b50a48c3b3d887dd22f161b8d73de9", kill_on_drop: false }` [INFO] [stdout] ee9c1704199d3781183308cc9566460a30b50a48c3b3d887dd22f161b8d73de9