[INFO] fetching crate melib 0.8.7... [INFO] checking melib-0.8.7 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate melib 0.8.7 into /workspace/builds/worker-7-tc2/source [INFO] validating manifest of crates.io crate melib 0.8.7 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 melib 0.8.7 [INFO] finished tweaking crates.io crate melib 0.8.7 [INFO] tweaked toml for crates.io crate melib 0.8.7 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 268 packages to latest compatible versions [INFO] [stderr] Adding async-channel v1.9.0 (available: v2.3.1) [INFO] [stderr] Adding async-fs v1.6.0 (available: v2.1.2) [INFO] [stderr] Adding async-io v1.13.0 (available: v2.3.4) [INFO] [stderr] Adding async-lock v2.8.0 (available: v3.4.0) [INFO] [stderr] Adding async-net v1.8.0 (available: v2.0.0) [INFO] [stderr] Adding async-process v1.8.1 (available: v2.3.0) [INFO] [stderr] Adding base64 v0.13.1 (available: v0.22.1) [INFO] [stderr] Adding bindgen v0.69.4 (available: v0.70.1) [INFO] [stderr] Adding bitflags v1.3.2 (available: v2.6.0) [INFO] [stderr] Adding castaway v0.1.2 (available: v0.2.3) [INFO] [stderr] Adding core-foundation v0.9.4 (available: v0.10.0) [INFO] [stderr] Adding event-listener v2.5.3 (available: v5.3.1) [INFO] [stderr] Adding event-listener v3.1.0 (available: v5.3.1) [INFO] [stderr] Adding fallible-iterator v0.2.0 (available: v0.3.0) [INFO] [stderr] Adding fastrand v1.9.0 (available: v2.1.1) [INFO] [stderr] Adding foreign-types v0.3.2 (available: v0.5.0) [INFO] [stderr] Adding foreign-types-shared v0.1.1 (available: v0.3.1) [INFO] [stderr] Adding futures-lite v1.13.0 (available: v2.3.0) [INFO] [stderr] Adding hashbrown v0.12.3 (available: v0.14.5) [INFO] [stderr] Adding hashlink v0.8.4 (available: v0.9.1) [INFO] [stderr] Adding hermit-abi v0.1.19 (available: v0.4.0) [INFO] [stderr] Adding hermit-abi v0.3.9 (available: v0.4.0) [INFO] [stderr] Adding http v0.2.12 (available: v1.1.0) [INFO] [stderr] Adding idna v0.5.0 (available: v1.0.2) [INFO] [stderr] Adding imap-codec v2.0.0-alpha.2 (available: v2.0.0-alpha.5) [INFO] [stderr] Adding imap-types v2.0.0-alpha.2 (available: v2.0.0-alpha.4) [INFO] [stderr] Adding indexmap v1.9.3 (available: v2.5.0) [INFO] [stderr] Adding inotify v0.9.6 (available: v0.11.0) [INFO] [stderr] Adding io-lifetimes v1.0.11 (available: v2.0.3) [INFO] [stderr] Adding itertools v0.12.1 (available: v0.13.0) [INFO] [stderr] Adding libsqlite3-sys v0.26.0 (available: v0.30.1) [INFO] [stderr] Adding linux-raw-sys v0.3.8 (available: v0.6.5) [INFO] [stderr] Adding linux-raw-sys v0.4.14 (available: v0.6.5) [INFO] [stderr] Adding mio v0.8.11 (available: v1.0.2) [INFO] [stderr] Adding nix v0.27.1 (available: v0.29.0) [INFO] [stderr] Adding polling v2.8.0 (available: v3.7.3) [INFO] [stderr] Adding rusqlite v0.29.0 (available: v0.32.1) [INFO] [stderr] Adding rustc-hash v1.1.0 (available: v2.0.0) [INFO] [stderr] Adding rustix v0.37.27 (available: v0.38.37) [INFO] [stderr] Adding security-framework v2.11.1 (available: v3.0.0) [INFO] [stderr] Adding smol v1.3.0 (available: v2.0.2) [INFO] [stderr] Adding socket2 v0.4.10 (available: v0.5.7) [INFO] [stderr] Adding stderrlog v0.5.4 (available: v0.6.0) [INFO] [stderr] Adding termcolor v1.1.3 (available: v1.4.1) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (available: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding which v4.4.2 (available: v6.0.3) [INFO] [stderr] Adding windows-core v0.52.0 (available: v0.58.0) [INFO] [stderr] Adding windows-sys v0.48.0 (available: v0.59.0) [INFO] [stderr] Adding windows-sys v0.52.0 (available: v0.59.0) [INFO] [stderr] Adding windows-targets v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_aarch64_gnullvm v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_aarch64_msvc v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_i686_gnu v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_i686_msvc v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnu v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnullvm v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_x86_64_msvc v0.48.5 (available: v0.52.6) [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] a1b8312d02d3d7e0b52f20d53d5552c7b055443e56b3ea764bc83f36293b4140 [INFO] running `Command { std: "docker" "start" "-a" "a1b8312d02d3d7e0b52f20d53d5552c7b055443e56b3ea764bc83f36293b4140", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a1b8312d02d3d7e0b52f20d53d5552c7b055443e56b3ea764bc83f36293b4140", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a1b8312d02d3d7e0b52f20d53d5552c7b055443e56b3ea764bc83f36293b4140", kill_on_drop: false }` [INFO] [stdout] a1b8312d02d3d7e0b52f20d53d5552c7b055443e56b3ea764bc83f36293b4140 [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] b964315f47af6767bab4b549a46a8b61062e5489866d97437d99ddbab9e9f187 [INFO] running `Command { std: "docker" "start" "-a" "b964315f47af6767bab4b549a46a8b61062e5489866d97437d99ddbab9e9f187", 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 (11 fixes) [INFO] [stderr] Compiling libc v0.2.159 [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Compiling serde v1.0.210 [INFO] [stderr] Compiling rustix v0.38.37 [INFO] [stderr] Checking futures-lite v2.3.0 [INFO] [stderr] Compiling fs_extra v1.3.0 [INFO] [stderr] Compiling dunce v1.0.5 [INFO] [stderr] Checking linux-raw-sys v0.4.14 [INFO] [stderr] Checking fastrand v2.1.1 [INFO] [stderr] Compiling io-lifetimes v1.0.11 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling rustix v0.37.27 [INFO] [stderr] Checking encoding_index_tests v0.1.4 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Checking async-lock v2.8.0 [INFO] [stderr] Compiling async-io v1.13.0 [INFO] [stderr] Compiling aws-lc-rs v1.9.0 [INFO] [stderr] Checking linux-raw-sys v0.3.8 [INFO] [stderr] Checking async-task v4.7.1 [INFO] [stderr] Checking piper v0.2.4 [INFO] [stderr] Compiling adler2 v2.0.0 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking futures-sink v0.3.30 [INFO] [stderr] Checking iana-time-zone v0.1.61 [INFO] [stderr] Compiling crc32fast v1.4.2 [INFO] [stderr] Compiling miniz_oxide v0.8.0 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Compiling async-fs v1.6.0 [INFO] [stderr] Compiling memoffset v0.9.1 [INFO] [stderr] Checking mirai-annotations v1.12.0 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Compiling serde_json v1.0.128 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Compiling rustls v0.23.13 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Checking bounded-static v0.8.0 [INFO] [stderr] Checking crossbeam-channel v0.5.13 [INFO] [stderr] Compiling jobserver v0.1.32 [INFO] [stderr] Checking walkdir v2.5.0 [INFO] [stderr] Checking abnf-core v0.6.0 [INFO] [stderr] Checking encoding-index-singlebyte v1.20141219.5 [INFO] [stderr] Checking encoding-index-tradchinese v1.20141219.5 [INFO] [stderr] Checking event-listener v5.3.1 [INFO] [stderr] Checking event-listener v3.1.0 [INFO] [stderr] Checking base64-compat v1.0.0 [INFO] [stderr] Checking async-channel v1.9.0 [INFO] [stderr] Checking async-executor v1.13.1 [INFO] [stderr] Compiling cc v1.1.21 [INFO] [stderr] Compiling flate2 v1.0.33 [INFO] [stderr] Checking event-listener-strategy v0.5.2 [INFO] [stderr] Checking encoding-index-japanese v1.20141219.5 [INFO] [stderr] Checking encoding-index-korean v1.20141219.5 [INFO] [stderr] Checking encoding-index-simpchinese v1.20141219.5 [INFO] [stderr] Checking chrono v0.4.38 [INFO] [stderr] Checking async-channel v2.3.1 [INFO] [stderr] Checking async-lock v3.4.0 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Checking ternop v1.0.1 [INFO] [stderr] Checking hashbrown v0.12.3 [INFO] [stderr] Checking sha1_smol v1.0.1 [INFO] [stderr] Checking blocking v1.6.1 [INFO] [stderr] Checking rustls-pemfile v2.1.3 [INFO] [stderr] Checking libloading v0.8.5 [INFO] [stderr] Checking encoding v0.2.33 [INFO] [stderr] Checking termcolor v1.1.3 [INFO] [stderr] Checking mailin v0.6.5 [INFO] [stderr] Checking bufstream-fresh v0.3.1 [INFO] [stderr] Checking data-encoding v2.6.0 [INFO] [stderr] Checking base64 v0.13.1 [INFO] [stderr] Checking xdg v2.5.2 [INFO] [stderr] Checking scoped_threadpool v0.1.9 [INFO] [stderr] Compiling melib v0.8.7 (/tmp/fixit) [INFO] [stderr] Migrating build.rs from 2021 edition to 2024 [INFO] [stderr] Checking socket2 v0.4.10 [INFO] [stderr] Checking polling v2.8.0 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking inotify-sys v0.1.5 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking filetime v0.2.25 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking socket2 v0.5.7 [INFO] [stderr] Checking inotify v0.9.6 [INFO] [stderr] Compiling cmake v0.1.51 [INFO] [stderr] Checking notify v6.1.1 [INFO] [stderr] Compiling aws-lc-sys v0.21.2 [INFO] [stderr] Compiling openssl-sys v0.9.103 [INFO] [stderr] Checking stderrlog v0.5.4 [INFO] [stderr] Compiling openssl v0.10.66 [INFO] [stderr] Compiling native-tls v0.2.12 [INFO] [stderr] Checking bitflags v2.6.0 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Checking serde_path_to_error v0.1.16 [INFO] [stderr] Checking uuid v1.10.0 [INFO] [stderr] Checking nix v0.27.1 [INFO] [stderr] Compiling thiserror-impl v1.0.64 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling bounded-static-derive v0.8.0 [INFO] [stderr] Compiling async-stream-impl v0.3.5 [INFO] [stderr] Compiling serde_derive v1.0.210 [INFO] [stderr] Checking async-net v1.8.0 [INFO] [stderr] Checking async-stream v0.3.5 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Checking thiserror v1.0.64 [INFO] [stderr] Checking imap-types v2.0.0-alpha.2 [INFO] [stderr] Checking imap-codec v2.0.0-alpha.2 [INFO] [stderr] Checking polling v3.7.3 [INFO] [stderr] Checking tempfile v3.12.0 [INFO] [stderr] Checking async-io v2.3.4 [INFO] [stderr] Checking futures-executor v0.3.30 [INFO] [stderr] Checking async-signal v0.2.10 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] Checking async-process v1.8.1 [INFO] [stderr] Checking smol v1.3.0 [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] Checking rustls-webpki v0.102.8 [INFO] [stderr] Checking mailin-embedded v0.8.3 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `melib` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/backends.rs [INFO] [stderr] * src/email.rs [INFO] [stderr] * src/email/address.rs [INFO] [stderr] * src/email/attachment_types.rs [INFO] [stderr] * src/email/headers/standards.rs [INFO] [stderr] * src/email/parser.rs [INFO] [stderr] * src/error.rs [INFO] [stderr] * src/imap/connection.rs [INFO] [stderr] * src/imap/mod.rs [INFO] [stderr] * src/imap/protocol_parser.rs [INFO] [stderr] * src/imap/untagged.rs [INFO] [stderr] * src/lib.rs [INFO] [stderr] * src/mbox/mod.rs [INFO] [stderr] * src/nntp/mod.rs [INFO] [stderr] * src/sieve/parser.rs [INFO] [stderr] * src/text/line_break.rs [INFO] [stderr] * src/text/wcwidth.rs [INFO] [stderr] * src/thread.rs [INFO] [stderr] * src/utils/connections.rs [INFO] [stderr] * src/utils/parsec.rs [INFO] [stderr] * src/utils/percent_encoding.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/lib.rs:112:10 [INFO] [stderr] | [INFO] [stderr] 112 | ($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/text/line_break.rs:78:6 [INFO] [stderr] | [INFO] [stderr] 78 | ($grapheme: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/text/line_break.rs:96:6 [INFO] [stderr] | [INFO] [stderr] 96 | ($grapheme: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/text/line_break.rs:111:27 [INFO] [stderr] | [INFO] [stderr] 111 | (($next_char:ident is $class: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/text/line_break.rs:168:18 [INFO] [stderr] | [INFO] [stderr] 168 | ($last_break:expr_2021, $pos: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/text/line_break.rs:168:41 [INFO] [stderr] | [INFO] [stderr] 168 | ($last_break:expr_2021, $pos: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/text/wcwidth.rs:34:6 [INFO] [stderr] | [INFO] [stderr] 34 | ($a: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/backends.rs:62:6 [INFO] [stderr] | [INFO] [stderr] 62 | ($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/sieve/parser.rs:26:47 [INFO] [stderr] | [INFO] [stderr] 26 | ($parser_name:ident, $lit:literal, $t:ty, $action: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/sieve/parser.rs:37:47 [INFO] [stderr] | [INFO] [stderr] 37 | ($parser_name:ident, $lit:literal, $t:ty, $action:expr_2021, $argument:ident) => { [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/email/address.rs:636:6 [INFO] [stderr] | [INFO] [stderr] 636 | ($d:expr_2021, $a: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/email/address.rs:636:20 [INFO] [stderr] | [INFO] [stderr] 636 | ($d:expr_2021, $a: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/email/attachment_types.rs:276:14 [INFO] [stderr] | [INFO] [stderr] 276 | ($p: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/email/headers/standards.rs:28:58 [INFO] [stderr] | [INFO] [stderr] 28 | ... ($konst:ident, $upcase:ident, $name:literal, $template:expr_2021, $(Protocol::$var:tt)|+,$status:expr_2021,$standards: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/email/headers/standards.rs:28:102 [INFO] [stderr] | [INFO] [stderr] 28 | ... ($konst:ident, $upcase:ident, $name:literal, $template:expr_2021, $(Protocol::$var:tt)|+,$status:expr_2021,$standards: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/email/headers/standards.rs:28:120 [INFO] [stderr] | [INFO] [stderr] 28 | ... ($konst:ident, $upcase:ident, $name:literal, $template:expr_2021, $(Protocol::$var:tt)|+,$status:expr_2021,$standards: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/email/parser.rs:55:6 [INFO] [stderr] | [INFO] [stderr] 55 | ($l: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/email/parser.rs:313:6 [INFO] [stderr] | [INFO] [stderr] 313 | ($var: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/email/parser.rs:323:6 [INFO] [stderr] | [INFO] [stderr] 323 | ($var: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/email.rs:175:22 [INFO] [stderr] | [INFO] [stderr] 175 | (fn $name: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/error.rs:415:6 [INFO] [stderr] | [INFO] [stderr] 415 | ($err: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/thread.rs:101:6 [INFO] [stderr] | [INFO] [stderr] 101 | ($buf:expr_2021, $idx: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/thread.rs:101:22 [INFO] [stderr] | [INFO] [stderr] 101 | ($buf:expr_2021, $idx: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/thread.rs:118:7 [INFO] [stderr] | [INFO] [stderr] 118 | (($p:expr_2021)parent of($c:expr_2021), $threads: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/thread.rs:118:30 [INFO] [stderr] | [INFO] [stderr] 118 | (($p:expr_2021)parent of($c:expr_2021), $threads: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/thread.rs:118:45 [INFO] [stderr] | [INFO] [stderr] 118 | (($p:expr_2021)parent of($c:expr_2021), $threads: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/utils/connections.rs:124:21 [INFO] [stderr] | [INFO] [stderr] 124 | ($fn: ident ( $($arg: 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/utils/parsec.rs:298:6 [INFO] [stderr] | [INFO] [stderr] 298 | ($input:expr_2021, $($field:tt, $t:ty, $parser: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/utils/parsec.rs:298:44 [INFO] [stderr] | [INFO] [stderr] 298 | ($input:expr_2021, $($field:tt, $t:ty, $parser: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/utils/percent_encoding.rs:118:9 [INFO] [stderr] | [INFO] [stderr] 118 | ($( $bool: 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/imap/protocol_parser.rs:397:6 [INFO] [stderr] | [INFO] [stderr] 397 | ($v:expr_2021) => (unsafe{ std::str::from_utf8_unchecked($v) }) [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/imap/protocol_parser.rs:507:10 [INFO] [stderr] | [INFO] [stderr] 507 | ($input:expr_2021, $tag:tt) => { [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/imap/protocol_parser.rs:1235:6 [INFO] [stderr] | [INFO] [stderr] 1235 | ($offset:expr_2021, $length: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/imap/protocol_parser.rs:1235:25 [INFO] [stderr] | [INFO] [stderr] 1235 | ($offset:expr_2021, $length: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/imap/connection.rs:73:17 [INFO] [stderr] | [INFO] [stderr] 73 | ($fn:ident, $conn:expr_2021, $fmt:literal, $($t:tt)*) => { [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/imap/connection.rs:76:17 [INFO] [stderr] | [INFO] [stderr] 76 | ($fn:ident, $conn:expr_2021, $fmt:literal) => { [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/imap/untagged.rs:46:14 [INFO] [stderr] | [INFO] [stderr] 46 | ($mailbox_hash: expr_2021, $($result: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/imap/untagged.rs:46:42 [INFO] [stderr] | [INFO] [stderr] 46 | ($mailbox_hash: expr_2021, $($result: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/imap/mod.rs:136:30 [INFO] [stderr] | [INFO] [stderr] 136 | ($s:ident[$var:literal], $default: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/imap/mod.rs:1654:38 [INFO] [stderr] | [INFO] [stderr] 1654 | ($s:ident[$var:literal], $default: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/mbox/mod.rs:362:6 [INFO] [stderr] | [INFO] [stderr] 362 | ($input: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/mbox/mod.rs:1282:30 [INFO] [stderr] | [INFO] [stderr] 1282 | ($s:ident[$var:literal], $default:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:112:15 [INFO] [stdout] | [INFO] [stdout] 112 | ($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] = 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] 112 | ($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/text/line_break.rs:78:16 [INFO] [stdout] | [INFO] [stdout] 78 | ($grapheme: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] 78 | ($grapheme: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/text/line_break.rs:96:16 [INFO] [stdout] | [INFO] [stdout] 96 | ($grapheme: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] 96 | ($grapheme: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/text/line_break.rs:111:34 [INFO] [stdout] | [INFO] [stdout] 111 | (($next_char:ident is $class: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] 111 | (($next_char:ident is $class:expr_2021)) => ({ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [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/mbox/mod.rs:1443:38 [INFO] [stderr] | [INFO] [stderr] 1443 | ($s:ident[$var:literal], $default: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/nntp/mod.rs:70:30 [INFO] [stderr] | [INFO] [stderr] 70 | ($s:ident[$var:literal], $default: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/nntp/mod.rs:779:38 [INFO] [stderr] | [INFO] [stderr] 779 | ($s:ident[$var:literal], $default: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] warning: unexpected `cfg` condition value: `unix` [INFO] [stderr] --> src/backends.rs:112:32 [INFO] [stderr] | [INFO] [stderr] 112 | #[cfg(all(feature = "notmuch", target_os = "unix"))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `target_os` are: `aix`, `android`, `cuda`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `macos`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, `trusty`, `tvos`, `uefi`, `unknown`, `visionos`, `vita`, and `vxworks` and 5 more [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `unix` [INFO] [stderr] --> src/backends.rs:138:40 [INFO] [stderr] | [INFO] [stderr] 138 | #[cfg(all(feature = "notmuch", not(any(target_os = "unix", target_os = "macos"))))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `target_os` are: `aix`, `android`, `cuda`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `macos`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, `trusty`, `tvos`, `uefi`, `unknown`, `visionos`, `vita`, and `vxworks` and 5 more [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: elided lifetime has a name [INFO] [stderr] --> src/utils/parsec.rs:86:29 [INFO] [stderr] | [INFO] [stderr] 84 | impl<'a, F, Output> Parser<'a, Output> for F [INFO] [stderr] | -- lifetime `'a` declared here [INFO] [stderr] 85 | where [INFO] [stderr] 86 | F: Fn(&'a str) -> Result, [INFO] [stderr] | ^ this elided lifetime gets resolved as `'a` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stderr] [INFO] [stderr] error: aborting due to 45 previous errors; 3 warnings emitted [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/text/line_break.rs:168:30 [INFO] [stdout] | [INFO] [stdout] 168 | ($last_break:expr, $pos: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] 168 | ($last_break:expr_2021, $pos: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/text/line_break.rs:168:41 [INFO] [stdout] | [INFO] [stdout] 168 | ($last_break:expr, $pos: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] 168 | ($last_break:expr, $pos: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/text/wcwidth.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | ($a: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] 34 | ($a:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `unix` [INFO] [stdout] --> src/backends.rs:112:32 [INFO] [stdout] | [INFO] [stdout] 112 | #[cfg(all(feature = "notmuch", target_os = "unix"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `target_os` are: `aix`, `android`, `cuda`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `macos`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, `trusty`, `tvos`, `uefi`, `unknown`, `visionos`, `vita`, and `vxworks` and 5 more [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `unix` [INFO] [stdout] --> src/backends.rs:138:40 [INFO] [stdout] | [INFO] [stdout] 138 | #[cfg(all(feature = "notmuch", not(any(target_os = "unix", target_os = "macos"))))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `target_os` are: `aix`, `android`, `cuda`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `macos`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, `trusty`, `tvos`, `uefi`, `unknown`, `visionos`, `vita`, and `vxworks` and 5 more [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/backends.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 62 | ($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] 62 | ($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/sieve/parser.rs:26:55 [INFO] [stdout] | [INFO] [stdout] 26 | ($parser_name:ident, $lit:literal, $t:ty, $action: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] 26 | ($parser_name:ident, $lit:literal, $t:ty, $action: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/sieve/parser.rs:37:55 [INFO] [stdout] | [INFO] [stdout] 37 | ($parser_name:ident, $lit:literal, $t:ty, $action:expr, $argument:ident) => { [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] 37 | ($parser_name:ident, $lit:literal, $t:ty, $action:expr_2021, $argument:ident) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/email/address.rs:636:9 [INFO] [stdout] | [INFO] [stdout] 636 | ($d:expr, $a: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] 636 | ($d:expr_2021, $a: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/email/address.rs:636:18 [INFO] [stdout] | [INFO] [stdout] 636 | ($d:expr, $a: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] 636 | ($d:expr, $a: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/email/attachment_types.rs:276:17 [INFO] [stdout] | [INFO] [stdout] 276 | ($p: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] 276 | ($p: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/email/headers/standards.rs:28:68 [INFO] [stdout] | [INFO] [stdout] 28 | ($konst:ident, $upcase:ident, $name:literal, $template:expr, $(Protocol::$var:tt)|+,$status:expr,$standards: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] 28 | ($konst:ident, $upcase:ident, $name:literal, $template:expr_2021, $(Protocol::$var:tt)|+,$status:expr,$standards: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/email/headers/standards.rs:28:105 [INFO] [stdout] | [INFO] [stdout] 28 | ($konst:ident, $upcase:ident, $name:literal, $template:expr, $(Protocol::$var:tt)|+,$status:expr,$standards: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] 28 | ($konst:ident, $upcase:ident, $name:literal, $template:expr, $(Protocol::$var:tt)|+,$status:expr_2021,$standards: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/email/headers/standards.rs:28:121 [INFO] [stdout] | [INFO] [stdout] 28 | ($konst:ident, $upcase:ident, $name:literal, $template:expr, $(Protocol::$var:tt)|+,$status:expr,$standards: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] 28 | ($konst:ident, $upcase:ident, $name:literal, $template:expr, $(Protocol::$var:tt)|+,$status:expr,$standards: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/email/parser.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | ($l: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] 55 | ($l: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/email/parser.rs:313:11 [INFO] [stdout] | [INFO] [stdout] 313 | ($var: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] 313 | ($var: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/email/parser.rs:323:11 [INFO] [stdout] | [INFO] [stdout] 323 | ($var: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] 323 | ($var: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/email.rs:175:27 [INFO] [stdout] | [INFO] [stdout] 175 | (fn $name: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] 175 | (fn $name: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/error.rs:415:11 [INFO] [stdout] | [INFO] [stdout] 415 | ($err: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] 415 | ($err: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/thread.rs:101:11 [INFO] [stdout] | [INFO] [stdout] 101 | ($buf:expr, $idx: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] 101 | ($buf:expr_2021, $idx: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/thread.rs:101:22 [INFO] [stdout] | [INFO] [stdout] 101 | ($buf:expr, $idx: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] 101 | ($buf:expr, $idx: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/thread.rs:118:10 [INFO] [stdout] | [INFO] [stdout] 118 | (($p:expr)parent of($c:expr), $threads: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] 118 | (($p:expr_2021)parent of($c:expr), $threads: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/thread.rs:118:28 [INFO] [stdout] | [INFO] [stdout] 118 | (($p:expr)parent of($c:expr), $threads: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] 118 | (($p:expr)parent of($c:expr_2021), $threads: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/thread.rs:118:44 [INFO] [stdout] | [INFO] [stdout] 118 | (($p:expr)parent of($c:expr), $threads: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] 118 | (($p:expr)parent of($c:expr), $threads: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/utils/connections.rs:124:27 [INFO] [stdout] | [INFO] [stdout] 124 | ($fn: ident ( $($arg: 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] 124 | ($fn: ident ( $($arg: expr_2021),* $(,)* ) ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/utils/datetime.rs:72:1 [INFO] [stdout] | [INFO] [stdout] 72 | extern "C" { [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | _help: needs `unsafe` before the extern keyword: `unsafe` [INFO] [stdout] | | [INFO] [stdout] 73 | | fn strptime( [INFO] [stdout] 74 | | s: *const std::os::raw::c_char, [INFO] [stdout] 75 | | format: *const std::os::raw::c_char, [INFO] [stdout] ... | [INFO] [stdout] 90 | | fn gettimeofday(tv: *mut libc::timeval, tz: *mut libc::timezone) -> i32; [INFO] [stdout] 91 | | } [INFO] [stdout] | |_^ [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 #123743 [INFO] [stdout] = note: `--force-warn missing-unsafe-on-extern` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/utils/parsec.rs:86:29 [INFO] [stdout] | [INFO] [stdout] 84 | impl<'a, F, Output> Parser<'a, Output> for F [INFO] [stdout] | -- lifetime `'a` declared here [INFO] [stdout] 85 | where [INFO] [stdout] 86 | F: Fn(&'a str) -> Result, [INFO] [stdout] | ^ this elided lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/utils/parsec.rs:298:13 [INFO] [stdout] | [INFO] [stdout] 298 | ($input:expr, $($field:tt, $t:ty, $parser: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] 298 | ($input:expr_2021, $($field:tt, $t:ty, $parser: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/utils/parsec.rs:298:47 [INFO] [stdout] | [INFO] [stdout] 298 | ($input:expr, $($field:tt, $t:ty, $parser: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] 298 | ($input:expr, $($field:tt, $t:ty, $parser: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/utils/percent_encoding.rs:118:16 [INFO] [stdout] | [INFO] [stdout] 118 | ($( $bool: 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] 118 | ($( $bool: 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/imap/protocol_parser.rs:397:9 [INFO] [stdout] | [INFO] [stdout] 397 | ($v:expr) => (unsafe{ std::str::from_utf8_unchecked($v) }) [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] 397 | ($v:expr_2021) => (unsafe{ std::str::from_utf8_unchecked($v) }) [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/imap/protocol_parser.rs:507:17 [INFO] [stdout] | [INFO] [stdout] 507 | ($input:expr, $tag:tt) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 507 | ($input:expr_2021, $tag:tt) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/imap/protocol_parser.rs:1239:14 [INFO] [stdout] | [INFO] [stdout] 1239 | ($offset:expr, $length: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] 1239 | ($offset:expr_2021, $length: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/imap/protocol_parser.rs:1239:28 [INFO] [stdout] | [INFO] [stdout] 1239 | ($offset:expr, $length: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] 1239 | ($offset:expr, $length: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/imap/connection.rs:73:23 [INFO] [stdout] | [INFO] [stdout] 73 | ($fn:ident, $conn:expr, $fmt:literal, $($t:tt)*) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 73 | ($fn:ident, $conn:expr_2021, $fmt:literal, $($t:tt)*) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/imap/connection.rs:76:23 [INFO] [stdout] | [INFO] [stdout] 76 | ($fn:ident, $conn:expr, $fmt:literal) => { [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] 76 | ($fn:ident, $conn:expr_2021, $fmt:literal) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/imap/untagged.rs:46:29 [INFO] [stdout] | [INFO] [stdout] 46 | ($mailbox_hash: expr, $($result: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] 46 | ($mailbox_hash: expr_2021, $($result: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/imap/untagged.rs:46:45 [INFO] [stdout] | [INFO] [stdout] 46 | ($mailbox_hash: expr, $($result: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] 46 | ($mailbox_hash: expr, $($result: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/imap/mod.rs:136:39 [INFO] [stdout] | [INFO] [stdout] 136 | ($s:ident[$var:literal], $default: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] 136 | ($s:ident[$var:literal], $default: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/imap/mod.rs:1654:47 [INFO] [stdout] | [INFO] [stdout] 1654 | ($s:ident[$var:literal], $default: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] 1654 | ($s:ident[$var:literal], $default: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/mbox/mod.rs:362:13 [INFO] [stdout] | [INFO] [stdout] 362 | ($input: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] 362 | ($input: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/mbox/mod.rs:1283:39 [INFO] [stdout] | [INFO] [stdout] 1283 | ($s:ident[$var:literal], $default: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] 1283 | ($s:ident[$var:literal], $default: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/mbox/mod.rs:1444:47 [INFO] [stdout] | [INFO] [stdout] 1444 | ($s:ident[$var:literal], $default: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] 1444 | ($s:ident[$var:literal], $default: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/nntp/mod.rs:70:39 [INFO] [stdout] | [INFO] [stdout] 70 | ($s:ident[$var:literal], $default: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] 70 | ($s:ident[$var:literal], $default: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/nntp/mod.rs:779:47 [INFO] [stdout] | [INFO] [stdout] 779 | ($s:ident[$var:literal], $default: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] 779 | ($s:ident[$var:literal], $default:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block [INFO] [stdout] --> src/utils/connections.rs:460:27 [INFO] [stdout] | [INFO] [stdout] 460 | let mut slot: T = std::mem::zeroed(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/utils/connections.rs:459:5 [INFO] [stdout] | [INFO] [stdout] 459 | unsafe fn __getsockopt(&self, opt: c_int, val: c_int) -> std::io::Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `--force-warn unsafe-op-in-unsafe-fn` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl VCardVersion` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/addressbook/vcard.rs:87:58 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn try_from_str(mut input: &str) -> Result> { [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/addressbook/vcard.rs:87:36 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn try_from_str(mut input: &str) -> Result> { [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] 87 | pub fn try_from_str(mut input: &str) -> Result>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/collection.rs:173:12 [INFO] [stdout] | [INFO] [stdout] 173 | if let std::collections::hash_map::Entry::Vacant(e) = threads_lck.entry(mailbox_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/collection.rs:179:9 [INFO] [stdout] | [INFO] [stdout] 179 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 173 ~ match threads_lck.entry(mailbox_hash) { std::collections::hash_map::Entry::Vacant(e) => { [INFO] [stdout] 174 | e.insert(Threads::new(new_envelopes.len())); [INFO] [stdout] ... [INFO] [stdout] 178 | } [INFO] [stdout] 179 ~ } _ => { [INFO] [stdout] 180 | mailboxes_lck.entry(mailbox_hash).and_modify(|m| { [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/collection.rs:431:12 [INFO] [stdout] | [INFO] [stdout] 431 | if let std::collections::hash_map::Entry::Vacant(e) = mailboxes_lck.entry(mailbox_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/collection.rs:437:9 [INFO] [stdout] | [INFO] [stdout] 437 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 431 ~ match mailboxes_lck.entry(mailbox_hash) { std::collections::hash_map::Entry::Vacant(e) => { [INFO] [stdout] 432 | e.insert(Default::default()); [INFO] [stdout] ... [INFO] [stdout] 436 | .insert(mailbox_hash, Threads::default()); [INFO] [stdout] 437 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:314:24 [INFO] [stdout] | [INFO] [stdout] 314 | if let Ok((rest, res)) = $parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:277:21 [INFO] [stdout] | [INFO] [stdout] 277 | / crate::permutation! { [INFO] [stdout] 278 | | input, [INFO] [stdout] 279 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] | | ----------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 280 | | match_type, Option, opt(parse_sieve_match_type()) [INFO] [stdout] 281 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:322:21 [INFO] [stdout] | [INFO] [stdout] 322 | } [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:277:21 [INFO] [stdout] | [INFO] [stdout] 277 | / crate::permutation! { [INFO] [stdout] 278 | | input, [INFO] [stdout] 279 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 280 | | match_type, Option, opt(parse_sieve_match_type()) [INFO] [stdout] 281 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `crate::permutation` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:314:24 [INFO] [stdout] | [INFO] [stdout] 314 | if let Ok((rest, res)) = $parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:277:21 [INFO] [stdout] | [INFO] [stdout] 277 | / crate::permutation! { [INFO] [stdout] 278 | | input, [INFO] [stdout] 279 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 280 | | match_type, Option, opt(parse_sieve_match_type()) [INFO] [stdout] | | ----------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 281 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:322:21 [INFO] [stdout] | [INFO] [stdout] 322 | } [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:277:21 [INFO] [stdout] | [INFO] [stdout] 277 | / crate::permutation! { [INFO] [stdout] 278 | | input, [INFO] [stdout] 279 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 280 | | match_type, Option, opt(parse_sieve_match_type()) [INFO] [stdout] 281 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `crate::permutation` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:314:24 [INFO] [stdout] | [INFO] [stdout] 314 | if let Ok((rest, res)) = $parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:317:21 [INFO] [stdout] | [INFO] [stdout] 317 | / crate::permutation! { [INFO] [stdout] 318 | | input, [INFO] [stdout] 319 | | match_type, Option, opt(parse_sieve_match_type()), [INFO] [stdout] | | ----------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 320 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 321 | | address_type, Option, opt(parse_sieve_address_type()) [INFO] [stdout] 322 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:322:21 [INFO] [stdout] | [INFO] [stdout] 322 | } [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:317:21 [INFO] [stdout] | [INFO] [stdout] 317 | / crate::permutation! { [INFO] [stdout] 318 | | input, [INFO] [stdout] 319 | | match_type, Option, opt(parse_sieve_match_type()), [INFO] [stdout] 320 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 321 | | address_type, Option, opt(parse_sieve_address_type()) [INFO] [stdout] 322 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `crate::permutation` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:314:24 [INFO] [stdout] | [INFO] [stdout] 314 | if let Ok((rest, res)) = $parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:317:21 [INFO] [stdout] | [INFO] [stdout] 317 | / crate::permutation! { [INFO] [stdout] 318 | | input, [INFO] [stdout] 319 | | match_type, Option, opt(parse_sieve_match_type()), [INFO] [stdout] 320 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] | | ----------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 321 | | address_type, Option, opt(parse_sieve_address_type()) [INFO] [stdout] 322 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:322:21 [INFO] [stdout] | [INFO] [stdout] 322 | } [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:317:21 [INFO] [stdout] | [INFO] [stdout] 317 | / crate::permutation! { [INFO] [stdout] 318 | | input, [INFO] [stdout] 319 | | match_type, Option, opt(parse_sieve_match_type()), [INFO] [stdout] 320 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 321 | | address_type, Option, opt(parse_sieve_address_type()) [INFO] [stdout] 322 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `crate::permutation` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:314:24 [INFO] [stdout] | [INFO] [stdout] 314 | if let Ok((rest, res)) = $parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:317:21 [INFO] [stdout] | [INFO] [stdout] 317 | / crate::permutation! { [INFO] [stdout] 318 | | input, [INFO] [stdout] 319 | | match_type, Option, opt(parse_sieve_match_type()), [INFO] [stdout] 320 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 321 | | address_type, Option, opt(parse_sieve_address_type()) [INFO] [stdout] | | ------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 322 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:322:21 [INFO] [stdout] | [INFO] [stdout] 322 | } [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:317:21 [INFO] [stdout] | [INFO] [stdout] 317 | / crate::permutation! { [INFO] [stdout] 318 | | input, [INFO] [stdout] 319 | | match_type, Option, opt(parse_sieve_match_type()), [INFO] [stdout] 320 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 321 | | address_type, Option, opt(parse_sieve_address_type()) [INFO] [stdout] 322 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `crate::permutation` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email.rs:396:24 [INFO] [stdout] | [INFO] [stdout] 396 | if let Ok((_, value)) = parse_result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email.rs:398:21 [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 parse_result { Ok((_, value)) => { [INFO] [stdout] 397 | self.set_from(value); [INFO] [stdout] 398 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email.rs:880:16 [INFO] [stdout] | [INFO] [stdout] 880 | if let Ok((_, value)) = parser::address::rfc2822address_list(author_raw.as_bytes()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^----------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email.rs:884:13 [INFO] [stdout] | [INFO] [stdout] 884 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 880 ~ match parser::address::rfc2822address_list(author_raw.as_bytes()) { Ok((_, value)) => { [INFO] [stdout] 881 | if value.iter().any(|a| a == is_sender) { [INFO] [stdout] 882 | return true; [INFO] [stdout] 883 | } [INFO] [stdout] 884 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/attachments.rs:566:24 [INFO] [stdout] | [INFO] [stdout] 566 | if let Some(boundary) = headers [INFO] [stdout] | ^ ------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | ________________________| [INFO] [stdout] | | [INFO] [stdout] 567 | | .iter() [INFO] [stdout] 568 | | .find(|(n, _)| n == HeaderName::CONTENT_TYPE) [INFO] [stdout] 569 | | .and_then(|(_, v)| { [INFO] [stdout] ... | [INFO] [stdout] 584 | | None [INFO] [stdout] 585 | | }) [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/attachments.rs:590:21 [INFO] [stdout] | [INFO] [stdout] 590 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 566 ~ match headers [INFO] [stdout] 567 | .iter() [INFO] [stdout] ... [INFO] [stdout] 585 | }) [INFO] [stdout] 586 ~ { Some(boundary) => { [INFO] [stdout] 587 | if Self::check_if_has_attachments_quick(body, boundary) { [INFO] [stdout] 588 | return true; [INFO] [stdout] 589 | } [INFO] [stdout] 590 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/attachments.rs:995:16 [INFO] [stdout] | [INFO] [stdout] 995 | if let Ok(v) = parser::encodings::decode_charset(&bytes, charset) { [INFO] [stdout] | ^^^^^^^^^^^^-------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/attachments.rs:997:13 [INFO] [stdout] | [INFO] [stdout] 997 | } 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] 995 ~ match parser::encodings::decode_charset(&bytes, charset) { Ok(v) => { [INFO] [stdout] 996 | v.into_bytes() [INFO] [stdout] 997 ~ } _ => { [INFO] [stdout] 998 | self.body().to_vec() [INFO] [stdout] 999 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/compose.rs:337:16 [INFO] [stdout] | [INFO] [stdout] 337 | if let Ok((_, addr)) = super::parser::address::mailbox(self.headers["From"].as_bytes()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/compose.rs:343:13 [INFO] [stdout] | [INFO] [stdout] 343 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 337 ~ match super::parser::address::mailbox(self.headers["From"].as_bytes()) [INFO] [stdout] 338 ~ { Ok((_, addr)) => { [INFO] [stdout] 339 | if let Some(fqdn) = addr.get_fqdn() { [INFO] [stdout] ... [INFO] [stdout] 342 | } [INFO] [stdout] 343 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/list_management.rs:127:16 [INFO] [stdout] | [INFO] [stdout] 127 | if let Some(ref l) = ret.post { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/list_management.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 127 ~ match ret.post { Some(ref l) => { [INFO] [stdout] 128 | if l.starts_with(&[ListAction::No]) { [INFO] [stdout] 129 | ret.post = None; [INFO] [stdout] 130 | } [INFO] [stdout] 131 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:903:19 [INFO] [stdout] | [INFO] [stdout] 903 | while let Ok((_input, _)) = context( [INFO] [stdout] | ___________________^ - [INFO] [stdout] | |_________________________________________| [INFO] [stdout] 904 | || "comment()", [INFO] [stdout] 905 | || alt((ctext, ctext_invalid, map(quoted_pair, |_| ()))), [INFO] [stdout] 906 | || )(input) [INFO] [stdout] | ||_____________-______^ [INFO] [stdout] | |______________| [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:909:13 [INFO] [stdout] | [INFO] [stdout] 909 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:926:12 [INFO] [stdout] | [INFO] [stdout] 926 | if let Ok((rest, ws)) = terminated(many0(wsp), crlf)(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^----------------------------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:944:9 [INFO] [stdout] | [INFO] [stdout] 944 | } 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] 926 ~ match terminated(many0(wsp), crlf)(input) { Ok((rest, ws)) => { [INFO] [stdout] 927 | let mut v: Vec = ws.into_iter().fold(vec![], |mut acc, x| { [INFO] [stdout] ... [INFO] [stdout] 943 | } [INFO] [stdout] 944 ~ } _ => { [INFO] [stdout] 945 | let orig_input = input; [INFO] [stdout] ... [INFO] [stdout] 956 | } [INFO] [stdout] 957 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:1066:12 [INFO] [stdout] | [INFO] [stdout] 1066 | if let Ok(addr) = Address::list_try_from(&decoded[..end_or_len]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^---------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:1073:9 [INFO] [stdout] | [INFO] [stdout] 1073 | } else if end.is_some() { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1066 ~ match Address::list_try_from(&decoded[..end_or_len]) { Ok(addr) => { [INFO] [stdout] 1067 | address = addr; [INFO] [stdout] ... [INFO] [stdout] 1072 | }; [INFO] [stdout] 1073 ~ } _ => if end.is_some() { [INFO] [stdout] 1074 | decoded = &decoded[1..]; [INFO] [stdout] ... [INFO] [stdout] 1083 | )); [INFO] [stdout] 1084 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:2476:16 [INFO] [stdout] | [INFO] [stdout] 2476 | if let Ok((_input, atom_)) = context("obs_domain", atom)(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:2479:13 [INFO] [stdout] | [INFO] [stdout] 2479 | } 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] 2476 ~ match context("obs_domain", atom)(input) { Ok((_input, atom_)) => { [INFO] [stdout] 2477 | ret.extend_from_slice(&atom_); [INFO] [stdout] 2478 | input = _input; [INFO] [stdout] 2479 ~ } _ => { [INFO] [stdout] 2480 | return Err(nom::Err::Error( [INFO] [stdout] 2481 | (input, "obs_domain(): expected after DOT").into(), [INFO] [stdout] 2482 | )); [INFO] [stdout] 2483 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/error.rs:519:12 [INFO] [stdout] | [INFO] [stdout] 519 | if let Some(old_details) = self.details.as_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/error.rs:521:9 [INFO] [stdout] | [INFO] [stdout] 521 | } 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] 519 ~ match self.details.as_ref() { Some(old_details) => { [INFO] [stdout] 520 | self.details = Some(format!("{}. {}", old_details, details.into()).into()); [INFO] [stdout] 521 ~ } _ => { [INFO] [stdout] 522 | self.details = Some(details.into()); [INFO] [stdout] 523 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/thread.rs:789:16 [INFO] [stdout] | [INFO] [stdout] 789 | if let Some(i) = tree_index.iter().position(|t| *t == t_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/thread.rs:791:13 [INFO] [stdout] | [INFO] [stdout] 791 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 789 ~ match tree_index.iter().position(|t| *t == t_id) { Some(i) => { [INFO] [stdout] 790 | tree_index.remove(i); [INFO] [stdout] 791 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/thread.rs:969:12 [INFO] [stdout] | [INFO] [stdout] 969 | if let std::collections::hash_map::Entry::Vacant(e) = self.groups.entry(thread_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/thread.rs:986:9 [INFO] [stdout] | [INFO] [stdout] 986 | } 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] 969 ~ match self.groups.entry(thread_hash) { std::collections::hash_map::Entry::Vacant(e) => { [INFO] [stdout] 970 | e.insert(ThreadGroup::Root(Thread { [INFO] [stdout] ... [INFO] [stdout] 985 | })); [INFO] [stdout] 986 ~ } _ => { [INFO] [stdout] 987 | let parent_group = self.thread_ref_mut(thread_hash); [INFO] [stdout] ... [INFO] [stdout] 999 | }; [INFO] [stdout] 1000~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/thread.rs:1013:19 [INFO] [stdout] | [INFO] [stdout] 1013 | } else if let Some(r) = envelopes_lck[&env_hash] [INFO] [stdout] | ^ ------------------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | ___________________| [INFO] [stdout] | | [INFO] [stdout] 1014 | | .in_reply_to() [INFO] [stdout] 1015 | | .map(StrBuild::raw) [INFO] [stdout] 1016 | | .filter(|irt| irt != &message_id) [INFO] [stdout] | |_____________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/thread.rs:1042:9 [INFO] [stdout] | [INFO] [stdout] 1042 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1013 ~ } else { match envelopes_lck[&env_hash] [INFO] [stdout] 1014 | .in_reply_to() [INFO] [stdout] 1015 | .map(StrBuild::raw) [INFO] [stdout] 1016 | .filter(|irt| irt != &message_id) [INFO] [stdout] 1017 ~ { Some(r) => { [INFO] [stdout] 1018 | let reply_to_id = ThreadNodeHash::from(r); [INFO] [stdout] ... [INFO] [stdout] 1041 | self.missing_message_ids.insert(r.to_vec()); [INFO] [stdout] 1042 ~ } _ => {}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/thread/iterators.rs:58:20 [INFO] [stdout] | [INFO] [stdout] 58 | if let Some(p) = self.stack.pop() { [INFO] [stdout] | ^^^^^^^^^^^^^^----------^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/thread/iterators.rs:60:17 [INFO] [stdout] | [INFO] [stdout] 60 | } 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] 58 ~ match self.stack.pop() { Some(p) => { [INFO] [stdout] 59 | self.pos = p + 1; [INFO] [stdout] 60 ~ } _ => { [INFO] [stdout] 61 | return None; [INFO] [stdout] 62 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/search.rs:155:20 [INFO] [stdout] | [INFO] [stdout] 155 | if let Ok((_, t)) = crate::utils::datetime::parse_timestamp_from_string( [INFO] [stdout] | ____________________^ - [INFO] [stdout] | |_____________________________________| [INFO] [stdout] 156 | || result, [INFO] [stdout] 157 | || formats::RFC3339_DATE, [INFO] [stdout] 158 | || ) { [INFO] [stdout] | ||_________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:160:17 [INFO] [stdout] | [INFO] [stdout] 160 | } 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] 155 ~ match crate::utils::datetime::parse_timestamp_from_string( [INFO] [stdout] 156 | result, [INFO] [stdout] 157 | formats::RFC3339_DATE, [INFO] [stdout] 158 ~ ) { Ok((_, t)) => { [INFO] [stdout] 159 | Ok((next_input, t)) [INFO] [stdout] 160 ~ } _ => { [INFO] [stdout] 161 | Err(next_input) [INFO] [stdout] 162 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/search.rs:349:20 [INFO] [stdout] | [INFO] [stdout] 349 | if let Ok(r) = flags_list [INFO] [stdout] | ____________________^ - [INFO] [stdout] | |________________________________| [INFO] [stdout] 350 | || .split(',') [INFO] [stdout] 351 | || .map(|t| { [INFO] [stdout] 352 | || either(quoted_string(), string()) [INFO] [stdout] ... || [INFO] [stdout] 356 | || .collect::, &str>>() [INFO] [stdout] 357 | || .map(Flags) [INFO] [stdout] | ||_______________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:360:17 [INFO] [stdout] | [INFO] [stdout] 360 | } 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] 349 ~ match flags_list [INFO] [stdout] 350 | .split(',') [INFO] [stdout] ... [INFO] [stdout] 357 | .map(Flags) [INFO] [stdout] 358 ~ { Ok(r) => { [INFO] [stdout] 359 | Ok((rest, r)) [INFO] [stdout] 360 ~ } _ => { [INFO] [stdout] 361 | Err(rest) [INFO] [stdout] 362 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/search.rs:382:56 [INFO] [stdout] | [INFO] [stdout] 382 | let (rest, query_a): (&'a str, Query) = if let Ok(q) = parentheses_query() [INFO] [stdout] | ________________________________________________________^ - [INFO] [stdout] | |____________________________________________________________________| [INFO] [stdout] 383 | || .parse(input) [INFO] [stdout] 384 | || .or_else(|_| from().parse(input)) [INFO] [stdout] 385 | || .or_else(|_| to().parse(input)) [INFO] [stdout] ... || [INFO] [stdout] 398 | || .or_else(|_| smaller().parse(input)) [INFO] [stdout] 399 | || .or_else(|_| has_attachment().parse(input)) [INFO] [stdout] | ||___________________________________________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |___________________________________________________________| [INFO] [stdout] | [INFO] [stdout] ... [INFO] [stdout] 402 | } else if let Ok((rest, query_a)) = not().parse(input) { [INFO] [stdout] | ------------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 403 | Ok((rest, Not(Box::new(query_a)))) [INFO] [stdout] 404 | } else if let Ok((rest, query_a)) = { [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 405 | | let result = literal().parse(input); [INFO] [stdout] 406 | | if result.is_ok() [INFO] [stdout] 407 | | && result [INFO] [stdout] ... | [INFO] [stdout] 415 | | } [INFO] [stdout] 416 | | } { [INFO] [stdout] | |_____________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:402:13 [INFO] [stdout] | [INFO] [stdout] 402 | } else if let Ok((rest, query_a)) = not().parse(input) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:404:13 [INFO] [stdout] | [INFO] [stdout] 404 | } else if let Ok((rest, query_a)) = { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:418:13 [INFO] [stdout] | [INFO] [stdout] 418 | } 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] 382 ~ let (rest, query_a): (&'a str, Query) = match parentheses_query() [INFO] [stdout] 383 | .parse(input) [INFO] [stdout] ... [INFO] [stdout] 399 | .or_else(|_| has_attachment().parse(input)) [INFO] [stdout] 400 ~ { Ok(q) => { [INFO] [stdout] 401 | Ok(q) [INFO] [stdout] 402 ~ } _ => { match not().parse(input) { Ok((rest, query_a)) => { [INFO] [stdout] 403 | Ok((rest, Not(Box::new(query_a)))) [INFO] [stdout] 404 ~ } _ => { match { [INFO] [stdout] 405 | let result = literal().parse(input); [INFO] [stdout] ... [INFO] [stdout] 415 | } [INFO] [stdout] 416 ~ } { Ok((rest, query_a)) => { [INFO] [stdout] 417 | Ok((rest, query_a)) [INFO] [stdout] 418 ~ } _ => { [INFO] [stdout] 419 | Err("") [INFO] [stdout] 420 ~ }}}}}}?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/search.rs:425:16 [INFO] [stdout] | [INFO] [stdout] 425 | if let Ok((rest, query_b)) = and().parse(rest) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^----------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 426 | Ok((rest, And(Box::new(query_a), Box::new(query_b)))) [INFO] [stdout] 427 | } else if let Ok((rest, query_b)) = or().parse(rest) { [INFO] [stdout] | ---------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 428 | Ok((rest, Or(Box::new(query_a), Box::new(query_b)))) [INFO] [stdout] 429 | } else if let Ok((rest, query_b)) = query().parse(rest) { [INFO] [stdout] | ------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:427:13 [INFO] [stdout] | [INFO] [stdout] 427 | } else if let Ok((rest, query_b)) = or().parse(rest) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:429:13 [INFO] [stdout] | [INFO] [stdout] 429 | } else if let Ok((rest, query_b)) = query().parse(rest) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:431:13 [INFO] [stdout] | [INFO] [stdout] 431 | } 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] 425 ~ match and().parse(rest) { Ok((rest, query_b)) => { [INFO] [stdout] 426 | Ok((rest, And(Box::new(query_a), Box::new(query_b)))) [INFO] [stdout] 427 ~ } _ => { match or().parse(rest) { Ok((rest, query_b)) => { [INFO] [stdout] 428 | Ok((rest, Or(Box::new(query_a), Box::new(query_b)))) [INFO] [stdout] 429 ~ } _ => { match query().parse(rest) { Ok((rest, query_b)) => { [INFO] [stdout] 430 | Ok((rest, And(Box::new(query_a), Box::new(query_b)))) [INFO] [stdout] 431 ~ } _ => { [INFO] [stdout] 432 | Ok((rest, query_a)) [INFO] [stdout] 433 ~ }}}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/connections/std_net.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 50 | if let Some(sock) = happy.poll_once(timeout_left()?)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^--------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/connections/std_net.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 50 ~ match happy.poll_once(timeout_left()?)? { Some(sock) => { [INFO] [stdout] 51 | return Ok(sock); [INFO] [stdout] 52 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/connections/std_net.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | if let Some(sock) = happy.poll_once(timeout_left()?)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^--------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/connections/std_net.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 56 ~ match happy.poll_once(timeout_left()?)? { Some(sock) => { [INFO] [stdout] 57 | return Ok(sock); [INFO] [stdout] 58 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/connections/std_net.rs:178:24 [INFO] [stdout] | [INFO] [stdout] 178 | if let Some(tcp) = self.socket_into_blocking_tcp_stream(sock) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/connections/std_net.rs:180:21 [INFO] [stdout] | [INFO] [stdout] 180 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 178 ~ match self.socket_into_blocking_tcp_stream(sock) { Some(tcp) => { [INFO] [stdout] 179 | return Ok(Some(tcp)); [INFO] [stdout] 180 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/datetime.rs:223:15 [INFO] [stdout] | [INFO] [stdout] 223 | } else if let Some(cstring) = fmt [INFO] [stdout] | _______________^ - [INFO] [stdout] | |___________________________________| [INFO] [stdout] 224 | || .map(str::as_bytes) [INFO] [stdout] 225 | || .map(CString::new) [INFO] [stdout] 226 | || .and_then(|res| res.ok()) [INFO] [stdout] | ||_________________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_________________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/datetime.rs:229:5 [INFO] [stdout] | [INFO] [stdout] 229 | } 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] 223 ~ } else { match fmt [INFO] [stdout] 224 | .map(str::as_bytes) [INFO] [stdout] 225 | .map(CString::new) [INFO] [stdout] 226 | .and_then(|res| res.ok()) [INFO] [stdout] 227 ~ { Some(cstring) => { [INFO] [stdout] 228 | Cow::from(cstring) [INFO] [stdout] 229 ~ } _ => { [INFO] [stdout] 230 | unsafe { CStr::from_bytes_with_nul_unchecked(fmt::DEFAULT_FMT.as_bytes()).into() } [INFO] [stdout] 231 ~ }}}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:138:12 [INFO] [stdout] | [INFO] [stdout] 138 | if let Ok((next_input, first_item)) = parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:141:9 [INFO] [stdout] | [INFO] [stdout] 141 | } 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] 138 ~ match parser.parse(input) { Ok((next_input, first_item)) => { [INFO] [stdout] 139 | input = next_input; [INFO] [stdout] 140 | result.push(first_item); [INFO] [stdout] 141 ~ } _ => { [INFO] [stdout] 142 | return Err(input); [INFO] [stdout] 143 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:145:15 [INFO] [stdout] | [INFO] [stdout] 145 | while let Ok((next_input, next_item)) = parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:161:15 [INFO] [stdout] | [INFO] [stdout] 161 | while let Ok((next_input, next_item)) = parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 164 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:467:16 [INFO] [stdout] | [INFO] [stdout] 467 | if let Ok(res) = parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:469:13 [INFO] [stdout] | [INFO] [stdout] 469 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 467 ~ match parser.parse(input) { Ok(res) => { [INFO] [stdout] 468 | return Ok(res); [INFO] [stdout] 469 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:545:15 [INFO] [stdout] | [INFO] [stdout] 545 | while let Ok((next_input, next_item)) = parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:558:9 [INFO] [stdout] | [INFO] [stdout] 558 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:84:46 [INFO] [stdout] | [INFO] [stdout] 84 | fn iter_section(&self, section: &str) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/utils/xdg/mod.rs:84:37 [INFO] [stdout] | [INFO] [stdout] 84 | fn iter_section(&self, section: &str) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 84 | fn iter_section(&self, section: &str) -> impl Iterator + use<'_> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:191:24 [INFO] [stdout] | [INFO] [stdout] 191 | if let Some(ret) = check_mimeapps_list(&pb, &xdg_vars, &query)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:193:21 [INFO] [stdout] | [INFO] [stdout] 193 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 191 ~ match check_mimeapps_list(&pb, &xdg_vars, &query)? { Some(ret) => { [INFO] [stdout] 192 | return Ok(ret); [INFO] [stdout] 193 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:199:16 [INFO] [stdout] | [INFO] [stdout] 199 | if let Some(ret) = check_mimeapps_list(&pb, &xdg_vars, &query)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:201:13 [INFO] [stdout] | [INFO] [stdout] 201 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 199 ~ match check_mimeapps_list(&pb, &xdg_vars, &query)? { Some(ret) => { [INFO] [stdout] 200 | return Ok(ret); [INFO] [stdout] 201 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:215:24 [INFO] [stdout] | [INFO] [stdout] 215 | if let Some(ret) = check_mimeapps_list(&pb, &xdg_vars, &query)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:217:21 [INFO] [stdout] | [INFO] [stdout] 217 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 215 ~ match check_mimeapps_list(&pb, &xdg_vars, &query)? { Some(ret) => { [INFO] [stdout] 216 | return Ok(ret); [INFO] [stdout] 217 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:226:16 [INFO] [stdout] | [INFO] [stdout] 226 | if let Some(ret) = check_mimeapps_list(&pb, &xdg_vars, &query)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:228:13 [INFO] [stdout] | [INFO] [stdout] 228 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 226 ~ match check_mimeapps_list(&pb, &xdg_vars, &query)? { Some(ret) => { [INFO] [stdout] 227 | return Ok(ret); [INFO] [stdout] 228 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:256:16 [INFO] [stdout] | [INFO] [stdout] 256 | if let Some(b) = desktop_file_to_command(v, xdg_vars)? { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:258:13 [INFO] [stdout] | [INFO] [stdout] 258 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 256 ~ match desktop_file_to_command(v, xdg_vars)? { Some(b) => { [INFO] [stdout] 257 | return Ok(Some(b)); [INFO] [stdout] 258 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:430:16 [INFO] [stdout] | [INFO] [stdout] 430 | if let Ok(mut unseen) = f.unseen.lock() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^--------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:434:13 [INFO] [stdout] | [INFO] [stdout] 434 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 430 ~ match f.unseen.lock() { Ok(mut unseen) => { [INFO] [stdout] 431 | let total = unseen.len(); [INFO] [stdout] 432 | unseen.clear(); [INFO] [stdout] 433 | unseen.set_not_yet_seen(total); [INFO] [stdout] 434 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:562:19 [INFO] [stdout] | [INFO] [stdout] 562 | while let Err(err) = if has_idle { [INFO] [stdout] | ___________________^ - [INFO] [stdout] | |__________________________________| [INFO] [stdout] 563 | || idle(ImapWatchKit { [INFO] [stdout] 564 | || conn: ImapConnection::new_connection( [INFO] [stdout] 565 | || &server_conf, [INFO] [stdout] ... || [INFO] [stdout] 583 | || .await [INFO] [stdout] 584 | || } { [INFO] [stdout] | ||_____________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:622:13 [INFO] [stdout] | [INFO] [stdout] 622 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:630:16 [INFO] [stdout] | [INFO] [stdout] 630 | if let Some(v) = self.uid_store.hash_index.lock().unwrap().get(&hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^-----------------------------------------^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:632:13 [INFO] [stdout] | [INFO] [stdout] 632 | } 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] 630 ~ match self.uid_store.hash_index.lock().unwrap().get(&hash) { Some(v) => { [INFO] [stdout] 631 | *v [INFO] [stdout] 632 ~ } _ => { [INFO] [stdout] 633 | return Err(Error::new( [INFO] [stdout] ... [INFO] [stdout] 636 | )); [INFO] [stdout] 637 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1576:16 [INFO] [stdout] | [INFO] [stdout] 1576 | if let Ok(mut mailbox) = protocol_parser::list_mailbox_result(l).map(|(_, v)| v) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1600:13 [INFO] [stdout] | [INFO] [stdout] 1600 | } else if let Ok(status) = protocol_parser::status_response(l).map(|(_, v)| v) { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1576 ~ match protocol_parser::list_mailbox_result(l).map(|(_, v)| v) { Ok(mut mailbox) => { [INFO] [stdout] 1577 | if let Some(parent) = mailbox.parent { [INFO] [stdout] ... [INFO] [stdout] 1599 | } [INFO] [stdout] 1600 ~ } _ => if let Ok(status) = protocol_parser::status_response(l).map(|(_, v)| v) { [INFO] [stdout] 1601 | if let Some(mailbox_hash) = status.mailbox { [INFO] [stdout] ... [INFO] [stdout] 1613 | imap_log!(trace, conn, "parse error for {:?}", l); [INFO] [stdout] 1614 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1578:24 [INFO] [stdout] | [INFO] [stdout] 1578 | if let std::collections::hash_map::Entry::Vacant(e) = mailboxes.entry(parent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1586:21 [INFO] [stdout] | [INFO] [stdout] 1586 | } 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] 1578 ~ match mailboxes.entry(parent) { std::collections::hash_map::Entry::Vacant(e) => { [INFO] [stdout] 1579 | /* Insert dummy parent entry, populating only the children field. Later [INFO] [stdout] ... [INFO] [stdout] 1585 | }); [INFO] [stdout] 1586 ~ } _ => { [INFO] [stdout] 1587 | mailboxes [INFO] [stdout] 1588 | .entry(parent) [INFO] [stdout] 1589 | .and_modify(|e| e.children.push(mailbox.hash)); [INFO] [stdout] 1590 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1592:20 [INFO] [stdout] | [INFO] [stdout] 1592 | if let std::collections::hash_map::Entry::Vacant(e) = mailboxes.entry(mailbox.hash) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1595:17 [INFO] [stdout] | [INFO] [stdout] 1595 | } 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] 1592 ~ match mailboxes.entry(mailbox.hash) [INFO] [stdout] 1593 ~ { std::collections::hash_map::Entry::Vacant(e) => { [INFO] [stdout] 1594 | e.insert(mailbox); [INFO] [stdout] 1595 ~ } _ => { [INFO] [stdout] 1596 | let entry = mailboxes.entry(mailbox.hash).or_default(); [INFO] [stdout] 1597 | std::mem::swap(&mut entry.children, &mut mailbox.children); [INFO] [stdout] 1598 | *entry = mailbox; [INFO] [stdout] 1599 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1625:16 [INFO] [stdout] | [INFO] [stdout] 1625 | if let Ok(subscription) = protocol_parser::list_mailbox_result(l).map(|(_, v)| v) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1634:13 [INFO] [stdout] | [INFO] [stdout] 1634 | } 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] 1625 ~ match protocol_parser::list_mailbox_result(l).map(|(_, v)| v) { Ok(subscription) => { [INFO] [stdout] 1626 | if let Some(f) = mailboxes.get_mut(&subscription.hash()) { [INFO] [stdout] ... [INFO] [stdout] 1633 | } [INFO] [stdout] 1634 ~ } _ => { [INFO] [stdout] 1635 | imap_log!(trace, conn, "parse error for {:?}", l); [INFO] [stdout] 1636 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1626:20 [INFO] [stdout] | [INFO] [stdout] 1626 | if let Some(f) = mailboxes.get_mut(&subscription.hash()) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1633:17 [INFO] [stdout] | [INFO] [stdout] 1633 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1626 ~ match mailboxes.get_mut(&subscription.hash()) { Some(f) => { [INFO] [stdout] 1627 | if f.special_usage() == SpecialUsageMailbox::Normal [INFO] [stdout] ... [INFO] [stdout] 1632 | f.is_subscribed = true; [INFO] [stdout] 1633 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1792:24 [INFO] [stdout] | [INFO] [stdout] 1792 | if let Err(err) = cache_handle [INFO] [stdout] | ________________________^ - [INFO] [stdout] | |_______________________________________| [INFO] [stdout] 1793 | || .update_mailbox(state.mailbox_hash, &select_response) [INFO] [stdout] 1794 | || .chain_err_summary(|| { [INFO] [stdout] 1795 | || format!("Could not update cache for mailbox {}.", state.mailbox_hash) [INFO] [stdout] 1796 | || }) [INFO] [stdout] | ||__________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |__________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1799:21 [INFO] [stdout] | [INFO] [stdout] 1799 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1792 ~ match cache_handle [INFO] [stdout] 1793 | .update_mailbox(state.mailbox_hash, &select_response) [INFO] [stdout] ... [INFO] [stdout] 1796 | }) [INFO] [stdout] 1797 ~ { Err(err) => { [INFO] [stdout] 1798 | (state.uid_store.event_consumer)(state.uid_store.account_hash, err.into()); [INFO] [stdout] 1799 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1821:32 [INFO] [stdout] | [INFO] [stdout] 1821 | ... if let Err(err) = cache_handle.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/imap/mod.rs:1827:29 [INFO] [stdout] | [INFO] [stdout] 1827 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1821 ~ match cache_handle.reset() { Err(err) => { [INFO] [stdout] 1822 | log::error!( [INFO] [stdout] ... [INFO] [stdout] 1826 | ); [INFO] [stdout] 1827 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1997:28 [INFO] [stdout] | [INFO] [stdout] 1997 | if let Err(err) = cache_handle [INFO] [stdout] | ____________________________^ - [INFO] [stdout] | |___________________________________________| [INFO] [stdout] 1998 | || .insert_envelopes(mailbox_hash, &v) [INFO] [stdout] 1999 | || .chain_err_summary(|| { [INFO] [stdout] 2000 | || format!( [INFO] [stdout] ... || [INFO] [stdout] 2003 | || ) [INFO] [stdout] 2004 | || }) [INFO] [stdout] | ||______________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |______________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:2010:25 [INFO] [stdout] | [INFO] [stdout] 2010 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1997 ~ match cache_handle [INFO] [stdout] 1998 | .insert_envelopes(mailbox_hash, &v) [INFO] [stdout] ... [INFO] [stdout] 2004 | }) [INFO] [stdout] 2005 ~ { Err(err) => { [INFO] [stdout] 2006 | (state.uid_store.event_consumer)( [INFO] [stdout] ... [INFO] [stdout] 2009 | ); [INFO] [stdout] 2010 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:479:25 [INFO] [stdout] | [INFO] [stdout] 479 | f.name = if let Some(pos) = f.imap_path.as_bytes().iter().rposition(|&c| c == separator) [INFO] [stdout] | ^^^^^^^^^^^^^^^^-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:483:13 [INFO] [stdout] | [INFO] [stdout] 483 | } 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] 479 ~ f.name = match f.imap_path.as_bytes().iter().rposition(|&c| c == separator) [INFO] [stdout] 480 ~ { Some(pos) => { [INFO] [stdout] 481 | f.parent = Some(MailboxHash::from_bytes(f.imap_path[..pos].as_bytes())); [INFO] [stdout] 482 | f.imap_path[pos + 1..].to_string() [INFO] [stdout] 483 ~ } _ => { [INFO] [stdout] 484 | f.imap_path.clone() [INFO] [stdout] 485 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:580:16 [INFO] [stdout] | [INFO] [stdout] 580 | if let Ok((rest, uid)) = [INFO] [stdout] | ________________^ [INFO] [stdout] 581 | | take_while::<_, &[u8], (&[u8], nom::error::ErrorKind)>(is_digit)(&input[i..]) [INFO] [stdout] | |_________________----------------------------------------------------------------____________^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:586:13 [INFO] [stdout] | [INFO] [stdout] 586 | } 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] 580 ~ match take_while::<_, &[u8], (&[u8], nom::error::ErrorKind)>(is_digit)(&input[i..]) [INFO] [stdout] 581 ~ { Ok((rest, uid)) => { [INFO] [stdout] 582 | i += input.len() - i - rest.len(); [INFO] [stdout] 583 | ret.uid = [INFO] [stdout] 584 | Some(UID::from_str(unsafe { std::str::from_utf8_unchecked(uid) }).unwrap()); [INFO] [stdout] 585 ~ } _ => { [INFO] [stdout] 586 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 593 | ))); [INFO] [stdout] 594 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:616:16 [INFO] [stdout] | [INFO] [stdout] 616 | if let Ok((rest, modseq)) = [INFO] [stdout] | ________________^ [INFO] [stdout] 617 | | take_while::<_, &[u8], (&[u8], nom::error::ErrorKind)>(is_digit)(&input[i..]) [INFO] [stdout] | |_________________----------------------------------------------------------------____________^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:624:13 [INFO] [stdout] | [INFO] [stdout] 624 | } 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] 616 ~ match take_while::<_, &[u8], (&[u8], nom::error::ErrorKind)>(is_digit)(&input[i..]) [INFO] [stdout] 617 ~ { Ok((rest, modseq)) => { [INFO] [stdout] 618 | i += (input.len() - i - rest.len()) + 1; [INFO] [stdout] ... [INFO] [stdout] 622 | .map(ModSequence); [INFO] [stdout] 623 ~ } _ => { [INFO] [stdout] 624 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 631 | ))); [INFO] [stdout] 632 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:637:16 [INFO] [stdout] | [INFO] [stdout] 637 | if let Ok((rest, body)) = [INFO] [stdout] | _________________^ [INFO] [stdout] 638 | |/ length_data::<_, _, (&[u8], nom::error::ErrorKind), _>(delimited( [INFO] [stdout] 639 | || tag("{"), [INFO] [stdout] 640 | || map_res(digit1, |s| { [INFO] [stdout] 641 | || usize::from_str(unsafe { std::str::from_utf8_unchecked(s) }) [INFO] [stdout] 642 | || }), [INFO] [stdout] 643 | || tag("}\r\n"), [INFO] [stdout] 644 | || ))(&input[i..]) [INFO] [stdout] | ||__________________-____________^ [INFO] [stdout] | |__________________| [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:648:13 [INFO] [stdout] | [INFO] [stdout] 648 | } 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] 637 ~ match length_data::<_, _, (&[u8], nom::error::ErrorKind), _>(delimited( [INFO] [stdout] 638 | tag("{"), [INFO] [stdout] ... [INFO] [stdout] 643 | ))(&input[i..]) [INFO] [stdout] 644 ~ { Ok((rest, body)) => { [INFO] [stdout] 645 | ret.body = Some(body); [INFO] [stdout] 646 | i += input.len() - i - rest.len(); [INFO] [stdout] 647 ~ } _ => { [INFO] [stdout] 648 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 659 | ))); [INFO] [stdout] 660 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:664:16 [INFO] [stdout] | [INFO] [stdout] 664 | if let Ok((rest, envelope)) = envelope(&input[i..]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:667:13 [INFO] [stdout] | [INFO] [stdout] 667 | } 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] 664 ~ match envelope(&input[i..]) { Ok((rest, envelope)) => { [INFO] [stdout] 665 | ret.envelope = Some(envelope); [INFO] [stdout] 666 | i += input.len() - i - rest.len(); [INFO] [stdout] 667 ~ } _ => { [INFO] [stdout] 668 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 679 | ))); [INFO] [stdout] 680 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:790:12 [INFO] [stdout] | [INFO] [stdout] 790 | if let Ok(ImapResponse::Ok(_)) = ImapResponse::try_from(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:791:9 [INFO] [stdout] | [INFO] [stdout] 791 | } 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] 790 ~ match ImapResponse::try_from(input) { Ok(ImapResponse::Ok(_)) => { [INFO] [stdout] 791 ~ } _ => { [INFO] [stdout] 792 | return Err(Error::new(format!( [INFO] [stdout] ... [INFO] [stdout] 795 | ))); [INFO] [stdout] 796 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:1197:20 [INFO] [stdout] | [INFO] [stdout] 1197 | if let Ok(d) = [INFO] [stdout] | ____________________^ [INFO] [stdout] 1198 | | crate::email::parser::dates::rfc5322_date(env.date_as_str().as_bytes()) [INFO] [stdout] | |_____________________----------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:1201:17 [INFO] [stdout] | [INFO] [stdout] 1201 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1197 ~ match crate::email::parser::dates::rfc5322_date(env.date_as_str().as_bytes()) [INFO] [stdout] 1198 ~ { Ok(d) => { [INFO] [stdout] 1199 | env.set_datetime(d); [INFO] [stdout] 1200 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:1224:20 [INFO] [stdout] | [INFO] [stdout] 1224 | if let Some(in_reply_to) = env.in_reply_to().cloned() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^---^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:1226:17 [INFO] [stdout] | [INFO] [stdout] 1226 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1224 ~ match env.in_reply_to().cloned() { Some(in_reply_to) => { [INFO] [stdout] 1225 | env.push_references(in_reply_to); [INFO] [stdout] 1226 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:770:20 [INFO] [stdout] | [INFO] [stdout] 770 | if let Err(_err) = try_await(async { [INFO] [stdout] | ____________________^ - [INFO] [stdout] | |____________________________________| [INFO] [stdout] 771 | || self.send_command(CommandBody::Noop).await?; [INFO] [stdout] 772 | || self.read_response(&mut ret, RequiredResponses::empty()) [INFO] [stdout] 773 | || .await [INFO] [stdout] 774 | || }) [INFO] [stdout] 775 | || .await [INFO] [stdout] | ||______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:783:17 [INFO] [stdout] | [INFO] [stdout] 783 | } 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] 770 ~ match try_await(async { [INFO] [stdout] 771 | self.send_command(CommandBody::Noop).await?; [INFO] [stdout] ... [INFO] [stdout] 775 | .await [INFO] [stdout] 776 ~ { Err(_err) => { [INFO] [stdout] 777 | imap_log!( [INFO] [stdout] ... [INFO] [stdout] 782 | ); [INFO] [stdout] 783 ~ } _ => { [INFO] [stdout] 784 | imap_log!( [INFO] [stdout] ... [INFO] [stdout] 790 | return Ok(()); [INFO] [stdout] 791 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:796:16 [INFO] [stdout] | [INFO] [stdout] 796 | if let Err(err) = new_stream.as_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/imap/connection.rs:798:13 [INFO] [stdout] | [INFO] [stdout] 798 | } 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] 796 ~ match new_stream.as_ref() { Err(err) => { [INFO] [stdout] 797 | self.uid_store.is_online.lock().unwrap().1 = Err(err.clone()); [INFO] [stdout] 798 ~ } _ => { [INFO] [stdout] 799 | *self.uid_store.is_online.lock().unwrap() = (SystemTime::now(), Ok(())); [INFO] [stdout] 800 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:1010:12 [INFO] [stdout] | [INFO] [stdout] 1010 | if let Err(err) = [INFO] [stdout] | ____________^ [INFO] [stdout] 1011 | | try_await(async { self.stream.as_mut()?.send_command(command).await }).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/imap/connection.rs:1018:9 [INFO] [stdout] | [INFO] [stdout] 1018 | } 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] 1010 ~ match try_await(async { self.stream.as_mut()?.send_command(command).await }).await [INFO] [stdout] 1011 ~ { Err(err) => { [INFO] [stdout] 1012 | self.stream = Err(err.clone()); [INFO] [stdout] ... [INFO] [stdout] 1016 | Err(err) [INFO] [stdout] 1017 ~ } _ => { [INFO] [stdout] 1018 | *self.uid_store.is_online.lock().unwrap() = (SystemTime::now(), Ok(())); [INFO] [stdout] 1019 | Ok(()) [INFO] [stdout] 1020 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:1025:12 [INFO] [stdout] | [INFO] [stdout] 1025 | if let Err(err) = [INFO] [stdout] | ____________^ [INFO] [stdout] 1026 | | try_await(async { self.stream.as_mut()?.send_command_raw(command).await }).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/imap/connection.rs:1033:9 [INFO] [stdout] | [INFO] [stdout] 1033 | } 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] 1025 ~ match try_await(async { self.stream.as_mut()?.send_command_raw(command).await }).await [INFO] [stdout] 1026 ~ { Err(err) => { [INFO] [stdout] 1027 | self.stream = Err(err.clone()); [INFO] [stdout] ... [INFO] [stdout] 1031 | Err(err) [INFO] [stdout] 1032 ~ } _ => { [INFO] [stdout] 1033 | *self.uid_store.is_online.lock().unwrap() = (SystemTime::now(), Ok(())); [INFO] [stdout] 1034 | Ok(()) [INFO] [stdout] 1035 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:1040:12 [INFO] [stdout] | [INFO] [stdout] 1040 | if let Err(err) = try_await(async { self.stream.as_mut()?.send_literal(data).await }).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/imap/connection.rs:1047:9 [INFO] [stdout] | [INFO] [stdout] 1047 | } 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] 1040 ~ match try_await(async { self.stream.as_mut()?.send_literal(data).await }).await [INFO] [stdout] 1041 ~ { Err(err) => { [INFO] [stdout] 1042 | self.stream = Err(err.clone()); [INFO] [stdout] ... [INFO] [stdout] 1046 | Err(err) [INFO] [stdout] 1047 ~ } _ => { [INFO] [stdout] 1048 | Ok(()) [INFO] [stdout] 1049 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:1053:12 [INFO] [stdout] | [INFO] [stdout] 1053 | if let Err(err) = try_await(async { self.stream.as_mut()?.send_raw(raw).await }).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/imap/connection.rs:1059:9 [INFO] [stdout] | [INFO] [stdout] 1059 | } 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] 1053 ~ match try_await(async { self.stream.as_mut()?.send_raw(raw).await }).await { Err(err) => { [INFO] [stdout] 1054 | self.stream = Err(err.clone()); [INFO] [stdout] ... [INFO] [stdout] 1058 | Err(err) [INFO] [stdout] 1059 ~ } _ => { [INFO] [stdout] 1060 | Ok(()) [INFO] [stdout] 1061 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:1105:20 [INFO] [stdout] | [INFO] [stdout] 1105 | if let Err(err) = cache_handle.mailbox_state(mailbox_hash).and_then(|r| { [INFO] [stdout] | ____________________^ - [INFO] [stdout] | |___________________________________| [INFO] [stdout] 1106 | || if r.is_none() { [INFO] [stdout] 1107 | || cache_handle.clear(mailbox_hash, &select_response) [INFO] [stdout] 1108 | || } else { [INFO] [stdout] 1109 | || Ok(()) [INFO] [stdout] 1110 | || } [INFO] [stdout] 1111 | || }) { [INFO] [stdout] | ||__________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |__________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:1116:17 [INFO] [stdout] | [INFO] [stdout] 1116 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1105 ~ match cache_handle.mailbox_state(mailbox_hash).and_then(|r| { [INFO] [stdout] 1106 | if r.is_none() { [INFO] [stdout] ... [INFO] [stdout] 1110 | } [INFO] [stdout] 1111 ~ }) { Err(err) => { [INFO] [stdout] 1112 | (self.uid_store.event_consumer)( [INFO] [stdout] ... [INFO] [stdout] 1115 | ); [INFO] [stdout] 1116 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 91 | if let Some(v) = uidvalidities.get(&mailbox_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | } 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] 91 ~ match uidvalidities.get(&mailbox_hash) { Some(v) => { [INFO] [stdout] 92 | if *v != select_response.uidvalidity { [INFO] [stdout] ... [INFO] [stdout] 103 | } [INFO] [stdout] 104 ~ } _ => { [INFO] [stdout] 105 | uidvalidities.insert(mailbox_hash, select_response.uidvalidity); [INFO] [stdout] 106 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:205:8 [INFO] [stdout] | [INFO] [stdout] 205 | if let Some(new_envelopes) = conn.resync(mailbox_hash).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/imap/watch.rs:213:5 [INFO] [stdout] | [INFO] [stdout] 213 | } 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] 205 ~ match conn.resync(mailbox_hash).await? { Some(new_envelopes) => { [INFO] [stdout] 206 | for env in new_envelopes { [INFO] [stdout] ... [INFO] [stdout] 212 | } [INFO] [stdout] 213 ~ } _ => { [INFO] [stdout] 214 | let cache_handle = uid_store.cache_handle(); [INFO] [stdout] ... [INFO] [stdout] 432 | } [INFO] [stdout] 433 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:223:16 [INFO] [stdout] | [INFO] [stdout] 223 | if let Some(v) = uidvalidities.get(&mailbox_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:242:13 [INFO] [stdout] | [INFO] [stdout] 242 | } 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] 223 ~ match uidvalidities.get(&mailbox_hash) { Some(v) => { [INFO] [stdout] 224 | if *v != select_response.uidvalidity { [INFO] [stdout] ... [INFO] [stdout] 241 | } [INFO] [stdout] 242 ~ } _ => { [INFO] [stdout] 243 | uidvalidities.insert(mailbox_hash, select_response.uidvalidity); [INFO] [stdout] 244 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:281:36 [INFO] [stdout] | [INFO] [stdout] 281 | ... if let Ok(mut exists_lck) = mailbox.exists.lock() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:284:33 [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] 281 ~ match mailbox.exists.lock() { Ok(mut exists_lck) => { [INFO] [stdout] 282 | exists_lck.clear(); [INFO] [stdout] 283 | exists_lck.set_not_yet_seen(total); [INFO] [stdout] 284 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:287:36 [INFO] [stdout] | [INFO] [stdout] 287 | ... if let Ok(mut unseen_lck) = mailbox.unseen.lock() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:290:33 [INFO] [stdout] | [INFO] [stdout] 290 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 287 ~ match mailbox.unseen.lock() { Ok(mut unseen_lck) => { [INFO] [stdout] 288 | unseen_lck.clear(); [INFO] [stdout] 289 | unseen_lck.set_not_yet_seen(total); [INFO] [stdout] 290 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:306:20 [INFO] [stdout] | [INFO] [stdout] 306 | if let Ok(mut unseen_lck) = mailbox.unseen.lock() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/watch.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] 306 ~ match mailbox.unseen.lock() { Ok(mut unseen_lck) => { [INFO] [stdout] 307 | unseen_lck.clear(); [INFO] [stdout] 308 | unseen_lck.set_not_yet_seen(unseen_count); [INFO] [stdout] 309 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/cache/sync.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 40 | if let Some(mut cache_handle) = self.uid_store.cache_handle()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/cache/sync.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | } 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] 40 ~ match self.uid_store.cache_handle()? { Some(mut cache_handle) => { [INFO] [stdout] 41 | if cache_handle.mailbox_state(mailbox_hash)?.is_none() { [INFO] [stdout] ... [INFO] [stdout] 53 | } [INFO] [stdout] 54 ~ } _ => { [INFO] [stdout] 55 | Ok(None) [INFO] [stdout] 56 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | / try_fail!( [INFO] [stdout] 229 | | mailbox_hash, [INFO] [stdout] 230 | | self.send_command(CommandBody::fetch(n, common_attributes(), false)?).await [INFO] [stdout] | | --------------------------------------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 231 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] 232 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 228 | / try_fail!( [INFO] [stdout] 229 | | mailbox_hash, [INFO] [stdout] 230 | | self.send_command(CommandBody::fetch(n, common_attributes(), false)?).await [INFO] [stdout] 231 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] 232 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | / try_fail!( [INFO] [stdout] 229 | | mailbox_hash, [INFO] [stdout] 230 | | self.send_command(CommandBody::fetch(n, common_attributes(), false)?).await [INFO] [stdout] 231 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] | | -------------------------------------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 232 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 228 | / try_fail!( [INFO] [stdout] 229 | | mailbox_hash, [INFO] [stdout] 230 | | self.send_command(CommandBody::fetch(n, common_attributes(), false)?).await [INFO] [stdout] 231 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] 232 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:311:24 [INFO] [stdout] | [INFO] [stdout] 311 | if let Err(err) = cache_handle [INFO] [stdout] | ________________________^ - [INFO] [stdout] | |_______________________________________| [INFO] [stdout] 312 | || .insert_envelopes(mailbox_hash, &v) [INFO] [stdout] 313 | || .chain_err_summary(|| { [INFO] [stdout] 314 | || format!( [INFO] [stdout] ... || [INFO] [stdout] 317 | || ) [INFO] [stdout] 318 | || }) [INFO] [stdout] | ||__________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |__________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:321:21 [INFO] [stdout] | [INFO] [stdout] 321 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 311 ~ match cache_handle [INFO] [stdout] 312 | .insert_envelopes(mailbox_hash, &v) [INFO] [stdout] ... [INFO] [stdout] 318 | }) [INFO] [stdout] 319 ~ { Err(err) => { [INFO] [stdout] 320 | imap_log!(info, self, "{}", err); [INFO] [stdout] 321 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:324:24 [INFO] [stdout] | [INFO] [stdout] 324 | if let FetchResponse { [INFO] [stdout] | ________________________^ [INFO] [stdout] 325 | | envelope: Some(envelope), [INFO] [stdout] 326 | | .. [INFO] [stdout] 327 | | } = response [INFO] [stdout] | |_________________________-------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:334:21 [INFO] [stdout] | [INFO] [stdout] 334 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 324 ~ match response [INFO] [stdout] 325 ~ { FetchResponse { [INFO] [stdout] 326 + envelope: Some(envelope), [INFO] [stdout] 327 + .. [INFO] [stdout] 328 ~ } => { [INFO] [stdout] 329 | self.add_refresh_event(RefreshEvent { [INFO] [stdout] ... [INFO] [stdout] 333 | }); [INFO] [stdout] 334 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 338 | / try_fail!( [INFO] [stdout] 339 | | mailbox_hash, [INFO] [stdout] 340 | | self.send_command(CommandBody::search(None, SearchKey::Recent.into(), true)).await [INFO] [stdout] | | ---------------------------------------------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 341 | | self.read_response(&mut response, RequiredResponses::SEARCH).await [INFO] [stdout] 342 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 338 | / try_fail!( [INFO] [stdout] 339 | | mailbox_hash, [INFO] [stdout] 340 | | self.send_command(CommandBody::search(None, SearchKey::Recent.into(), true)).await [INFO] [stdout] 341 | | self.read_response(&mut response, RequiredResponses::SEARCH).await [INFO] [stdout] 342 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 338 | / try_fail!( [INFO] [stdout] 339 | | mailbox_hash, [INFO] [stdout] 340 | | self.send_command(CommandBody::search(None, SearchKey::Recent.into(), true)).await [INFO] [stdout] 341 | | self.read_response(&mut response, RequiredResponses::SEARCH).await [INFO] [stdout] | | ------------------------------------------------------------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 342 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 338 | / try_fail!( [INFO] [stdout] 339 | | mailbox_hash, [INFO] [stdout] 340 | | self.send_command(CommandBody::search(None, SearchKey::Recent.into(), true)).await [INFO] [stdout] 341 | | self.read_response(&mut response, RequiredResponses::SEARCH).await [INFO] [stdout] 342 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 365 | / try_fail!( [INFO] [stdout] 366 | | mailbox_hash, [INFO] [stdout] 367 | | self.send_command_raw(command.as_bytes()).await [INFO] [stdout] | | ----------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 368 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] 369 | | ); [INFO] [stdout] | |_________________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 365 | / try_fail!( [INFO] [stdout] 366 | | mailbox_hash, [INFO] [stdout] 367 | | self.send_command_raw(command.as_bytes()).await [INFO] [stdout] 368 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] 369 | | ); [INFO] [stdout] | |_________________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 365 | / try_fail!( [INFO] [stdout] 366 | | mailbox_hash, [INFO] [stdout] 367 | | self.send_command_raw(command.as_bytes()).await [INFO] [stdout] 368 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] | | -------------------------------------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 369 | | ); [INFO] [stdout] | |_________________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 365 | / try_fail!( [INFO] [stdout] 366 | | mailbox_hash, [INFO] [stdout] 367 | | self.send_command_raw(command.as_bytes()).await [INFO] [stdout] 368 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] 369 | | ); [INFO] [stdout] | |_________________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:415:32 [INFO] [stdout] | [INFO] [stdout] 415 | ... if let Err(err) = cache_handle [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |_________________________________________| [INFO] [stdout] 416 | || ... .insert_envelopes(mailbox_hash, &v) [INFO] [stdout] 417 | || ... .chain_err_summary(|| { [INFO] [stdout] 418 | || ... format!( [INFO] [stdout] ... || [INFO] [stdout] 421 | || ... ) [INFO] [stdout] 422 | || ... }) [INFO] [stdout] | ||____________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |____________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:425:29 [INFO] [stdout] | [INFO] [stdout] 425 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 415 ~ match cache_handle [INFO] [stdout] 416 | .insert_envelopes(mailbox_hash, &v) [INFO] [stdout] ... [INFO] [stdout] 422 | }) [INFO] [stdout] 423 ~ { Err(err) => { [INFO] [stdout] 424 | log::info!("{err}"); [INFO] [stdout] 425 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:428:32 [INFO] [stdout] | [INFO] [stdout] 428 | ... if let FetchResponse { [INFO] [stdout] | __________________________^ [INFO] [stdout] 429 | | ... envelope: Some(envelope), [INFO] [stdout] 430 | | ... uid: Some(uid), [INFO] [stdout] 431 | | ... .. [INFO] [stdout] 432 | | ... } = response [INFO] [stdout] | |___________________________-------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:470:29 [INFO] [stdout] | [INFO] [stdout] 470 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 428 ~ match response [INFO] [stdout] 429 ~ { FetchResponse { [INFO] [stdout] 430 + envelope: Some(envelope), [INFO] [stdout] 431 + uid: Some(uid), [INFO] [stdout] 432 + .. [INFO] [stdout] 433 ~ } => { [INFO] [stdout] 434 | if !self [INFO] [stdout] ... [INFO] [stdout] 469 | }); [INFO] [stdout] 470 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 496 | / try_fail!( [INFO] [stdout] 497 | | mailbox_hash, [INFO] [stdout] 498 | |/ self.send_command(CommandBody::search( [INFO] [stdout] 499 | || None, [INFO] [stdout] 500 | || SearchKey::SequenceSet(SequenceSet::try_from(msg_seq)?).into(), [INFO] [stdout] 501 | || true [INFO] [stdout] 502 | || )) [INFO] [stdout] 503 | || .await, [INFO] [stdout] | ||__________________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 504 | | self.read_response(&mut response, RequiredResponses::SEARCH) [INFO] [stdout] 505 | | .await, [INFO] [stdout] 506 | | ); [INFO] [stdout] | |__________________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 496 | / try_fail!( [INFO] [stdout] 497 | | mailbox_hash, [INFO] [stdout] 498 | | self.send_command(CommandBody::search( [INFO] [stdout] 499 | | None, [INFO] [stdout] ... | [INFO] [stdout] 505 | | .await, [INFO] [stdout] 506 | | ); [INFO] [stdout] | |_________________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 496 | / try_fail!( [INFO] [stdout] 497 | | mailbox_hash, [INFO] [stdout] 498 | | self.send_command(CommandBody::search( [INFO] [stdout] 499 | | None, [INFO] [stdout] ... | [INFO] [stdout] 504 | |/ self.read_response(&mut response, RequiredResponses::SEARCH) [INFO] [stdout] 505 | || .await, [INFO] [stdout] | ||______________________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 506 | | ); [INFO] [stdout] | |__________________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 496 | / try_fail!( [INFO] [stdout] 497 | | mailbox_hash, [INFO] [stdout] 498 | | self.send_command(CommandBody::search( [INFO] [stdout] 499 | | None, [INFO] [stdout] ... | [INFO] [stdout] 505 | | .await, [INFO] [stdout] 506 | | ); [INFO] [stdout] | |_________________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/mod.rs:164:28 [INFO] [stdout] | [INFO] [stdout] 164 | let read_only = if let Ok(metadata) = std::fs::metadata(&pathbuf) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/mod.rs:166:9 [INFO] [stdout] | [INFO] [stdout] 166 | } 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] 164 ~ let read_only = match std::fs::metadata(&pathbuf) { Ok(metadata) => { [INFO] [stdout] 165 | metadata.permissions().readonly() [INFO] [stdout] 166 ~ } _ => { [INFO] [stdout] 167 | true [INFO] [stdout] 168 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:212:24 [INFO] [stdout] | [INFO] [stdout] 212 | if let Ok(mut env) = Envelope::from_bytes(buf.as_slice(), Some(file.flags())) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:226:21 [INFO] [stdout] | [INFO] [stdout] 226 | } 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] 212 ~ match Envelope::from_bytes(buf.as_slice(), Some(file.flags())) { Ok(mut env) => { [INFO] [stdout] 213 | env.set_hash(hash); [INFO] [stdout] ... [INFO] [stdout] 225 | ); [INFO] [stdout] 226 ~ } _ => { [INFO] [stdout] 227 | log::trace!( [INFO] [stdout] ... [INFO] [stdout] 232 | continue; [INFO] [stdout] 233 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:620:32 [INFO] [stdout] | [INFO] [stdout] 620 | ... if let Ok(mut f) = MaildirMailbox::new( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |__________________________________________| [INFO] [stdout] 621 | || ... path.to_str().unwrap().to_string(), [INFO] [stdout] 622 | || ... path.file_name().unwrap().to_str().unwrap().to_string(), [INFO] [stdout] 623 | || ... None, [INFO] [stdout] ... || [INFO] [stdout] 626 | || ... settings, [INFO] [stdout] 627 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:636:29 [INFO] [stdout] | [INFO] [stdout] 636 | ... } 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] 620 ~ match MaildirMailbox::new( [INFO] [stdout] 621 | path.to_str().unwrap().to_string(), [INFO] [stdout] ... [INFO] [stdout] 626 | settings, [INFO] [stdout] 627 ~ ) { Ok(mut f) => { [INFO] [stdout] 628 | f.children = recurse_mailboxes(mailboxes, settings, &path)?; [INFO] [stdout] ... [INFO] [stdout] 635 | mailboxes.insert(f.hash, f); [INFO] [stdout] 636 ~ } _ => { [INFO] [stdout] 637 | /* If directory is invalid (i.e. has no {cur,new,tmp} [INFO] [stdout] ... [INFO] [stdout] 660 | } [INFO] [stdout] 661 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:644:40 [INFO] [stdout] | [INFO] [stdout] 644 | ... if let Ok(f) = MaildirMailbox::new( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |______________________________________| [INFO] [stdout] 645 | || ... path.to_str().unwrap().to_string(), [INFO] [stdout] 646 | || ... path.file_name().unwrap().to_str().unwrap().to_string(), [INFO] [stdout] 647 | || ... None, [INFO] [stdout] ... || [INFO] [stdout] 650 | || ... settings, [INFO] [stdout] 651 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:659:37 [INFO] [stdout] | [INFO] [stdout] 659 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 644 ~ match MaildirMailbox::new( [INFO] [stdout] 645 | path.to_str().unwrap().to_string(), [INFO] [stdout] ... [INFO] [stdout] 650 | settings, [INFO] [stdout] 651 ~ ) { Ok(f) => { [INFO] [stdout] 652 | for c in &f.children { [INFO] [stdout] ... [INFO] [stdout] 658 | mailboxes.insert(f.hash, f); [INFO] [stdout] 659 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:702:20 [INFO] [stdout] | [INFO] [stdout] 702 | if let Some(f) = mailboxes.get_mut(c) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:704:17 [INFO] [stdout] | [INFO] [stdout] 704 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 702 ~ match mailboxes.get_mut(c) { Some(f) => { [INFO] [stdout] 703 | f.parent = None; [INFO] [stdout] 704 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:710:20 [INFO] [stdout] | [INFO] [stdout] 710 | if let Some(f) = mailboxes.get_mut(c) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:712:17 [INFO] [stdout] | [INFO] [stdout] 712 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 710 ~ match mailboxes.get_mut(c) { Some(f) => { [INFO] [stdout] 711 | f.parent = Some(root_hash); [INFO] [stdout] 712 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:714:16 [INFO] [stdout] | [INFO] [stdout] 714 | if let Some(f) = mailboxes.get_mut(&root_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:716:13 [INFO] [stdout] | [INFO] [stdout] 716 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 714 ~ match mailboxes.get_mut(&root_hash) { Some(f) => { [INFO] [stdout] 715 | f.children = children; [INFO] [stdout] 716 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:88:32 [INFO] [stdout] | [INFO] [stdout] 88 | ... if let Ok(env) = add_path_to_index( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |________________________________________| [INFO] [stdout] 89 | || ... &hash_indexes, [INFO] [stdout] 90 | || ... mailbox_hash, [INFO] [stdout] 91 | || ... pathbuf.as_path(), [INFO] [stdout] 92 | || ... &mut buf, [INFO] [stdout] 93 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:116:29 [INFO] [stdout] | [INFO] [stdout] 116 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 88 ~ match add_path_to_index( [INFO] [stdout] 89 | &hash_indexes, [INFO] [stdout] ... [INFO] [stdout] 92 | &mut buf, [INFO] [stdout] 93 ~ ) { Ok(env) => { [INFO] [stdout] 94 | mailbox_index [INFO] [stdout] ... [INFO] [stdout] 115 | ); [INFO] [stdout] 116 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:168:36 [INFO] [stdout] | [INFO] [stdout] 168 | ... if let Ok(mut env) = [INFO] [stdout] | __________________________^ [INFO] [stdout] 169 | | ... Envelope::from_bytes(buf.as_slice(), Some(pathbuf.flags())) [INFO] [stdout] | |___________________________----------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:181:33 [INFO] [stdout] | [INFO] [stdout] 181 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 168 ~ match Envelope::from_bytes(buf.as_slice(), Some(pathbuf.flags())) [INFO] [stdout] 169 ~ { Ok(mut env) => { [INFO] [stdout] 170 | env.set_hash(new_hash); [INFO] [stdout] ... [INFO] [stdout] 179 | ); [INFO] [stdout] 180 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:281:36 [INFO] [stdout] | [INFO] [stdout] 281 | ... if let Ok(env) = add_path_to_index( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |________________________________________| [INFO] [stdout] 282 | || ... &hash_indexes, [INFO] [stdout] 283 | || ... dest_mailbox, [INFO] [stdout] 284 | || ... dest.as_path(), [INFO] [stdout] 285 | || ... &mut buf, [INFO] [stdout] 286 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:309:33 [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] 281 ~ match add_path_to_index( [INFO] [stdout] 282 | &hash_indexes, [INFO] [stdout] ... [INFO] [stdout] 285 | &mut buf, [INFO] [stdout] 286 ~ ) { Ok(env) => { [INFO] [stdout] 287 | mailbox_index [INFO] [stdout] ... [INFO] [stdout] 308 | ); [INFO] [stdout] 309 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:365:32 [INFO] [stdout] | [INFO] [stdout] 365 | ... if let Ok(env) = add_path_to_index( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |________________________________________| [INFO] [stdout] 366 | || ... &hash_indexes, [INFO] [stdout] 367 | || ... dest_mailbox.unwrap_or(mailbox_hash), [INFO] [stdout] 368 | || ... dest.as_path(), [INFO] [stdout] 369 | || ... &mut buf, [INFO] [stdout] 370 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:400:29 [INFO] [stdout] | [INFO] [stdout] 400 | ... } 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] 365 ~ match add_path_to_index( [INFO] [stdout] 366 | &hash_indexes, [INFO] [stdout] ... [INFO] [stdout] 369 | &mut buf, [INFO] [stdout] 370 ~ ) { Ok(env) => { [INFO] [stdout] 371 | mailbox_index [INFO] [stdout] ... [INFO] [stdout] 399 | continue; [INFO] [stdout] 400 ~ } _ => { [INFO] [stdout] 401 | log::trace!("not valid email"); [INFO] [stdout] 402 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:405:32 [INFO] [stdout] | [INFO] [stdout] 405 | ... if let Ok(env) = add_path_to_index( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |________________________________________| [INFO] [stdout] 406 | || ... &hash_indexes, [INFO] [stdout] 407 | || ... dest_mailbox, [INFO] [stdout] 408 | || ... dest.as_path(), [INFO] [stdout] 409 | || ... &mut buf, [INFO] [stdout] 410 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:433:29 [INFO] [stdout] | [INFO] [stdout] 433 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 405 ~ match add_path_to_index( [INFO] [stdout] 406 | &hash_indexes, [INFO] [stdout] ... [INFO] [stdout] 409 | &mut buf, [INFO] [stdout] 410 ~ ) { Ok(env) => { [INFO] [stdout] 411 | mailbox_index [INFO] [stdout] ... [INFO] [stdout] 432 | ); [INFO] [stdout] 433 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:622:38 [INFO] [stdout] | [INFO] [stdout] 622 | let (_input, _) = if let Ok(s) = tag::<_, &[u8], (&[u8], nom::error::ErrorKind)>( [INFO] [stdout] | ______________________________________^ - [INFO] [stdout] | |__________________________________________________| [INFO] [stdout] 623 | || "Content-Length:", [INFO] [stdout] 624 | || )(&input[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/mbox/mod.rs:627:17 [INFO] [stdout] | [INFO] [stdout] 627 | } 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] 622 ~ let (_input, _) = match tag::<_, &[u8], (&[u8], nom::error::ErrorKind)>( [INFO] [stdout] 623 | "Content-Length:", [INFO] [stdout] 624 | )(&input[content_length..]) [INFO] [stdout] 625 ~ { Ok(s) => { [INFO] [stdout] 626 | s [INFO] [stdout] 627 ~ } _ => { [INFO] [stdout] 628 | return Self::MboxRd.parse(orig_input); [INFO] [stdout] 629 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:630:42 [INFO] [stdout] | [INFO] [stdout] 630 | let (_input, bytes) = if let Ok(s) = [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 631 | |/ map_res::<&[u8], _, _, (&[u8], nom::error::ErrorKind), _, _, _>( [INFO] [stdout] 632 | || digit1, [INFO] [stdout] 633 | || |s: &[u8]| String::from_utf8_lossy(s).parse::(), [INFO] [stdout] 634 | || )(_input.ltrim()) [INFO] [stdout] | ||_____________________-_______________^ [INFO] [stdout] | |_____________________| [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:637:17 [INFO] [stdout] | [INFO] [stdout] 637 | } 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] 630 ~ let (_input, bytes) = match map_res::<&[u8], _, _, (&[u8], nom::error::ErrorKind), _, _, _>( [INFO] [stdout] 631 | digit1, [INFO] [stdout] 632 | |s: &[u8]| String::from_utf8_lossy(s).parse::(), [INFO] [stdout] 633 | )(_input.ltrim()) [INFO] [stdout] 634 ~ { Ok(s) => { [INFO] [stdout] 635 | s [INFO] [stdout] 636 ~ } _ => { [INFO] [stdout] 637 | return Self::MboxRd.parse(orig_input); [INFO] [stdout] 638 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:1008:40 [INFO] [stdout] | [INFO] [stdout] 1008 | ... if let Ok((_, envelopes)) = mbox_parse( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |___________________________________________________| [INFO] [stdout] 1009 | || ... mailbox_lock[&mailbox_hash].index.clone(), [INFO] [stdout] 1010 | || ... &contents, [INFO] [stdout] 1011 | || ... mailbox_lock[&mailbox_hash].content.len(), [INFO] [stdout] 1012 | || ... prefer_mbox_type, [INFO] [stdout] 1013 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:1026:37 [INFO] [stdout] | [INFO] [stdout] 1026 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1008 ~ match mbox_parse( [INFO] [stdout] 1009 | mailbox_lock[&mailbox_hash].index.clone(), [INFO] [stdout] ... [INFO] [stdout] 1012 | prefer_mbox_type, [INFO] [stdout] 1013 ~ ) { Ok((_, envelopes)) => { [INFO] [stdout] 1014 | let mut mailbox_index_lck = mailbox_index.lock().unwrap(); [INFO] [stdout] ... [INFO] [stdout] 1025 | } [INFO] [stdout] 1026 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:1345:28 [INFO] [stdout] | [INFO] [stdout] 1345 | let read_only = if let Ok(metadata) = std::fs::metadata(&ret.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/mbox/mod.rs:1347:9 [INFO] [stdout] | [INFO] [stdout] 1347 | } 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] 1345 ~ let read_only = match std::fs::metadata(&ret.path) { Ok(metadata) => { [INFO] [stdout] 1346 | metadata.permissions().readonly() [INFO] [stdout] 1347 ~ } _ => { [INFO] [stdout] 1348 | true [INFO] [stdout] 1349 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:1389:36 [INFO] [stdout] | [INFO] [stdout] 1389 | let read_only = if let Ok(metadata) = std::fs::metadata(&pathbuf) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:1391:17 [INFO] [stdout] | [INFO] [stdout] 1391 | } 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] 1389 ~ let read_only = match std::fs::metadata(&pathbuf) { Ok(metadata) => { [INFO] [stdout] 1390 | metadata.permissions().readonly() [INFO] [stdout] 1391 ~ } _ => { [INFO] [stdout] 1392 | true [INFO] [stdout] 1393 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/mod.rs:317:32 [INFO] [stdout] | [INFO] [stdout] 317 | ... if let Some(s) = store_lck.as_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/nntp/mod.rs:322:29 [INFO] [stdout] | [INFO] [stdout] 322 | ... } 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] 317 ~ match store_lck.as_ref() { Some(s) => { [INFO] [stdout] 318 | env.set_flags(s.flags(env.hash(), mailbox_hash, num)?); [INFO] [stdout] ... [INFO] [stdout] 321 | } [INFO] [stdout] 322 ~ } _ => { [INFO] [stdout] 323 | unseen.insert_new(env.hash()); [INFO] [stdout] 324 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/mod.rs:398:16 [INFO] [stdout] | [INFO] [stdout] 398 | if let Some(v) = self.uid_store.hash_index.lock().unwrap().get(&env_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^-----------------------------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/nntp/mod.rs:400:13 [INFO] [stdout] | [INFO] [stdout] 400 | } 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] 398 ~ match self.uid_store.hash_index.lock().unwrap().get(&env_hash) { Some(v) => { [INFO] [stdout] 399 | *v [INFO] [stdout] 400 ~ } _ => { [INFO] [stdout] 401 | return Err(Error::new( [INFO] [stdout] ... [INFO] [stdout] 404 | )); [INFO] [stdout] 405 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/mod.rs:711:27 [INFO] [stdout] | [INFO] [stdout] 711 | 'batch: while let Some(m) = mailboxes.pop() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/nntp/mod.rs:738:13 [INFO] [stdout] | [INFO] [stdout] 738 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/mod.rs:956:20 [INFO] [stdout] | [INFO] [stdout] 956 | if let Some(s) = store_lck.as_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/nntp/mod.rs:961:17 [INFO] [stdout] | [INFO] [stdout] 961 | } 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] 956 ~ match store_lck.as_ref() { Some(s) => { [INFO] [stdout] 957 | env.set_flags(s.flags(env.hash(), mailbox_hash, num)?); [INFO] [stdout] ... [INFO] [stdout] 960 | } [INFO] [stdout] 961 ~ } _ => { [INFO] [stdout] 962 | unseen.insert_new(env.hash()); [INFO] [stdout] 963 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/protocol_parser.rs:129:20 [INFO] [stdout] | [INFO] [stdout] 129 | if let Ok(d) = [INFO] [stdout] | ____________________^ [INFO] [stdout] 130 | | crate::email::parser::dates::rfc5322_date(env.date_as_str().as_bytes()) [INFO] [stdout] | |_____________________----------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/nntp/protocol_parser.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 133 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 129 ~ match crate::email::parser::dates::rfc5322_date(env.date_as_str().as_bytes()) [INFO] [stdout] 130 ~ { Ok(d) => { [INFO] [stdout] 131 | env.set_datetime(d); [INFO] [stdout] 132 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/protocol_parser.rs:141:20 [INFO] [stdout] | [INFO] [stdout] 141 | if let Ok((_, from)) = [INFO] [stdout] | ____________________^ [INFO] [stdout] 142 | | crate::email::parser::address::rfc2822address_list(from.as_bytes()) [INFO] [stdout] | |_____________________------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/nntp/protocol_parser.rs:145:17 [INFO] [stdout] | [INFO] [stdout] 145 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 141 ~ match crate::email::parser::address::rfc2822address_list(from.as_bytes()) [INFO] [stdout] 142 ~ { Ok((_, from)) => { [INFO] [stdout] 143 | env.set_from(from); [INFO] [stdout] 144 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/connection.rs:379:12 [INFO] [stdout] | [INFO] [stdout] 379 | if let Err(err) = try_await(async move { [INFO] [stdout] | ____________^ - [INFO] [stdout] | |___________________________| [INFO] [stdout] 380 | || let command = command.trim(); [INFO] [stdout] 381 | || self.stream.write_all(command).await?; [INFO] [stdout] 382 | || self.stream.write_all(b"\r\n").await?; [INFO] [stdout] ... || [INFO] [stdout] 385 | || }) [INFO] [stdout] 386 | || .await [INFO] [stdout] | ||______________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |______________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/nntp/connection.rs:390:9 [INFO] [stdout] | [INFO] [stdout] 390 | } 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] 379 ~ match try_await(async move { [INFO] [stdout] 380 | let command = command.trim(); [INFO] [stdout] ... [INFO] [stdout] 386 | .await [INFO] [stdout] 387 ~ { Err(err) => { [INFO] [stdout] 388 | log::debug!("stream send_command err {:?}", err); [INFO] [stdout] 389 | Err(err) [INFO] [stdout] 390 ~ } _ => { [INFO] [stdout] 391 | Ok(()) [INFO] [stdout] 392 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/connection.rs:396:12 [INFO] [stdout] | [INFO] [stdout] 396 | if let Err(err) = try_await(async move { [INFO] [stdout] | ____________^ - [INFO] [stdout] | |___________________________| [INFO] [stdout] 397 | || let mut ptr = 0; [INFO] [stdout] 398 | || while let Some(pos) = data[ptr..].find("\n") { [INFO] [stdout] 399 | || let l = &data[ptr..ptr + pos].trim_end(); [INFO] [stdout] ... || [INFO] [stdout] 418 | || }) [INFO] [stdout] 419 | || .await [INFO] [stdout] | ||______________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |______________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/nntp/connection.rs:423:9 [INFO] [stdout] | [INFO] [stdout] 423 | } 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] 396 ~ match try_await(async move { [INFO] [stdout] 397 | let mut ptr = 0; [INFO] [stdout] ... [INFO] [stdout] 419 | .await [INFO] [stdout] 420 ~ { Err(err) => { [INFO] [stdout] 421 | log::debug!("stream send_multiline_data_block err {:?}", err); [INFO] [stdout] 422 | Err(err) [INFO] [stdout] 423 ~ } _ => { [INFO] [stdout] 424 | Ok(()) [INFO] [stdout] 425 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/connection.rs:451:16 [INFO] [stdout] | [INFO] [stdout] 451 | if let Err(err) = new_stream.as_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/nntp/connection.rs:453:13 [INFO] [stdout] | [INFO] [stdout] 453 | } 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] 451 ~ match new_stream.as_ref() { Err(err) => { [INFO] [stdout] 452 | *self.uid_store.is_online.lock().await = (Instant::now(), Err(err.clone())); [INFO] [stdout] 453 ~ } _ => { [INFO] [stdout] 454 | *self.uid_store.is_online.lock().await = (Instant::now(), Ok(())); [INFO] [stdout] 455 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/connection.rs:506:12 [INFO] [stdout] | [INFO] [stdout] 506 | if let Err(err) = [INFO] [stdout] | ____________^ [INFO] [stdout] 507 | | try_await(async { self.stream.as_mut()?.send_command(command).await }).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/nntp/connection.rs:515:9 [INFO] [stdout] | [INFO] [stdout] 515 | } 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] 506 ~ match try_await(async { self.stream.as_mut()?.send_command(command).await }).await [INFO] [stdout] 507 ~ { Err(err) => { [INFO] [stdout] 508 | self.stream = Err(err.clone()); [INFO] [stdout] ... [INFO] [stdout] 513 | Err(err) [INFO] [stdout] 514 ~ } _ => { [INFO] [stdout] 515 | Ok(()) [INFO] [stdout] 516 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/smtp.rs:484:23 [INFO] [stdout] | [INFO] [stdout] 484 | } else if let SmtpAuth::Auto { [INFO] [stdout] | _______________________^ [INFO] [stdout] 485 | | ref mut auth_type, .. [INFO] [stdout] 486 | | } = ret.server_conf.auth [INFO] [stdout] | |_________________---________________^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/smtp.rs:502:13 [INFO] [stdout] | [INFO] [stdout] 502 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 484 ~ } else { match ret.server_conf.auth [INFO] [stdout] 485 ~ { SmtpAuth::Auto { [INFO] [stdout] 486 + ref mut auth_type, .. [INFO] [stdout] 487 ~ } => { [INFO] [stdout] 488 | if let Some(l) = pre_auth_extensions_reply [INFO] [stdout] ... [INFO] [stdout] 501 | } [INFO] [stdout] 502 ~ } _ => {}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/smtp.rs:488:20 [INFO] [stdout] | [INFO] [stdout] 488 | if let Some(l) = pre_auth_extensions_reply [INFO] [stdout] | _____________________^ - [INFO] [stdout] | | __________________________________| [INFO] [stdout] 489 | || .lines [INFO] [stdout] | ||__________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 490 | | .iter() [INFO] [stdout] 491 | | .find(|l| l.starts_with("AUTH")) [INFO] [stdout] | |_____________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/smtp.rs:501:17 [INFO] [stdout] | [INFO] [stdout] 501 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 488 ~ match pre_auth_extensions_reply [INFO] [stdout] 489 | .lines [INFO] [stdout] 490 | .iter() [INFO] [stdout] 491 | .find(|l| l.starts_with("AUTH")) [INFO] [stdout] 492 ~ { Some(l) => { [INFO] [stdout] 493 | let l = l["AUTH ".len()..].trim(); [INFO] [stdout] ... [INFO] [stdout] 500 | } [INFO] [stdout] 501 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 166 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Migrating tests/integration/main.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `melib` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/backends.rs [INFO] [stderr] * src/email.rs [INFO] [stderr] * src/email/address.rs [INFO] [stderr] * src/email/attachment_types.rs [INFO] [stderr] * src/email/headers/standards.rs [INFO] [stderr] * src/email/mailto/tests.rs [INFO] [stderr] * src/email/parser.rs [INFO] [stderr] * src/email/parser/tests.rs [INFO] [stderr] * src/error.rs [INFO] [stderr] * src/imap/connection.rs [INFO] [stderr] * src/imap/mod.rs [INFO] [stderr] * src/imap/protocol_parser.rs [INFO] [stderr] * src/imap/protocol_parser/tests.rs [INFO] [stderr] * src/imap/untagged.rs [INFO] [stderr] * src/lib.rs [INFO] [stderr] * src/mbox/mod.rs [INFO] [stderr] * src/nntp/mod.rs [INFO] [stderr] * src/sieve/parser.rs [INFO] [stderr] * src/text/line_break.rs [INFO] [stderr] * src/text/wcwidth.rs [INFO] [stderr] * src/thread.rs [INFO] [stderr] * src/utils/connections.rs [INFO] [stderr] * src/utils/parsec.rs [INFO] [stderr] * src/utils/percent_encoding.rs [INFO] [stderr] * src/utils/tests.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/lib.rs:112:10 [INFO] [stderr] | [INFO] [stderr] 112 | ($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/text/line_break.rs:78:6 [INFO] [stderr] | [INFO] [stderr] 78 | ($grapheme: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/text/line_break.rs:96:6 [INFO] [stderr] | [INFO] [stderr] 96 | ($grapheme: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/text/line_break.rs:111:27 [INFO] [stderr] | [INFO] [stderr] 111 | (($next_char:ident is $class: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/text/line_break.rs:168:18 [INFO] [stderr] | [INFO] [stderr] 168 | ($last_break:expr_2021, $pos: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/text/line_break.rs:168:41 [INFO] [stderr] | [INFO] [stderr] 168 | ($last_break:expr_2021, $pos: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/text/wcwidth.rs:34:6 [INFO] [stderr] | [INFO] [stderr] 34 | ($a: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/backends.rs:62:6 [INFO] [stderr] | [INFO] [stderr] 62 | ($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/sieve/parser.rs:26:47 [INFO] [stderr] | [INFO] [stderr] 26 | ($parser_name:ident, $lit:literal, $t:ty, $action: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/sieve/parser.rs:37:47 [INFO] [stderr] | [INFO] [stderr] 37 | ($parser_name:ident, $lit:literal, $t:ty, $action:expr_2021, $argument:ident) => { [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/email/address.rs:636:6 [INFO] [stderr] | [INFO] [stderr] 636 | ($d:expr_2021, $a: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/email/address.rs:636:20 [INFO] [stderr] | [INFO] [stderr] 636 | ($d:expr_2021, $a: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/email/attachment_types.rs:276:14 [INFO] [stderr] | [INFO] [stderr] 276 | ($p: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/email/headers/standards.rs:28:58 [INFO] [stderr] | [INFO] [stderr] 28 | ... ($konst:ident, $upcase:ident, $name:literal, $template:expr_2021, $(Protocol::$var:tt)|+,$status:expr_2021,$standards: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/email/headers/standards.rs:28:102 [INFO] [stderr] | [INFO] [stderr] 28 | ... ($konst:ident, $upcase:ident, $name:literal, $template:expr_2021, $(Protocol::$var:tt)|+,$status:expr_2021,$standards: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/email/headers/standards.rs:28:120 [INFO] [stderr] | [INFO] [stderr] 28 | ... ($konst:ident, $upcase:ident, $name:literal, $template:expr_2021, $(Protocol::$var:tt)|+,$status:expr_2021,$standards: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/email/parser/tests.rs:42:6 [INFO] [stderr] | [INFO] [stderr] 42 | ($l: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/email/parser.rs:55:6 [INFO] [stderr] | [INFO] [stderr] 55 | ($l: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/email/parser.rs:313:6 [INFO] [stderr] | [INFO] [stderr] 313 | ($var: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/email/parser.rs:323:6 [INFO] [stderr] | [INFO] [stderr] 323 | ($var: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/email.rs:175:22 [INFO] [stderr] | [INFO] [stderr] 175 | (fn $name: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/error.rs:415:6 [INFO] [stderr] | [INFO] [stderr] 415 | ($err: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/thread.rs:101:6 [INFO] [stderr] | [INFO] [stderr] 101 | ($buf:expr_2021, $idx: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/thread.rs:101:22 [INFO] [stderr] | [INFO] [stderr] 101 | ($buf:expr_2021, $idx: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/thread.rs:118:7 [INFO] [stderr] | [INFO] [stderr] 118 | (($p:expr_2021)parent of($c:expr_2021), $threads: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/thread.rs:118:30 [INFO] [stderr] | [INFO] [stderr] 118 | (($p:expr_2021)parent of($c:expr_2021), $threads: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/thread.rs:118:45 [INFO] [stderr] | [INFO] [stderr] 118 | (($p:expr_2021)parent of($c:expr_2021), $threads: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/utils/connections.rs:124:21 [INFO] [stderr] | [INFO] [stderr] 124 | ($fn: ident ( $($arg: 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/utils/parsec.rs:298:6 [INFO] [stderr] | [INFO] [stderr] 298 | ($input:expr_2021, $($field:tt, $t:ty, $parser: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/utils/parsec.rs:298:44 [INFO] [stderr] | [INFO] [stderr] 298 | ($input:expr_2021, $($field:tt, $t:ty, $parser: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/utils/percent_encoding.rs:118:9 [INFO] [stderr] | [INFO] [stderr] 118 | ($( $bool: 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/imap/protocol_parser/tests.rs:26:6 [INFO] [stderr] | [INFO] [stderr] 26 | ($v:expr_2021) => (unsafe{ std::str::from_utf8_unchecked($v) }) [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/imap/protocol_parser.rs:397:6 [INFO] [stderr] | [INFO] [stderr] 397 | ($v:expr_2021) => (unsafe{ std::str::from_utf8_unchecked($v) }) [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/imap/protocol_parser.rs:507:10 [INFO] [stderr] | [INFO] [stderr] 507 | ($input:expr_2021, $tag:tt) => { [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/imap/protocol_parser.rs:1235:6 [INFO] [stderr] | [INFO] [stderr] 1235 | ($offset:expr_2021, $length: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/imap/protocol_parser.rs:1235:25 [INFO] [stderr] | [INFO] [stderr] 1235 | ($offset:expr_2021, $length: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/imap/connection.rs:73:17 [INFO] [stderr] | [INFO] [stderr] 73 | ($fn:ident, $conn:expr_2021, $fmt:literal, $($t:tt)*) => { [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/imap/connection.rs:76:17 [INFO] [stderr] | [INFO] [stderr] 76 | ($fn:ident, $conn:expr_2021, $fmt:literal) => { [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/imap/untagged.rs:46:14 [INFO] [stderr] | [INFO] [stderr] 46 | ($mailbox_hash: expr_2021, $($result: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/imap/untagged.rs:46:42 [INFO] [stderr] | [INFO] [stderr] 46 | ($mailbox_hash: expr_2021, $($result: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/imap/mod.rs:136:30 [INFO] [stderr] | [INFO] [stderr] 136 | ($s:ident[$var:literal], $default: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/imap/mod.rs:1654:38 [INFO] [stderr] | [INFO] [stderr] 1654 | ($s:ident[$var:literal], $default: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/mbox/mod.rs:362:6 [INFO] [stderr] | [INFO] [stderr] 362 | ($input: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/mbox/mod.rs:1282:30 [INFO] [stderr] | [INFO] [stderr] 1282 | ($s:ident[$var:literal], $default: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/mbox/mod.rs:1443:38 [INFO] [stderr] | [INFO] [stderr] 1443 | ($s:ident[$var:literal], $default: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/nntp/mod.rs:70:30 [INFO] [stderr] | [INFO] [stderr] 70 | ($s:ident[$var:literal], $default: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/nntp/mod.rs:779:38 [INFO] [stderr] | [INFO] [stderr] 779 | ($s:ident[$var:literal], $default: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/email/mailto/tests.rs:59:72 [INFO] [stderr] | [INFO] [stderr] 59 | ($mailto:literal, addresses => $($addr:literal),*; body => $body:expr_2021; $(($field:literal, $val:literal)),+) => {{ [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/utils/tests.rs:183:11 [INFO] [stderr] | [INFO] [stderr] 183 | (($path:expr_2021, $force:literal, $treat_as_dir:literal), $($expected:tt)*) => {{ [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] warning: unexpected `cfg` condition value: `unix` [INFO] [stderr] --> src/backends.rs:112:32 [INFO] [stderr] | [INFO] [stderr] 112 | #[cfg(all(feature = "notmuch", target_os = "unix"))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `target_os` are: `aix`, `android`, `cuda`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `macos`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, `trusty`, `tvos`, `uefi`, `unknown`, `visionos`, `vita`, and `vxworks` and 5 more [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `unix` [INFO] [stderr] --> src/backends.rs:138:40 [INFO] [stderr] | [INFO] [stderr] 138 | #[cfg(all(feature = "notmuch", not(any(target_os = "unix", target_os = "macos"))))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `target_os` are: `aix`, `android`, `cuda`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `macos`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, `trusty`, `tvos`, `uefi`, `unknown`, `visionos`, `vita`, and `vxworks` and 5 more [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: elided lifetime has a name [INFO] [stderr] --> src/utils/parsec.rs:86:29 [INFO] [stderr] | [INFO] [stderr] 84 | impl<'a, F, Output> Parser<'a, Output> for F [INFO] [stderr] | -- lifetime `'a` declared here [INFO] [stderr] 85 | where [INFO] [stderr] 86 | F: Fn(&'a str) -> Result, [INFO] [stderr] | ^ this elided lifetime gets resolved as `'a` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stderr] [INFO] [stderr] error: aborting due to 49 previous errors; 3 warnings emitted [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/lib.rs:112:15 [INFO] [stdout] | [INFO] [stdout] 112 | ($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] = 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] 112 | ($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/text/line_break.rs:78:16 [INFO] [stdout] | [INFO] [stdout] 78 | ($grapheme: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] 78 | ($grapheme: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/text/line_break.rs:96:16 [INFO] [stdout] | [INFO] [stdout] 96 | ($grapheme: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] 96 | ($grapheme: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/text/line_break.rs:111:34 [INFO] [stdout] | [INFO] [stdout] 111 | (($next_char:ident is $class: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] 111 | (($next_char:ident is $class: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/text/line_break.rs:168:30 [INFO] [stdout] | [INFO] [stdout] 168 | ($last_break:expr, $pos: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] 168 | ($last_break:expr_2021, $pos: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/text/line_break.rs:168:41 [INFO] [stdout] | [INFO] [stdout] 168 | ($last_break:expr, $pos: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] 168 | ($last_break:expr, $pos: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/text/wcwidth.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | ($a: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] 34 | ($a:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `unix` [INFO] [stdout] --> src/backends.rs:112:32 [INFO] [stdout] | [INFO] [stdout] 112 | #[cfg(all(feature = "notmuch", target_os = "unix"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `target_os` are: `aix`, `android`, `cuda`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `macos`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, `trusty`, `tvos`, `uefi`, `unknown`, `visionos`, `vita`, and `vxworks` and 5 more [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `unix` [INFO] [stdout] --> src/backends.rs:138:40 [INFO] [stdout] | [INFO] [stdout] 138 | #[cfg(all(feature = "notmuch", not(any(target_os = "unix", target_os = "macos"))))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `target_os` are: `aix`, `android`, `cuda`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `macos`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, `trusty`, `tvos`, `uefi`, `unknown`, `visionos`, `vita`, and `vxworks` and 5 more [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/backends.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 62 | ($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] 62 | ($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/sieve/parser.rs:26:55 [INFO] [stdout] | [INFO] [stdout] 26 | ($parser_name:ident, $lit:literal, $t:ty, $action: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] 26 | ($parser_name:ident, $lit:literal, $t:ty, $action: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/sieve/parser.rs:37:55 [INFO] [stdout] | [INFO] [stdout] 37 | ($parser_name:ident, $lit:literal, $t:ty, $action:expr, $argument:ident) => { [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] 37 | ($parser_name:ident, $lit:literal, $t:ty, $action:expr_2021, $argument:ident) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/email/address.rs:636:9 [INFO] [stdout] | [INFO] [stdout] 636 | ($d:expr, $a: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] 636 | ($d:expr_2021, $a: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/email/address.rs:636:18 [INFO] [stdout] | [INFO] [stdout] 636 | ($d:expr, $a: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] 636 | ($d:expr, $a: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/email/attachment_types.rs:276:17 [INFO] [stdout] | [INFO] [stdout] 276 | ($p: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] 276 | ($p: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/email/headers/standards.rs:28:68 [INFO] [stdout] | [INFO] [stdout] 28 | ($konst:ident, $upcase:ident, $name:literal, $template:expr, $(Protocol::$var:tt)|+,$status:expr,$standards: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] 28 | ($konst:ident, $upcase:ident, $name:literal, $template:expr_2021, $(Protocol::$var:tt)|+,$status:expr,$standards: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/email/headers/standards.rs:28:105 [INFO] [stdout] | [INFO] [stdout] 28 | ($konst:ident, $upcase:ident, $name:literal, $template:expr, $(Protocol::$var:tt)|+,$status:expr,$standards: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] 28 | ($konst:ident, $upcase:ident, $name:literal, $template:expr, $(Protocol::$var:tt)|+,$status:expr_2021,$standards: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/email/headers/standards.rs:28:121 [INFO] [stdout] | [INFO] [stdout] 28 | ($konst:ident, $upcase:ident, $name:literal, $template:expr, $(Protocol::$var:tt)|+,$status:expr,$standards: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] 28 | ($konst:ident, $upcase:ident, $name:literal, $template:expr, $(Protocol::$var:tt)|+,$status:expr,$standards: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/email/mailto/tests.rs:59:78 [INFO] [stdout] | [INFO] [stdout] 59 | ($mailto:literal, addresses => $($addr:literal),*; body => $body:expr; $(($field:literal, $val:literal)),+) => {{ [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] 59 | ($mailto:literal, addresses => $($addr:literal),*; body => $body:expr_2021; $(($field:literal, $val:literal)),+) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/email/parser/tests.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | ($l: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] 42 | ($l: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/email/parser.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | ($l: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] 55 | ($l: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/email/parser.rs:313:11 [INFO] [stdout] | [INFO] [stdout] 313 | ($var: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] 313 | ($var: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/email/parser.rs:323:11 [INFO] [stdout] | [INFO] [stdout] 323 | ($var: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] 323 | ($var: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/email.rs:175:27 [INFO] [stdout] | [INFO] [stdout] 175 | (fn $name: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] 175 | (fn $name: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/error.rs:415:11 [INFO] [stdout] | [INFO] [stdout] 415 | ($err: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] 415 | ($err: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/thread.rs:101:11 [INFO] [stdout] | [INFO] [stdout] 101 | ($buf:expr, $idx: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] 101 | ($buf:expr_2021, $idx: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/thread.rs:101:22 [INFO] [stdout] | [INFO] [stdout] 101 | ($buf:expr, $idx: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] 101 | ($buf:expr, $idx: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/thread.rs:118:10 [INFO] [stdout] | [INFO] [stdout] 118 | (($p:expr)parent of($c:expr), $threads: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] 118 | (($p:expr_2021)parent of($c:expr), $threads: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/thread.rs:118:28 [INFO] [stdout] | [INFO] [stdout] 118 | (($p:expr)parent of($c:expr), $threads: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] 118 | (($p:expr)parent of($c:expr_2021), $threads: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/thread.rs:118:44 [INFO] [stdout] | [INFO] [stdout] 118 | (($p:expr)parent of($c:expr), $threads: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] 118 | (($p:expr)parent of($c:expr), $threads: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/utils/connections.rs:124:27 [INFO] [stdout] | [INFO] [stdout] 124 | ($fn: ident ( $($arg: 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] 124 | ($fn: ident ( $($arg: expr_2021),* $(,)* ) ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/utils/datetime.rs:72:1 [INFO] [stdout] | [INFO] [stdout] 72 | extern "C" { [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | _help: needs `unsafe` before the extern keyword: `unsafe` [INFO] [stdout] | | [INFO] [stdout] 73 | | fn strptime( [INFO] [stdout] 74 | | s: *const std::os::raw::c_char, [INFO] [stdout] 75 | | format: *const std::os::raw::c_char, [INFO] [stdout] ... | [INFO] [stdout] 90 | | fn gettimeofday(tv: *mut libc::timeval, tz: *mut libc::timezone) -> i32; [INFO] [stdout] 91 | | } [INFO] [stdout] | |_^ [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 #123743 [INFO] [stdout] = note: `--force-warn missing-unsafe-on-extern` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/utils/parsec.rs:86:29 [INFO] [stdout] | [INFO] [stdout] 84 | impl<'a, F, Output> Parser<'a, Output> for F [INFO] [stdout] | -- lifetime `'a` declared here [INFO] [stdout] 85 | where [INFO] [stdout] 86 | F: Fn(&'a str) -> Result, [INFO] [stdout] | ^ this elided lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/utils/parsec.rs:298:13 [INFO] [stdout] | [INFO] [stdout] 298 | ($input:expr, $($field:tt, $t:ty, $parser: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] 298 | ($input:expr_2021, $($field:tt, $t:ty, $parser: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/utils/parsec.rs:298:47 [INFO] [stdout] | [INFO] [stdout] 298 | ($input:expr, $($field:tt, $t:ty, $parser: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] 298 | ($input:expr, $($field:tt, $t:ty, $parser: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/utils/percent_encoding.rs:118:16 [INFO] [stdout] | [INFO] [stdout] 118 | ($( $bool: 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] 118 | ($( $bool: 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/utils/tests.rs:179:17 [INFO] [stdout] | [INFO] [stdout] 179 | (($path:expr, $force:literal, $treat_as_dir:literal), $($expected:tt)*) => {{ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 179 | (($path:expr_2021, $force:literal, $treat_as_dir:literal), $($expected:tt)*) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/imap/protocol_parser/tests.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | ($v:expr) => (unsafe{ std::str::from_utf8_unchecked($v) }) [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] 26 | ($v:expr_2021) => (unsafe{ std::str::from_utf8_unchecked($v) }) [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/imap/protocol_parser.rs:397:9 [INFO] [stdout] | [INFO] [stdout] 397 | ($v:expr) => (unsafe{ std::str::from_utf8_unchecked($v) }) [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] 397 | ($v:expr_2021) => (unsafe{ std::str::from_utf8_unchecked($v) }) [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/imap/protocol_parser.rs:507:17 [INFO] [stdout] | [INFO] [stdout] 507 | ($input:expr, $tag:tt) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 507 | ($input:expr_2021, $tag:tt) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/imap/protocol_parser.rs:1239:14 [INFO] [stdout] | [INFO] [stdout] 1239 | ($offset:expr, $length: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] 1239 | ($offset:expr_2021, $length: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/imap/protocol_parser.rs:1239:28 [INFO] [stdout] | [INFO] [stdout] 1239 | ($offset:expr, $length: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] 1239 | ($offset:expr, $length: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/imap/connection.rs:73:23 [INFO] [stdout] | [INFO] [stdout] 73 | ($fn:ident, $conn:expr, $fmt:literal, $($t:tt)*) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 73 | ($fn:ident, $conn:expr_2021, $fmt:literal, $($t:tt)*) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/imap/connection.rs:76:23 [INFO] [stdout] | [INFO] [stdout] 76 | ($fn:ident, $conn:expr, $fmt:literal) => { [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] 76 | ($fn:ident, $conn:expr_2021, $fmt:literal) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/imap/untagged.rs:46:29 [INFO] [stdout] | [INFO] [stdout] 46 | ($mailbox_hash: expr, $($result: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] 46 | ($mailbox_hash: expr_2021, $($result: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/imap/untagged.rs:46:45 [INFO] [stdout] | [INFO] [stdout] 46 | ($mailbox_hash: expr, $($result: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] 46 | ($mailbox_hash: expr, $($result: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/imap/mod.rs:136:39 [INFO] [stdout] | [INFO] [stdout] 136 | ($s:ident[$var:literal], $default: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] 136 | ($s:ident[$var:literal], $default: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/imap/mod.rs:1654:47 [INFO] [stdout] | [INFO] [stdout] 1654 | ($s:ident[$var:literal], $default: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] 1654 | ($s:ident[$var:literal], $default: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/mbox/mod.rs:362:13 [INFO] [stdout] | [INFO] [stdout] 362 | ($input: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] 362 | ($input: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/mbox/mod.rs:1283:39 [INFO] [stdout] | [INFO] [stdout] 1283 | ($s:ident[$var:literal], $default: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] 1283 | ($s:ident[$var:literal], $default: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/mbox/mod.rs:1444:47 [INFO] [stdout] | [INFO] [stdout] 1444 | ($s:ident[$var:literal], $default: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] 1444 | ($s:ident[$var:literal], $default: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/nntp/mod.rs:70:39 [INFO] [stdout] | [INFO] [stdout] 70 | ($s:ident[$var:literal], $default: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] 70 | ($s:ident[$var:literal], $default: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/nntp/mod.rs:779:47 [INFO] [stdout] | [INFO] [stdout] 779 | ($s:ident[$var:literal], $default: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] 779 | ($s:ident[$var:literal], $default:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block [INFO] [stdout] --> src/utils/connections.rs:460:27 [INFO] [stdout] | [INFO] [stdout] 460 | let mut slot: T = std::mem::zeroed(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/utils/connections.rs:459:5 [INFO] [stdout] | [INFO] [stdout] 459 | unsafe fn __getsockopt(&self, opt: c_int, val: c_int) -> std::io::Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `--force-warn unsafe-op-in-unsafe-fn` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to deprecated safe function `std::env::remove_var` is unsafe and requires unsafe block [INFO] [stdout] --> src/utils/tests.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | std::env::remove_var("HOME"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [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 #27970 [INFO] [stdout] = note: `--force-warn deprecated-safe-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: you can wrap the call in an `unsafe` block if you can guarantee that the environment access only happens in single-threaded code [INFO] [stdout] | [INFO] [stdout] 49 + // TODO: Audit that the environment access only happens in single-threaded code. [INFO] [stdout] 50 ~ unsafe { std::env::remove_var("HOME") }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to deprecated safe function `std::env::set_var` is unsafe and requires unsafe block [INFO] [stdout] --> src/utils/tests.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | std::env::set_var("HOME", tmp_dir.path()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [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 #27970 [INFO] [stdout] help: you can wrap the call in an `unsafe` block if you can guarantee that the environment access only happens in single-threaded code [INFO] [stdout] | [INFO] [stdout] 53 + // TODO: Audit that the environment access only happens in single-threaded code. [INFO] [stdout] 54 ~ unsafe { std::env::set_var("HOME", tmp_dir.path()) }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to deprecated safe function `std::env::remove_var` is unsafe and requires unsafe block [INFO] [stdout] --> src/utils/tests.rs:172:5 [INFO] [stdout] | [INFO] [stdout] 172 | std::env::remove_var("HOME"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [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 #27970 [INFO] [stdout] help: you can wrap the call in an `unsafe` block if you can guarantee that the environment access only happens in single-threaded code [INFO] [stdout] | [INFO] [stdout] 172 + // TODO: Audit that the environment access only happens in single-threaded code. [INFO] [stdout] 173 ~ unsafe { std::env::remove_var("HOME") }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to deprecated safe function `std::env::set_var` is unsafe and requires unsafe block [INFO] [stdout] --> src/utils/tests.rs:176:5 [INFO] [stdout] | [INFO] [stdout] 176 | std::env::set_var("HOME", tmp_dir.path()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [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 #27970 [INFO] [stdout] help: you can wrap the call in an `unsafe` block if you can guarantee that the environment access only happens in single-threaded code [INFO] [stdout] | [INFO] [stdout] 176 + // TODO: Audit that the environment access only happens in single-threaded code. [INFO] [stdout] 177 ~ unsafe { std::env::set_var("HOME", tmp_dir.path()) }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl VCardVersion` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/addressbook/vcard.rs:87:58 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn try_from_str(mut input: &str) -> Result> { [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/addressbook/vcard.rs:87:36 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn try_from_str(mut input: &str) -> Result> { [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] 87 | pub fn try_from_str(mut input: &str) -> Result>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/collection.rs:173:12 [INFO] [stdout] | [INFO] [stdout] 173 | if let std::collections::hash_map::Entry::Vacant(e) = threads_lck.entry(mailbox_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/collection.rs:179:9 [INFO] [stdout] | [INFO] [stdout] 179 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 173 ~ match threads_lck.entry(mailbox_hash) { std::collections::hash_map::Entry::Vacant(e) => { [INFO] [stdout] 174 | e.insert(Threads::new(new_envelopes.len())); [INFO] [stdout] ... [INFO] [stdout] 178 | } [INFO] [stdout] 179 ~ } _ => { [INFO] [stdout] 180 | mailboxes_lck.entry(mailbox_hash).and_modify(|m| { [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/collection.rs:431:12 [INFO] [stdout] | [INFO] [stdout] 431 | if let std::collections::hash_map::Entry::Vacant(e) = mailboxes_lck.entry(mailbox_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/collection.rs:437:9 [INFO] [stdout] | [INFO] [stdout] 437 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 431 ~ match mailboxes_lck.entry(mailbox_hash) { std::collections::hash_map::Entry::Vacant(e) => { [INFO] [stdout] 432 | e.insert(Default::default()); [INFO] [stdout] ... [INFO] [stdout] 436 | .insert(mailbox_hash, Threads::default()); [INFO] [stdout] 437 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:314:24 [INFO] [stdout] | [INFO] [stdout] 314 | if let Ok((rest, res)) = $parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:277:21 [INFO] [stdout] | [INFO] [stdout] 277 | / crate::permutation! { [INFO] [stdout] 278 | | input, [INFO] [stdout] 279 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] | | ----------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 280 | | match_type, Option, opt(parse_sieve_match_type()) [INFO] [stdout] 281 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:322:21 [INFO] [stdout] | [INFO] [stdout] 322 | } [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:277:21 [INFO] [stdout] | [INFO] [stdout] 277 | / crate::permutation! { [INFO] [stdout] 278 | | input, [INFO] [stdout] 279 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 280 | | match_type, Option, opt(parse_sieve_match_type()) [INFO] [stdout] 281 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `crate::permutation` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:314:24 [INFO] [stdout] | [INFO] [stdout] 314 | if let Ok((rest, res)) = $parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:277:21 [INFO] [stdout] | [INFO] [stdout] 277 | / crate::permutation! { [INFO] [stdout] 278 | | input, [INFO] [stdout] 279 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 280 | | match_type, Option, opt(parse_sieve_match_type()) [INFO] [stdout] | | ----------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 281 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:322:21 [INFO] [stdout] | [INFO] [stdout] 322 | } [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:277:21 [INFO] [stdout] | [INFO] [stdout] 277 | / crate::permutation! { [INFO] [stdout] 278 | | input, [INFO] [stdout] 279 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 280 | | match_type, Option, opt(parse_sieve_match_type()) [INFO] [stdout] 281 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `crate::permutation` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:314:24 [INFO] [stdout] | [INFO] [stdout] 314 | if let Ok((rest, res)) = $parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:317:21 [INFO] [stdout] | [INFO] [stdout] 317 | / crate::permutation! { [INFO] [stdout] 318 | | input, [INFO] [stdout] 319 | | match_type, Option, opt(parse_sieve_match_type()), [INFO] [stdout] | | ----------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 320 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 321 | | address_type, Option, opt(parse_sieve_address_type()) [INFO] [stdout] 322 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:322:21 [INFO] [stdout] | [INFO] [stdout] 322 | } [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:317:21 [INFO] [stdout] | [INFO] [stdout] 317 | / crate::permutation! { [INFO] [stdout] 318 | | input, [INFO] [stdout] 319 | | match_type, Option, opt(parse_sieve_match_type()), [INFO] [stdout] 320 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 321 | | address_type, Option, opt(parse_sieve_address_type()) [INFO] [stdout] 322 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `crate::permutation` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:314:24 [INFO] [stdout] | [INFO] [stdout] 314 | if let Ok((rest, res)) = $parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:317:21 [INFO] [stdout] | [INFO] [stdout] 317 | / crate::permutation! { [INFO] [stdout] 318 | | input, [INFO] [stdout] 319 | | match_type, Option, opt(parse_sieve_match_type()), [INFO] [stdout] 320 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] | | ----------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 321 | | address_type, Option, opt(parse_sieve_address_type()) [INFO] [stdout] 322 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:322:21 [INFO] [stdout] | [INFO] [stdout] 322 | } [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:317:21 [INFO] [stdout] | [INFO] [stdout] 317 | / crate::permutation! { [INFO] [stdout] 318 | | input, [INFO] [stdout] 319 | | match_type, Option, opt(parse_sieve_match_type()), [INFO] [stdout] 320 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 321 | | address_type, Option, opt(parse_sieve_address_type()) [INFO] [stdout] 322 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `crate::permutation` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:314:24 [INFO] [stdout] | [INFO] [stdout] 314 | if let Ok((rest, res)) = $parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:317:21 [INFO] [stdout] | [INFO] [stdout] 317 | / crate::permutation! { [INFO] [stdout] 318 | | input, [INFO] [stdout] 319 | | match_type, Option, opt(parse_sieve_match_type()), [INFO] [stdout] 320 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 321 | | address_type, Option, opt(parse_sieve_address_type()) [INFO] [stdout] | | ------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 322 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:322:21 [INFO] [stdout] | [INFO] [stdout] 322 | } [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/sieve/parser.rs:317:21 [INFO] [stdout] | [INFO] [stdout] 317 | / crate::permutation! { [INFO] [stdout] 318 | | input, [INFO] [stdout] 319 | | match_type, Option, opt(parse_sieve_match_type()), [INFO] [stdout] 320 | | comparator, Option, opt(parse_sieve_comparator()), [INFO] [stdout] 321 | | address_type, Option, opt(parse_sieve_address_type()) [INFO] [stdout] 322 | | } [INFO] [stdout] | |_____________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `crate::permutation` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email.rs:396:24 [INFO] [stdout] | [INFO] [stdout] 396 | if let Ok((_, value)) = parse_result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email.rs:398:21 [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 parse_result { Ok((_, value)) => { [INFO] [stdout] 397 | self.set_from(value); [INFO] [stdout] 398 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email.rs:417:24 [INFO] [stdout] | [INFO] [stdout] 417 | if let Ok((_, value)) = parse_result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email.rs:419:21 [INFO] [stdout] | [INFO] [stdout] 419 | } 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] 417 ~ match parse_result { Ok((_, value)) => { [INFO] [stdout] 418 | self.set_date(value.as_slice()); [INFO] [stdout] 419 ~ } _ => { [INFO] [stdout] 420 | self.set_date(value); [INFO] [stdout] 421 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email.rs:765:20 [INFO] [stdout] | [INFO] [stdout] 765 | if let Ok((_, value)) = parse_result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email.rs:769:17 [INFO] [stdout] | [INFO] [stdout] 769 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 765 ~ match parse_result { Ok((_, value)) => { [INFO] [stdout] 766 | for v in value { [INFO] [stdout] 767 | self.push_references(v); [INFO] [stdout] 768 | } [INFO] [stdout] 769 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email.rs:880:16 [INFO] [stdout] | [INFO] [stdout] 880 | if let Ok((_, value)) = parser::address::rfc2822address_list(author_raw.as_bytes()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^----------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email.rs:884:13 [INFO] [stdout] | [INFO] [stdout] 884 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 880 ~ match parser::address::rfc2822address_list(author_raw.as_bytes()) { Ok((_, value)) => { [INFO] [stdout] 881 | if value.iter().any(|a| a == is_sender) { [INFO] [stdout] 882 | return true; [INFO] [stdout] 883 | } [INFO] [stdout] 884 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/attachments.rs:257:32 [INFO] [stdout] | [INFO] [stdout] 257 | ... if let Ok(v) = crate::email::parser::encodings::phrase(v.trim(), false) [INFO] [stdout] | ^ -------------------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | __________________________| [INFO] [stdout] | | [INFO] [stdout] 258 | | ... .as_ref() [INFO] [stdout] 259 | | ... .map(|(_, r)| String::from_utf8_lossy(r).to_string()) [INFO] [stdout] | |_______________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/attachments.rs:262:29 [INFO] [stdout] | [INFO] [stdout] 262 | ... } 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] 257 ~ match crate::email::parser::encodings::phrase(v.trim(), false) [INFO] [stdout] 258 | .as_ref() [INFO] [stdout] 259 | .map(|(_, r)| String::from_utf8_lossy(r).to_string()) [INFO] [stdout] 260 ~ { Ok(v) => { [INFO] [stdout] 261 | name = Some(v); [INFO] [stdout] 262 ~ } _ => { [INFO] [stdout] 263 | name = Some(String::from_utf8_lossy(v).into()); [INFO] [stdout] 264 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/attachments.rs:566:24 [INFO] [stdout] | [INFO] [stdout] 566 | if let Some(boundary) = headers [INFO] [stdout] | ^ ------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | ________________________| [INFO] [stdout] | | [INFO] [stdout] 567 | | .iter() [INFO] [stdout] 568 | | .find(|(n, _)| n == HeaderName::CONTENT_TYPE) [INFO] [stdout] 569 | | .and_then(|(_, v)| { [INFO] [stdout] ... | [INFO] [stdout] 584 | | None [INFO] [stdout] 585 | | }) [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/attachments.rs:590:21 [INFO] [stdout] | [INFO] [stdout] 590 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 566 ~ match headers [INFO] [stdout] 567 | .iter() [INFO] [stdout] ... [INFO] [stdout] 585 | }) [INFO] [stdout] 586 ~ { Some(boundary) => { [INFO] [stdout] 587 | if Self::check_if_has_attachments_quick(body, boundary) { [INFO] [stdout] 588 | return true; [INFO] [stdout] 589 | } [INFO] [stdout] 590 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/attachments.rs:995:16 [INFO] [stdout] | [INFO] [stdout] 995 | if let Ok(v) = parser::encodings::decode_charset(&bytes, charset) { [INFO] [stdout] | ^^^^^^^^^^^^-------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/attachments.rs:997:13 [INFO] [stdout] | [INFO] [stdout] 997 | } 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] 995 ~ match parser::encodings::decode_charset(&bytes, charset) { Ok(v) => { [INFO] [stdout] 996 | v.into_bytes() [INFO] [stdout] 997 ~ } _ => { [INFO] [stdout] 998 | self.body().to_vec() [INFO] [stdout] 999 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/compose.rs:337:16 [INFO] [stdout] | [INFO] [stdout] 337 | if let Ok((_, addr)) = super::parser::address::mailbox(self.headers["From"].as_bytes()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^---------------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/compose.rs:343:13 [INFO] [stdout] | [INFO] [stdout] 343 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 337 ~ match super::parser::address::mailbox(self.headers["From"].as_bytes()) [INFO] [stdout] 338 ~ { Ok((_, addr)) => { [INFO] [stdout] 339 | if let Some(fqdn) = addr.get_fqdn() { [INFO] [stdout] ... [INFO] [stdout] 342 | } [INFO] [stdout] 343 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/list_management.rs:127:16 [INFO] [stdout] | [INFO] [stdout] 127 | if let Some(ref l) = ret.post { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/list_management.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 127 ~ match ret.post { Some(ref l) => { [INFO] [stdout] 128 | if l.starts_with(&[ListAction::No]) { [INFO] [stdout] 129 | ret.post = None; [INFO] [stdout] 130 | } [INFO] [stdout] 131 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:903:19 [INFO] [stdout] | [INFO] [stdout] 903 | while let Ok((_input, _)) = context( [INFO] [stdout] | ___________________^ - [INFO] [stdout] | |_________________________________________| [INFO] [stdout] 904 | || "comment()", [INFO] [stdout] 905 | || alt((ctext, ctext_invalid, map(quoted_pair, |_| ()))), [INFO] [stdout] 906 | || )(input) [INFO] [stdout] | ||____________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |____________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:909:13 [INFO] [stdout] | [INFO] [stdout] 909 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:926:12 [INFO] [stdout] | [INFO] [stdout] 926 | if let Ok((rest, ws)) = terminated(many0(wsp), crlf)(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:944:9 [INFO] [stdout] | [INFO] [stdout] 944 | } 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] 926 ~ match terminated(many0(wsp), crlf)(input) { Ok((rest, ws)) => { [INFO] [stdout] 927 | let mut v: Vec = ws.into_iter().fold(vec![], |mut acc, x| { [INFO] [stdout] ... [INFO] [stdout] 943 | } [INFO] [stdout] 944 ~ } _ => { [INFO] [stdout] 945 | let orig_input = input; [INFO] [stdout] ... [INFO] [stdout] 956 | } [INFO] [stdout] 957 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:934:19 [INFO] [stdout] | [INFO] [stdout] 934 | while let Ok((input_, w)) = wsp(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:938:13 [INFO] [stdout] | [INFO] [stdout] 938 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:948:19 [INFO] [stdout] | [INFO] [stdout] 948 | while let Ok((input_, _)) = wsp(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:951:13 [INFO] [stdout] | [INFO] [stdout] 951 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:1066:12 [INFO] [stdout] | [INFO] [stdout] 1066 | if let Ok(addr) = Address::list_try_from(&decoded[..end_or_len]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^---------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:1073:9 [INFO] [stdout] | [INFO] [stdout] 1073 | } else if end.is_some() { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1066 ~ match Address::list_try_from(&decoded[..end_or_len]) { Ok(addr) => { [INFO] [stdout] 1067 | address = addr; [INFO] [stdout] ... [INFO] [stdout] 1072 | }; [INFO] [stdout] 1073 ~ } _ => if end.is_some() { [INFO] [stdout] 1074 | decoded = &decoded[1..]; [INFO] [stdout] ... [INFO] [stdout] 1083 | )); [INFO] [stdout] 1084 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:1358:15 [INFO] [stdout] | [INFO] [stdout] 1358 | while let Ok((_input, atext_r)) = atext(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:1362:9 [INFO] [stdout] | [INFO] [stdout] 1362 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:1376:19 [INFO] [stdout] | [INFO] [stdout] 1376 | while let Ok((_input, atext_r)) = atext(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:1380:13 [INFO] [stdout] | [INFO] [stdout] 1380 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:2278:19 [INFO] [stdout] | [INFO] [stdout] 2278 | while let Ok((rest, v)) = encoded_word(&input[ptr..]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^--------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:2292:13 [INFO] [stdout] | [INFO] [stdout] 2292 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:2476:16 [INFO] [stdout] | [INFO] [stdout] 2476 | if let Ok((_input, atom_)) = context("obs_domain", atom)(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:2479:13 [INFO] [stdout] | [INFO] [stdout] 2479 | } 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] 2476 ~ match context("obs_domain", atom)(input) { Ok((_input, atom_)) => { [INFO] [stdout] 2477 | ret.extend_from_slice(&atom_); [INFO] [stdout] 2478 | input = _input; [INFO] [stdout] 2479 ~ } _ => { [INFO] [stdout] 2480 | return Err(nom::Err::Error( [INFO] [stdout] 2481 | (input, "obs_domain(): expected after DOT").into(), [INFO] [stdout] 2482 | )); [INFO] [stdout] 2483 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:2553:12 [INFO] [stdout] | [INFO] [stdout] 2553 | if let Ok((_, ret)) = crate::email::parser::encodings::phrase(&ret, true) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:2555:9 [INFO] [stdout] | [INFO] [stdout] 2555 | } 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] 2553 ~ match crate::email::parser::encodings::phrase(&ret, true) { Ok((_, ret)) => { [INFO] [stdout] 2554 | Ok((rest, ret)) [INFO] [stdout] 2555 ~ } _ => { [INFO] [stdout] 2556 | Ok((rest, ret)) [INFO] [stdout] 2557 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/email/parser.rs:2598:12 [INFO] [stdout] | [INFO] [stdout] 2598 | if let Ok((input, mailboxes)) = mailbox_list(input.ltrim()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/email/parser.rs:2600:9 [INFO] [stdout] | [INFO] [stdout] 2600 | } 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] 2598 ~ match mailbox_list(input.ltrim()) { Ok((input, mailboxes)) => { [INFO] [stdout] 2599 | Ok((input, mailboxes)) [INFO] [stdout] 2600 ~ } _ => { [INFO] [stdout] 2601 | let (input, _) = cfws(input)?; [INFO] [stdout] 2602 | Ok((input, vec![])) [INFO] [stdout] 2603 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/error.rs:519:12 [INFO] [stdout] | [INFO] [stdout] 519 | if let Some(old_details) = self.details.as_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/error.rs:521:9 [INFO] [stdout] | [INFO] [stdout] 521 | } 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] 519 ~ match self.details.as_ref() { Some(old_details) => { [INFO] [stdout] 520 | self.details = Some(format!("{}. {}", old_details, details.into()).into()); [INFO] [stdout] 521 ~ } _ => { [INFO] [stdout] 522 | self.details = Some(details.into()); [INFO] [stdout] 523 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/thread.rs:789:16 [INFO] [stdout] | [INFO] [stdout] 789 | if let Some(i) = tree_index.iter().position(|t| *t == t_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/thread.rs:791:13 [INFO] [stdout] | [INFO] [stdout] 791 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 789 ~ match tree_index.iter().position(|t| *t == t_id) { Some(i) => { [INFO] [stdout] 790 | tree_index.remove(i); [INFO] [stdout] 791 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/thread.rs:969:12 [INFO] [stdout] | [INFO] [stdout] 969 | if let std::collections::hash_map::Entry::Vacant(e) = self.groups.entry(thread_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/thread.rs:986:9 [INFO] [stdout] | [INFO] [stdout] 986 | } 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] 969 ~ match self.groups.entry(thread_hash) { std::collections::hash_map::Entry::Vacant(e) => { [INFO] [stdout] 970 | e.insert(ThreadGroup::Root(Thread { [INFO] [stdout] ... [INFO] [stdout] 985 | })); [INFO] [stdout] 986 ~ } _ => { [INFO] [stdout] 987 | let parent_group = self.thread_ref_mut(thread_hash); [INFO] [stdout] ... [INFO] [stdout] 999 | }; [INFO] [stdout] 1000~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/thread.rs:1013:19 [INFO] [stdout] | [INFO] [stdout] 1013 | } else if let Some(r) = envelopes_lck[&env_hash] [INFO] [stdout] | ^ ------------------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | ___________________| [INFO] [stdout] | | [INFO] [stdout] 1014 | | .in_reply_to() [INFO] [stdout] 1015 | | .map(StrBuild::raw) [INFO] [stdout] 1016 | | .filter(|irt| irt != &message_id) [INFO] [stdout] | |_____________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/thread.rs:1042:9 [INFO] [stdout] | [INFO] [stdout] 1042 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1013 ~ } else { match envelopes_lck[&env_hash] [INFO] [stdout] 1014 | .in_reply_to() [INFO] [stdout] 1015 | .map(StrBuild::raw) [INFO] [stdout] 1016 | .filter(|irt| irt != &message_id) [INFO] [stdout] 1017 ~ { Some(r) => { [INFO] [stdout] 1018 | let reply_to_id = ThreadNodeHash::from(r); [INFO] [stdout] ... [INFO] [stdout] 1041 | self.missing_message_ids.insert(r.to_vec()); [INFO] [stdout] 1042 ~ } _ => {}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/thread/iterators.rs:58:20 [INFO] [stdout] | [INFO] [stdout] 58 | if let Some(p) = self.stack.pop() { [INFO] [stdout] | ^^^^^^^^^^^^^^----------^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/thread/iterators.rs:60:17 [INFO] [stdout] | [INFO] [stdout] 60 | } 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] 58 ~ match self.stack.pop() { Some(p) => { [INFO] [stdout] 59 | self.pos = p + 1; [INFO] [stdout] 60 ~ } _ => { [INFO] [stdout] 61 | return None; [INFO] [stdout] 62 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/search.rs:155:20 [INFO] [stdout] | [INFO] [stdout] 155 | if let Ok((_, t)) = crate::utils::datetime::parse_timestamp_from_string( [INFO] [stdout] | ____________________^ - [INFO] [stdout] | |_____________________________________| [INFO] [stdout] 156 | || result, [INFO] [stdout] 157 | || formats::RFC3339_DATE, [INFO] [stdout] 158 | || ) { [INFO] [stdout] | ||_________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:160:17 [INFO] [stdout] | [INFO] [stdout] 160 | } 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] 155 ~ match crate::utils::datetime::parse_timestamp_from_string( [INFO] [stdout] 156 | result, [INFO] [stdout] 157 | formats::RFC3339_DATE, [INFO] [stdout] 158 ~ ) { Ok((_, t)) => { [INFO] [stdout] 159 | Ok((next_input, t)) [INFO] [stdout] 160 ~ } _ => { [INFO] [stdout] 161 | Err(next_input) [INFO] [stdout] 162 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/search.rs:349:20 [INFO] [stdout] | [INFO] [stdout] 349 | if let Ok(r) = flags_list [INFO] [stdout] | ____________________^ - [INFO] [stdout] | |________________________________| [INFO] [stdout] 350 | || .split(',') [INFO] [stdout] 351 | || .map(|t| { [INFO] [stdout] 352 | || either(quoted_string(), string()) [INFO] [stdout] ... || [INFO] [stdout] 356 | || .collect::, &str>>() [INFO] [stdout] 357 | || .map(Flags) [INFO] [stdout] | ||_______________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:360:17 [INFO] [stdout] | [INFO] [stdout] 360 | } 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] 349 ~ match flags_list [INFO] [stdout] 350 | .split(',') [INFO] [stdout] ... [INFO] [stdout] 357 | .map(Flags) [INFO] [stdout] 358 ~ { Ok(r) => { [INFO] [stdout] 359 | Ok((rest, r)) [INFO] [stdout] 360 ~ } _ => { [INFO] [stdout] 361 | Err(rest) [INFO] [stdout] 362 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/search.rs:382:56 [INFO] [stdout] | [INFO] [stdout] 382 | let (rest, query_a): (&'a str, Query) = if let Ok(q) = parentheses_query() [INFO] [stdout] | ________________________________________________________^ - [INFO] [stdout] | |____________________________________________________________________| [INFO] [stdout] 383 | || .parse(input) [INFO] [stdout] 384 | || .or_else(|_| from().parse(input)) [INFO] [stdout] 385 | || .or_else(|_| to().parse(input)) [INFO] [stdout] ... || [INFO] [stdout] 398 | || .or_else(|_| smaller().parse(input)) [INFO] [stdout] 399 | || .or_else(|_| has_attachment().parse(input)) [INFO] [stdout] | ||___________________________________________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |___________________________________________________________| [INFO] [stdout] | [INFO] [stdout] ... [INFO] [stdout] 402 | } else if let Ok((rest, query_a)) = not().parse(input) { [INFO] [stdout] | ------------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 403 | Ok((rest, Not(Box::new(query_a)))) [INFO] [stdout] 404 | } else if let Ok((rest, query_a)) = { [INFO] [stdout] | _________________________________________________- [INFO] [stdout] 405 | | let result = literal().parse(input); [INFO] [stdout] 406 | | if result.is_ok() [INFO] [stdout] 407 | | && result [INFO] [stdout] ... | [INFO] [stdout] 415 | | } [INFO] [stdout] 416 | | } { [INFO] [stdout] | |_____________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:402:13 [INFO] [stdout] | [INFO] [stdout] 402 | } else if let Ok((rest, query_a)) = not().parse(input) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:404:13 [INFO] [stdout] | [INFO] [stdout] 404 | } else if let Ok((rest, query_a)) = { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:418:13 [INFO] [stdout] | [INFO] [stdout] 418 | } 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] 382 ~ let (rest, query_a): (&'a str, Query) = match parentheses_query() [INFO] [stdout] 383 | .parse(input) [INFO] [stdout] ... [INFO] [stdout] 399 | .or_else(|_| has_attachment().parse(input)) [INFO] [stdout] 400 ~ { Ok(q) => { [INFO] [stdout] 401 | Ok(q) [INFO] [stdout] 402 ~ } _ => { match not().parse(input) { Ok((rest, query_a)) => { [INFO] [stdout] 403 | Ok((rest, Not(Box::new(query_a)))) [INFO] [stdout] 404 ~ } _ => { match { [INFO] [stdout] 405 | let result = literal().parse(input); [INFO] [stdout] ... [INFO] [stdout] 415 | } [INFO] [stdout] 416 ~ } { Ok((rest, query_a)) => { [INFO] [stdout] 417 | Ok((rest, query_a)) [INFO] [stdout] 418 ~ } _ => { [INFO] [stdout] 419 | Err("") [INFO] [stdout] 420 ~ }}}}}}?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/search.rs:425:16 [INFO] [stdout] | [INFO] [stdout] 425 | if let Ok((rest, query_b)) = and().parse(rest) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^----------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 426 | Ok((rest, And(Box::new(query_a), Box::new(query_b)))) [INFO] [stdout] 427 | } else if let Ok((rest, query_b)) = or().parse(rest) { [INFO] [stdout] | ---------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 428 | Ok((rest, Or(Box::new(query_a), Box::new(query_b)))) [INFO] [stdout] 429 | } else if let Ok((rest, query_b)) = query().parse(rest) { [INFO] [stdout] | ------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:427:13 [INFO] [stdout] | [INFO] [stdout] 427 | } else if let Ok((rest, query_b)) = or().parse(rest) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:429:13 [INFO] [stdout] | [INFO] [stdout] 429 | } else if let Ok((rest, query_b)) = query().parse(rest) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/search.rs:431:13 [INFO] [stdout] | [INFO] [stdout] 431 | } 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] 425 ~ match and().parse(rest) { Ok((rest, query_b)) => { [INFO] [stdout] 426 | Ok((rest, And(Box::new(query_a), Box::new(query_b)))) [INFO] [stdout] 427 ~ } _ => { match or().parse(rest) { Ok((rest, query_b)) => { [INFO] [stdout] 428 | Ok((rest, Or(Box::new(query_a), Box::new(query_b)))) [INFO] [stdout] 429 ~ } _ => { match query().parse(rest) { Ok((rest, query_b)) => { [INFO] [stdout] 430 | Ok((rest, And(Box::new(query_a), Box::new(query_b)))) [INFO] [stdout] 431 ~ } _ => { [INFO] [stdout] 432 | Ok((rest, query_a)) [INFO] [stdout] 433 ~ }}}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/connections/std_net.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 50 | if let Some(sock) = happy.poll_once(timeout_left()?)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^--------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/connections/std_net.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 50 ~ match happy.poll_once(timeout_left()?)? { Some(sock) => { [INFO] [stdout] 51 | return Ok(sock); [INFO] [stdout] 52 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/connections/std_net.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | if let Some(sock) = happy.poll_once(timeout_left()?)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^--------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/connections/std_net.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 56 ~ match happy.poll_once(timeout_left()?)? { Some(sock) => { [INFO] [stdout] 57 | return Ok(sock); [INFO] [stdout] 58 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/connections/std_net.rs:178:24 [INFO] [stdout] | [INFO] [stdout] 178 | if let Some(tcp) = self.socket_into_blocking_tcp_stream(sock) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/connections/std_net.rs:180:21 [INFO] [stdout] | [INFO] [stdout] 180 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 178 ~ match self.socket_into_blocking_tcp_stream(sock) { Some(tcp) => { [INFO] [stdout] 179 | return Ok(Some(tcp)); [INFO] [stdout] 180 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/datetime.rs:223:15 [INFO] [stdout] | [INFO] [stdout] 223 | } else if let Some(cstring) = fmt [INFO] [stdout] | _______________^ - [INFO] [stdout] | |___________________________________| [INFO] [stdout] 224 | || .map(str::as_bytes) [INFO] [stdout] 225 | || .map(CString::new) [INFO] [stdout] 226 | || .and_then(|res| res.ok()) [INFO] [stdout] | ||_________________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_________________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/datetime.rs:229:5 [INFO] [stdout] | [INFO] [stdout] 229 | } 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] 223 ~ } else { match fmt [INFO] [stdout] 224 | .map(str::as_bytes) [INFO] [stdout] 225 | .map(CString::new) [INFO] [stdout] 226 | .and_then(|res| res.ok()) [INFO] [stdout] 227 ~ { Some(cstring) => { [INFO] [stdout] 228 | Cow::from(cstring) [INFO] [stdout] 229 ~ } _ => { [INFO] [stdout] 230 | unsafe { CStr::from_bytes_with_nul_unchecked(fmt::DEFAULT_FMT.as_bytes()).into() } [INFO] [stdout] 231 ~ }}}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:138:12 [INFO] [stdout] | [INFO] [stdout] 138 | if let Ok((next_input, first_item)) = parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:141:9 [INFO] [stdout] | [INFO] [stdout] 141 | } 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] 138 ~ match parser.parse(input) { Ok((next_input, first_item)) => { [INFO] [stdout] 139 | input = next_input; [INFO] [stdout] 140 | result.push(first_item); [INFO] [stdout] 141 ~ } _ => { [INFO] [stdout] 142 | return Err(input); [INFO] [stdout] 143 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:145:15 [INFO] [stdout] | [INFO] [stdout] 145 | while let Ok((next_input, next_item)) = parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:161:15 [INFO] [stdout] | [INFO] [stdout] 161 | while let Ok((next_input, next_item)) = parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 164 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:467:16 [INFO] [stdout] | [INFO] [stdout] 467 | if let Ok(res) = parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:469:13 [INFO] [stdout] | [INFO] [stdout] 469 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 467 ~ match parser.parse(input) { Ok(res) => { [INFO] [stdout] 468 | return Ok(res); [INFO] [stdout] 469 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:545:15 [INFO] [stdout] | [INFO] [stdout] 545 | while let Ok((next_input, next_item)) = parser.parse(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/parsec.rs:558:9 [INFO] [stdout] | [INFO] [stdout] 558 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:84:46 [INFO] [stdout] | [INFO] [stdout] 84 | fn iter_section(&self, section: &str) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/utils/xdg/mod.rs:84:37 [INFO] [stdout] | [INFO] [stdout] 84 | fn iter_section(&self, section: &str) -> impl Iterator { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 84 | fn iter_section(&self, section: &str) -> impl Iterator + use<'_> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:191:24 [INFO] [stdout] | [INFO] [stdout] 191 | if let Some(ret) = check_mimeapps_list(&pb, &xdg_vars, &query)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:193:21 [INFO] [stdout] | [INFO] [stdout] 193 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 191 ~ match check_mimeapps_list(&pb, &xdg_vars, &query)? { Some(ret) => { [INFO] [stdout] 192 | return Ok(ret); [INFO] [stdout] 193 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:199:16 [INFO] [stdout] | [INFO] [stdout] 199 | if let Some(ret) = check_mimeapps_list(&pb, &xdg_vars, &query)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:201:13 [INFO] [stdout] | [INFO] [stdout] 201 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 199 ~ match check_mimeapps_list(&pb, &xdg_vars, &query)? { Some(ret) => { [INFO] [stdout] 200 | return Ok(ret); [INFO] [stdout] 201 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:215:24 [INFO] [stdout] | [INFO] [stdout] 215 | if let Some(ret) = check_mimeapps_list(&pb, &xdg_vars, &query)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:217:21 [INFO] [stdout] | [INFO] [stdout] 217 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 215 ~ match check_mimeapps_list(&pb, &xdg_vars, &query)? { Some(ret) => { [INFO] [stdout] 216 | return Ok(ret); [INFO] [stdout] 217 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:226:16 [INFO] [stdout] | [INFO] [stdout] 226 | if let Some(ret) = check_mimeapps_list(&pb, &xdg_vars, &query)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^-------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:228:13 [INFO] [stdout] | [INFO] [stdout] 228 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 226 ~ match check_mimeapps_list(&pb, &xdg_vars, &query)? { Some(ret) => { [INFO] [stdout] 227 | return Ok(ret); [INFO] [stdout] 228 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:256:16 [INFO] [stdout] | [INFO] [stdout] 256 | if let Some(b) = desktop_file_to_command(v, xdg_vars)? { [INFO] [stdout] | ^^^^^^^^^^^^^^------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/utils/xdg/mod.rs:258:13 [INFO] [stdout] | [INFO] [stdout] 258 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 256 ~ match desktop_file_to_command(v, xdg_vars)? { Some(b) => { [INFO] [stdout] 257 | return Ok(Some(b)); [INFO] [stdout] 258 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:430:16 [INFO] [stdout] | [INFO] [stdout] 430 | if let Ok(mut unseen) = f.unseen.lock() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^--------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:434:13 [INFO] [stdout] | [INFO] [stdout] 434 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 430 ~ match f.unseen.lock() { Ok(mut unseen) => { [INFO] [stdout] 431 | let total = unseen.len(); [INFO] [stdout] 432 | unseen.clear(); [INFO] [stdout] 433 | unseen.set_not_yet_seen(total); [INFO] [stdout] 434 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:562:19 [INFO] [stdout] | [INFO] [stdout] 562 | while let Err(err) = if has_idle { [INFO] [stdout] | ___________________^ - [INFO] [stdout] | |__________________________________| [INFO] [stdout] 563 | || idle(ImapWatchKit { [INFO] [stdout] 564 | || conn: ImapConnection::new_connection( [INFO] [stdout] 565 | || &server_conf, [INFO] [stdout] ... || [INFO] [stdout] 583 | || .await [INFO] [stdout] 584 | || } { [INFO] [stdout] | ||_____________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_____________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:622:13 [INFO] [stdout] | [INFO] [stdout] 622 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:630:16 [INFO] [stdout] | [INFO] [stdout] 630 | if let Some(v) = self.uid_store.hash_index.lock().unwrap().get(&hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^-----------------------------------------^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:632:13 [INFO] [stdout] | [INFO] [stdout] 632 | } 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] 630 ~ match self.uid_store.hash_index.lock().unwrap().get(&hash) { Some(v) => { [INFO] [stdout] 631 | *v [INFO] [stdout] 632 ~ } _ => { [INFO] [stdout] 633 | return Err(Error::new( [INFO] [stdout] ... [INFO] [stdout] 636 | )); [INFO] [stdout] 637 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1576:16 [INFO] [stdout] | [INFO] [stdout] 1576 | if let Ok(mut mailbox) = protocol_parser::list_mailbox_result(l).map(|(_, v)| v) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 1600 | } else if let Ok(status) = protocol_parser::status_response(l).map(|(_, v)| v) { [INFO] [stdout] | --------------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1600:13 [INFO] [stdout] | [INFO] [stdout] 1600 | } else if let Ok(status) = protocol_parser::status_response(l).map(|(_, v)| v) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1612:13 [INFO] [stdout] | [INFO] [stdout] 1612 | } 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] 1576 ~ match protocol_parser::list_mailbox_result(l).map(|(_, v)| v) { Ok(mut mailbox) => { [INFO] [stdout] 1577 | if let Some(parent) = mailbox.parent { [INFO] [stdout] ... [INFO] [stdout] 1599 | } [INFO] [stdout] 1600 ~ } _ => { match protocol_parser::status_response(l).map(|(_, v)| v) { Ok(status) => { [INFO] [stdout] 1601 | if let Some(mailbox_hash) = status.mailbox { [INFO] [stdout] ... [INFO] [stdout] 1611 | } [INFO] [stdout] 1612 ~ } _ => { [INFO] [stdout] 1613 | imap_log!(trace, conn, "parse error for {:?}", l); [INFO] [stdout] 1614 ~ }}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1578:24 [INFO] [stdout] | [INFO] [stdout] 1578 | if let std::collections::hash_map::Entry::Vacant(e) = mailboxes.entry(parent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1586:21 [INFO] [stdout] | [INFO] [stdout] 1586 | } 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] 1578 ~ match mailboxes.entry(parent) { std::collections::hash_map::Entry::Vacant(e) => { [INFO] [stdout] 1579 | /* Insert dummy parent entry, populating only the children field. Later [INFO] [stdout] ... [INFO] [stdout] 1585 | }); [INFO] [stdout] 1586 ~ } _ => { [INFO] [stdout] 1587 | mailboxes [INFO] [stdout] 1588 | .entry(parent) [INFO] [stdout] 1589 | .and_modify(|e| e.children.push(mailbox.hash)); [INFO] [stdout] 1590 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1592:20 [INFO] [stdout] | [INFO] [stdout] 1592 | if let std::collections::hash_map::Entry::Vacant(e) = mailboxes.entry(mailbox.hash) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1595:17 [INFO] [stdout] | [INFO] [stdout] 1595 | } 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] 1592 ~ match mailboxes.entry(mailbox.hash) [INFO] [stdout] 1593 ~ { std::collections::hash_map::Entry::Vacant(e) => { [INFO] [stdout] 1594 | e.insert(mailbox); [INFO] [stdout] 1595 ~ } _ => { [INFO] [stdout] 1596 | let entry = mailboxes.entry(mailbox.hash).or_default(); [INFO] [stdout] 1597 | std::mem::swap(&mut entry.children, &mut mailbox.children); [INFO] [stdout] 1598 | *entry = mailbox; [INFO] [stdout] 1599 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1625:16 [INFO] [stdout] | [INFO] [stdout] 1625 | if let Ok(subscription) = protocol_parser::list_mailbox_result(l).map(|(_, v)| v) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1634:13 [INFO] [stdout] | [INFO] [stdout] 1634 | } 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] 1625 ~ match protocol_parser::list_mailbox_result(l).map(|(_, v)| v) { Ok(subscription) => { [INFO] [stdout] 1626 | if let Some(f) = mailboxes.get_mut(&subscription.hash()) { [INFO] [stdout] ... [INFO] [stdout] 1633 | } [INFO] [stdout] 1634 ~ } _ => { [INFO] [stdout] 1635 | imap_log!(trace, conn, "parse error for {:?}", l); [INFO] [stdout] 1636 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1626:20 [INFO] [stdout] | [INFO] [stdout] 1626 | if let Some(f) = mailboxes.get_mut(&subscription.hash()) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1633:17 [INFO] [stdout] | [INFO] [stdout] 1633 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1626 ~ match mailboxes.get_mut(&subscription.hash()) { Some(f) => { [INFO] [stdout] 1627 | if f.special_usage() == SpecialUsageMailbox::Normal [INFO] [stdout] ... [INFO] [stdout] 1632 | f.is_subscribed = true; [INFO] [stdout] 1633 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1792:24 [INFO] [stdout] | [INFO] [stdout] 1792 | if let Err(err) = cache_handle [INFO] [stdout] | ________________________^ - [INFO] [stdout] | |_______________________________________| [INFO] [stdout] 1793 | || .update_mailbox(state.mailbox_hash, &select_response) [INFO] [stdout] 1794 | || .chain_err_summary(|| { [INFO] [stdout] 1795 | || format!("Could not update cache for mailbox {}.", state.mailbox_hash) [INFO] [stdout] 1796 | || }) [INFO] [stdout] | ||__________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |__________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1799:21 [INFO] [stdout] | [INFO] [stdout] 1799 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1792 ~ match cache_handle [INFO] [stdout] 1793 | .update_mailbox(state.mailbox_hash, &select_response) [INFO] [stdout] ... [INFO] [stdout] 1796 | }) [INFO] [stdout] 1797 ~ { Err(err) => { [INFO] [stdout] 1798 | (state.uid_store.event_consumer)(state.uid_store.account_hash, err.into()); [INFO] [stdout] 1799 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1821:32 [INFO] [stdout] | [INFO] [stdout] 1821 | ... if let Err(err) = cache_handle.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/imap/mod.rs:1827:29 [INFO] [stdout] | [INFO] [stdout] 1827 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1821 ~ match cache_handle.reset() { Err(err) => { [INFO] [stdout] 1822 | log::error!( [INFO] [stdout] ... [INFO] [stdout] 1826 | ); [INFO] [stdout] 1827 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:1997:28 [INFO] [stdout] | [INFO] [stdout] 1997 | if let Err(err) = cache_handle [INFO] [stdout] | ____________________________^ - [INFO] [stdout] | |___________________________________________| [INFO] [stdout] 1998 | || .insert_envelopes(mailbox_hash, &v) [INFO] [stdout] 1999 | || .chain_err_summary(|| { [INFO] [stdout] 2000 | || format!( [INFO] [stdout] ... || [INFO] [stdout] 2003 | || ) [INFO] [stdout] 2004 | || }) [INFO] [stdout] | ||______________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |______________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/mod.rs:2010:25 [INFO] [stdout] | [INFO] [stdout] 2010 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1997 ~ match cache_handle [INFO] [stdout] 1998 | .insert_envelopes(mailbox_hash, &v) [INFO] [stdout] ... [INFO] [stdout] 2004 | }) [INFO] [stdout] 2005 ~ { Err(err) => { [INFO] [stdout] 2006 | (state.uid_store.event_consumer)( [INFO] [stdout] ... [INFO] [stdout] 2009 | ); [INFO] [stdout] 2010 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:479:25 [INFO] [stdout] | [INFO] [stdout] 479 | f.name = if let Some(pos) = f.imap_path.as_bytes().iter().rposition(|&c| c == separator) [INFO] [stdout] | ^^^^^^^^^^^^^^^^-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:483:13 [INFO] [stdout] | [INFO] [stdout] 483 | } 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] 479 ~ f.name = match f.imap_path.as_bytes().iter().rposition(|&c| c == separator) [INFO] [stdout] 480 ~ { Some(pos) => { [INFO] [stdout] 481 | f.parent = Some(MailboxHash::from_bytes(f.imap_path[..pos].as_bytes())); [INFO] [stdout] 482 | f.imap_path[pos + 1..].to_string() [INFO] [stdout] 483 ~ } _ => { [INFO] [stdout] 484 | f.imap_path.clone() [INFO] [stdout] 485 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:580:16 [INFO] [stdout] | [INFO] [stdout] 580 | if let Ok((rest, uid)) = [INFO] [stdout] | ________________^ [INFO] [stdout] 581 | | take_while::<_, &[u8], (&[u8], nom::error::ErrorKind)>(is_digit)(&input[i..]) [INFO] [stdout] | |_________________----------------------------------------------------------------____________^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:586:13 [INFO] [stdout] | [INFO] [stdout] 586 | } 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] 580 ~ match take_while::<_, &[u8], (&[u8], nom::error::ErrorKind)>(is_digit)(&input[i..]) [INFO] [stdout] 581 ~ { Ok((rest, uid)) => { [INFO] [stdout] 582 | i += input.len() - i - rest.len(); [INFO] [stdout] 583 | ret.uid = [INFO] [stdout] 584 | Some(UID::from_str(unsafe { std::str::from_utf8_unchecked(uid) }).unwrap()); [INFO] [stdout] 585 ~ } _ => { [INFO] [stdout] 586 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 593 | ))); [INFO] [stdout] 594 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:598:16 [INFO] [stdout] | [INFO] [stdout] 598 | if let Ok((rest, flags)) = flags(&input[i..]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:601:13 [INFO] [stdout] | [INFO] [stdout] 601 | } 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] 598 ~ match flags(&input[i..]) { Ok((rest, flags)) => { [INFO] [stdout] 599 | ret.flags = Some(flags); [INFO] [stdout] 600 | i += (input.len() - i - rest.len()) + 1; [INFO] [stdout] 601 ~ } _ => { [INFO] [stdout] 602 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 612 | ))); [INFO] [stdout] 613 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:616:16 [INFO] [stdout] | [INFO] [stdout] 616 | if let Ok((rest, modseq)) = [INFO] [stdout] | ________________^ [INFO] [stdout] 617 | | take_while::<_, &[u8], (&[u8], nom::error::ErrorKind)>(is_digit)(&input[i..]) [INFO] [stdout] | |_________________----------------------------------------------------------------____________^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:624:13 [INFO] [stdout] | [INFO] [stdout] 624 | } 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] 616 ~ match take_while::<_, &[u8], (&[u8], nom::error::ErrorKind)>(is_digit)(&input[i..]) [INFO] [stdout] 617 ~ { Ok((rest, modseq)) => { [INFO] [stdout] 618 | i += (input.len() - i - rest.len()) + 1; [INFO] [stdout] ... [INFO] [stdout] 622 | .map(ModSequence); [INFO] [stdout] 623 ~ } _ => { [INFO] [stdout] 624 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 631 | ))); [INFO] [stdout] 632 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:637:16 [INFO] [stdout] | [INFO] [stdout] 637 | if let Ok((rest, body)) = [INFO] [stdout] | _________________^ [INFO] [stdout] 638 | |/ length_data::<_, _, (&[u8], nom::error::ErrorKind), _>(delimited( [INFO] [stdout] 639 | || tag("{"), [INFO] [stdout] 640 | || map_res(digit1, |s| { [INFO] [stdout] 641 | || usize::from_str(unsafe { std::str::from_utf8_unchecked(s) }) [INFO] [stdout] 642 | || }), [INFO] [stdout] 643 | || tag("}\r\n"), [INFO] [stdout] 644 | || ))(&input[i..]) [INFO] [stdout] | ||__________________-____________^ [INFO] [stdout] | |__________________| [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:648:13 [INFO] [stdout] | [INFO] [stdout] 648 | } 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] 637 ~ match length_data::<_, _, (&[u8], nom::error::ErrorKind), _>(delimited( [INFO] [stdout] 638 | tag("{"), [INFO] [stdout] ... [INFO] [stdout] 643 | ))(&input[i..]) [INFO] [stdout] 644 ~ { Ok((rest, body)) => { [INFO] [stdout] 645 | ret.body = Some(body); [INFO] [stdout] 646 | i += input.len() - i - rest.len(); [INFO] [stdout] 647 ~ } _ => { [INFO] [stdout] 648 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 659 | ))); [INFO] [stdout] 660 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:664:16 [INFO] [stdout] | [INFO] [stdout] 664 | if let Ok((rest, envelope)) = envelope(&input[i..]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:667:13 [INFO] [stdout] | [INFO] [stdout] 667 | } 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] 664 ~ match envelope(&input[i..]) { Ok((rest, envelope)) => { [INFO] [stdout] 665 | ret.envelope = Some(envelope); [INFO] [stdout] 666 | i += input.len() - i - rest.len(); [INFO] [stdout] 667 ~ } _ => { [INFO] [stdout] 668 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 679 | ))); [INFO] [stdout] 680 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:689:16 [INFO] [stdout] | [INFO] [stdout] 689 | if let Ok((rest, mut references)) = astring_token(&input[i..]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:697:13 [INFO] [stdout] | [INFO] [stdout] 697 | } 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] 689 ~ match astring_token(&input[i..]) { Ok((rest, mut references)) => { [INFO] [stdout] 690 | if !references.trim().is_empty() { [INFO] [stdout] ... [INFO] [stdout] 696 | i += input.len() - i - rest.len(); [INFO] [stdout] 697 ~ } _ => { [INFO] [stdout] 698 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 709 | ))); [INFO] [stdout] 710 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:713:16 [INFO] [stdout] | [INFO] [stdout] 713 | if let Ok((rest, mut references)) = astring_token(&input[i..]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:721:13 [INFO] [stdout] | [INFO] [stdout] 721 | } 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] 713 ~ match astring_token(&input[i..]) { Ok((rest, mut references)) => { [INFO] [stdout] 714 | if !references.trim().is_empty() { [INFO] [stdout] ... [INFO] [stdout] 720 | i += input.len() - i - rest.len(); [INFO] [stdout] 721 ~ } _ => { [INFO] [stdout] 722 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 733 | ))); [INFO] [stdout] 734 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:790:12 [INFO] [stdout] | [INFO] [stdout] 790 | if let Ok(ImapResponse::Ok(_)) = ImapResponse::try_from(input) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:791:9 [INFO] [stdout] | [INFO] [stdout] 791 | } 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] 790 ~ match ImapResponse::try_from(input) { Ok(ImapResponse::Ok(_)) => { [INFO] [stdout] 791 ~ } _ => { [INFO] [stdout] 792 | return Err(Error::new(format!( [INFO] [stdout] ... [INFO] [stdout] 795 | ))); [INFO] [stdout] 796 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:1197:20 [INFO] [stdout] | [INFO] [stdout] 1197 | if let Ok(d) = [INFO] [stdout] | ____________________^ [INFO] [stdout] 1198 | | crate::email::parser::dates::rfc5322_date(env.date_as_str().as_bytes()) [INFO] [stdout] | |_____________________----------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:1201:17 [INFO] [stdout] | [INFO] [stdout] 1201 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1197 ~ match crate::email::parser::dates::rfc5322_date(env.date_as_str().as_bytes()) [INFO] [stdout] 1198 ~ { Ok(d) => { [INFO] [stdout] 1199 | env.set_datetime(d); [INFO] [stdout] 1200 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:1224:20 [INFO] [stdout] | [INFO] [stdout] 1224 | if let Some(in_reply_to) = env.in_reply_to().cloned() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^---^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/protocol_parser.rs:1226:17 [INFO] [stdout] | [INFO] [stdout] 1226 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1224 ~ match env.in_reply_to().cloned() { Some(in_reply_to) => { [INFO] [stdout] 1225 | env.push_references(in_reply_to); [INFO] [stdout] 1226 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:770:20 [INFO] [stdout] | [INFO] [stdout] 770 | if let Err(_err) = try_await(async { [INFO] [stdout] | ____________________^ - [INFO] [stdout] | |____________________________________| [INFO] [stdout] 771 | || self.send_command(CommandBody::Noop).await?; [INFO] [stdout] 772 | || self.read_response(&mut ret, RequiredResponses::empty()) [INFO] [stdout] 773 | || .await [INFO] [stdout] 774 | || }) [INFO] [stdout] 775 | || .await [INFO] [stdout] | ||______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:783:17 [INFO] [stdout] | [INFO] [stdout] 783 | } 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] 770 ~ match try_await(async { [INFO] [stdout] 771 | self.send_command(CommandBody::Noop).await?; [INFO] [stdout] ... [INFO] [stdout] 775 | .await [INFO] [stdout] 776 ~ { Err(_err) => { [INFO] [stdout] 777 | imap_log!( [INFO] [stdout] ... [INFO] [stdout] 782 | ); [INFO] [stdout] 783 ~ } _ => { [INFO] [stdout] 784 | imap_log!( [INFO] [stdout] ... [INFO] [stdout] 790 | return Ok(()); [INFO] [stdout] 791 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:796:16 [INFO] [stdout] | [INFO] [stdout] 796 | if let Err(err) = new_stream.as_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/imap/connection.rs:798:13 [INFO] [stdout] | [INFO] [stdout] 798 | } 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] 796 ~ match new_stream.as_ref() { Err(err) => { [INFO] [stdout] 797 | self.uid_store.is_online.lock().unwrap().1 = Err(err.clone()); [INFO] [stdout] 798 ~ } _ => { [INFO] [stdout] 799 | *self.uid_store.is_online.lock().unwrap() = (SystemTime::now(), Ok(())); [INFO] [stdout] 800 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:1010:12 [INFO] [stdout] | [INFO] [stdout] 1010 | if let Err(err) = [INFO] [stdout] | ____________^ [INFO] [stdout] 1011 | | try_await(async { self.stream.as_mut()?.send_command(command).await }).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/imap/connection.rs:1018:9 [INFO] [stdout] | [INFO] [stdout] 1018 | } 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] 1010 ~ match try_await(async { self.stream.as_mut()?.send_command(command).await }).await [INFO] [stdout] 1011 ~ { Err(err) => { [INFO] [stdout] 1012 | self.stream = Err(err.clone()); [INFO] [stdout] ... [INFO] [stdout] 1016 | Err(err) [INFO] [stdout] 1017 ~ } _ => { [INFO] [stdout] 1018 | *self.uid_store.is_online.lock().unwrap() = (SystemTime::now(), Ok(())); [INFO] [stdout] 1019 | Ok(()) [INFO] [stdout] 1020 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:1025:12 [INFO] [stdout] | [INFO] [stdout] 1025 | if let Err(err) = [INFO] [stdout] | ____________^ [INFO] [stdout] 1026 | | try_await(async { self.stream.as_mut()?.send_command_raw(command).await }).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/imap/connection.rs:1033:9 [INFO] [stdout] | [INFO] [stdout] 1033 | } 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] 1025 ~ match try_await(async { self.stream.as_mut()?.send_command_raw(command).await }).await [INFO] [stdout] 1026 ~ { Err(err) => { [INFO] [stdout] 1027 | self.stream = Err(err.clone()); [INFO] [stdout] ... [INFO] [stdout] 1031 | Err(err) [INFO] [stdout] 1032 ~ } _ => { [INFO] [stdout] 1033 | *self.uid_store.is_online.lock().unwrap() = (SystemTime::now(), Ok(())); [INFO] [stdout] 1034 | Ok(()) [INFO] [stdout] 1035 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:1040:12 [INFO] [stdout] | [INFO] [stdout] 1040 | if let Err(err) = try_await(async { self.stream.as_mut()?.send_literal(data).await }).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/imap/connection.rs:1047:9 [INFO] [stdout] | [INFO] [stdout] 1047 | } 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] 1040 ~ match try_await(async { self.stream.as_mut()?.send_literal(data).await }).await [INFO] [stdout] 1041 ~ { Err(err) => { [INFO] [stdout] 1042 | self.stream = Err(err.clone()); [INFO] [stdout] ... [INFO] [stdout] 1046 | Err(err) [INFO] [stdout] 1047 ~ } _ => { [INFO] [stdout] 1048 | Ok(()) [INFO] [stdout] 1049 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:1053:12 [INFO] [stdout] | [INFO] [stdout] 1053 | if let Err(err) = try_await(async { self.stream.as_mut()?.send_raw(raw).await }).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/imap/connection.rs:1059:9 [INFO] [stdout] | [INFO] [stdout] 1059 | } 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] 1053 ~ match try_await(async { self.stream.as_mut()?.send_raw(raw).await }).await { Err(err) => { [INFO] [stdout] 1054 | self.stream = Err(err.clone()); [INFO] [stdout] ... [INFO] [stdout] 1058 | Err(err) [INFO] [stdout] 1059 ~ } _ => { [INFO] [stdout] 1060 | Ok(()) [INFO] [stdout] 1061 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:1105:20 [INFO] [stdout] | [INFO] [stdout] 1105 | if let Err(err) = cache_handle.mailbox_state(mailbox_hash).and_then(|r| { [INFO] [stdout] | ____________________^ - [INFO] [stdout] | |___________________________________| [INFO] [stdout] 1106 | || if r.is_none() { [INFO] [stdout] 1107 | || cache_handle.clear(mailbox_hash, &select_response) [INFO] [stdout] 1108 | || } else { [INFO] [stdout] 1109 | || Ok(()) [INFO] [stdout] 1110 | || } [INFO] [stdout] 1111 | || }) { [INFO] [stdout] | ||__________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |__________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/connection.rs:1116:17 [INFO] [stdout] | [INFO] [stdout] 1116 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1105 ~ match cache_handle.mailbox_state(mailbox_hash).and_then(|r| { [INFO] [stdout] 1106 | if r.is_none() { [INFO] [stdout] ... [INFO] [stdout] 1110 | } [INFO] [stdout] 1111 ~ }) { Err(err) => { [INFO] [stdout] 1112 | (self.uid_store.event_consumer)( [INFO] [stdout] ... [INFO] [stdout] 1115 | ); [INFO] [stdout] 1116 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 91 | if let Some(v) = uidvalidities.get(&mailbox_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | } 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] 91 ~ match uidvalidities.get(&mailbox_hash) { Some(v) => { [INFO] [stdout] 92 | if *v != select_response.uidvalidity { [INFO] [stdout] ... [INFO] [stdout] 103 | } [INFO] [stdout] 104 ~ } _ => { [INFO] [stdout] 105 | uidvalidities.insert(mailbox_hash, select_response.uidvalidity); [INFO] [stdout] 106 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:205:8 [INFO] [stdout] | [INFO] [stdout] 205 | if let Some(new_envelopes) = conn.resync(mailbox_hash).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/imap/watch.rs:213:5 [INFO] [stdout] | [INFO] [stdout] 213 | } 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] 205 ~ match conn.resync(mailbox_hash).await? { Some(new_envelopes) => { [INFO] [stdout] 206 | for env in new_envelopes { [INFO] [stdout] ... [INFO] [stdout] 212 | } [INFO] [stdout] 213 ~ } _ => { [INFO] [stdout] 214 | let cache_handle = uid_store.cache_handle(); [INFO] [stdout] ... [INFO] [stdout] 432 | } [INFO] [stdout] 433 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:223:16 [INFO] [stdout] | [INFO] [stdout] 223 | if let Some(v) = uidvalidities.get(&mailbox_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:242:13 [INFO] [stdout] | [INFO] [stdout] 242 | } 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] 223 ~ match uidvalidities.get(&mailbox_hash) { Some(v) => { [INFO] [stdout] 224 | if *v != select_response.uidvalidity { [INFO] [stdout] ... [INFO] [stdout] 241 | } [INFO] [stdout] 242 ~ } _ => { [INFO] [stdout] 243 | uidvalidities.insert(mailbox_hash, select_response.uidvalidity); [INFO] [stdout] 244 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:278:24 [INFO] [stdout] | [INFO] [stdout] 278 | if let Ok(status) = protocol_parser::status_response(l).map(|(_, v)| v) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^--------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:294:21 [INFO] [stdout] | [INFO] [stdout] 294 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 278 ~ match protocol_parser::status_response(l).map(|(_, v)| v) { Ok(status) => { [INFO] [stdout] 279 | if Some(mailbox_hash) == status.mailbox { [INFO] [stdout] ... [INFO] [stdout] 293 | } [INFO] [stdout] 294 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:281:36 [INFO] [stdout] | [INFO] [stdout] 281 | ... if let Ok(mut exists_lck) = mailbox.exists.lock() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:284:33 [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] 281 ~ match mailbox.exists.lock() { Ok(mut exists_lck) => { [INFO] [stdout] 282 | exists_lck.clear(); [INFO] [stdout] 283 | exists_lck.set_not_yet_seen(total); [INFO] [stdout] 284 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:287:36 [INFO] [stdout] | [INFO] [stdout] 287 | ... if let Ok(mut unseen_lck) = mailbox.unseen.lock() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:290:33 [INFO] [stdout] | [INFO] [stdout] 290 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 287 ~ match mailbox.unseen.lock() { Ok(mut unseen_lck) => { [INFO] [stdout] 288 | unseen_lck.clear(); [INFO] [stdout] 289 | unseen_lck.set_not_yet_seen(total); [INFO] [stdout] 290 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/watch.rs:306:20 [INFO] [stdout] | [INFO] [stdout] 306 | if let Ok(mut unseen_lck) = mailbox.unseen.lock() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/watch.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] 306 ~ match mailbox.unseen.lock() { Ok(mut unseen_lck) => { [INFO] [stdout] 307 | unseen_lck.clear(); [INFO] [stdout] 308 | unseen_lck.set_not_yet_seen(unseen_count); [INFO] [stdout] 309 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/cache/sync.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 40 | if let Some(mut cache_handle) = self.uid_store.cache_handle()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/cache/sync.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | } 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] 40 ~ match self.uid_store.cache_handle()? { Some(mut cache_handle) => { [INFO] [stdout] 41 | if cache_handle.mailbox_state(mailbox_hash)?.is_none() { [INFO] [stdout] ... [INFO] [stdout] 53 | } [INFO] [stdout] 54 ~ } _ => { [INFO] [stdout] 55 | Ok(None) [INFO] [stdout] 56 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | / try_fail!( [INFO] [stdout] 229 | | mailbox_hash, [INFO] [stdout] 230 | | self.send_command(CommandBody::fetch(n, common_attributes(), false)?).await [INFO] [stdout] | | --------------------------------------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 231 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] 232 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 228 | / try_fail!( [INFO] [stdout] 229 | | mailbox_hash, [INFO] [stdout] 230 | | self.send_command(CommandBody::fetch(n, common_attributes(), false)?).await [INFO] [stdout] 231 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] 232 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | / try_fail!( [INFO] [stdout] 229 | | mailbox_hash, [INFO] [stdout] 230 | | self.send_command(CommandBody::fetch(n, common_attributes(), false)?).await [INFO] [stdout] 231 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] | | -------------------------------------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 232 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 228 | / try_fail!( [INFO] [stdout] 229 | | mailbox_hash, [INFO] [stdout] 230 | | self.send_command(CommandBody::fetch(n, common_attributes(), false)?).await [INFO] [stdout] 231 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] 232 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:311:24 [INFO] [stdout] | [INFO] [stdout] 311 | if let Err(err) = cache_handle [INFO] [stdout] | ________________________^ - [INFO] [stdout] | |_______________________________________| [INFO] [stdout] 312 | || .insert_envelopes(mailbox_hash, &v) [INFO] [stdout] 313 | || .chain_err_summary(|| { [INFO] [stdout] 314 | || format!( [INFO] [stdout] ... || [INFO] [stdout] 317 | || ) [INFO] [stdout] 318 | || }) [INFO] [stdout] | ||__________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |__________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:321:21 [INFO] [stdout] | [INFO] [stdout] 321 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 311 ~ match cache_handle [INFO] [stdout] 312 | .insert_envelopes(mailbox_hash, &v) [INFO] [stdout] ... [INFO] [stdout] 318 | }) [INFO] [stdout] 319 ~ { Err(err) => { [INFO] [stdout] 320 | imap_log!(info, self, "{}", err); [INFO] [stdout] 321 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:324:24 [INFO] [stdout] | [INFO] [stdout] 324 | if let FetchResponse { [INFO] [stdout] | ________________________^ [INFO] [stdout] 325 | | envelope: Some(envelope), [INFO] [stdout] 326 | | .. [INFO] [stdout] 327 | | } = response [INFO] [stdout] | |_________________________-------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:334:21 [INFO] [stdout] | [INFO] [stdout] 334 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 324 ~ match response [INFO] [stdout] 325 ~ { FetchResponse { [INFO] [stdout] 326 + envelope: Some(envelope), [INFO] [stdout] 327 + .. [INFO] [stdout] 328 ~ } => { [INFO] [stdout] 329 | self.add_refresh_event(RefreshEvent { [INFO] [stdout] ... [INFO] [stdout] 333 | }); [INFO] [stdout] 334 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 338 | / try_fail!( [INFO] [stdout] 339 | | mailbox_hash, [INFO] [stdout] 340 | | self.send_command(CommandBody::search(None, SearchKey::Recent.into(), true)).await [INFO] [stdout] | | ---------------------------------------------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 341 | | self.read_response(&mut response, RequiredResponses::SEARCH).await [INFO] [stdout] 342 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 338 | / try_fail!( [INFO] [stdout] 339 | | mailbox_hash, [INFO] [stdout] 340 | | self.send_command(CommandBody::search(None, SearchKey::Recent.into(), true)).await [INFO] [stdout] 341 | | self.read_response(&mut response, RequiredResponses::SEARCH).await [INFO] [stdout] 342 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 338 | / try_fail!( [INFO] [stdout] 339 | | mailbox_hash, [INFO] [stdout] 340 | | self.send_command(CommandBody::search(None, SearchKey::Recent.into(), true)).await [INFO] [stdout] 341 | | self.read_response(&mut response, RequiredResponses::SEARCH).await [INFO] [stdout] | | ------------------------------------------------------------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 342 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 338 | / try_fail!( [INFO] [stdout] 339 | | mailbox_hash, [INFO] [stdout] 340 | | self.send_command(CommandBody::search(None, SearchKey::Recent.into(), true)).await [INFO] [stdout] 341 | | self.read_response(&mut response, RequiredResponses::SEARCH).await [INFO] [stdout] 342 | | ); [INFO] [stdout] | |_________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 365 | / try_fail!( [INFO] [stdout] 366 | | mailbox_hash, [INFO] [stdout] 367 | | self.send_command_raw(command.as_bytes()).await [INFO] [stdout] | | ----------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 368 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] 369 | | ); [INFO] [stdout] | |_________________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 365 | / try_fail!( [INFO] [stdout] 366 | | mailbox_hash, [INFO] [stdout] 367 | | self.send_command_raw(command.as_bytes()).await [INFO] [stdout] 368 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] 369 | | ); [INFO] [stdout] | |_________________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 365 | / try_fail!( [INFO] [stdout] 366 | | mailbox_hash, [INFO] [stdout] 367 | | self.send_command_raw(command.as_bytes()).await [INFO] [stdout] 368 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] | | -------------------------------------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 369 | | ); [INFO] [stdout] | |_________________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 365 | / try_fail!( [INFO] [stdout] 366 | | mailbox_hash, [INFO] [stdout] 367 | | self.send_command_raw(command.as_bytes()).await [INFO] [stdout] 368 | | self.read_response(&mut response, RequiredResponses::FETCH_REQUIRED).await [INFO] [stdout] 369 | | ); [INFO] [stdout] | |_________________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:415:32 [INFO] [stdout] | [INFO] [stdout] 415 | ... if let Err(err) = cache_handle [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |_________________________________________| [INFO] [stdout] 416 | || ... .insert_envelopes(mailbox_hash, &v) [INFO] [stdout] 417 | || ... .chain_err_summary(|| { [INFO] [stdout] 418 | || ... format!( [INFO] [stdout] ... || [INFO] [stdout] 421 | || ... ) [INFO] [stdout] 422 | || ... }) [INFO] [stdout] | ||____________________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |____________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:425:29 [INFO] [stdout] | [INFO] [stdout] 425 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 415 ~ match cache_handle [INFO] [stdout] 416 | .insert_envelopes(mailbox_hash, &v) [INFO] [stdout] ... [INFO] [stdout] 422 | }) [INFO] [stdout] 423 ~ { Err(err) => { [INFO] [stdout] 424 | log::info!("{err}"); [INFO] [stdout] 425 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:428:32 [INFO] [stdout] | [INFO] [stdout] 428 | ... if let FetchResponse { [INFO] [stdout] | __________________________^ [INFO] [stdout] 429 | | ... envelope: Some(envelope), [INFO] [stdout] 430 | | ... uid: Some(uid), [INFO] [stdout] 431 | | ... .. [INFO] [stdout] 432 | | ... } = response [INFO] [stdout] | |___________________________-------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:470:29 [INFO] [stdout] | [INFO] [stdout] 470 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 428 ~ match response [INFO] [stdout] 429 ~ { FetchResponse { [INFO] [stdout] 430 + envelope: Some(envelope), [INFO] [stdout] 431 + uid: Some(uid), [INFO] [stdout] 432 + .. [INFO] [stdout] 433 ~ } => { [INFO] [stdout] 434 | if !self [INFO] [stdout] ... [INFO] [stdout] 469 | }); [INFO] [stdout] 470 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 496 | / try_fail!( [INFO] [stdout] 497 | | mailbox_hash, [INFO] [stdout] 498 | |/ self.send_command(CommandBody::search( [INFO] [stdout] 499 | || None, [INFO] [stdout] 500 | || SearchKey::SequenceSet(SequenceSet::try_from(msg_seq)?).into(), [INFO] [stdout] 501 | || true [INFO] [stdout] 502 | || )) [INFO] [stdout] 503 | || .await, [INFO] [stdout] | ||__________________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 504 | | self.read_response(&mut response, RequiredResponses::SEARCH) [INFO] [stdout] 505 | | .await, [INFO] [stdout] 506 | | ); [INFO] [stdout] | |__________________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 496 | / try_fail!( [INFO] [stdout] 497 | | mailbox_hash, [INFO] [stdout] 498 | | self.send_command(CommandBody::search( [INFO] [stdout] 499 | | None, [INFO] [stdout] ... | [INFO] [stdout] 505 | | .await, [INFO] [stdout] 506 | | ); [INFO] [stdout] | |_________________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:47:22 [INFO] [stdout] | [INFO] [stdout] 47 | $(if let Err(err) = $result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 496 | / try_fail!( [INFO] [stdout] 497 | | mailbox_hash, [INFO] [stdout] 498 | | self.send_command(CommandBody::search( [INFO] [stdout] 499 | | None, [INFO] [stdout] ... | [INFO] [stdout] 504 | |/ self.read_response(&mut response, RequiredResponses::SEARCH) [INFO] [stdout] 505 | || .await, [INFO] [stdout] | ||______________________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 506 | | ); [INFO] [stdout] | |__________________________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/imap/untagged.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { Ok(()) }?;)+ [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 496 | / try_fail!( [INFO] [stdout] 497 | | mailbox_hash, [INFO] [stdout] 498 | | self.send_command(CommandBody::search( [INFO] [stdout] 499 | | None, [INFO] [stdout] ... | [INFO] [stdout] 505 | | .await, [INFO] [stdout] 506 | | ); [INFO] [stdout] | |_________________________- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `try_fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/mod.rs:164:28 [INFO] [stdout] | [INFO] [stdout] 164 | let read_only = if let Ok(metadata) = std::fs::metadata(&pathbuf) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/mod.rs:166:9 [INFO] [stdout] | [INFO] [stdout] 166 | } 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] 164 ~ let read_only = match std::fs::metadata(&pathbuf) { Ok(metadata) => { [INFO] [stdout] 165 | metadata.permissions().readonly() [INFO] [stdout] 166 ~ } _ => { [INFO] [stdout] 167 | true [INFO] [stdout] 168 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:212:24 [INFO] [stdout] | [INFO] [stdout] 212 | if let Ok(mut env) = Envelope::from_bytes(buf.as_slice(), Some(file.flags())) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:226:21 [INFO] [stdout] | [INFO] [stdout] 226 | } 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] 212 ~ match Envelope::from_bytes(buf.as_slice(), Some(file.flags())) { Ok(mut env) => { [INFO] [stdout] 213 | env.set_hash(hash); [INFO] [stdout] ... [INFO] [stdout] 225 | ); [INFO] [stdout] 226 ~ } _ => { [INFO] [stdout] 227 | log::trace!( [INFO] [stdout] ... [INFO] [stdout] 232 | continue; [INFO] [stdout] 233 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:620:32 [INFO] [stdout] | [INFO] [stdout] 620 | ... if let Ok(mut f) = MaildirMailbox::new( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |__________________________________________| [INFO] [stdout] 621 | || ... path.to_str().unwrap().to_string(), [INFO] [stdout] 622 | || ... path.file_name().unwrap().to_str().unwrap().to_string(), [INFO] [stdout] 623 | || ... None, [INFO] [stdout] ... || [INFO] [stdout] 626 | || ... settings, [INFO] [stdout] 627 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:636:29 [INFO] [stdout] | [INFO] [stdout] 636 | ... } 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] 620 ~ match MaildirMailbox::new( [INFO] [stdout] 621 | path.to_str().unwrap().to_string(), [INFO] [stdout] ... [INFO] [stdout] 626 | settings, [INFO] [stdout] 627 ~ ) { Ok(mut f) => { [INFO] [stdout] 628 | f.children = recurse_mailboxes(mailboxes, settings, &path)?; [INFO] [stdout] ... [INFO] [stdout] 635 | mailboxes.insert(f.hash, f); [INFO] [stdout] 636 ~ } _ => { [INFO] [stdout] 637 | /* If directory is invalid (i.e. has no {cur,new,tmp} [INFO] [stdout] ... [INFO] [stdout] 660 | } [INFO] [stdout] 661 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:644:40 [INFO] [stdout] | [INFO] [stdout] 644 | ... if let Ok(f) = MaildirMailbox::new( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |______________________________________| [INFO] [stdout] 645 | || ... path.to_str().unwrap().to_string(), [INFO] [stdout] 646 | || ... path.file_name().unwrap().to_str().unwrap().to_string(), [INFO] [stdout] 647 | || ... None, [INFO] [stdout] ... || [INFO] [stdout] 650 | || ... settings, [INFO] [stdout] 651 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:659:37 [INFO] [stdout] | [INFO] [stdout] 659 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 644 ~ match MaildirMailbox::new( [INFO] [stdout] 645 | path.to_str().unwrap().to_string(), [INFO] [stdout] ... [INFO] [stdout] 650 | settings, [INFO] [stdout] 651 ~ ) { Ok(f) => { [INFO] [stdout] 652 | for c in &f.children { [INFO] [stdout] ... [INFO] [stdout] 658 | mailboxes.insert(f.hash, f); [INFO] [stdout] 659 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:702:20 [INFO] [stdout] | [INFO] [stdout] 702 | if let Some(f) = mailboxes.get_mut(c) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:704:17 [INFO] [stdout] | [INFO] [stdout] 704 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 702 ~ match mailboxes.get_mut(c) { Some(f) => { [INFO] [stdout] 703 | f.parent = None; [INFO] [stdout] 704 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:710:20 [INFO] [stdout] | [INFO] [stdout] 710 | if let Some(f) = mailboxes.get_mut(c) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:712:17 [INFO] [stdout] | [INFO] [stdout] 712 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 710 ~ match mailboxes.get_mut(c) { Some(f) => { [INFO] [stdout] 711 | f.parent = Some(root_hash); [INFO] [stdout] 712 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:714:16 [INFO] [stdout] | [INFO] [stdout] 714 | if let Some(f) = mailboxes.get_mut(&root_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/backend.rs:716:13 [INFO] [stdout] | [INFO] [stdout] 716 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 714 ~ match mailboxes.get_mut(&root_hash) { Some(f) => { [INFO] [stdout] 715 | f.children = children; [INFO] [stdout] 716 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:88:32 [INFO] [stdout] | [INFO] [stdout] 88 | ... if let Ok(env) = add_path_to_index( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |________________________________________| [INFO] [stdout] 89 | || ... &hash_indexes, [INFO] [stdout] 90 | || ... mailbox_hash, [INFO] [stdout] 91 | || ... pathbuf.as_path(), [INFO] [stdout] 92 | || ... &mut buf, [INFO] [stdout] 93 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:116:29 [INFO] [stdout] | [INFO] [stdout] 116 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 88 ~ match add_path_to_index( [INFO] [stdout] 89 | &hash_indexes, [INFO] [stdout] ... [INFO] [stdout] 92 | &mut buf, [INFO] [stdout] 93 ~ ) { Ok(env) => { [INFO] [stdout] 94 | mailbox_index [INFO] [stdout] ... [INFO] [stdout] 115 | ); [INFO] [stdout] 116 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:168:36 [INFO] [stdout] | [INFO] [stdout] 168 | ... if let Ok(mut env) = [INFO] [stdout] | __________________________^ [INFO] [stdout] 169 | | ... Envelope::from_bytes(buf.as_slice(), Some(pathbuf.flags())) [INFO] [stdout] | |___________________________----------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:181:33 [INFO] [stdout] | [INFO] [stdout] 181 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 168 ~ match Envelope::from_bytes(buf.as_slice(), Some(pathbuf.flags())) [INFO] [stdout] 169 ~ { Ok(mut env) => { [INFO] [stdout] 170 | env.set_hash(new_hash); [INFO] [stdout] ... [INFO] [stdout] 179 | ); [INFO] [stdout] 180 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:281:36 [INFO] [stdout] | [INFO] [stdout] 281 | ... if let Ok(env) = add_path_to_index( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |________________________________________| [INFO] [stdout] 282 | || ... &hash_indexes, [INFO] [stdout] 283 | || ... dest_mailbox, [INFO] [stdout] 284 | || ... dest.as_path(), [INFO] [stdout] 285 | || ... &mut buf, [INFO] [stdout] 286 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:309:33 [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] 281 ~ match add_path_to_index( [INFO] [stdout] 282 | &hash_indexes, [INFO] [stdout] ... [INFO] [stdout] 285 | &mut buf, [INFO] [stdout] 286 ~ ) { Ok(env) => { [INFO] [stdout] 287 | mailbox_index [INFO] [stdout] ... [INFO] [stdout] 308 | ); [INFO] [stdout] 309 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:365:32 [INFO] [stdout] | [INFO] [stdout] 365 | ... if let Ok(env) = add_path_to_index( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |________________________________________| [INFO] [stdout] 366 | || ... &hash_indexes, [INFO] [stdout] 367 | || ... dest_mailbox.unwrap_or(mailbox_hash), [INFO] [stdout] 368 | || ... dest.as_path(), [INFO] [stdout] 369 | || ... &mut buf, [INFO] [stdout] 370 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:400:29 [INFO] [stdout] | [INFO] [stdout] 400 | ... } 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] 365 ~ match add_path_to_index( [INFO] [stdout] 366 | &hash_indexes, [INFO] [stdout] ... [INFO] [stdout] 369 | &mut buf, [INFO] [stdout] 370 ~ ) { Ok(env) => { [INFO] [stdout] 371 | mailbox_index [INFO] [stdout] ... [INFO] [stdout] 399 | continue; [INFO] [stdout] 400 ~ } _ => { [INFO] [stdout] 401 | log::trace!("not valid email"); [INFO] [stdout] 402 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:405:32 [INFO] [stdout] | [INFO] [stdout] 405 | ... if let Ok(env) = add_path_to_index( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |________________________________________| [INFO] [stdout] 406 | || ... &hash_indexes, [INFO] [stdout] 407 | || ... dest_mailbox, [INFO] [stdout] 408 | || ... dest.as_path(), [INFO] [stdout] 409 | || ... &mut buf, [INFO] [stdout] 410 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/maildir/watch.rs:433:29 [INFO] [stdout] | [INFO] [stdout] 433 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 405 ~ match add_path_to_index( [INFO] [stdout] 406 | &hash_indexes, [INFO] [stdout] ... [INFO] [stdout] 409 | &mut buf, [INFO] [stdout] 410 ~ ) { Ok(env) => { [INFO] [stdout] 411 | mailbox_index [INFO] [stdout] ... [INFO] [stdout] 432 | ); [INFO] [stdout] 433 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:622:38 [INFO] [stdout] | [INFO] [stdout] 622 | let (_input, _) = if let Ok(s) = tag::<_, &[u8], (&[u8], nom::error::ErrorKind)>( [INFO] [stdout] | ______________________________________^ - [INFO] [stdout] | |__________________________________________________| [INFO] [stdout] 623 | || "Content-Length:", [INFO] [stdout] 624 | || )(&input[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/mbox/mod.rs:627:17 [INFO] [stdout] | [INFO] [stdout] 627 | } 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] 622 ~ let (_input, _) = match tag::<_, &[u8], (&[u8], nom::error::ErrorKind)>( [INFO] [stdout] 623 | "Content-Length:", [INFO] [stdout] 624 | )(&input[content_length..]) [INFO] [stdout] 625 ~ { Ok(s) => { [INFO] [stdout] 626 | s [INFO] [stdout] 627 ~ } _ => { [INFO] [stdout] 628 | return Self::MboxRd.parse(orig_input); [INFO] [stdout] 629 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:630:42 [INFO] [stdout] | [INFO] [stdout] 630 | let (_input, bytes) = if let Ok(s) = [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 631 | |/ map_res::<&[u8], _, _, (&[u8], nom::error::ErrorKind), _, _, _>( [INFO] [stdout] 632 | || digit1, [INFO] [stdout] 633 | || |s: &[u8]| String::from_utf8_lossy(s).parse::(), [INFO] [stdout] 634 | || )(_input.ltrim()) [INFO] [stdout] | ||_____________________-_______________^ [INFO] [stdout] | |_____________________| [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:637:17 [INFO] [stdout] | [INFO] [stdout] 637 | } 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] 630 ~ let (_input, bytes) = match map_res::<&[u8], _, _, (&[u8], nom::error::ErrorKind), _, _, _>( [INFO] [stdout] 631 | digit1, [INFO] [stdout] 632 | |s: &[u8]| String::from_utf8_lossy(s).parse::(), [INFO] [stdout] 633 | )(_input.ltrim()) [INFO] [stdout] 634 ~ { Ok(s) => { [INFO] [stdout] 635 | s [INFO] [stdout] 636 ~ } _ => { [INFO] [stdout] 637 | return Self::MboxRd.parse(orig_input); [INFO] [stdout] 638 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:1008:40 [INFO] [stdout] | [INFO] [stdout] 1008 | ... if let Ok((_, envelopes)) = mbox_parse( [INFO] [stdout] | __________________________^ - [INFO] [stdout] | |___________________________________________________| [INFO] [stdout] 1009 | || ... mailbox_lock[&mailbox_hash].index.clone(), [INFO] [stdout] 1010 | || ... &contents, [INFO] [stdout] 1011 | || ... mailbox_lock[&mailbox_hash].content.len(), [INFO] [stdout] 1012 | || ... prefer_mbox_type, [INFO] [stdout] 1013 | || ... ) { [INFO] [stdout] | ||_______________________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |_______________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:1026:37 [INFO] [stdout] | [INFO] [stdout] 1026 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1008 ~ match mbox_parse( [INFO] [stdout] 1009 | mailbox_lock[&mailbox_hash].index.clone(), [INFO] [stdout] ... [INFO] [stdout] 1012 | prefer_mbox_type, [INFO] [stdout] 1013 ~ ) { Ok((_, envelopes)) => { [INFO] [stdout] 1014 | let mut mailbox_index_lck = mailbox_index.lock().unwrap(); [INFO] [stdout] ... [INFO] [stdout] 1025 | } [INFO] [stdout] 1026 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:1345:28 [INFO] [stdout] | [INFO] [stdout] 1345 | let read_only = if let Ok(metadata) = std::fs::metadata(&ret.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/mbox/mod.rs:1347:9 [INFO] [stdout] | [INFO] [stdout] 1347 | } 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] 1345 ~ let read_only = match std::fs::metadata(&ret.path) { Ok(metadata) => { [INFO] [stdout] 1346 | metadata.permissions().readonly() [INFO] [stdout] 1347 ~ } _ => { [INFO] [stdout] 1348 | true [INFO] [stdout] 1349 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:1389:36 [INFO] [stdout] | [INFO] [stdout] 1389 | let read_only = if let Ok(metadata) = std::fs::metadata(&pathbuf) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/mbox/mod.rs:1391:17 [INFO] [stdout] | [INFO] [stdout] 1391 | } 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] 1389 ~ let read_only = match std::fs::metadata(&pathbuf) { Ok(metadata) => { [INFO] [stdout] 1390 | metadata.permissions().readonly() [INFO] [stdout] 1391 ~ } _ => { [INFO] [stdout] 1392 | true [INFO] [stdout] 1393 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/mod.rs:317:32 [INFO] [stdout] | [INFO] [stdout] 317 | ... if let Some(s) = store_lck.as_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/nntp/mod.rs:322:29 [INFO] [stdout] | [INFO] [stdout] 322 | ... } 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] 317 ~ match store_lck.as_ref() { Some(s) => { [INFO] [stdout] 318 | env.set_flags(s.flags(env.hash(), mailbox_hash, num)?); [INFO] [stdout] ... [INFO] [stdout] 321 | } [INFO] [stdout] 322 ~ } _ => { [INFO] [stdout] 323 | unseen.insert_new(env.hash()); [INFO] [stdout] 324 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/mod.rs:398:16 [INFO] [stdout] | [INFO] [stdout] 398 | if let Some(v) = self.uid_store.hash_index.lock().unwrap().get(&env_hash) { [INFO] [stdout] | ^^^^^^^^^^^^^^-----------------------------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/nntp/mod.rs:400:13 [INFO] [stdout] | [INFO] [stdout] 400 | } 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] 398 ~ match self.uid_store.hash_index.lock().unwrap().get(&env_hash) { Some(v) => { [INFO] [stdout] 399 | *v [INFO] [stdout] 400 ~ } _ => { [INFO] [stdout] 401 | return Err(Error::new( [INFO] [stdout] ... [INFO] [stdout] 404 | )); [INFO] [stdout] 405 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/mod.rs:711:27 [INFO] [stdout] | [INFO] [stdout] 711 | 'batch: while let Some(m) = mailboxes.pop() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/nntp/mod.rs:738:13 [INFO] [stdout] | [INFO] [stdout] 738 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/mod.rs:956:20 [INFO] [stdout] | [INFO] [stdout] 956 | if let Some(s) = store_lck.as_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/nntp/mod.rs:961:17 [INFO] [stdout] | [INFO] [stdout] 961 | } 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] 956 ~ match store_lck.as_ref() { Some(s) => { [INFO] [stdout] 957 | env.set_flags(s.flags(env.hash(), mailbox_hash, num)?); [INFO] [stdout] ... [INFO] [stdout] 960 | } [INFO] [stdout] 961 ~ } _ => { [INFO] [stdout] 962 | unseen.insert_new(env.hash()); [INFO] [stdout] 963 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/protocol_parser.rs:129:20 [INFO] [stdout] | [INFO] [stdout] 129 | if let Ok(d) = [INFO] [stdout] | ____________________^ [INFO] [stdout] 130 | | crate::email::parser::dates::rfc5322_date(env.date_as_str().as_bytes()) [INFO] [stdout] | |_____________________----------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/nntp/protocol_parser.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 133 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 129 ~ match crate::email::parser::dates::rfc5322_date(env.date_as_str().as_bytes()) [INFO] [stdout] 130 ~ { Ok(d) => { [INFO] [stdout] 131 | env.set_datetime(d); [INFO] [stdout] 132 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/protocol_parser.rs:141:20 [INFO] [stdout] | [INFO] [stdout] 141 | if let Ok((_, from)) = [INFO] [stdout] | ____________________^ [INFO] [stdout] 142 | | crate::email::parser::address::rfc2822address_list(from.as_bytes()) [INFO] [stdout] | |_____________________------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/nntp/protocol_parser.rs:145:17 [INFO] [stdout] | [INFO] [stdout] 145 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 141 ~ match crate::email::parser::address::rfc2822address_list(from.as_bytes()) [INFO] [stdout] 142 ~ { Ok((_, from)) => { [INFO] [stdout] 143 | env.set_from(from); [INFO] [stdout] 144 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/connection.rs:379:12 [INFO] [stdout] | [INFO] [stdout] 379 | if let Err(err) = try_await(async move { [INFO] [stdout] | ____________^ - [INFO] [stdout] | |___________________________| [INFO] [stdout] 380 | || let command = command.trim(); [INFO] [stdout] 381 | || self.stream.write_all(command).await?; [INFO] [stdout] 382 | || self.stream.write_all(b"\r\n").await?; [INFO] [stdout] ... || [INFO] [stdout] 385 | || }) [INFO] [stdout] 386 | || .await [INFO] [stdout] | ||______________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |______________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/nntp/connection.rs:390:9 [INFO] [stdout] | [INFO] [stdout] 390 | } 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] 379 ~ match try_await(async move { [INFO] [stdout] 380 | let command = command.trim(); [INFO] [stdout] ... [INFO] [stdout] 386 | .await [INFO] [stdout] 387 ~ { Err(err) => { [INFO] [stdout] 388 | log::debug!("stream send_command err {:?}", err); [INFO] [stdout] 389 | Err(err) [INFO] [stdout] 390 ~ } _ => { [INFO] [stdout] 391 | Ok(()) [INFO] [stdout] 392 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/connection.rs:396:12 [INFO] [stdout] | [INFO] [stdout] 396 | if let Err(err) = try_await(async move { [INFO] [stdout] | ____________^ - [INFO] [stdout] | |___________________________| [INFO] [stdout] 397 | || let mut ptr = 0; [INFO] [stdout] 398 | || while let Some(pos) = data[ptr..].find("\n") { [INFO] [stdout] 399 | || let l = &data[ptr..ptr + pos].trim_end(); [INFO] [stdout] ... || [INFO] [stdout] 418 | || }) [INFO] [stdout] 419 | || .await [INFO] [stdout] | ||______________^ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | |______________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/nntp/connection.rs:423:9 [INFO] [stdout] | [INFO] [stdout] 423 | } 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] 396 ~ match try_await(async move { [INFO] [stdout] 397 | let mut ptr = 0; [INFO] [stdout] ... [INFO] [stdout] 419 | .await [INFO] [stdout] 420 ~ { Err(err) => { [INFO] [stdout] 421 | log::debug!("stream send_multiline_data_block err {:?}", err); [INFO] [stdout] 422 | Err(err) [INFO] [stdout] 423 ~ } _ => { [INFO] [stdout] 424 | Ok(()) [INFO] [stdout] 425 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/connection.rs:451:16 [INFO] [stdout] | [INFO] [stdout] 451 | if let Err(err) = new_stream.as_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/nntp/connection.rs:453:13 [INFO] [stdout] | [INFO] [stdout] 453 | } 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] 451 ~ match new_stream.as_ref() { Err(err) => { [INFO] [stdout] 452 | *self.uid_store.is_online.lock().await = (Instant::now(), Err(err.clone())); [INFO] [stdout] 453 ~ } _ => { [INFO] [stdout] 454 | *self.uid_store.is_online.lock().await = (Instant::now(), Ok(())); [INFO] [stdout] 455 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/nntp/connection.rs:506:12 [INFO] [stdout] | [INFO] [stdout] 506 | if let Err(err) = [INFO] [stdout] | ____________^ [INFO] [stdout] 507 | | try_await(async { self.stream.as_mut()?.send_command(command).await }).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/nntp/connection.rs:515:9 [INFO] [stdout] | [INFO] [stdout] 515 | } 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] 506 ~ match try_await(async { self.stream.as_mut()?.send_command(command).await }).await [INFO] [stdout] 507 ~ { Err(err) => { [INFO] [stdout] 508 | self.stream = Err(err.clone()); [INFO] [stdout] ... [INFO] [stdout] 513 | Err(err) [INFO] [stdout] 514 ~ } _ => { [INFO] [stdout] 515 | Ok(()) [INFO] [stdout] 516 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/smtp.rs:484:23 [INFO] [stdout] | [INFO] [stdout] 484 | } else if let SmtpAuth::Auto { [INFO] [stdout] | _______________________^ [INFO] [stdout] 485 | | ref mut auth_type, .. [INFO] [stdout] 486 | | } = ret.server_conf.auth [INFO] [stdout] | |_________________---________________^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/smtp.rs:502:13 [INFO] [stdout] | [INFO] [stdout] 502 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 484 ~ } else { match ret.server_conf.auth [INFO] [stdout] 485 ~ { SmtpAuth::Auto { [INFO] [stdout] 486 + ref mut auth_type, .. [INFO] [stdout] 487 ~ } => { [INFO] [stdout] 488 | if let Some(l) = pre_auth_extensions_reply [INFO] [stdout] ... [INFO] [stdout] 501 | } [INFO] [stdout] 502 ~ } _ => {}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/smtp.rs:488:20 [INFO] [stdout] | [INFO] [stdout] 488 | if let Some(l) = pre_auth_extensions_reply [INFO] [stdout] | _____________________^ - [INFO] [stdout] | | __________________________________| [INFO] [stdout] 489 | || .lines [INFO] [stdout] | ||__________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 490 | | .iter() [INFO] [stdout] 491 | | .find(|l| l.starts_with("AUTH")) [INFO] [stdout] | |_____________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/smtp.rs:501:17 [INFO] [stdout] | [INFO] [stdout] 501 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 488 ~ match pre_auth_extensions_reply [INFO] [stdout] 489 | .lines [INFO] [stdout] 490 | .iter() [INFO] [stdout] 491 | .find(|l| l.starts_with("AUTH")) [INFO] [stdout] 492 ~ { Some(l) => { [INFO] [stdout] 493 | let l = l["AUTH ".len()..].trim(); [INFO] [stdout] ... [INFO] [stdout] 500 | } [INFO] [stdout] 501 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 188 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 37.01s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Compiling melib v0.8.7 (/tmp/fixit) [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/utils/datetime.rs:72:1 [INFO] [stdout] | [INFO] [stdout] 72 | / extern "C" { [INFO] [stdout] 73 | | fn strptime( [INFO] [stdout] 74 | | s: *const std::os::raw::c_char, [INFO] [stdout] 75 | | format: *const std::os::raw::c_char, [INFO] [stdout] ... | [INFO] [stdout] 90 | | fn gettimeofday(tv: *mut libc::timeval, tz: *mut libc::timezone) -> i32; [INFO] [stdout] 91 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/utils/datetime.rs:72:1 [INFO] [stdout] | [INFO] [stdout] 72 | / extern "C" { [INFO] [stdout] 73 | | fn strptime( [INFO] [stdout] 74 | | s: *const std::os::raw::c_char, [INFO] [stdout] 75 | | format: *const std::os::raw::c_char, [INFO] [stdout] ... | [INFO] [stdout] 90 | | fn gettimeofday(tv: *mut libc::timeval, tz: *mut libc::timezone) -> i32; [INFO] [stdout] 91 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `unix` [INFO] [stdout] --> src/backends.rs:112:32 [INFO] [stdout] | [INFO] [stdout] 112 | #[cfg(all(feature = "notmuch", target_os = "unix"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `target_os` are: `aix`, `android`, `cuda`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `macos`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, `trusty`, `tvos`, `uefi`, `unknown`, `visionos`, `vita`, and `vxworks` and 5 more [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `unix` [INFO] [stdout] --> src/backends.rs:138:40 [INFO] [stdout] | [INFO] [stdout] 138 | #[cfg(all(feature = "notmuch", not(any(target_os = "unix", target_os = "macos"))))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `target_os` are: `aix`, `android`, `cuda`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `macos`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `redox`, `rtems`, `solaris`, `solid_asp3`, `teeos`, `trusty`, `tvos`, `uefi`, `unknown`, `visionos`, `vita`, and `vxworks` and 5 more [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [WARN] too many lines in the log, truncating it