[INFO] fetching crate monoio-http 0.3.10... [INFO] checking monoio-http-0.3.10 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate monoio-http 0.3.10 into /workspace/builds/worker-7-tc2/source [INFO] validating manifest of crates.io crate monoio-http 0.3.10 on toolchain ccf408f4326a858c00dd845a64a86b16f360a801 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate monoio-http 0.3.10 [INFO] removed 0 missing examples [INFO] finished tweaking crates.io crate monoio-http 0.3.10 [INFO] tweaked toml for crates.io crate monoio-http 0.3.10 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] crate crates.io crate monoio-http 0.3.10 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8db756229dec7f4ef367d0cbbb97c31855e9787923de1069a231cec2376c706e [INFO] running `Command { std: "docker" "start" "-a" "8db756229dec7f4ef367d0cbbb97c31855e9787923de1069a231cec2376c706e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8db756229dec7f4ef367d0cbbb97c31855e9787923de1069a231cec2376c706e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8db756229dec7f4ef367d0cbbb97c31855e9787923de1069a231cec2376c706e", kill_on_drop: false }` [INFO] [stdout] 8db756229dec7f4ef367d0cbbb97c31855e9787923de1069a231cec2376c706e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 135f172b261c0b8c5633d2e10f0c003f2d4dbb919dc8113464e8038cadd9db9f [INFO] running `Command { std: "docker" "start" "-a" "135f172b261c0b8c5633d2e10f0c003f2d4dbb919dc8113464e8038cadd9db9f", 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] Fixed Cargo.toml (1 fix) [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Compiling proc-macro2 v1.0.82 [INFO] [stderr] Compiling memoffset v0.7.1 [INFO] [stderr] Compiling cc v1.0.97 [INFO] [stderr] Compiling io-uring v0.6.4 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Checking tokio v1.37.0 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Compiling thiserror v1.0.60 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling serde v1.0.202 [INFO] [stderr] Compiling serde_json v1.0.117 [INFO] [stderr] Checking hashbrown v0.12.3 [INFO] [stderr] Checking param v0.1.2 [INFO] [stderr] Checking overload v0.1.1 [INFO] [stderr] Checking reusable-box-future v0.2.0 [INFO] [stderr] Checking sharded-slab v0.1.7 [INFO] [stderr] Checking nu-ansi-term v0.46.0 [INFO] [stderr] Checking service-async v0.2.3 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking local-sync v0.1.1 [INFO] [stderr] Checking thread_local v1.1.8 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Checking env_logger v0.10.2 [INFO] [stderr] Checking tracing-subscriber v0.3.18 [INFO] [stderr] Compiling syn v2.0.64 [INFO] [stderr] Compiling ring v0.17.8 [INFO] [stderr] Checking tokio-util v0.7.11 [INFO] [stderr] Checking getrandom v0.2.14 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Checking nix v0.26.4 [INFO] [stderr] Checking socket2 v0.5.7 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking quickcheck v1.0.3 [INFO] [stderr] Compiling auto-const-array v0.2.1 [INFO] [stderr] Compiling monoio-macros v0.1.0 [INFO] [stderr] Compiling thiserror-impl v1.0.60 [INFO] [stderr] Compiling serde_derive v1.0.202 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Checking rustls-webpki v0.101.7 [INFO] [stderr] Checking sct v0.7.1 [INFO] [stderr] Checking monoio v0.2.3 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking monoio-io-wrapper v0.1.1 [INFO] [stderr] Checking monoio-codec v0.3.4 [INFO] [stderr] Checking monoio-compat v0.2.2 [INFO] [stderr] Checking monoio-rustls v0.3.0 [INFO] [stderr] Checking monoio-http v0.3.10 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `monoio_http` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/h2/codec/framed_write.rs [INFO] [stderr] * src/h2/frame/headers.rs [INFO] [stderr] * src/h2/frame/mod.rs [INFO] [stderr] * src/h2/hpack/table.rs [INFO] [stderr] * src/h2/mod.rs [INFO] [stderr] * src/util/spsc.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[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/mod.rs:93:6 [INFO] [stderr] | [INFO] [stderr] 93 | ($e:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/codec/framed_write.rs:23:6 [INFO] [stderr] | [INFO] [stderr] 23 | ($self:expr_2021) => {{ [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/hpack/table.rs:63:26 [INFO] [stderr] | [INFO] [stderr] 63 | ($probe_var: ident < $len: expr_2021, $body: expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/hpack/table.rs:63:43 [INFO] [stderr] | [INFO] [stderr] 63 | ($probe_var: ident < $len: expr_2021, $body: expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/frame/mod.rs:21:6 [INFO] [stderr] | [INFO] [stderr] 21 | ($buf:expr_2021, $offset:expr_2021, $tip:ty) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/frame/mod.rs:21:22 [INFO] [stderr] | [INFO] [stderr] 21 | ($buf:expr_2021, $offset:expr_2021, $tip:ty) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/frame/headers.rs:843:28 [INFO] [stderr] | [INFO] [stderr] 843 | ($field:ident, $val:expr_2021) => {{ [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/util/spsc.rs:10:6 [INFO] [stderr] | [INFO] [stderr] 10 | ($slot: expr_2021, $waker: expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/util/spsc.rs:10:24 [INFO] [stderr] | [INFO] [stderr] 10 | ($slot: expr_2021, $waker: expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error: aborting due to 9 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [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/h2/mod.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 93 | ($e: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] 93 | ($e: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/h2/codec/framed_write.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 23 | ($self: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] 23 | ($self: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/h2/hpack/table.rs:63:32 [INFO] [stdout] | [INFO] [stdout] 63 | ($probe_var: ident < $len: expr, $body: 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] 63 | ($probe_var: ident < $len: expr_2021, $body: 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/h2/hpack/table.rs:63:45 [INFO] [stdout] | [INFO] [stdout] 63 | ($probe_var: ident < $len: expr, $body: 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] 63 | ($probe_var: ident < $len: expr, $body: 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/h2/frame/mod.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | ($buf:expr, $offset:expr, $tip:ty) => { [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] 21 | ($buf:expr_2021, $offset:expr, $tip:ty) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/h2/frame/mod.rs:21:25 [INFO] [stdout] | [INFO] [stdout] 21 | ($buf:expr, $offset:expr, $tip:ty) => { [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] 21 | ($buf:expr, $offset:expr_2021, $tip:ty) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/h2/frame/headers.rs:843:33 [INFO] [stdout] | [INFO] [stdout] 843 | ($field:ident, $val: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] 843 | ($field:ident, $val: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/util/spsc.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | ($slot: expr, $waker: 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] 10 | ($slot: expr_2021, $waker: 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/util/spsc.rs:10:27 [INFO] [stdout] | [INFO] [stdout] 10 | ($slot: expr, $waker: 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] 10 | ($slot: expr, $waker: expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/common/body.rs:99:23 [INFO] [stdout] | [INFO] [stdout] 99 | while let Some(chunk) = self.next_data().await { [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/common/body.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/common/body.rs:119:23 [INFO] [stdout] | [INFO] [stdout] 119 | while let Some(chunk) = self.next_data().await { [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/common/body.rs:121:17 [INFO] [stdout] | [INFO] [stdout] 121 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/common/body.rs:235:23 [INFO] [stdout] | [INFO] [stdout] 235 | while let Some(chunk) = self.next_data().await { [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/common/body.rs:237:17 [INFO] [stdout] | [INFO] [stdout] 237 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/common/waker.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | if let Some(waker) = waker.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/common/waker.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 26 ~ match waker.take() { Some(waker) => { [INFO] [stdout] 27 | waker.wake(); [INFO] [stdout] 28 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/codec/decoder.rs:599:16 [INFO] [stdout] | [INFO] [stdout] 599 | if let Err(e) = self.fill_payload().await { [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/h1/codec/decoder.rs:601:13 [INFO] [stdout] | [INFO] [stdout] 601 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 599 ~ match self.fill_payload().await { Err(e) => { [INFO] [stdout] 600 | return Some(Err(e)); [INFO] [stdout] 601 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/codec/encoder.rs:413:23 [INFO] [stdout] | [INFO] [stdout] 413 | while let Some(data_res) = payload.next_data().await { [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/h1/codec/encoder.rs:434:17 [INFO] [stdout] | [INFO] [stdout] 434 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/payload.rs:147:12 [INFO] [stdout] | [INFO] [stdout] 147 | if let Some(waker) = self.task.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/h1/payload.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 147 ~ match self.task.take() { Some(waker) => { [INFO] [stdout] 148 | waker.wake(); [INFO] [stdout] 149 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/payload.rs:163:20 [INFO] [stdout] | [INFO] [stdout] 163 | if let Some(item) = inner.item.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/h1/payload.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 163 ~ match inner.item.take() { Some(item) => { [INFO] [stdout] 164 | inner.eof = true; [INFO] [stdout] 165 | return Some(item); [INFO] [stdout] 166 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/payload.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 198 | if let Some(shared) = self.inner.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/h1/payload.rs:202:9 [INFO] [stdout] | [INFO] [stdout] 202 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 198 ~ match self.inner.upgrade() { Some(shared) => { [INFO] [stdout] 199 | let inner = unsafe { &mut *shared.get() }; [INFO] [stdout] 200 | inner.item = Some(item); [INFO] [stdout] 201 | inner.wake(); [INFO] [stdout] 202 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/payload.rs:239:12 [INFO] [stdout] | [INFO] [stdout] 239 | if let Some(waker) = self.task.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/h1/payload.rs:241:9 [INFO] [stdout] | [INFO] [stdout] 241 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 239 ~ match self.task.take() { Some(waker) => { [INFO] [stdout] 240 | waker.wake(); [INFO] [stdout] 241 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/payload.rs:277:12 [INFO] [stdout] | [INFO] [stdout] 277 | if let Some(shared) = self.inner.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/h1/payload.rs:284:9 [INFO] [stdout] | [INFO] [stdout] 284 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 277 ~ match self.inner.upgrade() { Some(shared) => { [INFO] [stdout] 278 | let inner = unsafe { &mut *shared.get() }; [INFO] [stdout] ... [INFO] [stdout] 283 | inner.wake(); [INFO] [stdout] 284 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/payload.rs:288:12 [INFO] [stdout] | [INFO] [stdout] 288 | if let Some(shared) = self.inner.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/h1/payload.rs:292:9 [INFO] [stdout] | [INFO] [stdout] 292 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 288 ~ match self.inner.upgrade() { Some(shared) => { [INFO] [stdout] 289 | let inner = unsafe { &mut *shared.get() }; [INFO] [stdout] 290 | inner.items.push_back(Err(err)); [INFO] [stdout] 291 | inner.wake(); [INFO] [stdout] 292 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/codec/framed_read.rs:360:24 [INFO] [stdout] | [INFO] [stdout] 360 | if let Some(frame) = frame { [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/h2/codec/framed_read.rs:363:21 [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 frame { Some(frame) => { [INFO] [stdout] 361 | tracing::debug!(?frame, "received"); [INFO] [stdout] 362 | return Some(Ok(frame)); [INFO] [stdout] 363 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/codec/framed_read.rs:378:12 [INFO] [stdout] | [INFO] [stdout] 378 | if let Some(custom) = err.get_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/h2/codec/framed_read.rs:382:9 [INFO] [stdout] | [INFO] [stdout] 382 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 378 ~ match err.get_ref() { Some(custom) => { [INFO] [stdout] 379 | if custom.is::() { [INFO] [stdout] 380 | return Error::library_go_away(Reason::FRAME_SIZE_ERROR); [INFO] [stdout] 381 | } [INFO] [stdout] 382 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/codec/framed_write.rs:307:20 [INFO] [stdout] | [INFO] [stdout] 307 | if let Some(continuation) = v.encode(&mut self.hpack, &mut buf) { [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/h2/codec/framed_write.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | } [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 v.encode(&mut self.hpack, &mut buf) { Some(continuation) => { [INFO] [stdout] 308 | self.next = Some(Next::Continuation(continuation)); [INFO] [stdout] 309 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/codec/framed_write.rs:313:20 [INFO] [stdout] | [INFO] [stdout] 313 | if let Some(continuation) = v.encode(&mut self.hpack, &mut buf) { [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/h2/codec/framed_write.rs:315:17 [INFO] [stdout] | [INFO] [stdout] 315 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 313 ~ match v.encode(&mut self.hpack, &mut buf) { Some(continuation) => { [INFO] [stdout] 314 | self.next = Some(Next::Continuation(continuation)); [INFO] [stdout] 315 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/hpack/table.rs:414:20 [INFO] [stdout] | [INFO] [stdout] 414 | if let Some(idx) = slot.next { [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/h2/hpack/table.rs:417:17 [INFO] [stdout] | [INFO] [stdout] 417 | } else if Some(pos.index) == prev_idx { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 414 ~ match slot.next { Some(idx) => { [INFO] [stdout] 415 | pos.index = idx; [INFO] [stdout] 416 | self.indices[probe] = Some(pos); [INFO] [stdout] 417 ~ } _ => if Some(pos.index) == prev_idx { [INFO] [stdout] 418 | pos.index = 0usize.wrapping_sub(self.inserted + 1); [INFO] [stdout] ... [INFO] [stdout] 422 | self.remove_phase_two(probe); [INFO] [stdout] 423 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/go_away.rs:138:12 [INFO] [stdout] | [INFO] [stdout] 138 | if let Some(frame) = self.pending.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/h2/proto/go_away.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | } else if self.should_close_now() { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 138 ~ match self.pending.take() { Some(frame) => { [INFO] [stdout] 139 | if !dst.poll_ready(cx)?.is_ready() { [INFO] [stdout] ... [INFO] [stdout] 147 | return Poll::Ready(Some(Ok(reason))); [INFO] [stdout] 148 ~ } _ => if self.should_close_now() { [INFO] [stdout] 149 | return match self.going_away().map(|going_away| going_away.reason) { [INFO] [stdout] ... [INFO] [stdout] 152 | }; [INFO] [stdout] 153 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/ping_pong.rs:187:19 [INFO] [stdout] | [INFO] [stdout] 187 | } else if let Some(ref users) = self.user_pings { [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/h2/proto/ping_pong.rs:200:9 [INFO] [stdout] | [INFO] [stdout] 200 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 187 ~ } else { match self.user_pings { Some(ref users) => { [INFO] [stdout] 188 | let inner = unsafe { &mut *users.0.get() }; [INFO] [stdout] ... [INFO] [stdout] 199 | } [INFO] [stdout] 200 ~ } _ => {}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/prioritize.rs:132:16 [INFO] [stdout] | [INFO] [stdout] 132 | if let Some(task) = task.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/h2/proto/streams/prioritize.rs:134:13 [INFO] [stdout] | [INFO] [stdout] 134 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 132 ~ match task.take() { Some(task) => { [INFO] [stdout] 133 | task.wake(); [INFO] [stdout] 134 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/prioritize.rs:565:12 [INFO] [stdout] | [INFO] [stdout] 565 | if let Some(frame) = dst.take_last_data_frame() { [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/h2/proto/streams/prioritize.rs:567:9 [INFO] [stdout] | [INFO] [stdout] 567 | } 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] 565 ~ match dst.take_last_data_frame() { Some(frame) => { [INFO] [stdout] 566 | self.reclaim_frame_inner(buffer, store, frame) [INFO] [stdout] 567 ~ } _ => { [INFO] [stdout] 568 | false [INFO] [stdout] 569 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/prioritize.rs:645:15 [INFO] [stdout] | [INFO] [stdout] 645 | while let Some(frame) = stream.pending_send.pop_front(buffer) { [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/h2/proto/streams/prioritize.rs:647:9 [INFO] [stdout] | [INFO] [stdout] 647 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/prioritize.rs:812:32 [INFO] [stdout] | [INFO] [stdout] 812 | ... if let Some(reason) = stream.state.get_scheduled_reset() { [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/h2/proto/streams/prioritize.rs:820:29 [INFO] [stdout] | [INFO] [stdout] 820 | ... } 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] 812 ~ match stream.state.get_scheduled_reset() { Some(reason) => { [INFO] [stdout] 813 | let stream_id = stream.id; [INFO] [stdout] ... [INFO] [stdout] 819 | Frame::Reset(frame) [INFO] [stdout] 820 ~ } _ => { [INFO] [stdout] 821 | // If the stream receives a RESET from the peer, it may have [INFO] [stdout] ... [INFO] [stdout] 830 | continue; [INFO] [stdout] 831 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/recv.rs:184:16 [INFO] [stdout] | [INFO] [stdout] 184 | if let Some(content_length) = frame.fields().get(header::CONTENT_LENGTH) { [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/h2/proto/streams/recv.rs:194:13 [INFO] [stdout] | [INFO] [stdout] 194 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 184 ~ match frame.fields().get(header::CONTENT_LENGTH) { Some(content_length) => { [INFO] [stdout] 185 | let content_length = match frame::parse_u64(content_length.as_bytes()) { [INFO] [stdout] ... [INFO] [stdout] 193 | stream.content_length = ContentLength::Remaining(content_length); [INFO] [stdout] 194 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/recv.rs:289:12 [INFO] [stdout] | [INFO] [stdout] 289 | if let Some(p) = pushed { [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/h2/proto/streams/recv.rs:291:9 [INFO] [stdout] | [INFO] [stdout] 291 | } 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] 289 ~ match pushed { Some(p) => { [INFO] [stdout] 290 | Poll::Ready(Some(Ok(p))) [INFO] [stdout] 291 ~ } _ => { [INFO] [stdout] 292 | let is_open = stream.state.ensure_recv_open()?; [INFO] [stdout] ... [INFO] [stdout] 299 | } [INFO] [stdout] 300 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/recv.rs:365:16 [INFO] [stdout] | [INFO] [stdout] 365 | if let Some(task) = task.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/h2/proto/streams/recv.rs:367:13 [INFO] [stdout] | [INFO] [stdout] 367 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 365 ~ match task.take() { Some(task) => { [INFO] [stdout] 366 | task.wake(); [INFO] [stdout] 367 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/recv.rs:396:16 [INFO] [stdout] | [INFO] [stdout] 396 | if let Some(task) = task.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/h2/proto/streams/recv.rs:398:13 [INFO] [stdout] | [INFO] [stdout] 398 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 396 ~ match task.take() { Some(task) => { [INFO] [stdout] 397 | task.wake(); [INFO] [stdout] 398 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/recv.rs:460:16 [INFO] [stdout] | [INFO] [stdout] 460 | if let Some(task) = task.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/h2/proto/streams/recv.rs:462:13 [INFO] [stdout] | [INFO] [stdout] 462 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 460 ~ match task.take() { Some(task) => { [INFO] [stdout] 461 | task.wake(); [INFO] [stdout] 462 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/send.rs:94:19 [INFO] [stdout] | [INFO] [stdout] 94 | } else if let Some(te) = fields.get(http::header::TE) { [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/h2/proto/streams/send.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 94 ~ } else { match fields.get(http::header::TE) { Some(te) => { [INFO] [stdout] 95 | if te != "trailers" { [INFO] [stdout] ... [INFO] [stdout] 98 | } [INFO] [stdout] 99 ~ } _ => {}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/stream.rs:355:12 [INFO] [stdout] | [INFO] [stdout] 355 | if let Some(task) = self.send_task.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/h2/proto/streams/stream.rs:357:9 [INFO] [stdout] | [INFO] [stdout] 357 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 355 ~ match self.send_task.take() { Some(task) => { [INFO] [stdout] 356 | task.wake(); [INFO] [stdout] 357 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/stream.rs:365:12 [INFO] [stdout] | [INFO] [stdout] 365 | if let Some(task) = self.recv_task.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/h2/proto/streams/stream.rs:367:9 [INFO] [stdout] | [INFO] [stdout] 367 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 365 ~ match self.recv_task.take() { Some(task) => { [INFO] [stdout] 366 | task.wake(); [INFO] [stdout] 367 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/streams.rs:458:28 [INFO] [stdout] | [INFO] [stdout] 458 | if let Some(resp) = resp { [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/h2/proto/streams/streams.rs:472:25 [INFO] [stdout] | [INFO] [stdout] 472 | } 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] 458 ~ match resp { Some(resp) => { [INFO] [stdout] 459 | let sent = actions.send.send_headers( [INFO] [stdout] ... [INFO] [stdout] 471 | Ok(()) [INFO] [stdout] 472 ~ } _ => { [INFO] [stdout] 473 | Err(Error::library_reset(stream.id, Reason::REFUSED_STREAM)) [INFO] [stdout] 474 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/streams.rs:615:16 [INFO] [stdout] | [INFO] [stdout] 615 | if let Some(mut stream) = self.store.find_mut(&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/h2/proto/streams/streams.rs:626:13 [INFO] [stdout] | [INFO] [stdout] 626 | } 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] 615 ~ match self.store.find_mut(&id) { Some(mut stream) => { [INFO] [stdout] 616 | // This result is ignored as there is nothing to do when there [INFO] [stdout] ... [INFO] [stdout] 625 | ); [INFO] [stdout] 626 ~ } _ => { [INFO] [stdout] 627 | self.actions [INFO] [stdout] 628 | .ensure_not_idle(self.counts.peer(), id) [INFO] [stdout] 629 | .map_err(Error::library_go_away)?; [INFO] [stdout] 630 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/streams.rs:1007:16 [INFO] [stdout] | [INFO] [stdout] 1007 | if let Some(task) = inner.actions.task.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/h2/proto/streams/streams.rs:1009:13 [INFO] [stdout] | [INFO] [stdout] 1009 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1007 ~ match inner.actions.task.take() { Some(task) => { [INFO] [stdout] 1008 | task.wake(); [INFO] [stdout] 1009 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/streams.rs:1380:12 [INFO] [stdout] | [INFO] [stdout] 1380 | if let Some(task) = actions.task.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/h2/proto/streams/streams.rs:1382:9 [INFO] [stdout] | [INFO] [stdout] 1382 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1380 ~ match actions.task.take() { Some(task) => { [INFO] [stdout] 1381 | task.wake(); [INFO] [stdout] 1382 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/streams.rs:1471:12 [INFO] [stdout] | [INFO] [stdout] 1471 | if let Err(Error::Reset(stream_id, reason, initiator)) = res { [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/h2/proto/streams/streams.rs:1477:9 [INFO] [stdout] | [INFO] [stdout] 1477 | } 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] 1471 ~ match res { Err(Error::Reset(stream_id, reason, initiator)) => { [INFO] [stdout] 1472 | debug_assert_eq!(stream_id, stream.id); [INFO] [stdout] ... [INFO] [stdout] 1476 | Ok(()) [INFO] [stdout] 1477 ~ } _ => { [INFO] [stdout] 1478 | res [INFO] [stdout] 1479 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/streams.rs:1491:12 [INFO] [stdout] | [INFO] [stdout] 1491 | if let Some(ref err) = self.conn_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/h2/proto/streams/streams.rs:1493:9 [INFO] [stdout] | [INFO] [stdout] 1493 | } 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] 1491 ~ match self.conn_error { Some(ref err) => { [INFO] [stdout] 1492 | Err(err.clone()) [INFO] [stdout] 1493 ~ } _ => { [INFO] [stdout] 1494 | Ok(()) [INFO] [stdout] 1495 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures_core::Future, h2::client::Connection), h2::error::Error>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/h2/client.rs:1104:10 [INFO] [stdout] | [INFO] [stdout] 1104 | ) -> impl Future, Connection), crate::h2::Error>> [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/h2/client.rs:1102:9 [INFO] [stdout] | [INFO] [stdout] 1102 | &self, [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] 1104 | ) -> impl Future, Connection), crate::h2::Error>> + use [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/server.rs:1453:12 [INFO] [stdout] | [INFO] [stdout] 1453 | if let Some(method) = pseudo.method { [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/h2/server.rs:1456:9 [INFO] [stdout] | [INFO] [stdout] 1456 | } 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] 1453 ~ match pseudo.method { Some(method) => { [INFO] [stdout] 1454 | is_connect = method == Method::CONNECT; [INFO] [stdout] 1455 | b = b.method(method); [INFO] [stdout] 1456 ~ } _ => { [INFO] [stdout] 1457 | malformed!("malformed headers: missing method"); [INFO] [stdout] 1458 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/server.rs:1491:12 [INFO] [stdout] | [INFO] [stdout] 1491 | if let Some(scheme) = pseudo.scheme { [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/h2/server.rs:1510:9 [INFO] [stdout] | [INFO] [stdout] 1510 | } else if !is_connect || has_protocol { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1491 ~ match pseudo.scheme { Some(scheme) => { [INFO] [stdout] 1492 | if is_connect && !has_protocol { [INFO] [stdout] ... [INFO] [stdout] 1509 | } [INFO] [stdout] 1510 ~ } _ => if !is_connect || has_protocol { [INFO] [stdout] 1511 | malformed!("malformed headers: missing scheme"); [INFO] [stdout] 1512 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/server.rs:1514:12 [INFO] [stdout] | [INFO] [stdout] 1514 | if let Some(path) = pseudo.path { [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/h2/server.rs:1528:9 [INFO] [stdout] | [INFO] [stdout] 1528 | } else if is_connect && has_protocol { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1514 ~ match pseudo.path { Some(path) => { [INFO] [stdout] 1515 | if is_connect && !has_protocol { [INFO] [stdout] ... [INFO] [stdout] 1527 | })?); [INFO] [stdout] 1528 ~ } _ => if is_connect && has_protocol { [INFO] [stdout] 1529 | malformed!("malformed headers: missing path in extended CONNECT"); [INFO] [stdout] 1530 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/util/spsc.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 101 | if let Some(waker) = inner.close_waker.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/util/spsc.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 101 ~ match inner.close_waker.take() { Some(waker) => { [INFO] [stdout] 102 | waker.wake(); [INFO] [stdout] 103 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/util/spsc.rs:158:12 [INFO] [stdout] | [INFO] [stdout] 158 | if let Some(waker) = inner.receiver_waker.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/util/spsc.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 160 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 158 ~ match inner.receiver_waker.take() { Some(waker) => { [INFO] [stdout] 159 | waker.wake(); [INFO] [stdout] 160 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/util/spsc.rs:183:12 [INFO] [stdout] | [INFO] [stdout] 183 | if let Some(waker) = inner.close_waker.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/util/spsc.rs:185:9 [INFO] [stdout] | [INFO] [stdout] 185 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 183 ~ match inner.close_waker.take() { Some(waker) => { [INFO] [stdout] 184 | waker.wake(); [INFO] [stdout] 185 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 53 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating examples/h2_monoio_client.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `monoio_http` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/h1/codec/decoder.rs [INFO] [stderr] * src/h2/codec/framed_write.rs [INFO] [stderr] * src/h2/frame/headers.rs [INFO] [stderr] * src/h2/frame/mod.rs [INFO] [stderr] * src/h2/hpack/table.rs [INFO] [stderr] * src/h2/hpack/test/fixture.rs [INFO] [stderr] * src/h2/mod.rs [INFO] [stderr] * src/util/spsc.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[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h1/codec/decoder.rs:822:12 [INFO] [stderr] | [INFO] [stderr] 822 | ($($x:expr_2021),*) => {{ [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/mod.rs:93:6 [INFO] [stderr] | [INFO] [stderr] 93 | ($e:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/codec/framed_write.rs:23:6 [INFO] [stderr] | [INFO] [stderr] 23 | ($self:expr_2021) => {{ [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/hpack/table.rs:63:26 [INFO] [stderr] | [INFO] [stderr] 63 | ($probe_var: ident < $len: expr_2021, $body: expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/hpack/table.rs:63:43 [INFO] [stderr] | [INFO] [stderr] 63 | ($probe_var: ident < $len: expr_2021, $body: expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/hpack/test/fixture.rs:158:25 [INFO] [stderr] | [INFO] [stderr] 158 | ($fn:ident, $path:expr_2021); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/frame/mod.rs:21:6 [INFO] [stderr] | [INFO] [stderr] 21 | ($buf:expr_2021, $offset:expr_2021, $tip:ty) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/frame/mod.rs:21:22 [INFO] [stderr] | [INFO] [stderr] 21 | ($buf:expr_2021, $offset:expr_2021, $tip:ty) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/h2/frame/headers.rs:843:28 [INFO] [stderr] | [INFO] [stderr] 843 | ($field:ident, $val:expr_2021) => {{ [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/util/spsc.rs:10:6 [INFO] [stderr] | [INFO] [stderr] 10 | ($slot: expr_2021, $waker: expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/util/spsc.rs:10:24 [INFO] [stderr] | [INFO] [stderr] 10 | ($slot: expr_2021, $waker: expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error: aborting due to 11 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/h2/hpack/test/fuzz.rs:178:37 [INFO] [stdout] | [INFO] [stdout] 178 | FuzzHpack::new(thread_rng().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] = 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/h2/hpack/test/fuzz.rs:230:33 [INFO] [stdout] | [INFO] [stdout] 230 | let status = (g.gen::() % 500) + 100; [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/h1/codec/decoder.rs:822:15 [INFO] [stdout] | [INFO] [stdout] 822 | ($($x: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] 822 | ($($x: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/h2/mod.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 93 | ($e: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] 93 | ($e: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/h2/codec/framed_write.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 23 | ($self: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] 23 | ($self: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/h2/hpack/table.rs:63:32 [INFO] [stdout] | [INFO] [stdout] 63 | ($probe_var: ident < $len: expr, $body: 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] 63 | ($probe_var: ident < $len: expr_2021, $body: 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/h2/hpack/table.rs:63:45 [INFO] [stdout] | [INFO] [stdout] 63 | ($probe_var: ident < $len: expr, $body: 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] 63 | ($probe_var: ident < $len: expr, $body: 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/h2/hpack/test/fixture.rs:158:31 [INFO] [stdout] | [INFO] [stdout] 158 | ($fn:ident, $path: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] 158 | ($fn:ident, $path: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/h2/frame/mod.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | ($buf:expr, $offset:expr, $tip:ty) => { [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] 21 | ($buf:expr_2021, $offset:expr, $tip:ty) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/h2/frame/mod.rs:21:25 [INFO] [stdout] | [INFO] [stdout] 21 | ($buf:expr, $offset:expr, $tip:ty) => { [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] 21 | ($buf:expr, $offset:expr_2021, $tip:ty) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/h2/frame/headers.rs:843:33 [INFO] [stdout] | [INFO] [stdout] 843 | ($field:ident, $val: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] 843 | ($field:ident, $val: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/util/spsc.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | ($slot: expr, $waker: 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] 10 | ($slot: expr_2021, $waker: 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/util/spsc.rs:10:27 [INFO] [stdout] | [INFO] [stdout] 10 | ($slot: expr, $waker: 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] 10 | ($slot: expr, $waker: expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/common/body.rs:99:23 [INFO] [stdout] | [INFO] [stdout] 99 | while let Some(chunk) = self.next_data().await { [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/common/body.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | } [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/common/body.rs:119:23 [INFO] [stdout] | [INFO] [stdout] 119 | while let Some(chunk) = self.next_data().await { [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/common/body.rs:121:17 [INFO] [stdout] | [INFO] [stdout] 121 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/common/body.rs:235:23 [INFO] [stdout] | [INFO] [stdout] 235 | while let Some(chunk) = self.next_data().await { [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/common/body.rs:237:17 [INFO] [stdout] | [INFO] [stdout] 237 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/common/waker.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | if let Some(waker) = waker.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/common/waker.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 26 ~ match waker.take() { Some(waker) => { [INFO] [stdout] 27 | waker.wake(); [INFO] [stdout] 28 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/codec/decoder.rs:599:16 [INFO] [stdout] | [INFO] [stdout] 599 | if let Err(e) = self.fill_payload().await { [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/h1/codec/decoder.rs:601:13 [INFO] [stdout] | [INFO] [stdout] 601 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 599 ~ match self.fill_payload().await { Err(e) => { [INFO] [stdout] 600 | return Some(Err(e)); [INFO] [stdout] 601 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/codec/encoder.rs:413:23 [INFO] [stdout] | [INFO] [stdout] 413 | while let Some(data_res) = payload.next_data().await { [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/h1/codec/encoder.rs:434:17 [INFO] [stdout] | [INFO] [stdout] 434 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/payload.rs:147:12 [INFO] [stdout] | [INFO] [stdout] 147 | if let Some(waker) = self.task.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/h1/payload.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 147 ~ match self.task.take() { Some(waker) => { [INFO] [stdout] 148 | waker.wake(); [INFO] [stdout] 149 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/payload.rs:163:20 [INFO] [stdout] | [INFO] [stdout] 163 | if let Some(item) = inner.item.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/h1/payload.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 163 ~ match inner.item.take() { Some(item) => { [INFO] [stdout] 164 | inner.eof = true; [INFO] [stdout] 165 | return Some(item); [INFO] [stdout] 166 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/payload.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 198 | if let Some(shared) = self.inner.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/h1/payload.rs:202:9 [INFO] [stdout] | [INFO] [stdout] 202 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 198 ~ match self.inner.upgrade() { Some(shared) => { [INFO] [stdout] 199 | let inner = unsafe { &mut *shared.get() }; [INFO] [stdout] 200 | inner.item = Some(item); [INFO] [stdout] 201 | inner.wake(); [INFO] [stdout] 202 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/payload.rs:239:12 [INFO] [stdout] | [INFO] [stdout] 239 | if let Some(waker) = self.task.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/h1/payload.rs:241:9 [INFO] [stdout] | [INFO] [stdout] 241 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 239 ~ match self.task.take() { Some(waker) => { [INFO] [stdout] 240 | waker.wake(); [INFO] [stdout] 241 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/payload.rs:277:12 [INFO] [stdout] | [INFO] [stdout] 277 | if let Some(shared) = self.inner.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/h1/payload.rs:284:9 [INFO] [stdout] | [INFO] [stdout] 284 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 277 ~ match self.inner.upgrade() { Some(shared) => { [INFO] [stdout] 278 | let inner = unsafe { &mut *shared.get() }; [INFO] [stdout] ... [INFO] [stdout] 283 | inner.wake(); [INFO] [stdout] 284 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h1/payload.rs:288:12 [INFO] [stdout] | [INFO] [stdout] 288 | if let Some(shared) = self.inner.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/h1/payload.rs:292:9 [INFO] [stdout] | [INFO] [stdout] 292 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 288 ~ match self.inner.upgrade() { Some(shared) => { [INFO] [stdout] 289 | let inner = unsafe { &mut *shared.get() }; [INFO] [stdout] 290 | inner.items.push_back(Err(err)); [INFO] [stdout] 291 | inner.wake(); [INFO] [stdout] 292 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/codec/framed_read.rs:360:24 [INFO] [stdout] | [INFO] [stdout] 360 | if let Some(frame) = frame { [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/h2/codec/framed_read.rs:363:21 [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 frame { Some(frame) => { [INFO] [stdout] 361 | tracing::debug!(?frame, "received"); [INFO] [stdout] 362 | return Some(Ok(frame)); [INFO] [stdout] 363 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/codec/framed_read.rs:378:12 [INFO] [stdout] | [INFO] [stdout] 378 | if let Some(custom) = err.get_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/h2/codec/framed_read.rs:382:9 [INFO] [stdout] | [INFO] [stdout] 382 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 378 ~ match err.get_ref() { Some(custom) => { [INFO] [stdout] 379 | if custom.is::() { [INFO] [stdout] 380 | return Error::library_go_away(Reason::FRAME_SIZE_ERROR); [INFO] [stdout] 381 | } [INFO] [stdout] 382 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/codec/framed_write.rs:307:20 [INFO] [stdout] | [INFO] [stdout] 307 | if let Some(continuation) = v.encode(&mut self.hpack, &mut buf) { [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/h2/codec/framed_write.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | } [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 v.encode(&mut self.hpack, &mut buf) { Some(continuation) => { [INFO] [stdout] 308 | self.next = Some(Next::Continuation(continuation)); [INFO] [stdout] 309 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/codec/framed_write.rs:313:20 [INFO] [stdout] | [INFO] [stdout] 313 | if let Some(continuation) = v.encode(&mut self.hpack, &mut buf) { [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/h2/codec/framed_write.rs:315:17 [INFO] [stdout] | [INFO] [stdout] 315 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 313 ~ match v.encode(&mut self.hpack, &mut buf) { Some(continuation) => { [INFO] [stdout] 314 | self.next = Some(Next::Continuation(continuation)); [INFO] [stdout] 315 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/hpack/table.rs:414:20 [INFO] [stdout] | [INFO] [stdout] 414 | if let Some(idx) = slot.next { [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/h2/hpack/table.rs:417:17 [INFO] [stdout] | [INFO] [stdout] 417 | } else if Some(pos.index) == prev_idx { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 414 ~ match slot.next { Some(idx) => { [INFO] [stdout] 415 | pos.index = idx; [INFO] [stdout] 416 | self.indices[probe] = Some(pos); [INFO] [stdout] 417 ~ } _ => if Some(pos.index) == prev_idx { [INFO] [stdout] 418 | pos.index = 0usize.wrapping_sub(self.inserted + 1); [INFO] [stdout] ... [INFO] [stdout] 422 | self.remove_phase_two(probe); [INFO] [stdout] 423 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/go_away.rs:138:12 [INFO] [stdout] | [INFO] [stdout] 138 | if let Some(frame) = self.pending.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/h2/proto/go_away.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | } else if self.should_close_now() { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 138 ~ match self.pending.take() { Some(frame) => { [INFO] [stdout] 139 | if !dst.poll_ready(cx)?.is_ready() { [INFO] [stdout] ... [INFO] [stdout] 147 | return Poll::Ready(Some(Ok(reason))); [INFO] [stdout] 148 ~ } _ => if self.should_close_now() { [INFO] [stdout] 149 | return match self.going_away().map(|going_away| going_away.reason) { [INFO] [stdout] ... [INFO] [stdout] 152 | }; [INFO] [stdout] 153 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/ping_pong.rs:187:19 [INFO] [stdout] | [INFO] [stdout] 187 | } else if let Some(ref users) = self.user_pings { [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/h2/proto/ping_pong.rs:200:9 [INFO] [stdout] | [INFO] [stdout] 200 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 187 ~ } else { match self.user_pings { Some(ref users) => { [INFO] [stdout] 188 | let inner = unsafe { &mut *users.0.get() }; [INFO] [stdout] ... [INFO] [stdout] 199 | } [INFO] [stdout] 200 ~ } _ => {}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/prioritize.rs:132:16 [INFO] [stdout] | [INFO] [stdout] 132 | if let Some(task) = task.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/h2/proto/streams/prioritize.rs:134:13 [INFO] [stdout] | [INFO] [stdout] 134 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 132 ~ match task.take() { Some(task) => { [INFO] [stdout] 133 | task.wake(); [INFO] [stdout] 134 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/prioritize.rs:565:12 [INFO] [stdout] | [INFO] [stdout] 565 | if let Some(frame) = dst.take_last_data_frame() { [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/h2/proto/streams/prioritize.rs:567:9 [INFO] [stdout] | [INFO] [stdout] 567 | } 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] 565 ~ match dst.take_last_data_frame() { Some(frame) => { [INFO] [stdout] 566 | self.reclaim_frame_inner(buffer, store, frame) [INFO] [stdout] 567 ~ } _ => { [INFO] [stdout] 568 | false [INFO] [stdout] 569 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/prioritize.rs:645:15 [INFO] [stdout] | [INFO] [stdout] 645 | while let Some(frame) = stream.pending_send.pop_front(buffer) { [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/h2/proto/streams/prioritize.rs:647:9 [INFO] [stdout] | [INFO] [stdout] 647 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/prioritize.rs:812:32 [INFO] [stdout] | [INFO] [stdout] 812 | ... if let Some(reason) = stream.state.get_scheduled_reset() { [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/h2/proto/streams/prioritize.rs:820:29 [INFO] [stdout] | [INFO] [stdout] 820 | ... } 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] 812 ~ match stream.state.get_scheduled_reset() { Some(reason) => { [INFO] [stdout] 813 | let stream_id = stream.id; [INFO] [stdout] ... [INFO] [stdout] 819 | Frame::Reset(frame) [INFO] [stdout] 820 ~ } _ => { [INFO] [stdout] 821 | // If the stream receives a RESET from the peer, it may have [INFO] [stdout] ... [INFO] [stdout] 830 | continue; [INFO] [stdout] 831 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/recv.rs:184:16 [INFO] [stdout] | [INFO] [stdout] 184 | if let Some(content_length) = frame.fields().get(header::CONTENT_LENGTH) { [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/h2/proto/streams/recv.rs:194:13 [INFO] [stdout] | [INFO] [stdout] 194 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 184 ~ match frame.fields().get(header::CONTENT_LENGTH) { Some(content_length) => { [INFO] [stdout] 185 | let content_length = match frame::parse_u64(content_length.as_bytes()) { [INFO] [stdout] ... [INFO] [stdout] 193 | stream.content_length = ContentLength::Remaining(content_length); [INFO] [stdout] 194 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/recv.rs:289:12 [INFO] [stdout] | [INFO] [stdout] 289 | if let Some(p) = pushed { [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/h2/proto/streams/recv.rs:291:9 [INFO] [stdout] | [INFO] [stdout] 291 | } 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] 289 ~ match pushed { Some(p) => { [INFO] [stdout] 290 | Poll::Ready(Some(Ok(p))) [INFO] [stdout] 291 ~ } _ => { [INFO] [stdout] 292 | let is_open = stream.state.ensure_recv_open()?; [INFO] [stdout] ... [INFO] [stdout] 299 | } [INFO] [stdout] 300 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/recv.rs:365:16 [INFO] [stdout] | [INFO] [stdout] 365 | if let Some(task) = task.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/h2/proto/streams/recv.rs:367:13 [INFO] [stdout] | [INFO] [stdout] 367 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 365 ~ match task.take() { Some(task) => { [INFO] [stdout] 366 | task.wake(); [INFO] [stdout] 367 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/recv.rs:396:16 [INFO] [stdout] | [INFO] [stdout] 396 | if let Some(task) = task.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/h2/proto/streams/recv.rs:398:13 [INFO] [stdout] | [INFO] [stdout] 398 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 396 ~ match task.take() { Some(task) => { [INFO] [stdout] 397 | task.wake(); [INFO] [stdout] 398 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/recv.rs:460:16 [INFO] [stdout] | [INFO] [stdout] 460 | if let Some(task) = task.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/h2/proto/streams/recv.rs:462:13 [INFO] [stdout] | [INFO] [stdout] 462 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 460 ~ match task.take() { Some(task) => { [INFO] [stdout] 461 | task.wake(); [INFO] [stdout] 462 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/send.rs:94:19 [INFO] [stdout] | [INFO] [stdout] 94 | } else if let Some(te) = fields.get(http::header::TE) { [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/h2/proto/streams/send.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 94 ~ } else { match fields.get(http::header::TE) { Some(te) => { [INFO] [stdout] 95 | if te != "trailers" { [INFO] [stdout] ... [INFO] [stdout] 98 | } [INFO] [stdout] 99 ~ } _ => {}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/stream.rs:355:12 [INFO] [stdout] | [INFO] [stdout] 355 | if let Some(task) = self.send_task.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/h2/proto/streams/stream.rs:357:9 [INFO] [stdout] | [INFO] [stdout] 357 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 355 ~ match self.send_task.take() { Some(task) => { [INFO] [stdout] 356 | task.wake(); [INFO] [stdout] 357 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/stream.rs:365:12 [INFO] [stdout] | [INFO] [stdout] 365 | if let Some(task) = self.recv_task.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/h2/proto/streams/stream.rs:367:9 [INFO] [stdout] | [INFO] [stdout] 367 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 365 ~ match self.recv_task.take() { Some(task) => { [INFO] [stdout] 366 | task.wake(); [INFO] [stdout] 367 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/streams.rs:458:28 [INFO] [stdout] | [INFO] [stdout] 458 | if let Some(resp) = resp { [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/h2/proto/streams/streams.rs:472:25 [INFO] [stdout] | [INFO] [stdout] 472 | } 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] 458 ~ match resp { Some(resp) => { [INFO] [stdout] 459 | let sent = actions.send.send_headers( [INFO] [stdout] ... [INFO] [stdout] 471 | Ok(()) [INFO] [stdout] 472 ~ } _ => { [INFO] [stdout] 473 | Err(Error::library_reset(stream.id, Reason::REFUSED_STREAM)) [INFO] [stdout] 474 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/streams.rs:615:16 [INFO] [stdout] | [INFO] [stdout] 615 | if let Some(mut stream) = self.store.find_mut(&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/h2/proto/streams/streams.rs:626:13 [INFO] [stdout] | [INFO] [stdout] 626 | } 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] 615 ~ match self.store.find_mut(&id) { Some(mut stream) => { [INFO] [stdout] 616 | // This result is ignored as there is nothing to do when there [INFO] [stdout] ... [INFO] [stdout] 625 | ); [INFO] [stdout] 626 ~ } _ => { [INFO] [stdout] 627 | self.actions [INFO] [stdout] 628 | .ensure_not_idle(self.counts.peer(), id) [INFO] [stdout] 629 | .map_err(Error::library_go_away)?; [INFO] [stdout] 630 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/streams.rs:1007:16 [INFO] [stdout] | [INFO] [stdout] 1007 | if let Some(task) = inner.actions.task.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/h2/proto/streams/streams.rs:1009:13 [INFO] [stdout] | [INFO] [stdout] 1009 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1007 ~ match inner.actions.task.take() { Some(task) => { [INFO] [stdout] 1008 | task.wake(); [INFO] [stdout] 1009 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/streams.rs:1380:12 [INFO] [stdout] | [INFO] [stdout] 1380 | if let Some(task) = actions.task.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/h2/proto/streams/streams.rs:1382:9 [INFO] [stdout] | [INFO] [stdout] 1382 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1380 ~ match actions.task.take() { Some(task) => { [INFO] [stdout] 1381 | task.wake(); [INFO] [stdout] 1382 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/streams.rs:1471:12 [INFO] [stdout] | [INFO] [stdout] 1471 | if let Err(Error::Reset(stream_id, reason, initiator)) = res { [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/h2/proto/streams/streams.rs:1477:9 [INFO] [stdout] | [INFO] [stdout] 1477 | } 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] 1471 ~ match res { Err(Error::Reset(stream_id, reason, initiator)) => { [INFO] [stdout] 1472 | debug_assert_eq!(stream_id, stream.id); [INFO] [stdout] ... [INFO] [stdout] 1476 | Ok(()) [INFO] [stdout] 1477 ~ } _ => { [INFO] [stdout] 1478 | res [INFO] [stdout] 1479 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/proto/streams/streams.rs:1491:12 [INFO] [stdout] | [INFO] [stdout] 1491 | if let Some(ref err) = self.conn_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/h2/proto/streams/streams.rs:1493:9 [INFO] [stdout] | [INFO] [stdout] 1493 | } 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] 1491 ~ match self.conn_error { Some(ref err) => { [INFO] [stdout] 1492 | Err(err.clone()) [INFO] [stdout] 1493 ~ } _ => { [INFO] [stdout] 1494 | Ok(()) [INFO] [stdout] 1495 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures_core::Future, h2::client::Connection), h2::error::Error>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/h2/client.rs:1104:10 [INFO] [stdout] | [INFO] [stdout] 1104 | ) -> impl Future, Connection), crate::h2::Error>> [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/h2/client.rs:1102:9 [INFO] [stdout] | [INFO] [stdout] 1102 | &self, [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] 1104 | ) -> impl Future, Connection), crate::h2::Error>> + use [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/server.rs:1453:12 [INFO] [stdout] | [INFO] [stdout] 1453 | if let Some(method) = pseudo.method { [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/h2/server.rs:1456:9 [INFO] [stdout] | [INFO] [stdout] 1456 | } 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] 1453 ~ match pseudo.method { Some(method) => { [INFO] [stdout] 1454 | is_connect = method == Method::CONNECT; [INFO] [stdout] 1455 | b = b.method(method); [INFO] [stdout] 1456 ~ } _ => { [INFO] [stdout] 1457 | malformed!("malformed headers: missing method"); [INFO] [stdout] 1458 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/server.rs:1491:12 [INFO] [stdout] | [INFO] [stdout] 1491 | if let Some(scheme) = pseudo.scheme { [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/h2/server.rs:1510:9 [INFO] [stdout] | [INFO] [stdout] 1510 | } else if !is_connect || has_protocol { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1491 ~ match pseudo.scheme { Some(scheme) => { [INFO] [stdout] 1492 | if is_connect && !has_protocol { [INFO] [stdout] ... [INFO] [stdout] 1509 | } [INFO] [stdout] 1510 ~ } _ => if !is_connect || has_protocol { [INFO] [stdout] 1511 | malformed!("malformed headers: missing scheme"); [INFO] [stdout] 1512 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/h2/server.rs:1514:12 [INFO] [stdout] | [INFO] [stdout] 1514 | if let Some(path) = pseudo.path { [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/h2/server.rs:1528:9 [INFO] [stdout] | [INFO] [stdout] 1528 | } else if is_connect && has_protocol { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1514 ~ match pseudo.path { Some(path) => { [INFO] [stdout] 1515 | if is_connect && !has_protocol { [INFO] [stdout] ... [INFO] [stdout] 1527 | })?); [INFO] [stdout] 1528 ~ } _ => if is_connect && has_protocol { [INFO] [stdout] 1529 | malformed!("malformed headers: missing path in extended CONNECT"); [INFO] [stdout] 1530 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/util/spsc.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 101 | if let Some(waker) = inner.close_waker.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/util/spsc.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 101 ~ match inner.close_waker.take() { Some(waker) => { [INFO] [stdout] 102 | waker.wake(); [INFO] [stdout] 103 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/util/spsc.rs:158:12 [INFO] [stdout] | [INFO] [stdout] 158 | if let Some(waker) = inner.receiver_waker.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/util/spsc.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 160 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 158 ~ match inner.receiver_waker.take() { Some(waker) => { [INFO] [stdout] 159 | waker.wake(); [INFO] [stdout] 160 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/util/spsc.rs:183:12 [INFO] [stdout] | [INFO] [stdout] 183 | if let Some(waker) = inner.close_waker.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/util/spsc.rs:185:9 [INFO] [stdout] | [INFO] [stdout] 185 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 183 ~ match inner.close_waker.take() { Some(waker) => { [INFO] [stdout] 184 | waker.wake(); [INFO] [stdout] 185 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 57 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Fixed examples/h2_monoio_client.rs (2 fixes) [INFO] [stderr] Migrating examples/echo_server.rs from 2021 edition to 2024 [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> examples/h2_monoio_client.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | while let Some(chunk) = body.data().await { [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] --> examples/h2_monoio_client.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | } [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating examples/get_client.rs from 2021 edition to 2024 [INFO] [stderr] Migrating examples/h2_monoio_server.rs from 2021 edition to 2024 [INFO] [stderr] Fixed examples/h2_monoio_server.rs (3 fixes) [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> examples/h2_monoio_server.rs:31:11 [INFO] [stdout] | [INFO] [stdout] 31 | while let Some(result) = connection.accept().await { [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] --> examples/h2_monoio_server.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | } [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating examples/post_client_chunked.rs from 2021 edition to 2024 [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> examples/h2_monoio_server.rs:51:11 [INFO] [stdout] | [INFO] [stdout] 51 | while let Some(data) = body.data().await { [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] --> examples/h2_monoio_server.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 55 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating examples/post_client.rs from 2021 edition to 2024 [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.75s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Checking monoio-http v0.3.10 (/tmp/fixit) [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/h2/hpack/test/fuzz.rs:178:37 [INFO] [stdout] | [INFO] [stdout] 178 | FuzzHpack::new(thread_rng().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] 178 | FuzzHpack::new(thread_rng().r#gen()) [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/h2/hpack/test/fuzz.rs:230:33 [INFO] [stdout] | [INFO] [stdout] 230 | let status = (g.gen::() % 500) + 100; [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 230 | let status = (g.r#gen::() % 500) + 100; [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `monoio-http` (lib test) due to 3 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" "135f172b261c0b8c5633d2e10f0c003f2d4dbb919dc8113464e8038cadd9db9f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "135f172b261c0b8c5633d2e10f0c003f2d4dbb919dc8113464e8038cadd9db9f", kill_on_drop: false }` [INFO] [stdout] 135f172b261c0b8c5633d2e10f0c003f2d4dbb919dc8113464e8038cadd9db9f