[INFO] fetching crate ya-service-bus 0.7.3... [INFO] checking ya-service-bus-0.7.3 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate ya-service-bus 0.7.3 into /workspace/builds/worker-1-tc2/source [INFO] validating manifest of crates.io crate ya-service-bus 0.7.3 on toolchain ccf408f4326a858c00dd845a64a86b16f360a801 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate 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-1-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" "+ccf408f4326a858c00dd845a64a86b16f360a801" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8baed25a779e552ce32d7484f12ec52f8bbb70c3f795860106117b11c3d9a133 [INFO] running `Command { std: "docker" "start" "-a" "8baed25a779e552ce32d7484f12ec52f8bbb70c3f795860106117b11c3d9a133", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8baed25a779e552ce32d7484f12ec52f8bbb70c3f795860106117b11c3d9a133", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8baed25a779e552ce32d7484f12ec52f8bbb70c3f795860106117b11c3d9a133", kill_on_drop: false }` [INFO] [stdout] 8baed25a779e552ce32d7484f12ec52f8bbb70c3f795860106117b11c3d9a133 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9128305a8640323f5e4e6804c8406932ba9919caf4a7741e3bc58d769b9fc31c [INFO] running `Command { std: "docker" "start" "-a" "9128305a8640323f5e4e6804c8406932ba9919caf4a7741e3bc58d769b9fc31c", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Migrating Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Fixed Cargo.toml (4 fixes) [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] Checking memchr v2.7.2 [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 rustix v0.38.34 [INFO] [stderr] Compiling anyhow v1.0.82 [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] Compiling itertools v0.10.5 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Compiling toml_datetime v0.6.5 [INFO] [stderr] Compiling fixedbitset v0.4.2 [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 fastrand v2.0.2 [INFO] [stderr] Checking tinyvec v1.6.0 [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling indexmap v2.2.6 [INFO] [stderr] Compiling cmake v0.1.50 [INFO] [stderr] Checking log v0.4.21 [INFO] [stderr] Compiling multimap v0.8.3 [INFO] [stderr] Compiling serde v1.0.198 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling pin-project-internal v0.4.30 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling unicode-segmentation v1.11.0 [INFO] [stderr] Compiling syn v2.0.60 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Checking socket2 v0.5.6 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking getrandom v0.2.14 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Compiling petgraph v0.6.4 [INFO] [stderr] Compiling toml_edit v0.19.15 [INFO] [stderr] Checking unicode-normalization v0.1.23 [INFO] [stderr] Checking crossbeam-channel v0.5.12 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking tokio v1.37.0 [INFO] [stderr] Compiling regex-automata v0.4.6 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Compiling ring v0.17.8 [INFO] [stderr] Checking iana-time-zone v0.1.60 [INFO] [stderr] Checking ppv-lite86 v0.2.17 [INFO] [stderr] Checking unicode-width v0.1.11 [INFO] [stderr] Checking untrusted v0.9.0 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Compiling heck v0.3.3 [INFO] [stderr] Checking fxhash v0.2.1 [INFO] [stderr] Checking quick-error v1.2.3 [INFO] [stderr] Checking vec_map v0.8.2 [INFO] [stderr] Checking strsim v0.8.0 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Compiling serde_json v1.0.116 [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 chrono v0.4.38 [INFO] [stderr] Checking url v2.5.0 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking clap v2.34.0 [INFO] [stderr] Checking humantime v1.3.0 [INFO] [stderr] Checking uuid v0.8.2 [INFO] [stderr] Checking ryu v1.0.17 [INFO] [stderr] Compiling prost-build v0.10.4 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Compiling proc-macro-crate v1.3.1 [INFO] [stderr] Checking ya-packet-trace v0.1.0 [INFO] [stderr] Compiling regex v1.10.4 [INFO] [stderr] Compiling thiserror-impl v1.0.59 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling serde_derive v1.0.198 [INFO] [stderr] Compiling actix-macros v0.2.4 [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 futures-util v0.3.30 [INFO] [stderr] Checking pest v2.7.9 [INFO] [stderr] Compiling prost-derive v0.10.1 [INFO] [stderr] Compiling num_enum_derive v0.5.11 [INFO] [stderr] Compiling actix_derive v0.6.0 [INFO] [stderr] Compiling async-stream-impl v0.2.1 [INFO] [stderr] Compiling structopt-derive v0.4.18 [INFO] [stderr] Checking env_logger v0.7.1 [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] Compiling prost-types v0.10.1 [INFO] [stderr] Checking semver-parser v0.10.2 [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] Checking ya-sb-util v0.5.1 [INFO] [stderr] Compiling ya-sb-proto v0.6.2 [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] warning: failed to automatically apply fixes suggested by rustc to crate `ya_service_bus` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/local_router.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error: mismatched closing delimiter: `)` [INFO] [stderr] --> src/local_router.rs:537:36 [INFO] [stderr] | [INFO] [stderr] 537 | match slot.recipient() { Some(h) => { [INFO] [stderr] | ^ unclosed delimiter [INFO] [stderr] ... [INFO] [stderr] 558 | })} [INFO] [stderr] | ^ mismatched closing delimiter [INFO] [stderr] [INFO] [stderr] error: unexpected closing delimiter: `}` [INFO] [stderr] --> src/local_router.rs:750:1 [INFO] [stderr] | [INFO] [stderr] 558 | })} [INFO] [stderr] | - missing open `(` for this delimiter [INFO] [stderr] ... [INFO] [stderr] 750 | } [INFO] [stderr] | ^ unexpected closing delimiter [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/connection.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | rng.gen::() & 0x001f_ffff_ffff_ffffu64 [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `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:51:10 [INFO] [stdout] | [INFO] [stdout] 51 | ) -> 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:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 51 | ) -> impl Future as Message>::Result, BusError>> + 'static + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [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] [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:68:10 [INFO] [stdout] | [INFO] [stdout] 68 | ) -> 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:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 68 | ) -> 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/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] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Stream::Item, ::Error>, error::Error>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/actix_rpc.rs:86:10 [INFO] [stdout] | [INFO] [stdout] 86 | ) -> impl Stream, BusError>> { [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:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 86 | ) -> impl Stream, BusError>> + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:207:8 [INFO] [stdout] | [INFO] [stdout] 207 | if let Some(r) = queue.pop_front() { [INFO] [stdout] | ^^^^^^^^^^^^^^----------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:209:5 [INFO] [stdout] | [INFO] [stdout] 209 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 207 ~ match queue.pop_front() { Some(r) => { [INFO] [stdout] 208 | let _ = r.send(reply_msg()); [INFO] [stdout] 209 ~ } _ => { [INFO] [stdout] 210 | log::error!("unmatched {} reply", cmd_type); [INFO] [stdout] 211 | ctx.stop() [INFO] [stdout] 212 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:438:12 [INFO] [stdout] | [INFO] [stdout] 438 | if let Some(r) = self.call_reply.get_mut(&request_id) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:459:9 [INFO] [stdout] | [INFO] [stdout] 459 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 438 ~ match self.call_reply.get_mut(&request_id) { Some(r) => { [INFO] [stdout] 439 | // TODO: check error [INFO] [stdout] ... [INFO] [stdout] 458 | ); [INFO] [stdout] 459 ~ } _ => { [INFO] [stdout] 460 | log::debug!("unmatched call reply"); [INFO] [stdout] 461 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:602:20 [INFO] [stdout] | [INFO] [stdout] 602 | if let Err(e) = self.handle_reply(r.request_id, r.code, r.reply_type, r.data, ctx) { [INFO] [stdout] | ^^^^^^^^^^^^^------------------------------------------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:605:17 [INFO] [stdout] | [INFO] [stdout] 605 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 602 ~ match self.handle_reply(r.request_id, r.code, r.reply_type, r.data, ctx) { Err(e) => { [INFO] [stdout] 603 | log::error!("error on call reply processing: {}", e); [INFO] [stdout] 604 | ctx.stop(); [INFO] [stdout] 605 ~ } _ => {}} [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] [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] [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] [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] [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] [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] [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] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:312:12 [INFO] [stdout] | [INFO] [stdout] 312 | if let Some(e) = self.inner.recipient().downcast_ref::() { [INFO] [stdout] | ^^^^^^^^^^^^^^----------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:314:9 [INFO] [stdout] | [INFO] [stdout] 314 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 312 ~ match self.inner.recipient().downcast_ref::() { Some(e) => { [INFO] [stdout] 313 | Some(e.stream.clone()) [INFO] [stdout] 314 ~ } _ => { [INFO] [stdout] 315 | self.inner [INFO] [stdout] ... [INFO] [stdout] 318 | .cloned() [INFO] [stdout] 319 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future, error::Error>> + Unpin + std::marker::Send` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/local_router.rs:322:40 [INFO] [stdout] | [INFO] [stdout] 322 | fn send(&self, msg: RpcRawCall) -> impl Future, Error>> + Unpin + 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/local_router.rs:322:13 [INFO] [stdout] | [INFO] [stdout] 322 | fn send(&self, msg: RpcRawCall) -> impl Future, Error>> + Unpin + Send { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 322 | fn send(&self, msg: RpcRawCall) -> impl Future, Error>> + Unpin + Send + 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/local_router.rs:326:50 [INFO] [stdout] | [INFO] [stdout] 326 | fn send_streaming(&self, msg: RpcRawCall) -> 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/local_router.rs:326:23 [INFO] [stdout] | [INFO] [stdout] 326 | fn send_streaming(&self, msg: RpcRawCall) -> impl Stream> { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 326 | fn send_streaming(&self, msg: RpcRawCall) -> impl Stream> + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Stream::Item, ::Error>, error::Error>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/local_router.rs:335:10 [INFO] [stdout] | [INFO] [stdout] 335 | ) -> impl Stream, 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/local_router.rs:331:9 [INFO] [stdout] | [INFO] [stdout] 331 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 335 | ) -> impl Stream, Error>> + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:338:12 [INFO] [stdout] | [INFO] [stdout] 338 | if let Some(h) = self.stream_recipient() { [INFO] [stdout] | ^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 354 | } else if let Some(h) = self.raw_stream_recipient() { [INFO] [stdout] | --------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:354:9 [INFO] [stdout] | [INFO] [stdout] 354 | } else if let Some(h) = self.raw_stream_recipient() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:389:9 [INFO] [stdout] | [INFO] [stdout] 389 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 338 ~ match self.stream_recipient() { Some(h) => { [INFO] [stdout] 339 | let (reply, rx) = futures::channel::mpsc::channel(16); [INFO] [stdout] ... [INFO] [stdout] 353 | rx.map(|v| Ok(v)).boxed_local().left_stream() [INFO] [stdout] 354 ~ } _ => { match self.raw_stream_recipient() { Some(h) => { [INFO] [stdout] 355 | (move || { [INFO] [stdout] ... [INFO] [stdout] 388 | .right_stream() [INFO] [stdout] 389 ~ } _ => { [INFO] [stdout] 390 | (move || { [INFO] [stdout] ... [INFO] [stdout] 415 | .right_stream() [INFO] [stdout] 416 ~ }}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + Unpin` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/local_router.rs:444:45 [INFO] [stdout] | [INFO] [stdout] 444 | pub fn unbind(&mut self, addr: &str) -> impl Future> + Unpin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:444:19 [INFO] [stdout] | [INFO] [stdout] 444 | pub fn unbind(&mut self, addr: &str) -> impl Future> + Unpin { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 444 | pub fn unbind(&mut self, addr: &str) -> impl Future> + Unpin + 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/local_router.rs:533:10 [INFO] [stdout] | [INFO] [stdout] 533 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:530:9 [INFO] [stdout] | [INFO] [stdout] 530 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] 531 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 533 | ) -> impl Future, Error>> + Send + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:536:12 [INFO] [stdout] | [INFO] [stdout] 536 | if let Some(slot) = self.handlers.get_mut(&addr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:560:9 [INFO] [stdout] | [INFO] [stdout] 560 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 536 ~ match self.handlers.get_mut(&addr) { Some(slot) => { [INFO] [stdout] 537 | (if let Some(h) = slot.recipient() { [INFO] [stdout] ... [INFO] [stdout] 559 | .left_future() [INFO] [stdout] 560 ~ } _ => { [INFO] [stdout] 561 | RemoteRouter::from_registry() [INFO] [stdout] ... [INFO] [stdout] 583 | .right_future() [INFO] [stdout] 584 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:537:17 [INFO] [stdout] | [INFO] [stdout] 537 | (if let Some(h) = slot.recipient() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:541:13 [INFO] [stdout] | [INFO] [stdout] 541 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 537 ~ match slot.recipient() { Some(h) => { [INFO] [stdout] 538 | h.send(msg) [INFO] [stdout] 539 | .map_err(|e| Error::from_addr(addr, e)) [INFO] [stdout] 540 | .left_future() [INFO] [stdout] 541 ~ } _ => { [INFO] [stdout] 542 | slot.send(RpcRawCall::from_envelope_addr(msg, addr, false)) [INFO] [stdout] ... [INFO] [stdout] 557 | .right_future() [INFO] [stdout] 558 ~ })} [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/local_router.rs:591:10 [INFO] [stdout] | [INFO] [stdout] 591 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:588:9 [INFO] [stdout] | [INFO] [stdout] 588 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] 589 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 591 | ) -> impl Future> + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:593:12 [INFO] [stdout] | [INFO] [stdout] 593 | if let Some(slot) = self.handlers.get_mut(&addr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:609:9 [INFO] [stdout] | [INFO] [stdout] 609 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 593 ~ match self.handlers.get_mut(&addr) { Some(slot) => { [INFO] [stdout] 594 | if let Some(h) = slot.recipient() { [INFO] [stdout] ... [INFO] [stdout] 608 | .left_future() [INFO] [stdout] 609 ~ } _ => { [INFO] [stdout] 610 | RemoteRouter::from_registry() [INFO] [stdout] ... [INFO] [stdout] 618 | .right_future() [INFO] [stdout] 619 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:594:16 [INFO] [stdout] | [INFO] [stdout] 594 | if let Some(h) = slot.recipient() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:603:13 [INFO] [stdout] | [INFO] [stdout] 603 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 594 ~ match slot.recipient() { Some(h) => { [INFO] [stdout] 595 | h.send(msg) [INFO] [stdout] ... [INFO] [stdout] 602 | .left_future() [INFO] [stdout] 603 ~ } _ => { [INFO] [stdout] 604 | slot.send(RpcRawCall::from_envelope_addr(msg, addr.clone(), true)) [INFO] [stdout] 605 | .then(|v| future::ready(v.map(|_| ()))) [INFO] [stdout] 606 | .right_future() [INFO] [stdout] 607 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Stream::Item, ::Error>, error::Error>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/local_router.rs:627:10 [INFO] [stdout] | [INFO] [stdout] 627 | ) -> impl Stream, 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:623:9 [INFO] [stdout] | [INFO] [stdout] 623 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] 624 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 627 | ) -> impl Stream, Error>> + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:630:12 [INFO] [stdout] | [INFO] [stdout] 630 | if let Some(slot) = self.handlers.get_mut(&addr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:632:9 [INFO] [stdout] | [INFO] [stdout] 632 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 630 ~ match self.handlers.get_mut(&addr) { Some(slot) => { [INFO] [stdout] 631 | slot.streaming_forward(caller, addr, msg).left_stream() [INFO] [stdout] 632 ~ } _ => { [INFO] [stdout] 633 | //use futures::StreamExt; [INFO] [stdout] ... [INFO] [stdout] 653 | .right_stream() [INFO] [stdout] 654 ~ }} [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/local_router.rs:663:10 [INFO] [stdout] | [INFO] [stdout] 663 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:658:9 [INFO] [stdout] | [INFO] [stdout] 658 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] 659 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] 660 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 663 | ) -> impl Future, Error>> + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:665:12 [INFO] [stdout] | [INFO] [stdout] 665 | if let Some(slot) = self.handlers.get_mut(&addr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:673:9 [INFO] [stdout] | [INFO] [stdout] 673 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 665 ~ match self.handlers.get_mut(&addr) { Some(slot) => { [INFO] [stdout] 666 | slot.send(RpcRawCall { [INFO] [stdout] ... [INFO] [stdout] 672 | .left_future() [INFO] [stdout] 673 ~ } _ => { [INFO] [stdout] 674 | RemoteRouter::from_registry() [INFO] [stdout] ... [INFO] [stdout] 685 | .right_future() [INFO] [stdout] 686 ~ }} [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/local_router.rs:694:10 [INFO] [stdout] | [INFO] [stdout] 694 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:690:9 [INFO] [stdout] | [INFO] [stdout] 690 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] 691 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] 692 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 694 | ) -> impl Stream> + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:695:12 [INFO] [stdout] | [INFO] [stdout] 695 | if let Some(slot) = self.handlers.get_mut(addr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:703:9 [INFO] [stdout] | [INFO] [stdout] 703 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 695 ~ match self.handlers.get_mut(addr) { Some(slot) => { [INFO] [stdout] 696 | slot.send_streaming(RpcRawCall { [INFO] [stdout] ... [INFO] [stdout] 702 | .left_stream() [INFO] [stdout] 703 ~ } _ => { [INFO] [stdout] 704 | let (tx, rx) = mpsc::channel(16); [INFO] [stdout] ... [INFO] [stdout] 718 | .right_stream() [INFO] [stdout] 719 ~ }} [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/local_router.rs:728:10 [INFO] [stdout] | [INFO] [stdout] 728 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:723:9 [INFO] [stdout] | [INFO] [stdout] 723 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] 724 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] 725 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] 726 | msg: &[u8], [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 728 | ) -> impl Stream> + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:730:12 [INFO] [stdout] | [INFO] [stdout] 730 | if let Some(slot) = self.handlers.get_mut(&addr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:745:9 [INFO] [stdout] | [INFO] [stdout] 745 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 730 ~ match self.handlers.get_mut(&addr) { Some(slot) => { [INFO] [stdout] 731 | let msg = RpcRawCall { [INFO] [stdout] ... [INFO] [stdout] 744 | } [INFO] [stdout] 745 ~ } _ => { [INFO] [stdout] 746 | log::warn!("no endpoint: {}", addr); [INFO] [stdout] 747 | futures::stream::once(async { Err(Error::NoEndpoint(addr)) }).boxed_local() [INFO] [stdout] 748 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/remote_router.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | if let Some(ref mut rx) = self.shutdown_rx { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/remote_router.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 39 ~ match self.shutdown_rx { Some(ref mut rx) => { [INFO] [stdout] 40 | match rx.try_recv() { [INFO] [stdout] ... [INFO] [stdout] 43 | } [INFO] [stdout] 44 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future, error::Error>> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/remote_router.rs:121:33 [INFO] [stdout] | [INFO] [stdout] 121 | fn connection(&mut self) -> 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/remote_router.rs:121:19 [INFO] [stdout] | [INFO] [stdout] 121 | fn connection(&mut self) -> impl Future> + 'static { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 121 | fn connection(&mut self) -> impl Future> + 'static + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/remote_router.rs:261:16 [INFO] [stdout] | [INFO] [stdout] 261 | if let Err(e) = result { [INFO] [stdout] | ^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/remote_router.rs:263:13 [INFO] [stdout] | [INFO] [stdout] 263 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 261 ~ match result { Err(e) => { [INFO] [stdout] 262 | log::error!("Remote router RpcRawStreamCall handler error: {}", e); [INFO] [stdout] 263 ~ } _ => {}} [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:80:10 [INFO] [stdout] | [INFO] [stdout] 80 | ) -> 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:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 80 | ) -> impl Future, Error>> + Send + 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] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Stream::Item, ::Error>, error::Error>> + Unpin` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/typed.rs:101:10 [INFO] [stdout] | [INFO] [stdout] 101 | ) -> impl Stream, Error>> + Unpin { [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:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 101 | ) -> impl Stream, Error>> + Unpin + 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/typed.rs:112:10 [INFO] [stdout] | [INFO] [stdout] 112 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/typed.rs:109:9 [INFO] [stdout] | [INFO] [stdout] 109 | &self, [INFO] [stdout] | ^ [INFO] [stdout] 110 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 112 | ) -> impl Future, Error>> + 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:119:58 [INFO] [stdout] | [INFO] [stdout] 119 | pub fn push(&self, msg: T) -> 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:119:40 [INFO] [stdout] | [INFO] [stdout] 119 | pub fn push(&self, msg: T) -> impl Future> { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 119 | pub fn push(&self, msg: T) -> impl Future> + 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] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future, error::Error>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/typed.rs:141:10 [INFO] [stdout] | [INFO] [stdout] 141 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/typed.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 138 | &self, [INFO] [stdout] | ^ [INFO] [stdout] 139 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 141 | ) -> impl Future, Error>> + 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/untyped.rs:12:6 [INFO] [stdout] | [INFO] [stdout] 12 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/untyped.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] 10 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] 11 | bytes: &[u8], [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 12 | ) -> impl Future, Error>> + 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/untyped.rs:20:6 [INFO] [stdout] | [INFO] [stdout] 20 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/untyped.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] 18 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] 19 | bytes: &[u8], [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 20 | ) -> impl Future, Error>> + 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/untyped.rs:41:6 [INFO] [stdout] | [INFO] [stdout] 41 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/untyped.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] 38 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] 39 | bytes: &[u8], [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 41 | ) -> impl Future, Error>> + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 49 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating examples/test_router_raw.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `ya_service_bus` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/local_router.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error: mismatched closing delimiter: `)` [INFO] [stderr] --> src/local_router.rs:537:36 [INFO] [stderr] | [INFO] [stderr] 537 | match slot.recipient() { Some(h) => { [INFO] [stderr] | ^ unclosed delimiter [INFO] [stderr] ... [INFO] [stderr] 558 | })} [INFO] [stderr] | ^ mismatched closing delimiter [INFO] [stderr] [INFO] [stderr] error: unexpected closing delimiter: `}` [INFO] [stderr] --> src/local_router.rs:750:1 [INFO] [stderr] | [INFO] [stderr] 558 | })} [INFO] [stderr] | - missing open `(` for this delimiter [INFO] [stderr] ... [INFO] [stderr] 750 | } [INFO] [stderr] | ^ unexpected closing delimiter [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/connection.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | rng.gen::() & 0x001f_ffff_ffff_ffffu64 [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `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:51:10 [INFO] [stdout] | [INFO] [stdout] 51 | ) -> 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:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 51 | ) -> impl Future as Message>::Result, BusError>> + 'static + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [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] [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:68:10 [INFO] [stdout] | [INFO] [stdout] 68 | ) -> 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:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 68 | ) -> 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/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] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Stream::Item, ::Error>, error::Error>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/actix_rpc.rs:86:10 [INFO] [stdout] | [INFO] [stdout] 86 | ) -> impl Stream, BusError>> { [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:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 86 | ) -> impl Stream, BusError>> + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:207:8 [INFO] [stdout] | [INFO] [stdout] 207 | if let Some(r) = queue.pop_front() { [INFO] [stdout] | ^^^^^^^^^^^^^^----------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:209:5 [INFO] [stdout] | [INFO] [stdout] 209 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 207 ~ match queue.pop_front() { Some(r) => { [INFO] [stdout] 208 | let _ = r.send(reply_msg()); [INFO] [stdout] 209 ~ } _ => { [INFO] [stdout] 210 | log::error!("unmatched {} reply", cmd_type); [INFO] [stdout] 211 | ctx.stop() [INFO] [stdout] 212 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:438:12 [INFO] [stdout] | [INFO] [stdout] 438 | if let Some(r) = self.call_reply.get_mut(&request_id) { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:459:9 [INFO] [stdout] | [INFO] [stdout] 459 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 438 ~ match self.call_reply.get_mut(&request_id) { Some(r) => { [INFO] [stdout] 439 | // TODO: check error [INFO] [stdout] ... [INFO] [stdout] 458 | ); [INFO] [stdout] 459 ~ } _ => { [INFO] [stdout] 460 | log::debug!("unmatched call reply"); [INFO] [stdout] 461 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:602:20 [INFO] [stdout] | [INFO] [stdout] 602 | if let Err(e) = self.handle_reply(r.request_id, r.code, r.reply_type, r.data, ctx) { [INFO] [stdout] | ^^^^^^^^^^^^^------------------------------------------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:605:17 [INFO] [stdout] | [INFO] [stdout] 605 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 602 ~ match self.handle_reply(r.request_id, r.code, r.reply_type, r.data, ctx) { Err(e) => { [INFO] [stdout] 603 | log::error!("error on call reply processing: {}", e); [INFO] [stdout] 604 | ctx.stop(); [INFO] [stdout] 605 ~ } _ => {}} [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] [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] [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] [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] [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] [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] [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] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:312:12 [INFO] [stdout] | [INFO] [stdout] 312 | if let Some(e) = self.inner.recipient().downcast_ref::() { [INFO] [stdout] | ^^^^^^^^^^^^^^----------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:314:9 [INFO] [stdout] | [INFO] [stdout] 314 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 312 ~ match self.inner.recipient().downcast_ref::() { Some(e) => { [INFO] [stdout] 313 | Some(e.stream.clone()) [INFO] [stdout] 314 ~ } _ => { [INFO] [stdout] 315 | self.inner [INFO] [stdout] ... [INFO] [stdout] 318 | .cloned() [INFO] [stdout] 319 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future, error::Error>> + Unpin + std::marker::Send` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/local_router.rs:322:40 [INFO] [stdout] | [INFO] [stdout] 322 | fn send(&self, msg: RpcRawCall) -> impl Future, Error>> + Unpin + 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/local_router.rs:322:13 [INFO] [stdout] | [INFO] [stdout] 322 | fn send(&self, msg: RpcRawCall) -> impl Future, Error>> + Unpin + Send { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 322 | fn send(&self, msg: RpcRawCall) -> impl Future, Error>> + Unpin + Send + 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/local_router.rs:326:50 [INFO] [stdout] | [INFO] [stdout] 326 | fn send_streaming(&self, msg: RpcRawCall) -> 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/local_router.rs:326:23 [INFO] [stdout] | [INFO] [stdout] 326 | fn send_streaming(&self, msg: RpcRawCall) -> impl Stream> { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 326 | fn send_streaming(&self, msg: RpcRawCall) -> impl Stream> + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Stream::Item, ::Error>, error::Error>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/local_router.rs:335:10 [INFO] [stdout] | [INFO] [stdout] 335 | ) -> impl Stream, 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/local_router.rs:331:9 [INFO] [stdout] | [INFO] [stdout] 331 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 335 | ) -> impl Stream, Error>> + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:338:12 [INFO] [stdout] | [INFO] [stdout] 338 | if let Some(h) = self.stream_recipient() { [INFO] [stdout] | ^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 354 | } else if let Some(h) = self.raw_stream_recipient() { [INFO] [stdout] | --------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:354:9 [INFO] [stdout] | [INFO] [stdout] 354 | } else if let Some(h) = self.raw_stream_recipient() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:389:9 [INFO] [stdout] | [INFO] [stdout] 389 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 338 ~ match self.stream_recipient() { Some(h) => { [INFO] [stdout] 339 | let (reply, rx) = futures::channel::mpsc::channel(16); [INFO] [stdout] ... [INFO] [stdout] 353 | rx.map(|v| Ok(v)).boxed_local().left_stream() [INFO] [stdout] 354 ~ } _ => { match self.raw_stream_recipient() { Some(h) => { [INFO] [stdout] 355 | (move || { [INFO] [stdout] ... [INFO] [stdout] 388 | .right_stream() [INFO] [stdout] 389 ~ } _ => { [INFO] [stdout] 390 | (move || { [INFO] [stdout] ... [INFO] [stdout] 415 | .right_stream() [INFO] [stdout] 416 ~ }}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future> + Unpin` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/local_router.rs:444:45 [INFO] [stdout] | [INFO] [stdout] 444 | pub fn unbind(&mut self, addr: &str) -> impl Future> + Unpin { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:444:19 [INFO] [stdout] | [INFO] [stdout] 444 | pub fn unbind(&mut self, addr: &str) -> impl Future> + Unpin { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 444 | pub fn unbind(&mut self, addr: &str) -> impl Future> + Unpin + 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/local_router.rs:533:10 [INFO] [stdout] | [INFO] [stdout] 533 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:530:9 [INFO] [stdout] | [INFO] [stdout] 530 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] 531 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 533 | ) -> impl Future, Error>> + Send + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:536:12 [INFO] [stdout] | [INFO] [stdout] 536 | if let Some(slot) = self.handlers.get_mut(&addr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:560:9 [INFO] [stdout] | [INFO] [stdout] 560 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 536 ~ match self.handlers.get_mut(&addr) { Some(slot) => { [INFO] [stdout] 537 | (if let Some(h) = slot.recipient() { [INFO] [stdout] ... [INFO] [stdout] 559 | .left_future() [INFO] [stdout] 560 ~ } _ => { [INFO] [stdout] 561 | RemoteRouter::from_registry() [INFO] [stdout] ... [INFO] [stdout] 583 | .right_future() [INFO] [stdout] 584 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:537:17 [INFO] [stdout] | [INFO] [stdout] 537 | (if let Some(h) = slot.recipient() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:541:13 [INFO] [stdout] | [INFO] [stdout] 541 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 537 ~ match slot.recipient() { Some(h) => { [INFO] [stdout] 538 | h.send(msg) [INFO] [stdout] 539 | .map_err(|e| Error::from_addr(addr, e)) [INFO] [stdout] 540 | .left_future() [INFO] [stdout] 541 ~ } _ => { [INFO] [stdout] 542 | slot.send(RpcRawCall::from_envelope_addr(msg, addr, false)) [INFO] [stdout] ... [INFO] [stdout] 557 | .right_future() [INFO] [stdout] 558 ~ })} [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/local_router.rs:591:10 [INFO] [stdout] | [INFO] [stdout] 591 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:588:9 [INFO] [stdout] | [INFO] [stdout] 588 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] 589 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 591 | ) -> impl Future> + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:593:12 [INFO] [stdout] | [INFO] [stdout] 593 | if let Some(slot) = self.handlers.get_mut(&addr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:609:9 [INFO] [stdout] | [INFO] [stdout] 609 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 593 ~ match self.handlers.get_mut(&addr) { Some(slot) => { [INFO] [stdout] 594 | if let Some(h) = slot.recipient() { [INFO] [stdout] ... [INFO] [stdout] 608 | .left_future() [INFO] [stdout] 609 ~ } _ => { [INFO] [stdout] 610 | RemoteRouter::from_registry() [INFO] [stdout] ... [INFO] [stdout] 618 | .right_future() [INFO] [stdout] 619 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:594:16 [INFO] [stdout] | [INFO] [stdout] 594 | if let Some(h) = slot.recipient() { [INFO] [stdout] | ^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:603:13 [INFO] [stdout] | [INFO] [stdout] 603 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 594 ~ match slot.recipient() { Some(h) => { [INFO] [stdout] 595 | h.send(msg) [INFO] [stdout] ... [INFO] [stdout] 602 | .left_future() [INFO] [stdout] 603 ~ } _ => { [INFO] [stdout] 604 | slot.send(RpcRawCall::from_envelope_addr(msg, addr.clone(), true)) [INFO] [stdout] 605 | .then(|v| future::ready(v.map(|_| ()))) [INFO] [stdout] 606 | .right_future() [INFO] [stdout] 607 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Stream::Item, ::Error>, error::Error>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/local_router.rs:627:10 [INFO] [stdout] | [INFO] [stdout] 627 | ) -> impl Stream, 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:623:9 [INFO] [stdout] | [INFO] [stdout] 623 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] 624 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 627 | ) -> impl Stream, Error>> + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:630:12 [INFO] [stdout] | [INFO] [stdout] 630 | if let Some(slot) = self.handlers.get_mut(&addr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:632:9 [INFO] [stdout] | [INFO] [stdout] 632 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 630 ~ match self.handlers.get_mut(&addr) { Some(slot) => { [INFO] [stdout] 631 | slot.streaming_forward(caller, addr, msg).left_stream() [INFO] [stdout] 632 ~ } _ => { [INFO] [stdout] 633 | //use futures::StreamExt; [INFO] [stdout] ... [INFO] [stdout] 653 | .right_stream() [INFO] [stdout] 654 ~ }} [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/local_router.rs:663:10 [INFO] [stdout] | [INFO] [stdout] 663 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:658:9 [INFO] [stdout] | [INFO] [stdout] 658 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] 659 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] 660 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 663 | ) -> impl Future, Error>> + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:665:12 [INFO] [stdout] | [INFO] [stdout] 665 | if let Some(slot) = self.handlers.get_mut(&addr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:673:9 [INFO] [stdout] | [INFO] [stdout] 673 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 665 ~ match self.handlers.get_mut(&addr) { Some(slot) => { [INFO] [stdout] 666 | slot.send(RpcRawCall { [INFO] [stdout] ... [INFO] [stdout] 672 | .left_future() [INFO] [stdout] 673 ~ } _ => { [INFO] [stdout] 674 | RemoteRouter::from_registry() [INFO] [stdout] ... [INFO] [stdout] 685 | .right_future() [INFO] [stdout] 686 ~ }} [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/local_router.rs:694:10 [INFO] [stdout] | [INFO] [stdout] 694 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:690:9 [INFO] [stdout] | [INFO] [stdout] 690 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] 691 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] 692 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 694 | ) -> impl Stream> + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:695:12 [INFO] [stdout] | [INFO] [stdout] 695 | if let Some(slot) = self.handlers.get_mut(addr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:703:9 [INFO] [stdout] | [INFO] [stdout] 703 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 695 ~ match self.handlers.get_mut(addr) { Some(slot) => { [INFO] [stdout] 696 | slot.send_streaming(RpcRawCall { [INFO] [stdout] ... [INFO] [stdout] 702 | .left_stream() [INFO] [stdout] 703 ~ } _ => { [INFO] [stdout] 704 | let (tx, rx) = mpsc::channel(16); [INFO] [stdout] ... [INFO] [stdout] 718 | .right_stream() [INFO] [stdout] 719 ~ }} [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/local_router.rs:728:10 [INFO] [stdout] | [INFO] [stdout] 728 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/local_router.rs:723:9 [INFO] [stdout] | [INFO] [stdout] 723 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] 724 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] 725 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] 726 | msg: &[u8], [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 728 | ) -> impl Stream> + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/local_router.rs:730:12 [INFO] [stdout] | [INFO] [stdout] 730 | if let Some(slot) = self.handlers.get_mut(&addr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^-------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/local_router.rs:745:9 [INFO] [stdout] | [INFO] [stdout] 745 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 730 ~ match self.handlers.get_mut(&addr) { Some(slot) => { [INFO] [stdout] 731 | let msg = RpcRawCall { [INFO] [stdout] ... [INFO] [stdout] 744 | } [INFO] [stdout] 745 ~ } _ => { [INFO] [stdout] 746 | log::warn!("no endpoint: {}", addr); [INFO] [stdout] 747 | futures::stream::once(async { Err(Error::NoEndpoint(addr)) }).boxed_local() [INFO] [stdout] 748 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/remote_router.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | if let Some(ref mut rx) = self.shutdown_rx { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^---------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/remote_router.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 39 ~ match self.shutdown_rx { Some(ref mut rx) => { [INFO] [stdout] 40 | match rx.try_recv() { [INFO] [stdout] ... [INFO] [stdout] 43 | } [INFO] [stdout] 44 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future, error::Error>> + 'static` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/remote_router.rs:121:33 [INFO] [stdout] | [INFO] [stdout] 121 | fn connection(&mut self) -> 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/remote_router.rs:121:19 [INFO] [stdout] | [INFO] [stdout] 121 | fn connection(&mut self) -> impl Future> + 'static { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 121 | fn connection(&mut self) -> impl Future> + 'static + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/remote_router.rs:261:16 [INFO] [stdout] | [INFO] [stdout] 261 | if let Err(e) = result { [INFO] [stdout] | ^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/remote_router.rs:263:13 [INFO] [stdout] | [INFO] [stdout] 263 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 261 ~ match result { Err(e) => { [INFO] [stdout] 262 | log::error!("Remote router RpcRawStreamCall handler error: {}", e); [INFO] [stdout] 263 ~ } _ => {}} [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:80:10 [INFO] [stdout] | [INFO] [stdout] 80 | ) -> 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:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 80 | ) -> impl Future, Error>> + Send + 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] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Stream::Item, ::Error>, error::Error>> + Unpin` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/typed.rs:101:10 [INFO] [stdout] | [INFO] [stdout] 101 | ) -> impl Stream, Error>> + Unpin { [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:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 101 | ) -> impl Stream, Error>> + Unpin + 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/typed.rs:112:10 [INFO] [stdout] | [INFO] [stdout] 112 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/typed.rs:109:9 [INFO] [stdout] | [INFO] [stdout] 109 | &self, [INFO] [stdout] | ^ [INFO] [stdout] 110 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 112 | ) -> impl Future, Error>> + 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:119:58 [INFO] [stdout] | [INFO] [stdout] 119 | pub fn push(&self, msg: T) -> 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:119:40 [INFO] [stdout] | [INFO] [stdout] 119 | pub fn push(&self, msg: T) -> impl Future> { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 119 | pub fn push(&self, msg: T) -> impl Future> + 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] [INFO] [stdout] [INFO] [stdout] warning: `impl futures::Future, error::Error>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/typed.rs:141:10 [INFO] [stdout] | [INFO] [stdout] 141 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/typed.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 138 | &self, [INFO] [stdout] | ^ [INFO] [stdout] 139 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 141 | ) -> impl Future, Error>> + 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/untyped.rs:12:6 [INFO] [stdout] | [INFO] [stdout] 12 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/untyped.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] 10 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] 11 | bytes: &[u8], [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 12 | ) -> impl Future, Error>> + 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/untyped.rs:20:6 [INFO] [stdout] | [INFO] [stdout] 20 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/untyped.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] 18 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] 19 | bytes: &[u8], [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 20 | ) -> impl Future, Error>> + 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/untyped.rs:41:6 [INFO] [stdout] | [INFO] [stdout] 41 | ) -> 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, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/untyped.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | addr: &str, [INFO] [stdout] | ^ [INFO] [stdout] 38 | caller: &str, [INFO] [stdout] | ^ [INFO] [stdout] 39 | bytes: &[u8], [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 41 | ) -> impl Future, Error>> + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 49 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Fixed examples/test_router_raw.rs (2 fixes) [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] Migrating examples/test_actix_service.rs from 2021 edition to 2024 [INFO] [stderr] Fixed examples/test_actix_service.rs (1 fix) [INFO] [stderr] Migrating tests/test_streaming.rs from 2021 edition to 2024 [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.05s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Checking ya-service-bus v0.7.3 (/tmp/fixit) [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/connection.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | rng.gen::() & 0x001f_ffff_ffff_ffffu64 [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 31 | rng.r#gen::() & 0x001f_ffff_ffff_ffffu64 [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/connection.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | rng.gen::() & 0x001f_ffff_ffff_ffffu64 [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 31 | rng.r#gen::() & 0x001f_ffff_ffff_ffffu64 [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/actix_rpc.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 49 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 53 | b.forward(self.addr.as_ref(), RpcEnvelope::local(msg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ returning this value requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: consider changing `impl futures::Future as actix::Message>::Result, error::Error>> + 'static`'s explicit `'static` bound to the lifetime of argument `self` [INFO] [stdout] | [INFO] [stdout] 51 | ) -> impl Future as Message>::Result, BusError>> + '_ { [INFO] [stdout] | ~~ [INFO] [stdout] help: alternatively, add an explicit `'static` bound to this reference [INFO] [stdout] | [INFO] [stdout] 49 | &'static actix_rpc::Endpoint, [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/actix_rpc.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 49 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 53 | b.forward(self.addr.as_ref(), RpcEnvelope::local(msg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ returning this value requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: consider changing `impl futures::Future as actix::Message>::Result, error::Error>> + 'static`'s explicit `'static` bound to the lifetime of argument `self` [INFO] [stdout] | [INFO] [stdout] 51 | ) -> impl Future as Message>::Result, BusError>> + '_ { [INFO] [stdout] | ~~ [INFO] [stdout] help: alternatively, add an explicit `'static` bound to this reference [INFO] [stdout] | [INFO] [stdout] 49 | &'static actix_rpc::Endpoint, [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing local variable `b` [INFO] [stdout] --> src/actix_rpc.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | b.forward(self.addr.as_ref(), RpcEnvelope::local(msg)) [INFO] [stdout] | -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | returns a value referencing data owned by the current function [INFO] [stdout] | `b` is borrowed here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing local variable `b` [INFO] [stdout] --> src/actix_rpc.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | b.forward(self.addr.as_ref(), RpcEnvelope::local(msg)) [INFO] [stdout] | -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | returns a value referencing data owned by the current function [INFO] [stdout] | `b` is borrowed here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/actix_rpc.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 57 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 62 | b.forward(self.addr.as_ref(), RpcEnvelope::with_caller(caller, msg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ returning this value requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: consider changing `impl futures::Future as actix::Message>::Result, error::Error>> + 'static`'s explicit `'static` bound to the lifetime of argument `self` [INFO] [stdout] | [INFO] [stdout] 60 | ) -> impl Future as Message>::Result, BusError>> + '_ { [INFO] [stdout] | ~~ [INFO] [stdout] help: alternatively, add an explicit `'static` bound to this reference [INFO] [stdout] | [INFO] [stdout] 57 | &'static actix_rpc::Endpoint, [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/actix_rpc.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 57 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 62 | b.forward(self.addr.as_ref(), RpcEnvelope::with_caller(caller, msg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ returning this value requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: consider changing `impl futures::Future as actix::Message>::Result, error::Error>> + 'static`'s explicit `'static` bound to the lifetime of argument `self` [INFO] [stdout] | [INFO] [stdout] 60 | ) -> impl Future as Message>::Result, BusError>> + '_ { [INFO] [stdout] | ~~ [INFO] [stdout] help: alternatively, add an explicit `'static` bound to this reference [INFO] [stdout] | [INFO] [stdout] 57 | &'static actix_rpc::Endpoint, [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing local variable `b` [INFO] [stdout] --> src/actix_rpc.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | b.forward(self.addr.as_ref(), RpcEnvelope::with_caller(caller, msg)) [INFO] [stdout] | -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | returns a value referencing data owned by the current function [INFO] [stdout] | `b` is borrowed here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing local variable `b` [INFO] [stdout] --> src/actix_rpc.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | b.forward(self.addr.as_ref(), RpcEnvelope::with_caller(caller, msg)) [INFO] [stdout] | -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | returns a value referencing data owned by the current function [INFO] [stdout] | `b` is borrowed here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/actix_rpc.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 66 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 70 | b.push(self.addr.as_ref(), RpcEnvelope::local(msg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ returning this value requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: consider changing `impl futures::Future> + 'static`'s explicit `'static` bound to the lifetime of argument `self` [INFO] [stdout] | [INFO] [stdout] 68 | ) -> impl Future> + '_ { [INFO] [stdout] | ~~ [INFO] [stdout] help: alternatively, add an explicit `'static` bound to this reference [INFO] [stdout] | [INFO] [stdout] 66 | &'static actix_rpc::Endpoint, [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/actix_rpc.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 66 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 70 | b.push(self.addr.as_ref(), RpcEnvelope::local(msg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ returning this value requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: consider changing `impl futures::Future> + 'static`'s explicit `'static` bound to the lifetime of argument `self` [INFO] [stdout] | [INFO] [stdout] 68 | ) -> impl Future> + '_ { [INFO] [stdout] | ~~ [INFO] [stdout] help: alternatively, add an explicit `'static` bound to this reference [INFO] [stdout] | [INFO] [stdout] 66 | &'static actix_rpc::Endpoint, [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing local variable `b` [INFO] [stdout] --> src/actix_rpc.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | b.push(self.addr.as_ref(), RpcEnvelope::local(msg)) [INFO] [stdout] | -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | returns a value referencing data owned by the current function [INFO] [stdout] | `b` is borrowed here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing local variable `b` [INFO] [stdout] --> src/actix_rpc.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | b.push(self.addr.as_ref(), RpcEnvelope::local(msg)) [INFO] [stdout] | -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | returns a value referencing data owned by the current function [INFO] [stdout] | `b` is borrowed here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/actix_rpc.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 74 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 79 | b.push(self.addr.as_ref(), RpcEnvelope::with_caller(caller, msg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ returning this value requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: consider changing `impl futures::Future> + 'static`'s explicit `'static` bound to the lifetime of argument `self` [INFO] [stdout] | [INFO] [stdout] 77 | ) -> impl Future> + '_ { [INFO] [stdout] | ~~ [INFO] [stdout] help: alternatively, add an explicit `'static` bound to this reference [INFO] [stdout] | [INFO] [stdout] 74 | &'static actix_rpc::Endpoint, [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing local variable `b` [INFO] [stdout] --> src/actix_rpc.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | b.push(self.addr.as_ref(), RpcEnvelope::with_caller(caller, msg)) [INFO] [stdout] | -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | returns a value referencing data owned by the current function [INFO] [stdout] | `b` is borrowed here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/actix_rpc.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 74 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 79 | b.push(self.addr.as_ref(), RpcEnvelope::with_caller(caller, msg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ returning this value requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: consider changing `impl futures::Future> + 'static`'s explicit `'static` bound to the lifetime of argument `self` [INFO] [stdout] | [INFO] [stdout] 77 | ) -> impl Future> + '_ { [INFO] [stdout] | ~~ [INFO] [stdout] help: alternatively, add an explicit `'static` bound to this reference [INFO] [stdout] | [INFO] [stdout] 74 | &'static actix_rpc::Endpoint, [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing local variable `b` [INFO] [stdout] --> src/actix_rpc.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | b.push(self.addr.as_ref(), RpcEnvelope::with_caller(caller, msg)) [INFO] [stdout] | -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | returns a value referencing data owned by the current function [INFO] [stdout] | `b` is borrowed here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/actix_rpc.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 83 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 87 | // self.router [INFO] [stdout] 88 | || .lock() [INFO] [stdout] 89 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 90 | | .streaming_forward(&self.addr, msg) [INFO] [stdout] | |________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 91 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/actix_rpc.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 83 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 87 | // self.router [INFO] [stdout] 88 | || .lock() [INFO] [stdout] 89 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 90 | | .streaming_forward(&self.addr, msg) [INFO] [stdout] | |________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 91 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:45:20 [INFO] [stdout] | [INFO] [stdout] 45 | let future = { router().lock().unwrap().unbind(addr) }; [INFO] [stdout] | ^^^^^^^^ - temporary value is freed at the end of this statement [INFO] [stdout] | | [INFO] [stdout] | creates a temporary value which is freed while still in use [INFO] [stdout] 46 | future.await [INFO] [stdout] | ------ borrow later used here [INFO] [stdout] | [INFO] [stdout] = note: consider using a `let` binding to create a longer lived value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:45:20 [INFO] [stdout] | [INFO] [stdout] 45 | let future = { router().lock().unwrap().unbind(addr) }; [INFO] [stdout] | ^^^^^^^^ - temporary value is freed at the end of this statement [INFO] [stdout] | | [INFO] [stdout] | creates a temporary value which is freed while still in use [INFO] [stdout] 46 | future.await [INFO] [stdout] | ------ borrow later used here [INFO] [stdout] | [INFO] [stdout] = note: consider using a `let` binding to create a longer lived value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:45:20 [INFO] [stdout] | [INFO] [stdout] 45 | let future = { router().lock().unwrap().unbind(addr) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ - temporary value is freed at the end of this statement [INFO] [stdout] | | [INFO] [stdout] | creates a temporary value which is freed while still in use [INFO] [stdout] 46 | future.await [INFO] [stdout] | ------ borrow later used here [INFO] [stdout] | [INFO] [stdout] = note: consider using a `let` binding to create a longer lived value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:45:20 [INFO] [stdout] | [INFO] [stdout] 45 | let future = { router().lock().unwrap().unbind(addr) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ - temporary value is freed at the end of this statement [INFO] [stdout] | | [INFO] [stdout] | creates a temporary value which is freed while still in use [INFO] [stdout] 46 | future.await [INFO] [stdout] | ------ borrow later used here [INFO] [stdout] | [INFO] [stdout] = note: consider using a `let` binding to create a longer lived value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 78 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 81 | // self.router [INFO] [stdout] 82 | || .lock() [INFO] [stdout] 83 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 84 | | .forward(&self.addr, RpcEnvelope::local(msg)) [INFO] [stdout] | |__________________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 85 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 78 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 81 | // self.router [INFO] [stdout] 82 | || .lock() [INFO] [stdout] 83 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 84 | | .forward(&self.addr, RpcEnvelope::local(msg)) [INFO] [stdout] | |__________________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 85 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 88 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 92 | // self.router [INFO] [stdout] 93 | || .lock() [INFO] [stdout] 94 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 95 | | .forward(&self.addr, RpcEnvelope::with_caller(caller, msg)) [INFO] [stdout] | |________________________________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 96 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 88 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 92 | // self.router [INFO] [stdout] 93 | || .lock() [INFO] [stdout] 94 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 95 | | .forward(&self.addr, RpcEnvelope::with_caller(caller, msg)) [INFO] [stdout] | |________________________________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 96 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:102:9 [INFO] [stdout] | [INFO] [stdout] 99 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 102 | // self.router [INFO] [stdout] 103 | || .lock() [INFO] [stdout] 104 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 105 | | .streaming_forward(&self.addr, msg) [INFO] [stdout] | |________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 106 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:102:9 [INFO] [stdout] | [INFO] [stdout] 99 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 102 | // self.router [INFO] [stdout] 103 | || .lock() [INFO] [stdout] 104 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 105 | | .streaming_forward(&self.addr, msg) [INFO] [stdout] | |________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 106 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:113:9 [INFO] [stdout] | [INFO] [stdout] 109 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 113 | // self.router [INFO] [stdout] 114 | || .lock() [INFO] [stdout] 115 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 116 | | .forward_bytes(&self.addr, caller, msg, false) [INFO] [stdout] | |___________________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 117 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:113:9 [INFO] [stdout] | [INFO] [stdout] 109 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 113 | // self.router [INFO] [stdout] 114 | || .lock() [INFO] [stdout] 115 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 116 | | .forward_bytes(&self.addr, caller, msg, false) [INFO] [stdout] | |___________________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 117 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 119 | pub fn push(&self, msg: T) -> impl Future> { [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] 120 | // self.router [INFO] [stdout] 121 | || .lock() [INFO] [stdout] 122 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 123 | | .push(&self.addr, RpcEnvelope::local(msg)) [INFO] [stdout] | |_______________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 124 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 119 | pub fn push(&self, msg: T) -> impl Future> { [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] 120 | // self.router [INFO] [stdout] 121 | || .lock() [INFO] [stdout] 122 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 123 | | .push(&self.addr, RpcEnvelope::local(msg)) [INFO] [stdout] | |_______________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 124 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 127 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 131 | // self.router [INFO] [stdout] 132 | || .lock() [INFO] [stdout] 133 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 134 | | .push(&self.addr, RpcEnvelope::with_caller(caller, msg)) [INFO] [stdout] | |_____________________________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 135 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 127 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 131 | // self.router [INFO] [stdout] 132 | || .lock() [INFO] [stdout] 133 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 134 | | .push(&self.addr, RpcEnvelope::with_caller(caller, msg)) [INFO] [stdout] | |_____________________________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 135 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:142:9 [INFO] [stdout] | [INFO] [stdout] 138 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 142 | // self.router [INFO] [stdout] 143 | || .lock() [INFO] [stdout] 144 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 145 | | .forward_bytes(&self.addr, caller, msg, true) [INFO] [stdout] | |__________________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 146 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/typed.rs:142:9 [INFO] [stdout] | [INFO] [stdout] 138 | &self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 142 | // self.router [INFO] [stdout] 143 | || .lock() [INFO] [stdout] 144 | || .unwrap() [INFO] [stdout] | ||_____________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 145 | | .forward_bytes(&self.addr, caller, msg, true) [INFO] [stdout] | |__________________________________________________________- argument requires that borrow lasts for `'1` [INFO] [stdout] 146 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/untyped.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | router() [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | _____creates a temporary value which is freed while still in use [INFO] [stdout] | | [INFO] [stdout] 43 | | .lock() [INFO] [stdout] 44 | | .unwrap() [INFO] [stdout] 45 | | .forward_bytes(addr, caller, bytes.into(), no_reply) [INFO] [stdout] | |____________________________________________________________- argument requires that borrow lasts for `'static` [INFO] [stdout] 46 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/untyped.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | // router() [INFO] [stdout] 43 | || .lock() [INFO] [stdout] 44 | || .unwrap() [INFO] [stdout] | ||_________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 45 | | .forward_bytes(addr, caller, bytes.into(), no_reply) [INFO] [stdout] | |_____________________________________________________________- argument requires that borrow lasts for `'static` [INFO] [stdout] 46 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/untyped.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | router() [INFO] [stdout] | -^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | _____creates a temporary value which is freed while still in use [INFO] [stdout] | | [INFO] [stdout] 43 | | .lock() [INFO] [stdout] 44 | | .unwrap() [INFO] [stdout] 45 | | .forward_bytes(addr, caller, bytes.into(), no_reply) [INFO] [stdout] | |____________________________________________________________- argument requires that borrow lasts for `'static` [INFO] [stdout] 46 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/untyped.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | // router() [INFO] [stdout] 43 | || .lock() [INFO] [stdout] 44 | || .unwrap() [INFO] [stdout] | ||_________________^ creates a temporary value which is freed while still in use [INFO] [stdout] 45 | | .forward_bytes(addr, caller, bytes.into(), no_reply) [INFO] [stdout] | |_____________________________________________________________- argument requires that borrow lasts for `'static` [INFO] [stdout] 46 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing temporary value [INFO] [stdout] --> src/connection.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | // router() [INFO] [stdout] 118 | || .lock() [INFO] [stdout] 119 | || .unwrap() [INFO] [stdout] | ||_____________________- temporary value created here [INFO] [stdout] 120 | | .forward_bytes_local(&address, &caller, data.as_ref(), no_reply) [INFO] [stdout] 121 | | .boxed_local() [INFO] [stdout] | |___________________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing temporary value [INFO] [stdout] --> src/connection.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | // router() [INFO] [stdout] 118 | || .lock() [INFO] [stdout] 119 | || .unwrap() [INFO] [stdout] | ||_____________________- temporary value created here [INFO] [stdout] 120 | | .forward_bytes_local(&address, &caller, data.as_ref(), no_reply) [INFO] [stdout] 121 | | .boxed_local() [INFO] [stdout] | |___________________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing temporary value [INFO] [stdout] --> src/connection.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | router() [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | _________temporary value created here [INFO] [stdout] | | [INFO] [stdout] 118 | | .lock() [INFO] [stdout] 119 | | .unwrap() [INFO] [stdout] 120 | | .forward_bytes_local(&address, &caller, data.as_ref(), no_reply) [INFO] [stdout] 121 | | .boxed_local() [INFO] [stdout] | |__________________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing temporary value [INFO] [stdout] --> src/connection.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | router() [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | _________temporary value created here [INFO] [stdout] | | [INFO] [stdout] 118 | | .lock() [INFO] [stdout] 119 | | .unwrap() [INFO] [stdout] 120 | | .forward_bytes_local(&address, &caller, data.as_ref(), no_reply) [INFO] [stdout] 121 | | .boxed_local() [INFO] [stdout] | |__________________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing function parameter `data` [INFO] [stdout] --> src/connection.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / router() [INFO] [stdout] 118 | | .lock() [INFO] [stdout] 119 | | .unwrap() [INFO] [stdout] 120 | | .forward_bytes_local(&address, &caller, data.as_ref(), no_reply) [INFO] [stdout] | | ---- `data` is borrowed here [INFO] [stdout] 121 | | .boxed_local() [INFO] [stdout] | |__________________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing function parameter `data` [INFO] [stdout] --> src/connection.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / router() [INFO] [stdout] 118 | | .lock() [INFO] [stdout] 119 | | .unwrap() [INFO] [stdout] 120 | | .forward_bytes_local(&address, &caller, data.as_ref(), no_reply) [INFO] [stdout] | | ---- `data` is borrowed here [INFO] [stdout] 121 | | .boxed_local() [INFO] [stdout] | |__________________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing function parameter `address` [INFO] [stdout] --> src/connection.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / router() [INFO] [stdout] 118 | | .lock() [INFO] [stdout] 119 | | .unwrap() [INFO] [stdout] 120 | | .forward_bytes_local(&address, &caller, data.as_ref(), no_reply) [INFO] [stdout] | | -------- `address` is borrowed here [INFO] [stdout] 121 | | .boxed_local() [INFO] [stdout] | |__________________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing function parameter `address` [INFO] [stdout] --> src/connection.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / router() [INFO] [stdout] 118 | | .lock() [INFO] [stdout] 119 | | .unwrap() [INFO] [stdout] 120 | | .forward_bytes_local(&address, &caller, data.as_ref(), no_reply) [INFO] [stdout] | | -------- `address` is borrowed here [INFO] [stdout] 121 | | .boxed_local() [INFO] [stdout] | |__________________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing function parameter `caller` [INFO] [stdout] --> src/connection.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / router() [INFO] [stdout] 118 | | .lock() [INFO] [stdout] 119 | | .unwrap() [INFO] [stdout] 120 | | .forward_bytes_local(&address, &caller, data.as_ref(), no_reply) [INFO] [stdout] | | ------- `caller` is borrowed here [INFO] [stdout] 121 | | .boxed_local() [INFO] [stdout] | |__________________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing function parameter `caller` [INFO] [stdout] --> src/connection.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / router() [INFO] [stdout] 118 | | .lock() [INFO] [stdout] 119 | | .unwrap() [INFO] [stdout] 120 | | .forward_bytes_local(&address, &caller, data.as_ref(), no_reply) [INFO] [stdout] | | ------- `caller` is borrowed here [INFO] [stdout] 121 | | .boxed_local() [INFO] [stdout] | |__________________________^ returns a value referencing data owned by the current function [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: 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] [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] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/typed.rs:156:9 [INFO] [stdout] | [INFO] [stdout] 155 | fn send(&self, msg: T) -> Self::Result { [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] 156 | Endpoint::call(self, 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:156:9 [INFO] [stdout] | [INFO] [stdout] 155 | fn send(&self, msg: T) -> Self::Result { [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] 156 | Endpoint::call(self, 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] 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/untyped.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 25 | addr: &str, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 29 | / router() [INFO] [stdout] 30 | | .lock() [INFO] [stdout] 31 | | .unwrap() [INFO] [stdout] 32 | | .streaming_forward_bytes(addr, caller, bytes.into()) [INFO] [stdout] 33 | | .boxed_local() [INFO] [stdout] | |______________________^ returning this value requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: to declare that the trait object captures data from argument `addr`, you can add an explicit `'_` lifetime bound [INFO] [stdout] | [INFO] [stdout] 28 | ) -> Pin> + '_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/untyped.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 25 | addr: &str, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 29 | / router() [INFO] [stdout] 30 | | .lock() [INFO] [stdout] 31 | | .unwrap() [INFO] [stdout] 32 | | .streaming_forward_bytes(addr, caller, bytes.into()) [INFO] [stdout] 33 | | .boxed_local() [INFO] [stdout] | |______________________^ returning this value requires that `'1` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: to declare that the trait object captures data from argument `addr`, you can add an explicit `'_` lifetime bound [INFO] [stdout] | [INFO] [stdout] 28 | ) -> Pin> + '_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/untyped.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 26 | caller: &str, [INFO] [stdout] | - let's call the lifetime of this reference `'2` [INFO] [stdout] ... [INFO] [stdout] 29 | / router() [INFO] [stdout] 30 | | .lock() [INFO] [stdout] 31 | | .unwrap() [INFO] [stdout] 32 | | .streaming_forward_bytes(addr, caller, bytes.into()) [INFO] [stdout] 33 | | .boxed_local() [INFO] [stdout] | |______________________^ returning this value requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: to declare that the trait object captures data from argument `caller`, you can add an explicit `'_` lifetime bound [INFO] [stdout] | [INFO] [stdout] 28 | ) -> Pin> + '_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing temporary value [INFO] [stdout] --> src/untyped.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | // router() [INFO] [stdout] 30 | || .lock() [INFO] [stdout] 31 | || .unwrap() [INFO] [stdout] | ||_________________- temporary value created here [INFO] [stdout] 32 | | .streaming_forward_bytes(addr, caller, bytes.into()) [INFO] [stdout] 33 | | .boxed_local() [INFO] [stdout] | |_______________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing temporary value [INFO] [stdout] --> src/untyped.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | router() [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | _____temporary value created here [INFO] [stdout] | | [INFO] [stdout] 30 | | .lock() [INFO] [stdout] 31 | | .unwrap() [INFO] [stdout] 32 | | .streaming_forward_bytes(addr, caller, bytes.into()) [INFO] [stdout] 33 | | .boxed_local() [INFO] [stdout] | |______________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/untyped.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 26 | caller: &str, [INFO] [stdout] | - let's call the lifetime of this reference `'2` [INFO] [stdout] ... [INFO] [stdout] 29 | / router() [INFO] [stdout] 30 | | .lock() [INFO] [stdout] 31 | | .unwrap() [INFO] [stdout] 32 | | .streaming_forward_bytes(addr, caller, bytes.into()) [INFO] [stdout] 33 | | .boxed_local() [INFO] [stdout] | |______________________^ returning this value requires that `'2` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: to declare that the trait object captures data from argument `caller`, you can add an explicit `'_` lifetime bound [INFO] [stdout] | [INFO] [stdout] 28 | ) -> Pin> + '_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing temporary value [INFO] [stdout] --> src/untyped.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | // router() [INFO] [stdout] 30 | || .lock() [INFO] [stdout] 31 | || .unwrap() [INFO] [stdout] | ||_________________- temporary value created here [INFO] [stdout] 32 | | .streaming_forward_bytes(addr, caller, bytes.into()) [INFO] [stdout] 33 | | .boxed_local() [INFO] [stdout] | |_______________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0515]: cannot return value referencing temporary value [INFO] [stdout] --> src/untyped.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | router() [INFO] [stdout] | ^------- [INFO] [stdout] | | [INFO] [stdout] | _____temporary value created here [INFO] [stdout] | | [INFO] [stdout] 30 | | .lock() [INFO] [stdout] 31 | | .unwrap() [INFO] [stdout] 32 | | .streaming_forward_bytes(addr, caller, bytes.into()) [INFO] [stdout] 33 | | .boxed_local() [INFO] [stdout] | |______________________^ returns a value referencing data owned by the current function [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 34 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0515, E0716. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0515`. [INFO] [stdout] [INFO] [stdout] error: aborting due to 34 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0515, E0716. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0515`. [INFO] [stdout] [INFO] [stderr] error: could not compile `ya-service-bus` (lib test) due to 35 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `ya-service-bus` (lib) due to 35 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" "9128305a8640323f5e4e6804c8406932ba9919caf4a7741e3bc58d769b9fc31c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9128305a8640323f5e4e6804c8406932ba9919caf4a7741e3bc58d769b9fc31c", kill_on_drop: false }` [INFO] [stdout] 9128305a8640323f5e4e6804c8406932ba9919caf4a7741e3bc58d769b9fc31c