[INFO] fetching crate ya-service-bus 0.7.3... [INFO] checking ya-service-bus-0.7.3 against try#65132f36b923285d5da381c2fbafee6ce899e841 for pr-132712-1 [INFO] extracting crate ya-service-bus 0.7.3 into /workspace/builds/worker-6-tc2/source [INFO] validating manifest of crates.io crate ya-service-bus 0.7.3 on toolchain 65132f36b923285d5da381c2fbafee6ce899e841 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+65132f36b923285d5da381c2fbafee6ce899e841" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate ya-service-bus 0.7.3 [INFO] finished tweaking crates.io crate ya-service-bus 0.7.3 [INFO] tweaked toml for crates.io crate ya-service-bus 0.7.3 written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] crate crates.io crate ya-service-bus 0.7.3 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" "+65132f36b923285d5da381c2fbafee6ce899e841" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+65132f36b923285d5da381c2fbafee6ce899e841" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3900def489ba3841d8b7de7777a68a947138178a95640aa9b45176764ca3ef7a [INFO] running `Command { std: "docker" "start" "-a" "3900def489ba3841d8b7de7777a68a947138178a95640aa9b45176764ca3ef7a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3900def489ba3841d8b7de7777a68a947138178a95640aa9b45176764ca3ef7a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3900def489ba3841d8b7de7777a68a947138178a95640aa9b45176764ca3ef7a", kill_on_drop: false }` [INFO] [stdout] 3900def489ba3841d8b7de7777a68a947138178a95640aa9b45176764ca3ef7a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=allow" "-e" "RUSTDOCFLAGS=--cap-lints=allow" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+65132f36b923285d5da381c2fbafee6ce899e841" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6a9df22e7deb2a3aeaf3b56574502bff02b7fb6b3d18a366e00edcbb5fd2d4a5 [INFO] running `Command { std: "docker" "start" "-a" "6a9df22e7deb2a3aeaf3b56574502bff02b7fb6b3d18a366e00edcbb5fd2d4a5", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Migrating Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Compiling proc-macro2 v1.0.81 [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling autocfg v1.2.0 [INFO] [stderr] Compiling either v1.11.0 [INFO] [stderr] Compiling cc v1.0.95 [INFO] [stderr] Compiling hashbrown v0.14.3 [INFO] [stderr] Compiling parking_lot_core v0.9.9 [INFO] [stderr] Compiling anyhow v1.0.82 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Compiling linux-raw-sys v0.4.13 [INFO] [stderr] Compiling bitflags v2.5.0 [INFO] [stderr] Checking bytes v1.6.0 [INFO] [stderr] Compiling home v0.5.9 [INFO] [stderr] Compiling thiserror v1.0.59 [INFO] [stderr] Compiling regex-syntax v0.8.3 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Checking futures-io v0.3.30 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling crossbeam-utils v0.8.19 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling fastrand v2.0.2 [INFO] [stderr] Checking tinyvec v1.6.0 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Compiling cmake v0.1.50 [INFO] [stderr] Compiling multimap v0.8.3 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Compiling log v0.4.21 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling serde v1.0.198 [INFO] [stderr] Compiling pin-project-internal v0.4.30 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Compiling syn v2.0.60 [INFO] [stderr] Compiling indexmap v2.2.6 [INFO] [stderr] Checking unicode-bidi v0.3.15 [INFO] [stderr] Checking ucd-trie v0.1.6 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Checking socket2 v0.5.6 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Checking getrandom v0.2.14 [INFO] [stderr] Checking crossbeam-channel v0.5.12 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Checking iana-time-zone v0.1.60 [INFO] [stderr] Compiling regex-automata v0.4.6 [INFO] [stderr] Compiling unicode-segmentation v1.11.0 [INFO] [stderr] Compiling toml_edit v0.19.15 [INFO] [stderr] Compiling petgraph v0.6.4 [INFO] [stderr] Compiling ring v0.17.8 [INFO] [stderr] Checking unicode-width v0.1.11 [INFO] [stderr] Checking unicode-normalization v0.1.23 [INFO] [stderr] Checking tokio v1.37.0 [INFO] [stderr] Checking untrusted v0.9.0 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Compiling heck v0.3.3 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking fxhash v0.2.1 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Compiling serde_json v1.0.116 [INFO] [stderr] Checking quick-error v1.2.3 [INFO] [stderr] Checking clap v2.34.0 [INFO] [stderr] Checking chrono v0.4.38 [INFO] [stderr] Checking humantime v1.3.0 [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Checking miniz_oxide v0.5.4 [INFO] [stderr] Compiling which v4.4.2 [INFO] [stderr] Compiling tempfile v3.10.1 [INFO] [stderr] Checking url v2.5.0 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking uuid v0.8.2 [INFO] [stderr] Checking ryu v1.0.17 [INFO] [stderr] Compiling prost-build v0.10.4 [INFO] [stderr] Compiling regex v1.10.4 [INFO] [stderr] Checking ya-packet-trace v0.1.0 [INFO] [stderr] Compiling proc-macro-crate v1.3.1 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling thiserror-impl v1.0.59 [INFO] [stderr] Compiling serde_derive v1.0.198 [INFO] [stderr] Compiling actix-macros v0.2.4 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Checking tokio-util v0.7.10 [INFO] [stderr] Checking actix-rt v2.9.0 [INFO] [stderr] Checking tokio-stream v0.1.15 [INFO] [stderr] Checking pest v2.7.9 [INFO] [stderr] Compiling prost-derive v0.10.1 [INFO] [stderr] Compiling actix_derive v0.6.0 [INFO] [stderr] Compiling num_enum_derive v0.5.11 [INFO] [stderr] Compiling async-stream-impl v0.2.1 [INFO] [stderr] Compiling structopt-derive v0.4.18 [INFO] [stderr] Checking async-stream v0.2.1 [INFO] [stderr] Checking num_enum v0.5.11 [INFO] [stderr] Checking pin-project v0.4.30 [INFO] [stderr] Checking structopt v0.3.26 [INFO] [stderr] Compiling prost v0.10.4 [INFO] [stderr] Checking env_logger v0.7.1 [INFO] [stderr] Checking semver-parser v0.10.2 [INFO] [stderr] Compiling prost-types v0.10.1 [INFO] [stderr] Checking semver v0.11.0 [INFO] [stderr] Checking futures-executor v0.3.30 [INFO] [stderr] Checking actix v0.13.3 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] Compiling ya-sb-proto v0.6.2 [INFO] [stderr] Checking ya-sb-util v0.5.1 [INFO] [stderr] Checking flexbuffers v2.0.0 [INFO] [stderr] Checking ya-service-bus v0.7.3 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] Fixed src/connection.rs (4 fixes) [INFO] [stderr] Fixed src/local_router.rs (20 fixes) [INFO] [stderr] Fixed src/actix_rpc.rs (3 fixes) [INFO] [stderr] Fixed src/remote_router.rs (2 fixes) [INFO] [stderr] Fixed src/typed.rs (5 fixes) [INFO] [stderr] Fixed src/untyped.rs (3 fixes) [INFO] [stdout] warning: `impl futures::Future as actix::Message>::Result, error::Error>> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/actix_rpc.rs:60:10 [INFO] [stdout] | [INFO] [stdout] 60 | ) -> impl Future as Message>::Result, BusError>> + 'static { [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/actix_rpc.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/actix_rpc.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | caller: impl ToString, [INFO] [stdout] | ^^^^^^^^^^^^^ [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] 56 ~ pub fn send_as( [INFO] [stdout] 57 | &self, [INFO] [stdout] 58 ~ caller: T, [INFO] [stdout] 59 | msg: M, [INFO] [stdout] 60 ~ ) -> impl Future as Message>::Result, BusError>> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/actix_rpc.rs:77:10 [INFO] [stdout] | [INFO] [stdout] 77 | ) -> impl Future> + 'static { [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/actix_rpc.rs:74:9 [INFO] [stdout] | [INFO] [stdout] 74 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/actix_rpc.rs:75:17 [INFO] [stdout] | [INFO] [stdout] 75 | caller: impl ToString, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 73 ~ pub fn push_as( [INFO] [stdout] 74 | &self, [INFO] [stdout] 75 ~ caller: T, [INFO] [stdout] 76 | msg: M, [INFO] [stdout] 77 ~ ) -> impl Future> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:901:10 [INFO] [stdout] | [INFO] [stdout] 901 | ) -> impl Future> + 'static { [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/connection.rs:899:9 [INFO] [stdout] | [INFO] [stdout] 899 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:900:15 [INFO] [stdout] | [INFO] [stdout] 900 | addr: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 898 ~ pub fn bind>( [INFO] [stdout] 899 | &self, [INFO] [stdout] 900 ~ addr: T, [INFO] [stdout] 901 ~ ) -> impl Future> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:913:10 [INFO] [stdout] | [INFO] [stdout] 913 | ) -> impl Future> + 'static { [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/connection.rs:911:9 [INFO] [stdout] | [INFO] [stdout] 911 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:912:15 [INFO] [stdout] | [INFO] [stdout] 912 | addr: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 910 ~ pub fn unbind>( [INFO] [stdout] 911 | &self, [INFO] [stdout] 912 ~ addr: T, [INFO] [stdout] 913 ~ ) -> impl Future> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:924:10 [INFO] [stdout] | [INFO] [stdout] 924 | ) -> impl Future> + 'static { [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/connection.rs:922:9 [INFO] [stdout] | [INFO] [stdout] 922 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:923:16 [INFO] [stdout] | [INFO] [stdout] 923 | topic: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 921 ~ pub fn subscribe>( [INFO] [stdout] 922 | &self, [INFO] [stdout] 923 ~ topic: T, [INFO] [stdout] 924 ~ ) -> impl Future> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:938:10 [INFO] [stdout] | [INFO] [stdout] 938 | ) -> impl Future> + 'static { [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/connection.rs:936:9 [INFO] [stdout] | [INFO] [stdout] 936 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:937:16 [INFO] [stdout] | [INFO] [stdout] 937 | topic: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 935 ~ pub fn unsubscribe>( [INFO] [stdout] 936 | &self, [INFO] [stdout] 937 ~ topic: T, [INFO] [stdout] 938 ~ ) -> impl Future> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:954:10 [INFO] [stdout] | [INFO] [stdout] 954 | ) -> impl Future> + 'static { [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/connection.rs:950:9 [INFO] [stdout] | [INFO] [stdout] 950 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:951:17 [INFO] [stdout] | [INFO] [stdout] 951 | caller: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 952 | topic: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 949 ~ pub fn broadcast, U: Into>( [INFO] [stdout] 950 | &self, [INFO] [stdout] 951 ~ caller: T, [INFO] [stdout] 952 ~ topic: U, [INFO] [stdout] 953 | body: Vec, [INFO] [stdout] 954 ~ ) -> impl Future> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future, error::Error>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:973:10 [INFO] [stdout] | [INFO] [stdout] 973 | ) -> impl Future, Error>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/connection.rs:968:9 [INFO] [stdout] | [INFO] [stdout] 968 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:969:17 [INFO] [stdout] | [INFO] [stdout] 969 | caller: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 970 | addr: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 971 | body: impl Into>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 967 ~ pub fn call, U: Into, V: Into>>( [INFO] [stdout] 968 | &self, [INFO] [stdout] 969 ~ caller: T, [INFO] [stdout] 970 ~ addr: U, [INFO] [stdout] 971 ~ body: V, [INFO] [stdout] 972 | no_reply: bool, [INFO] [stdout] 973 ~ ) -> impl Future, Error>> + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Stream>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:990:10 [INFO] [stdout] | [INFO] [stdout] 990 | ) -> impl Stream> { [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/connection.rs:986:9 [INFO] [stdout] | [INFO] [stdout] 986 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:987:17 [INFO] [stdout] | [INFO] [stdout] 987 | caller: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 988 | addr: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 989 | body: impl Into>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 985 ~ pub fn call_streaming, U: Into, V: Into>>( [INFO] [stdout] 986 | &self, [INFO] [stdout] 987 ~ caller: T, [INFO] [stdout] 988 ~ addr: U, [INFO] [stdout] 989 ~ body: V, [INFO] [stdout] 990 ~ ) -> impl Stream> + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future::Item, ::Error>, error::Error>> + std::marker::Send` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/typed.rs:91:10 [INFO] [stdout] | [INFO] [stdout] 91 | ) -> impl Future, Error>> + Send { [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/typed.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/typed.rs:89:17 [INFO] [stdout] | [INFO] [stdout] 89 | caller: impl ToString, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 87 ~ pub fn call_as( [INFO] [stdout] 88 | &self, [INFO] [stdout] 89 ~ caller: U, [INFO] [stdout] 90 | msg: T, [INFO] [stdout] 91 ~ ) -> impl Future, Error>> + Send + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/typed.rs:130:10 [INFO] [stdout] | [INFO] [stdout] 130 | ) -> impl Future> { [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/typed.rs:127:9 [INFO] [stdout] | [INFO] [stdout] 127 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/typed.rs:128:17 [INFO] [stdout] | [INFO] [stdout] 128 | caller: impl ToString, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 126 ~ pub fn push_as( [INFO] [stdout] 127 | &self, [INFO] [stdout] 128 ~ caller: U, [INFO] [stdout] 129 | msg: T, [INFO] [stdout] 130 ~ ) -> impl Future> + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: relative drop order changing in Rust 2024 [INFO] [stdout] --> src/connection.rs:1003:41 [INFO] [stdout] | [INFO] [stdout] 1002 | let mut tx = tx; [INFO] [stdout] | ------ [INFO] [stdout] | | [INFO] [stdout] | `tx` calls a custom destructor [INFO] [stdout] | `tx` will be dropped later as of Edition 2024 [INFO] [stdout] 1003 | match connection.send(args).await { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value will be stored in a temporary; let us call it `#1` [INFO] [stdout] | up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1016 | }); [INFO] [stdout] | - now the temporary value is dropped here, before the local variables in the block or statement [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] note: `#1` invokes this custom destructor [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.37.0/src/runtime/time/entry.rs:642:1 [INFO] [stdout] | [INFO] [stdout] 642 | impl Drop for TimerEntry { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: `#1` invokes this custom destructor [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.37.0/src/sync/oneshot.rs:1072:1 [INFO] [stdout] | [INFO] [stdout] 1072 | impl Drop for Receiver { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: `tx` invokes this custom destructor [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/futures-channel-0.3.30/src/mpsc/mod.rs:943:1 [INFO] [stdout] | [INFO] [stdout] 943 | impl Drop for BoundedSenderInner { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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] = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating tests/test_streaming.rs from 2021 edition to 2024 [INFO] [stdout] warning: `impl futures::Future as actix::Message>::Result, error::Error>> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/actix_rpc.rs:60:10 [INFO] [stdout] | [INFO] [stdout] 60 | ) -> impl Future as Message>::Result, BusError>> + 'static { [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/actix_rpc.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/actix_rpc.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | caller: impl ToString, [INFO] [stdout] | ^^^^^^^^^^^^^ [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] 56 ~ pub fn send_as( [INFO] [stdout] 57 | &self, [INFO] [stdout] 58 ~ caller: T, [INFO] [stdout] 59 | msg: M, [INFO] [stdout] 60 ~ ) -> impl Future as Message>::Result, BusError>> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/actix_rpc.rs:77:10 [INFO] [stdout] | [INFO] [stdout] 77 | ) -> impl Future> + 'static { [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/actix_rpc.rs:74:9 [INFO] [stdout] | [INFO] [stdout] 74 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/actix_rpc.rs:75:17 [INFO] [stdout] | [INFO] [stdout] 75 | caller: impl ToString, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 73 ~ pub fn push_as( [INFO] [stdout] 74 | &self, [INFO] [stdout] 75 ~ caller: T, [INFO] [stdout] 76 | msg: M, [INFO] [stdout] 77 ~ ) -> impl Future> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:901:10 [INFO] [stdout] | [INFO] [stdout] 901 | ) -> impl Future> + 'static { [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/connection.rs:899:9 [INFO] [stdout] | [INFO] [stdout] 899 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:900:15 [INFO] [stdout] | [INFO] [stdout] 900 | addr: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 898 ~ pub fn bind>( [INFO] [stdout] 899 | &self, [INFO] [stdout] 900 ~ addr: T, [INFO] [stdout] 901 ~ ) -> impl Future> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:913:10 [INFO] [stdout] | [INFO] [stdout] 913 | ) -> impl Future> + 'static { [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/connection.rs:911:9 [INFO] [stdout] | [INFO] [stdout] 911 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:912:15 [INFO] [stdout] | [INFO] [stdout] 912 | addr: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 910 ~ pub fn unbind>( [INFO] [stdout] 911 | &self, [INFO] [stdout] 912 ~ addr: T, [INFO] [stdout] 913 ~ ) -> impl Future> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:924:10 [INFO] [stdout] | [INFO] [stdout] 924 | ) -> impl Future> + 'static { [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/connection.rs:922:9 [INFO] [stdout] | [INFO] [stdout] 922 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:923:16 [INFO] [stdout] | [INFO] [stdout] 923 | topic: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 921 ~ pub fn subscribe>( [INFO] [stdout] 922 | &self, [INFO] [stdout] 923 ~ topic: T, [INFO] [stdout] 924 ~ ) -> impl Future> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:938:10 [INFO] [stdout] | [INFO] [stdout] 938 | ) -> impl Future> + 'static { [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/connection.rs:936:9 [INFO] [stdout] | [INFO] [stdout] 936 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:937:16 [INFO] [stdout] | [INFO] [stdout] 937 | topic: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 935 ~ pub fn unsubscribe>( [INFO] [stdout] 936 | &self, [INFO] [stdout] 937 ~ topic: T, [INFO] [stdout] 938 ~ ) -> impl Future> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:954:10 [INFO] [stdout] | [INFO] [stdout] 954 | ) -> impl Future> + 'static { [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/connection.rs:950:9 [INFO] [stdout] | [INFO] [stdout] 950 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:951:17 [INFO] [stdout] | [INFO] [stdout] 951 | caller: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 952 | topic: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 949 ~ pub fn broadcast, U: Into>( [INFO] [stdout] 950 | &self, [INFO] [stdout] 951 ~ caller: T, [INFO] [stdout] 952 ~ topic: U, [INFO] [stdout] 953 | body: Vec, [INFO] [stdout] 954 ~ ) -> impl Future> + 'static + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future, error::Error>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:973:10 [INFO] [stdout] | [INFO] [stdout] 973 | ) -> impl Future, Error>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/connection.rs:968:9 [INFO] [stdout] | [INFO] [stdout] 968 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:969:17 [INFO] [stdout] | [INFO] [stdout] 969 | caller: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 970 | addr: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 971 | body: impl Into>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 967 ~ pub fn call, U: Into, V: Into>>( [INFO] [stdout] 968 | &self, [INFO] [stdout] 969 ~ caller: T, [INFO] [stdout] 970 ~ addr: U, [INFO] [stdout] 971 ~ body: V, [INFO] [stdout] 972 | no_reply: bool, [INFO] [stdout] 973 ~ ) -> impl Future, Error>> + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Stream>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/connection.rs:990:10 [INFO] [stdout] | [INFO] [stdout] 990 | ) -> impl Stream> { [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/connection.rs:986:9 [INFO] [stdout] | [INFO] [stdout] 986 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:987:17 [INFO] [stdout] | [INFO] [stdout] 987 | caller: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 988 | addr: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 989 | body: impl Into>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 985 ~ pub fn call_streaming, U: Into, V: Into>>( [INFO] [stdout] 986 | &self, [INFO] [stdout] 987 ~ caller: T, [INFO] [stdout] 988 ~ addr: U, [INFO] [stdout] 989 ~ body: V, [INFO] [stdout] 990 ~ ) -> impl Stream> + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future::Item, ::Error>, error::Error>> + std::marker::Send` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/typed.rs:91:10 [INFO] [stdout] | [INFO] [stdout] 91 | ) -> impl Future, Error>> + Send { [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/typed.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/typed.rs:89:17 [INFO] [stdout] | [INFO] [stdout] 89 | caller: impl ToString, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 87 ~ pub fn call_as( [INFO] [stdout] 88 | &self, [INFO] [stdout] 89 ~ caller: U, [INFO] [stdout] 90 | msg: T, [INFO] [stdout] 91 ~ ) -> impl Future, Error>> + Send + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/typed.rs:130:10 [INFO] [stdout] | [INFO] [stdout] 130 | ) -> impl Future> { [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/typed.rs:127:9 [INFO] [stdout] | [INFO] [stdout] 127 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/typed.rs:128:17 [INFO] [stdout] | [INFO] [stdout] 128 | caller: impl ToString, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 126 ~ pub fn push_as( [INFO] [stdout] 127 | &self, [INFO] [stdout] 128 ~ caller: U, [INFO] [stdout] 129 | msg: T, [INFO] [stdout] 130 ~ ) -> impl Future> + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating examples/test_router_raw.rs from 2021 edition to 2024 [INFO] [stderr] Fixed examples/test_router_raw.rs (2 fixes) [INFO] [stderr] Migrating examples/test_actix_service.rs from 2021 edition to 2024 [INFO] [stderr] Fixed examples/test_actix_service.rs (1 fix) [INFO] [stderr] Migrating examples/test_async_aw.rs from 2021 edition to 2024 [INFO] [stderr] Fixed examples/test_async_aw.rs (1 fix) [INFO] [stderr] Migrating examples/test_compat.rs from 2021 edition to 2024 [INFO] [stderr] Fixed examples/test_compat.rs (1 fix) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.20s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Checking ya-service-bus v0.7.3 (/tmp/fixit) [INFO] [stdout] error: captured variable cannot escape `FnMut` closure body [INFO] [stdout] --> src/remote_router.rs:84:52 [INFO] [stdout] | [INFO] [stdout] 75 | let connection = [INFO] [stdout] | ---------- variable defined here [INFO] [stdout] ... [INFO] [stdout] 84 | .map(move |service_id| connection.bind(service_id)), [INFO] [stdout] | - ----------^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | returns a closure that contains a reference to a captured variable, which then escapes the closure body [INFO] [stdout] | | variable captured here [INFO] [stdout] | inferred to be a `FnMut` closure [INFO] [stdout] | [INFO] [stdout] = note: `FnMut` closures only have access to their captured variables while they are executing... [INFO] [stdout] = note: ...therefore, they cannot allow references to captured variables to escape [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: captured variable cannot escape `FnMut` closure body [INFO] [stdout] --> src/remote_router.rs:84:52 [INFO] [stdout] | [INFO] [stdout] 75 | let connection = [INFO] [stdout] | ---------- variable defined here [INFO] [stdout] ... [INFO] [stdout] 84 | .map(move |service_id| connection.bind(service_id)), [INFO] [stdout] | - ----------^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | returns a closure that contains a reference to a captured variable, which then escapes the closure body [INFO] [stdout] | | variable captured here [INFO] [stdout] | inferred to be a `FnMut` closure [INFO] [stdout] | [INFO] [stdout] = note: `FnMut` closures only have access to their captured variables while they are executing... [INFO] [stdout] = note: ...therefore, they cannot allow references to captured variables to escape [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing function parameter `connection` [INFO] [stdout] --> src/remote_router.rs:228:21 [INFO] [stdout] | [INFO] [stdout] 228 | connection.call(msg.caller, msg.addr, msg.body, msg.no_reply) [INFO] [stdout] | ----------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | returns a value referencing data owned by the current function [INFO] [stdout] | `connection` is borrowed here [INFO] [stdout] | [INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules [INFO] [stdout] --> src/remote_router.rs:228:21 [INFO] [stdout] | [INFO] [stdout] 228 | connection.call(msg.caller, msg.addr, msg.body, msg.no_reply) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:969:17 [INFO] [stdout] | [INFO] [stdout] 969 | caller: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 970 | addr: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 971 | body: impl Into>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] --> src/connection.rs:967:16 [INFO] [stdout] | [INFO] [stdout] 967 ~ pub fn call, U: Into, V: Into>>( [INFO] [stdout] 968 | &self, [INFO] [stdout] 969 ~ caller: T, [INFO] [stdout] 970 ~ addr: U, [INFO] [stdout] 971 ~ body: V, [INFO] [stdout] 972 | no_reply: bool, [INFO] [stdout] 973 ~ ) -> impl Future, Error>> + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing function parameter `connection` [INFO] [stdout] --> src/remote_router.rs:228:21 [INFO] [stdout] | [INFO] [stdout] 228 | connection.call(msg.caller, msg.addr, msg.body, msg.no_reply) [INFO] [stdout] | ----------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | returns a value referencing data owned by the current function [INFO] [stdout] | `connection` is borrowed here [INFO] [stdout] | [INFO] [stdout] note: this call may capture more lifetimes than intended, because Rust 2024 has adjusted the `impl Trait` lifetime capture rules [INFO] [stdout] --> src/remote_router.rs:228:21 [INFO] [stdout] | [INFO] [stdout] 228 | connection.call(msg.caller, msg.addr, msg.body, msg.no_reply) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: you could use a `use<...>` bound to explicitly specify captures, but argument-position `impl Trait`s are not nameable [INFO] [stdout] --> src/connection.rs:969:17 [INFO] [stdout] | [INFO] [stdout] 969 | caller: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 970 | addr: impl Into, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 971 | body: impl Into>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] --> src/connection.rs:967:16 [INFO] [stdout] | [INFO] [stdout] 967 ~ pub fn call, U: Into, V: Into>>( [INFO] [stdout] 968 | &self, [INFO] [stdout] 969 ~ caller: T, [INFO] [stdout] 970 ~ addr: U, [INFO] [stdout] 971 ~ body: V, [INFO] [stdout] 972 | no_reply: bool, [INFO] [stdout] 973 ~ ) -> impl Future, Error>> + use { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/typed.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 159 | fn send_as(&self, caller: impl ToString + 'static, msg: T) -> Self::Result { [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] 160 | Endpoint::call_as(self, caller, msg).boxed() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ returning this value requires that `'1` must outlive `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/typed.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 159 | fn send_as(&self, caller: impl ToString + 'static, msg: T) -> Self::Result { [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] 160 | Endpoint::call_as(self, caller, msg).boxed() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ returning this value requires that `'1` must outlive `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0515`. [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0515`. [INFO] [stdout] [INFO] [stderr] error: could not compile `ya-service-bus` (lib) due to 3 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `ya-service-bus` (lib test) due to 3 previous errors [INFO] [stderr] error: failed to check after updating to 2024 [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo check --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "6a9df22e7deb2a3aeaf3b56574502bff02b7fb6b3d18a366e00edcbb5fd2d4a5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6a9df22e7deb2a3aeaf3b56574502bff02b7fb6b3d18a366e00edcbb5fd2d4a5", kill_on_drop: false }` [INFO] [stdout] 6a9df22e7deb2a3aeaf3b56574502bff02b7fb6b3d18a366e00edcbb5fd2d4a5