[INFO] fetching crate crate_file_dyzs 0.1.5... [INFO] checking crate_file_dyzs-0.1.5 against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] extracting crate crate_file_dyzs 0.1.5 into /workspace/builds/worker-2-tc2/source [INFO] validating manifest of crates.io crate crate_file_dyzs 0.1.5 on toolchain 4d98531622e1718ae0bc3c7a1ab9cd8938428452 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate crate_file_dyzs 0.1.5 [INFO] finished tweaking crates.io crate crate_file_dyzs 0.1.5 [INFO] tweaked toml for crates.io crate crate_file_dyzs 0.1.5 written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 84 packages to latest compatible versions [INFO] [stderr] Adding addr2line v0.22.0 (latest: v0.24.1) [INFO] [stderr] Adding bitflags v1.3.2 (latest: v2.6.0) [INFO] [stderr] Adding gimli v0.29.0 (latest: v0.31.0) [INFO] [stderr] Adding hermit-abi v0.3.9 (latest: v0.4.0) [INFO] [stderr] Adding miniz_oxide v0.7.4 (latest: v0.8.0) [INFO] [stderr] Adding nix v0.26.4 (latest: v0.29.0) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding windows-core v0.52.0 (latest: v0.58.0) [INFO] [stderr] Adding windows-sys v0.52.0 (latest: v0.59.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0181b44f8de9fab31641c4af8f5776166850764ab8524b5e5ee2fd86765e2d69 [INFO] running `Command { std: "docker" "start" "-a" "0181b44f8de9fab31641c4af8f5776166850764ab8524b5e5ee2fd86765e2d69", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0181b44f8de9fab31641c4af8f5776166850764ab8524b5e5ee2fd86765e2d69", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0181b44f8de9fab31641c4af8f5776166850764ab8524b5e5ee2fd86765e2d69", kill_on_drop: false }` [INFO] [stdout] 0181b44f8de9fab31641c4af8f5776166850764ab8524b5e5ee2fd86765e2d69 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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 -Dtail_expr_drop_order" "-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 854a9c92d45575ed4c31799cac575dafa497dc0b72fd79c7011843ae48d57ccd [INFO] running `Command { std: "docker" "start" "-a" "854a9c92d45575ed4c31799cac575dafa497dc0b72fd79c7011843ae48d57ccd", kill_on_drop: false }` [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Compiling serde v1.0.209 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Compiling libudev-sys v0.1.4 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Checking parking_lot_core v0.9.10 [INFO] [stderr] Checking nix v0.26.4 [INFO] [stderr] Checking csv-core v0.1.11 [INFO] [stderr] Checking chrono v0.4.38 [INFO] [stderr] Checking libudev v0.3.0 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Compiling serde_derive v1.0.209 [INFO] [stderr] Compiling thiserror-impl v1.0.63 [INFO] [stderr] Compiling tokio-macros v2.4.0 [INFO] [stderr] Checking tokio v1.40.0 [INFO] [stderr] Checking thiserror v1.0.63 [INFO] [stderr] Checking unescaper v0.1.5 [INFO] [stderr] Checking serialport v4.5.0 [INFO] [stderr] Checking serde_json v1.0.127 [INFO] [stderr] Checking csv v1.3.0 [INFO] [stderr] Checking crate_usb_dyzs v0.1.3 [INFO] [stderr] Checking crate_file_dyzs v0.1.5 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `serde_json::json` [INFO] [stdout] --> src/mod_json/json_operate.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use serde_json::json; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/mod_asc/asc_operate.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> src/mod_asc/asc_operate.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt` [INFO] [stdout] --> src/mod_asc/asc_operate.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | use tokio::io::AsyncReadExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ResearchData` [INFO] [stdout] --> src/mod_csv/csv_operate.rs:2:34 [INFO] [stdout] | [INFO] [stdout] 2 | use crate_usb_dyzs::{ParsedData, ResearchData, SerialData}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json::json` [INFO] [stdout] --> src/mod_json/json_operate.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use serde_json::json; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/mod_asc/asc_operate.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/mod_asc/asc_operate.rs:36:16 [INFO] [stdout] | [INFO] [stdout] 36 | if let crate_usb_dyzs::ParsedData::EmgData64 { emg } = &data.data.data { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/mod_asc/asc_operate.rs:36:16 [INFO] [stdout] | [INFO] [stdout] 36 | if let crate_usb_dyzs::ParsedData::EmgData64 { emg } = &data.data.data { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `copy_file_to_target` is never used [INFO] [stdout] --> src/mod_csv/csv_operate.rs:205:4 [INFO] [stdout] | [INFO] [stdout] 205 | fn copy_file_to_target(current_path: &PathBuf, target_path: &PathBuf) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `move_file_to_target_path` is never used [INFO] [stdout] --> src/mod_csv/csv_operate.rs:229:10 [INFO] [stdout] | [INFO] [stdout] 229 | async fn move_file_to_target_path( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/mod_csv/csv_operate.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 127 | let writer = Writer::from_path(file_path.clone())?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 128 | Ok(Arc::new(Self { [INFO] [stdout] | ____________^ [INFO] [stdout] 129 | | writer: Mutex::new(writer), [INFO] [stdout] 130 | | target_path: Mutex::new(PathBuf::new()), [INFO] [stdout] 131 | | current_file_path: Mutex::new(file_path), [INFO] [stdout] 132 | | active: AtomicBool::new(true), // 默认激活写入 [INFO] [stdout] 133 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |__________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/mod_json/json_operate.rs:26:25 [INFO] [stdout] | [INFO] [stdout] 16 | let mut file = OpenOptions::new() [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 26 | file_mutex: Arc::new(Mutex::new(())), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `copy_file_to_target` is never used [INFO] [stdout] --> src/mod_csv/csv_operate.rs:205:4 [INFO] [stdout] | [INFO] [stdout] 205 | fn copy_file_to_target(current_path: &PathBuf, target_path: &PathBuf) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors; 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `move_file_to_target_path` is never used [INFO] [stdout] --> src/mod_csv/csv_operate.rs:229:10 [INFO] [stdout] | [INFO] [stdout] 229 | async fn move_file_to_target_path( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/mod_csv/csv_operate.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 127 | let writer = Writer::from_path(file_path.clone())?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 128 | Ok(Arc::new(Self { [INFO] [stdout] | ____________^ [INFO] [stdout] 129 | | writer: Mutex::new(writer), [INFO] [stdout] 130 | | target_path: Mutex::new(PathBuf::new()), [INFO] [stdout] 131 | | current_file_path: Mutex::new(file_path), [INFO] [stdout] 132 | | active: AtomicBool::new(true), // 默认激活写入 [INFO] [stdout] 133 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |__________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/mod_json/json_operate.rs:26:25 [INFO] [stdout] | [INFO] [stdout] 16 | let mut file = OpenOptions::new() [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 26 | file_mutex: Arc::new(Mutex::new(())), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `crate_file_dyzs` (lib test) due to 3 previous errors; 7 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 2 previous errors; 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `crate_file_dyzs` (lib) due to 3 previous errors; 6 warnings emitted [INFO] running `Command { std: "docker" "inspect" "854a9c92d45575ed4c31799cac575dafa497dc0b72fd79c7011843ae48d57ccd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "854a9c92d45575ed4c31799cac575dafa497dc0b72fd79c7011843ae48d57ccd", kill_on_drop: false }` [INFO] [stdout] 854a9c92d45575ed4c31799cac575dafa497dc0b72fd79c7011843ae48d57ccd