[INFO] cloning repository https://github.com/lgnixai/rase [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lgnixai/rase" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flgnixai%2Frase", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flgnixai%2Frase'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] cb7fa1ecc4a18ddc9055ecc6c99743fbbdd26127 [INFO] fixing lgnixai/rase against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flgnixai%2Frase" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/lgnixai/rase [INFO] finished tweaking git repo https://github.com/lgnixai/rase [INFO] tweaked toml for git repo https://github.com/lgnixai/rase written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/lgnixai/rase on toolchain 622891a4e29178280638a6b63a8908bde2c0c854 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/lgnixai/rase already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "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/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 249846477bd9e628e3149c0545920a6fcb2833489adf0ca9ad9a22b833619e05 [INFO] running `Command { std: "docker" "start" "249846477bd9e628e3149c0545920a6fcb2833489adf0ca9ad9a22b833619e05", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "249846477bd9e628e3149c0545920a6fcb2833489adf0ca9ad9a22b833619e05" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "249846477bd9e628e3149c0545920a6fcb2833489adf0ca9ad9a22b833619e05", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "249846477bd9e628e3149c0545920a6fcb2833489adf0ca9ad9a22b833619e05" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }` [INFO] [stderr] crater-edition-check: migrating to next edition [INFO] [stderr] Migrating macro/Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Migrating lexer/Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Migrating parser/Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Migrating runtime/Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Migrating tests/Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Compiling proc-macro2 v1.0.79 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling strsim v0.10.0 [INFO] [stderr] Compiling serde v1.0.205 [INFO] [stderr] Checking memchr v2.7.1 [INFO] [stderr] Checking minimal-lexical v0.2.1 [INFO] [stderr] Checking bytecount v0.6.7 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Checking safer_owning_ref v0.5.0 [INFO] [stderr] Checking owo-colors v4.0.0 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling syn v2.0.53 [INFO] [stderr] Checking nom_locate v4.2.0 [INFO] [stderr] Compiling derivative v2.2.0 [INFO] [stderr] Checking darling_core v0.20.8 [INFO] [stderr] Compiling serde_derive v1.0.205 [INFO] [stderr] Compiling darling_macro v0.20.8 [INFO] [stderr] Compiling darling v0.20.8 [INFO] [stderr] Checking tsr-macro v0.1.0 (/opt/rustwide/workdir/macro) [INFO] [stderr] Migrating macro/src/lib.rs from 2021 edition to 2024 [INFO] [stderr] Fixed macro/src/lib.rs (1 fix) [INFO] [stderr] Checking tsr-lexer v0.0.0 (/opt/rustwide/workdir/lexer) [INFO] [stderr] Migrating lexer/src/lib.rs from 2021 edition to 2024 [INFO] [stderr] Fixed lexer/src/lib.rs (2 fixes) [INFO] [stderr] Checking tsr-parser v0.0.0 (/opt/rustwide/workdir/parser) [INFO] [stderr] Migrating parser/src/lib.rs from 2021 edition to 2024 [INFO] [stderr] Fixed parser/src/tags.rs (1 fix) [INFO] [stderr] Checking tsr-runtime v0.0.0 (/opt/rustwide/workdir/runtime) [INFO] [stderr] Migrating runtime/src/lib.rs from 2021 edition to 2024 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> runtime/src/value/mod.rs:479:53 [INFO] [stdout] | [INFO] [stdout] 479 | ([$name:ident: $($type_name:ty)|*] => $callback:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [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] 479 | ([$name:ident: $($type_name:ty)|*] => $callback: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] --> runtime/src/lib.rs:24:28 [INFO] [stdout] | [INFO] [stdout] 24 | ($variant:path, $value:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 24 | ($variant:path, $value:expr_2021) => { [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: relative drop order changing in Rust 2024 [INFO] [stdout] --> runtime/src/eval/statement/variable.rs:24:27 [INFO] [stdout] | [INFO] [stdout] 12 | let mut last = Value::None; [INFO] [stdout] | -------- [INFO] [stdout] | | [INFO] [stdout] | `last` calls a custom destructor [INFO] [stdout] | `last` will be dropped later as of Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 21 | let (value_span, value) = if let Some(expression) = variable.initializer { [INFO] [stdout] | _______________________________________- [INFO] [stdout] 22 | | ( [INFO] [stdout] 23 | | expression.span, [INFO] [stdout] 24 | | match self.eval_expression(expression) { [INFO] [stdout] | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | this value will be stored in a temporary; let us call it `#2` [INFO] [stdout] | | up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024 [INFO] [stdout] ... | [INFO] [stdout] 29 | | } else { [INFO] [stdout] | | - now the temporary value is dropped here, before the local variables in the block or statement [INFO] [stdout] 30 | | (span, Value::None) [INFO] [stdout] 31 | | }; [INFO] [stdout] | | - [INFO] [stdout] | | | [INFO] [stdout] | |_____________this value will be stored in a temporary; let us call it `#1` [INFO] [stdout] | `#1` will be dropped later as of Edition 2024 [INFO] [stdout] | [INFO] [stdout] = note: `#2` may invoke a custom destructor because it contains a trait object [INFO] [stdout] = note: `last` may invoke a custom destructor because it contains a trait object [INFO] [stdout] = note: `#1` may invoke a custom destructor because it contains a trait object [INFO] [stdout] = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | if let Some(Value::Interface { [INFO] [stdout] | ____________^ [INFO] [stdout] 71 | | name, [INFO] [stdout] 72 | | extends, [INFO] [stdout] 73 | | signatures, [INFO] [stdout] 74 | | }) = self.get(name) [INFO] [stdout] | |______________-------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [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] 70 ~ match self.get(name) [INFO] [stdout] 71 ~ { Some(Value::Interface { [INFO] [stdout] 72 + name, [INFO] [stdout] 73 + extends, [INFO] [stdout] 74 + signatures, [INFO] [stdout] 75 ~ }) => { [INFO] [stdout] 76 | Some((name, extends, signatures)) [INFO] [stdout] 77 ~ } _ => { [INFO] [stdout] 78 | None [INFO] [stdout] 79 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 83 | if let Some(value) = self.get(name) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 83 ~ match self.get(name) { Some(value) => { [INFO] [stdout] 84 | match value { [INFO] [stdout] ... [INFO] [stdout] 102 | } [INFO] [stdout] 103 ~ } _ => { [INFO] [stdout] 104 | None [INFO] [stdout] 105 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | if let Some($variant(x)) = $value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | try_unpack!(Value::Number, self.get(name)).unwrap() [INFO] [stdout] | ------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 109 | try_unpack!(Value::Number, self.get(name)).unwrap() [INFO] [stdout] | ------------------------------------------ in this macro invocation [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `try_unpack` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: errors present after applying fixes to crate `tsr_runtime` [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | if let Some($variant(x)) = $value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | try_unpack!(Value::Boolean, self.get(name)).unwrap() [INFO] [stdout] | ------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 113 | try_unpack!(Value::Boolean, self.get(name)).unwrap() [INFO] [stdout] | ------------------------------------------- in this macro invocation [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `try_unpack` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> runtime/src/api/events.rs [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | if let Some($variant(x)) = $value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | try_unpack!(Value::String, self.get(name)).unwrap() [INFO] [stdout] | ------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 117 | try_unpack!(Value::String, self.get(name)).unwrap() [INFO] [stdout] | ------------------------------------------ in this macro invocation [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `try_unpack` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ::: runtime/src/api/reflection.rs [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | if let Some($variant(x)) = $value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | try_unpack!(Value::Number, self.get(name)) [INFO] [stdout] | ------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 121 | try_unpack!(Value::Number, self.get(name)) [INFO] [stdout] | ------------------------------------------ in this macro invocation [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `try_unpack` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ::: runtime/src/api/util.rs [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | if let Some($variant(x)) = $value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | try_unpack!(Value::Boolean, self.get(name)) [INFO] [stdout] | ------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 125 | try_unpack!(Value::Boolean, self.get(name)) [INFO] [stdout] | ------------------------------------------- in this macro invocation [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `try_unpack` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ::: runtime/src/eval/statement/variable.rs [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | if let Some($variant(x)) = $value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | try_unpack!(Value::String, self.get(name)) [INFO] [stdout] | ------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 129 | try_unpack!(Value::String, self.get(name)) [INFO] [stdout] | ------------------------------------------ in this macro invocation [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `try_unpack` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = cause: error: custom attribute panicked [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/events.rs:24:49 [INFO] [stdout] | [INFO] [stdout] 24 | fn genv(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/events.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | fn genv(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [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] 24 | fn genv(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> runtime/src/api/events.rs:17:1 [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/events.rs:32:53 [INFO] [stdout] | [INFO] [stdout] 32 | fn get_type(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/events.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn get_type(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 32 | fn get_type(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/events.rs:38:62 [INFO] [stdout] | [INFO] [stdout] 38 | fn get_function_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/events.rs:38:26 [INFO] [stdout] | [INFO] [stdout] 38 | fn get_function_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 38 | fn get_function_data(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 17 | #[tsr_macro::native_module("events")] [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/events.rs:67:63 [INFO] [stdout] | [INFO] [stdout] 67 | fn get_interface_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/events.rs:67:27 [INFO] [stdout] | [INFO] [stdout] 67 | fn get_interface_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 67 | fn get_interface_data(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/reflection.rs:20:53 [INFO] [stdout] | [INFO] [stdout] 20 | fn get_type(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/reflection.rs:20:17 [INFO] [stdout] | [INFO] [stdout] 20 | fn get_type(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 20 | fn get_type(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/reflection.rs:26:62 [INFO] [stdout] | [INFO] [stdout] 26 | fn get_function_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/reflection.rs:26:26 [INFO] [stdout] | [INFO] [stdout] 26 | fn get_function_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 26 | fn get_function_data(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: message: called `Result::unwrap()` on an `Err` value: Error("expected identifier, found keyword `use`") [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/reflection.rs:55:63 [INFO] [stdout] | [INFO] [stdout] 55 | fn get_interface_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/reflection.rs:55:27 [INFO] [stdout] | [INFO] [stdout] 55 | fn get_interface_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 55 | fn get_interface_data(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/util.rs:14:52 [INFO] [stdout] | [INFO] [stdout] 14 | fn inspect(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/util.rs:14:16 [INFO] [stdout] | [INFO] [stdout] 14 | fn inspect(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 14 | fn inspect(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stderr] error: custom attribute panicked [INFO] [stderr] --> runtime/src/api/reflection.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | #[tsr_macro::native_module("reflection")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: called `Result::unwrap()` on an `Err` value: Error("expected identifier, found keyword `use`") [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] error: custom attribute panicked [INFO] [stderr] --> runtime/src/api/util.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | #[tsr_macro::native_module("util")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: called `Result::unwrap()` on an `Err` value: Error("expected identifier, found keyword `use`") [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: relative drop order changing in Rust 2024 [INFO] [stderr] --> runtime/src/eval/statement/variable.rs:24:27 [INFO] [stderr] | [INFO] [stderr] 12 | let mut last = Value::None; [INFO] [stderr] | -------- [INFO] [stderr] | | [INFO] [stderr] | `last` calls a custom destructor [INFO] [stderr] | `last` will be dropped later as of Edition 2024 [INFO] [stderr] ... [INFO] [stderr] 21 | let (value_span, value) = if let Some(expression) = variable.initializer { [INFO] [stderr] | _______________________________________- [INFO] [stderr] 22 | | ( [INFO] [stderr] 23 | | expression.span, [INFO] [stderr] 24 | | match self.eval_expression(expression) { [INFO] [stderr] | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | | [INFO] [stderr] | | this value will be stored in a temporary; let us call it `#2` [INFO] [stderr] | | up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024 [INFO] [stderr] ... | [INFO] [stderr] 29 | | } else { [INFO] [stderr] | | - now the temporary value is dropped here, before the local variables in the block or statement [INFO] [stderr] 30 | | (span, Value::None) [INFO] [stderr] 31 | | }; [INFO] [stderr] | | - [INFO] [stderr] | | | [INFO] [stderr] | |_____________this value will be stored in a temporary; let us call it `#1` [INFO] [stderr] | `#1` will be dropped later as of Edition 2024 [INFO] [stderr] | [INFO] [stderr] = note: `#2` may invoke a custom destructor because it contains a trait object [INFO] [stderr] = note: `last` may invoke a custom destructor because it contains a trait object [INFO] [stderr] = note: `#1` may invoke a custom destructor because it contains a trait object [INFO] [stderr] = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages [INFO] [stderr] = warning: this changes meaning in Rust 2024 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility` [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] error: aborting due to 3 previous errors; 1 warning emitted [INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command [INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag [INFO] [stderr] note: original diagnostics will follow: [INFO] [stderr] Checking tests v0.0.0 (/opt/rustwide/workdir/tests) [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> runtime/src/value/mod.rs:479:53 [INFO] [stdout] | [INFO] [stdout] 479 | ([$name:ident: $($type_name:ty)|*] => $callback:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [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] 479 | ([$name:ident: $($type_name:ty)|*] => $callback:expr_2021) => { [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating tests/parser.rs from 2021 edition to 2024 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> runtime/src/lib.rs:24:28 [INFO] [stdout] | [INFO] [stdout] 24 | ($variant:path, $value:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 24 | ($variant:path, $value:expr_2021) => { [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: errors present after applying fixes to crate `tsr_runtime` [INFO] [stdout] warning: relative drop order changing in Rust 2024 [INFO] [stdout] --> runtime/src/eval/statement/variable.rs:24:27 [INFO] [stdout] | [INFO] [stdout] 12 | let mut last = Value::None; [INFO] [stdout] | -------- [INFO] [stdout] | | [INFO] [stdout] | `last` calls a custom destructor [INFO] [stdout] | `last` will be dropped later as of Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 21 | let (value_span, value) = if let Some(expression) = variable.initializer { [INFO] [stdout] | _______________________________________- [INFO] [stdout] 22 | | ( [INFO] [stdout] 23 | | expression.span, [INFO] [stdout] 24 | | match self.eval_expression(expression) { [INFO] [stdout] | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | this value will be stored in a temporary; let us call it `#2` [INFO] [stdout] | | up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024 [INFO] [stdout] ... | [INFO] [stdout] 29 | | } else { [INFO] [stdout] | | - now the temporary value is dropped here, before the local variables in the block or statement [INFO] [stdout] 30 | | (span, Value::None) [INFO] [stdout] 31 | | }; [INFO] [stdout] | | - [INFO] [stdout] | | | [INFO] [stdout] | |_____________this value will be stored in a temporary; let us call it `#1` [INFO] [stdout] | `#1` will be dropped later as of Edition 2024 [INFO] [stdout] | [INFO] [stdout] = note: `#2` may invoke a custom destructor because it contains a trait object [INFO] [stdout] = note: `last` may invoke a custom destructor because it contains a trait object [INFO] [stdout] = note: `#1` may invoke a custom destructor because it contains a trait object [INFO] [stdout] = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> runtime/src/api/events.rs [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | if let Some(Value::Interface { [INFO] [stdout] | ____________^ [INFO] [stdout] 71 | | name, [INFO] [stdout] 72 | | extends, [INFO] [stdout] 73 | | signatures, [INFO] [stdout] 74 | | }) = self.get(name) [INFO] [stdout] | |______________-------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [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] 70 ~ match self.get(name) [INFO] [stdout] 71 ~ { Some(Value::Interface { [INFO] [stdout] 72 + name, [INFO] [stdout] 73 + extends, [INFO] [stdout] 74 + signatures, [INFO] [stdout] 75 ~ }) => { [INFO] [stdout] 76 | Some((name, extends, signatures)) [INFO] [stdout] 77 ~ } _ => { [INFO] [stdout] 78 | None [INFO] [stdout] 79 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ::: runtime/src/api/reflection.rs [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 83 | if let Some(value) = self.get(name) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 83 ~ match self.get(name) { Some(value) => { [INFO] [stdout] 84 | match value { [INFO] [stdout] ... [INFO] [stdout] 102 | } [INFO] [stdout] 103 ~ } _ => { [INFO] [stdout] 104 | None [INFO] [stdout] 105 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ::: runtime/src/api/util.rs [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | if let Some($variant(x)) = $value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | try_unpack!(Value::Number, self.get(name)).unwrap() [INFO] [stdout] | ------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 109 | try_unpack!(Value::Number, self.get(name)).unwrap() [INFO] [stdout] | ------------------------------------------ in this macro invocation [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `try_unpack` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ::: runtime/src/eval/statement/variable.rs [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | if let Some($variant(x)) = $value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | try_unpack!(Value::Boolean, self.get(name)).unwrap() [INFO] [stdout] | ------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 113 | try_unpack!(Value::Boolean, self.get(name)).unwrap() [INFO] [stdout] | ------------------------------------------- in this macro invocation [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `try_unpack` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = cause: error: custom attribute panicked [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | if let Some($variant(x)) = $value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | try_unpack!(Value::String, self.get(name)).unwrap() [INFO] [stdout] | ------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 117 | try_unpack!(Value::String, self.get(name)).unwrap() [INFO] [stdout] | ------------------------------------------ in this macro invocation [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `try_unpack` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> runtime/src/api/events.rs:17:1 [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | if let Some($variant(x)) = $value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | try_unpack!(Value::Number, self.get(name)) [INFO] [stdout] | ------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 121 | try_unpack!(Value::Number, self.get(name)) [INFO] [stdout] | ------------------------------------------ in this macro invocation [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `try_unpack` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | if let Some($variant(x)) = $value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | try_unpack!(Value::Boolean, self.get(name)) [INFO] [stdout] | ------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 125 | try_unpack!(Value::Boolean, self.get(name)) [INFO] [stdout] | ------------------------------------------- in this macro invocation [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `try_unpack` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 17 | #[tsr_macro::native_module("events")] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | if let Some($variant(x)) = $value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | try_unpack!(Value::String, self.get(name)) [INFO] [stdout] | ------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: value may invoke a custom destructor because it contains a trait object [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> runtime/src/lib.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 129 | try_unpack!(Value::String, self.get(name)) [INFO] [stdout] | ------------------------------------------ in this macro invocation [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `try_unpack` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/events.rs:24:49 [INFO] [stdout] | [INFO] [stdout] 24 | fn genv(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/events.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | fn genv(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [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] 24 | fn genv(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stderr] = help: message: called `Result::unwrap()` on an `Err` value: Error("expected identifier, found keyword `use`") [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] error: custom attribute panicked [INFO] [stderr] --> runtime/src/api/reflection.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | #[tsr_macro::native_module("reflection")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: called `Result::unwrap()` on an `Err` value: Error("expected identifier, found keyword `use`") [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] error: custom attribute panicked [INFO] [stderr] --> runtime/src/api/util.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | #[tsr_macro::native_module("util")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: called `Result::unwrap()` on an `Err` value: Error("expected identifier, found keyword `use`") [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: relative drop order changing in Rust 2024 [INFO] [stderr] --> runtime/src/eval/statement/variable.rs:24:27 [INFO] [stderr] | [INFO] [stderr] 12 | let mut last = Value::None; [INFO] [stderr] | -------- [INFO] [stderr] | | [INFO] [stderr] | `last` calls a custom destructor [INFO] [stderr] | `last` will be dropped later as of Edition 2024 [INFO] [stderr] ... [INFO] [stderr] 21 | let (value_span, value) = if let Some(expression) = variable.initializer { [INFO] [stderr] | _______________________________________- [INFO] [stderr] 22 | | ( [INFO] [stderr] 23 | | expression.span, [INFO] [stderr] 24 | | match self.eval_expression(expression) { [INFO] [stderr] | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | | [INFO] [stderr] | | this value will be stored in a temporary; let us call it `#2` [INFO] [stderr] | | up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024 [INFO] [stderr] ... | [INFO] [stderr] 29 | | } else { [INFO] [stderr] | | - now the temporary value is dropped here, before the local variables in the block or statement [INFO] [stderr] 30 | | (span, Value::None) [INFO] [stderr] 31 | | }; [INFO] [stderr] | | - [INFO] [stderr] | | | [INFO] [stderr] | |_____________this value will be stored in a temporary; let us call it `#1` [INFO] [stderr] | `#1` will be dropped later as of Edition 2024 [INFO] [stderr] | [INFO] [stderr] = note: `#2` may invoke a custom destructor because it contains a trait object [INFO] [stderr] = note: `last` may invoke a custom destructor because it contains a trait object [INFO] [stderr] = note: `#1` may invoke a custom destructor because it contains a trait object [INFO] [stderr] = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages [INFO] [stderr] = warning: this changes meaning in Rust 2024 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility` [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] error: aborting due to 3 previous errors; 1 warning emitted [INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command [INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag [INFO] [stderr] note: original diagnostics will follow: [INFO] [stderr] Migrating tests/runtime.rs from 2021 edition to 2024 [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/events.rs:32:53 [INFO] [stdout] | [INFO] [stdout] 32 | fn get_type(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/events.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn get_type(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 32 | fn get_type(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tests` (test "test_parser") due to 1 previous error [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/events.rs:38:62 [INFO] [stdout] | [INFO] [stdout] 38 | fn get_function_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/events.rs:38:26 [INFO] [stdout] | [INFO] [stdout] 38 | fn get_function_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 38 | fn get_function_data(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/events.rs:67:63 [INFO] [stdout] | [INFO] [stdout] 67 | fn get_interface_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/events.rs:67:27 [INFO] [stdout] | [INFO] [stdout] 67 | fn get_interface_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 67 | fn get_interface_data(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/reflection.rs:20:53 [INFO] [stdout] | [INFO] [stdout] 20 | fn get_type(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/reflection.rs:20:17 [INFO] [stdout] | [INFO] [stdout] 20 | fn get_type(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 20 | fn get_type(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/reflection.rs:26:62 [INFO] [stdout] | [INFO] [stdout] 26 | fn get_function_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/reflection.rs:26:26 [INFO] [stdout] | [INFO] [stdout] 26 | fn get_function_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 26 | fn get_function_data(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/reflection.rs:55:63 [INFO] [stdout] | [INFO] [stdout] 55 | fn get_interface_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/reflection.rs:55:27 [INFO] [stdout] | [INFO] [stdout] 55 | fn get_interface_data(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 55 | fn get_interface_data(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Into` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> runtime/src/api/util.rs:14:52 [INFO] [stdout] | [INFO] [stdout] 14 | fn inspect(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> runtime/src/api/util.rs:14:16 [INFO] [stdout] | [INFO] [stdout] 14 | fn inspect(&self, args: &FArguments) -> Option> { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 14 | fn inspect(&self, args: &FArguments) -> Option + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> tests/parser.rs:12:20 [INFO] [stdout] | [INFO] [stdout] 12 | let (_, ast) = Parser::parse_tokens(&tokens).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ------- argument #1 of type `&mut Parser` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> parser/src/lib.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn parse_tokens<'a>(&'a mut self,tokens: &'a [Positioned]) -> TokenResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 12 | let (_, ast) = Parser::parse_tokens(/* &mut Parser */, &tokens).unwrap(); [INFO] [stdout] | ++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] Migrating tests/parser/mod.rs from 2021 edition to 2024 [INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> tests/parser/parse_arrow.rs:52:24 [INFO] [stdout] | [INFO] [stdout] 52 | let (_, ast) = Parser::parse_tokens(&tokens).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ------- argument #1 of type `&mut tsr_parser::Parser` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> parser/src/lib.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn parse_tokens<'a>(&'a mut self,tokens: &'a [Positioned]) -> TokenResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 52 | let (_, ast) = Parser::parse_tokens(/* &mut tsr_parser::Parser */, &tokens).unwrap(); [INFO] [stdout] | ++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] Migrating tests/lexer.rs from 2021 edition to 2024 [INFO] [stderr] error: could not compile `tests` (test "parser") due to 1 previous error [INFO] running `Command { std: "docker" "inspect" "249846477bd9e628e3149c0545920a6fcb2833489adf0ca9ad9a22b833619e05", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "249846477bd9e628e3149c0545920a6fcb2833489adf0ca9ad9a22b833619e05", kill_on_drop: false }` [INFO] [stdout] 249846477bd9e628e3149c0545920a6fcb2833489adf0ca9ad9a22b833619e05