[INFO] fetching crate libp2p-swarm 0.45.1... [INFO] checking libp2p-swarm-0.45.1 against try#da25749bf5e6ba5ed862ff361c19afff2a986b2d for pr-132712 [INFO] extracting crate libp2p-swarm 0.45.1 into /workspace/builds/worker-2-tc2/source [INFO] validating manifest of crates.io crate libp2p-swarm 0.45.1 on toolchain da25749bf5e6ba5ed862ff361c19afff2a986b2d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+da25749bf5e6ba5ed862ff361c19afff2a986b2d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate libp2p-swarm 0.45.1 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate libp2p-swarm 0.45.1 [INFO] tweaked toml for crates.io crate libp2p-swarm 0.45.1 written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+da25749bf5e6ba5ed862ff361c19afff2a986b2d" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 254 packages to latest compatible versions [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+da25749bf5e6ba5ed862ff361c19afff2a986b2d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+da25749bf5e6ba5ed862ff361c19afff2a986b2d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f656bdea53da5791b40cbf5550aef2fa0c884a2dff23985c88eedf37252f865d [INFO] running `Command { std: "docker" "start" "-a" "f656bdea53da5791b40cbf5550aef2fa0c884a2dff23985c88eedf37252f865d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f656bdea53da5791b40cbf5550aef2fa0c884a2dff23985c88eedf37252f865d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f656bdea53da5791b40cbf5550aef2fa0c884a2dff23985c88eedf37252f865d", kill_on_drop: false }` [INFO] [stdout] f656bdea53da5791b40cbf5550aef2fa0c884a2dff23985c88eedf37252f865d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=allow" "-e" "RUSTDOCFLAGS=--cap-lints=allow" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+da25749bf5e6ba5ed862ff361c19afff2a986b2d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4eaa18ca2a4d8d60c1b9b60de1377dd54510b44da11ee5415c10128adad0a62e [INFO] running `Command { std: "docker" "start" "-a" "4eaa18ca2a4d8d60c1b9b60de1377dd54510b44da11ee5415c10128adad0a62e", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Migrating Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking value-bag v1.10.0 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking foldhash v0.1.3 [INFO] [stderr] Checking serde v1.0.214 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Checking zerofrom v0.1.4 [INFO] [stderr] Checking zeroize v1.8.1 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Checking signature v2.2.0 [INFO] [stderr] Compiling rustix v0.38.39 [INFO] [stderr] Checking ed25519 v2.2.3 [INFO] [stderr] Checking hashbrown v0.15.1 [INFO] [stderr] Checking yoke v0.7.4 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Compiling pin-project-internal v1.1.7 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking futures-lite v2.5.0 [INFO] [stderr] Checking core2 v0.4.0 [INFO] [stderr] Checking unsigned-varint v0.8.0 [INFO] [stderr] Compiling serde_json v1.0.132 [INFO] [stderr] Checking linux-raw-sys v0.4.14 [INFO] [stderr] Checking log v0.4.22 [INFO] [stderr] Checking hkdf v0.12.4 [INFO] [stderr] Checking zerovec v0.10.4 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Checking multihash v0.19.2 [INFO] [stderr] Checking thiserror v1.0.68 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking quick-protobuf v0.8.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking async-task v4.7.1 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Checking atomic-waker v1.1.2 [INFO] [stderr] Checking bs58 v0.5.1 [INFO] [stderr] Checking piper v0.2.4 [INFO] [stderr] Checking parking_lot_core v0.9.10 [INFO] [stderr] Checking plotters-backend v0.3.7 [INFO] [stderr] Checking clap_lex v0.7.2 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling target-triple v0.1.3 [INFO] [stderr] Checking indexmap v2.6.0 [INFO] [stderr] Checking anstyle v1.0.10 [INFO] [stderr] Checking unsigned-varint v0.7.2 [INFO] [stderr] Checking plotters-svg v0.3.7 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking event-listener v5.3.1 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking clap_builder v4.5.20 [INFO] [stderr] Checking event-listener-strategy v0.5.2 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking async-executor v1.13.1 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Checking async-channel v2.3.1 [INFO] [stderr] Checking async-lock v3.4.0 [INFO] [stderr] Checking blocking v1.6.1 [INFO] [stderr] Checking web-time v1.1.0 [INFO] [stderr] Checking tinystr v0.7.6 [INFO] [stderr] Checking icu_collections v1.5.0 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Checking cast v0.3.0 [INFO] [stderr] Checking pin-project v1.1.7 [INFO] [stderr] Checking icu_locid v1.5.0 [INFO] [stderr] Checking event-listener v2.5.3 [INFO] [stderr] Checking walkdir v2.5.0 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking tokio v1.41.1 [INFO] [stderr] Checking async-channel v1.9.0 [INFO] [stderr] Checking lru v0.12.5 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking kv-log-macro v1.0.7 [INFO] [stderr] Checking is-terminal v0.4.13 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Checking anes v0.1.6 [INFO] [stderr] Checking oorandom v11.1.4 [INFO] [stderr] Checking glob v0.3.1 [INFO] [stderr] Checking tracing-subscriber v0.3.18 [INFO] [stderr] Checking ed25519-dalek v2.1.1 [INFO] [stderr] Checking icu_provider v1.5.0 [INFO] [stderr] Checking libp2p-identity v0.2.9 [INFO] [stderr] Checking icu_locid_transform v1.5.0 [INFO] [stderr] Checking criterion-plot v0.5.0 [INFO] [stderr] Checking clap v4.5.20 [INFO] [stderr] Checking serde_spanned v0.6.8 [INFO] [stderr] Checking toml_datetime v0.6.8 [INFO] [stderr] Checking ciborium v0.2.2 [INFO] [stderr] Checking icu_properties v1.5.1 [INFO] [stderr] Checking toml_edit v0.22.22 [INFO] [stderr] Compiling data-encoding-macro-internal v0.1.13 [INFO] [stderr] Compiling async-attributes v1.1.2 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stderr] Checking rw-stream-sink v0.4.0 [INFO] [stderr] Checking multistream-select v0.13.0 [INFO] [stderr] Checking data-encoding-macro v0.1.15 [INFO] [stderr] Checking multibase v0.9.1 [INFO] [stderr] Checking criterion v0.5.1 [INFO] [stderr] Checking toml v0.8.19 [INFO] [stderr] Checking icu_normalizer v1.5.0 [INFO] [stderr] Checking polling v3.7.4 [INFO] [stderr] Checking trybuild v1.0.101 [INFO] [stderr] Checking async-io v2.4.0 [INFO] [stderr] Checking idna_adapter v1.2.0 [INFO] [stderr] Checking idna v1.0.3 [INFO] [stderr] Checking async-global-executor v2.4.1 [INFO] [stderr] Checking url v2.5.3 [INFO] [stderr] Checking async-std v1.13.0 [INFO] [stderr] Checking multiaddr v0.18.2 [INFO] [stderr] Checking libp2p-core v0.42.0 [INFO] [stderr] Checking libp2p-swarm v0.45.1 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] Fixed src/behaviour/toggle.rs (9 fixes) [INFO] [stderr] Fixed src/connection/pool/concurrent_dial.rs (1 fix) [INFO] [stderr] Fixed src/handler/map_in.rs (1 fix) [INFO] [stderr] Fixed src/behaviour/peer_addresses.rs (2 fixes) [INFO] [stderr] Fixed src/connection/pool.rs (4 fixes) [INFO] [stderr] Fixed src/lib.rs (4 fixes) [INFO] [stderr] Fixed src/handler/multi.rs (9 fixes) [INFO] [stdout] warning: relative drop order changing in Rust 2024 [INFO] [stdout] --> src/connection/pool/task.rs:179:15 [INFO] [stdout] | [INFO] [stdout] 179 | match futures::future::select( [INFO] [stdout] | _______________^ [INFO] [stdout] 180 | | command_receiver.next(), [INFO] [stdout] 181 | | poll_fn(|cx| Pin::new(&mut connection).poll(cx)), [INFO] [stdout] 182 | | ) [INFO] [stdout] 183 | | .await [INFO] [stdout] | | ----^ [INFO] [stdout] | | | | [INFO] [stdout] | |__________|___this value will be stored in a temporary; let us call it `#12` [INFO] [stdout] | | up until Edition 2021 `#12` is dropped last but will be dropped earlier in Edition 2024 [INFO] [stdout] | this value will be stored in a temporary; let us call it `#1` [INFO] [stdout] | `#1` will be dropped later as of Edition 2024 [INFO] [stdout] 184 | { [INFO] [stdout] 185 | Either::Left((Some(command), _)) => match command { [INFO] [stdout] | ------- [INFO] [stdout] | | [INFO] [stdout] | `command` calls a custom destructor [INFO] [stdout] | `command` will be dropped later as of Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 189 | let (remaining_events, closing_muxer) = connection.close(); [INFO] [stdout] | ------------- ------------------ [INFO] [stdout] | | | [INFO] [stdout] | | this value will be stored in a temporary; let us call it `#2` [INFO] [stdout] | | `#2` will be dropped later as of Edition 2024 [INFO] [stdout] | `closing_muxer` calls a custom destructor [INFO] [stdout] | `closing_muxer` will be dropped later as of Edition 2024 [INFO] [stdout] 190 | [INFO] [stdout] 191 | let _ = events [INFO] [stdout] | _____________________________- [INFO] [stdout] | |_____________________________| [INFO] [stdout] 192 | .send_all(&mut remaining_events.map(|event| { [INFO] [stdout] | ________________________________________- [INFO] [stdout] | |________________________________________| [INFO] [stdout] | | [INFO] [stdout] 193 | | Ok(EstablishedConnectionEvent::Notify { [INFO] [stdout] 194 | | id: connection_id, [INFO] [stdout] 195 | | event, [INFO] [stdout] 196 | | peer_id, [INFO] [stdout] 197 | | }) [INFO] [stdout] 198 | | })) [INFO] [stdout] | | - [INFO] [stdout] | |__________________________| [INFO] [stdout] | |__________________________this value will be stored in a temporary; let us call it `#3` [INFO] [stdout] | `#3` will be dropped later as of Edition 2024 [INFO] [stdout] 199 | | .await; [INFO] [stdout] | | - [INFO] [stdout] | |______________________________| [INFO] [stdout] | |______________________________`__awaitee` calls a custom destructor [INFO] [stdout] | `__awaitee` will be dropped later as of Edition 2024 [INFO] [stdout] 200 | [INFO] [stdout] 201 | | let error = closing_muxer.await.err().map(ConnectionError::IO); [INFO] [stdout] | | ------------------- [INFO] [stdout] | | | [INFO] [stdout] | | this value will be stored in a temporary; let us call it `#4` [INFO] [stdout] | | `#4` will be dropped later as of Edition 2024 [INFO] [stdout] 202 | | [INFO] [stdout] 203 | let _ = events [INFO] [stdout] | _____________________________- [INFO] [stdout] | |_____________________________| [INFO] [stdout] 204 | | .send(EstablishedConnectionEvent::Closed { [INFO] [stdout] 205 | | id: connection_id, [INFO] [stdout] 206 | | peer_id, [INFO] [stdout] 207 | | error, [INFO] [stdout] 208 | | }) [INFO] [stdout] 209 | | .await; [INFO] [stdout] | | - [INFO] [stdout] | |______________________________| [INFO] [stdout] | |______________________________this value will be stored in a temporary; let us call it `#5` [INFO] [stdout] | `#5` will be dropped later as of Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 217 | | Either::Right((event, _)) => { [INFO] [stdout] | | ----- [INFO] [stdout] | | | [INFO] [stdout] | | `event` calls a custom destructor [INFO] [stdout] | | `event` will be dropped later as of Edition 2024 [INFO] [stdout] ... | [INFO] [stdout] 220 | let _ = events [INFO] [stdout] | _________________________________- [INFO] [stdout] | |_________________________________| [INFO] [stdout] 221 | | .send(EstablishedConnectionEvent::Notify { [INFO] [stdout] 222 | | id: connection_id, [INFO] [stdout] 223 | | peer_id, [INFO] [stdout] 224 | | event, [INFO] [stdout] 225 | | }) [INFO] [stdout] 226 | | .await; [INFO] [stdout] | | - [INFO] [stdout] | |__________________________________| [INFO] [stdout] | |__________________________________this value will be stored in a temporary; let us call it `#6` [INFO] [stdout] | `#6` will be dropped later as of Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 229 | let _ = events [INFO] [stdout] | _________________________________- [INFO] [stdout] | |_________________________________| [INFO] [stdout] 230 | | .send(EstablishedConnectionEvent::AddressChange { [INFO] [stdout] 231 | | id: connection_id, [INFO] [stdout] 232 | | peer_id, [INFO] [stdout] 233 | | new_address, [INFO] [stdout] 234 | | }) [INFO] [stdout] 235 | | .await; [INFO] [stdout] | | - [INFO] [stdout] | |__________________________________| [INFO] [stdout] | |__________________________________this value will be stored in a temporary; let us call it `#7` [INFO] [stdout] | `#7` will be dropped later as of Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 239 | | let (remaining_events, _closing_muxer) = connection.close(); [INFO] [stdout] | | -------------- ------------------ [INFO] [stdout] | | | | [INFO] [stdout] | | | this value will be stored in a temporary; let us call it `#8` [INFO] [stdout] | | | `#8` will be dropped later as of Edition 2024 [INFO] [stdout] | | `_closing_muxer` calls a custom destructor [INFO] [stdout] | | `_closing_muxer` will be dropped later as of Edition 2024 [INFO] [stdout] 240 | | [INFO] [stdout] 241 | let _ = events [INFO] [stdout] | _________________________________- [INFO] [stdout] | |_________________________________| [INFO] [stdout] 242 | .send_all(&mut remaining_events.map(|event| { [INFO] [stdout] | ____________________________________________- [INFO] [stdout] | |____________________________________________| [INFO] [stdout] | | [INFO] [stdout] 243 | | Ok(EstablishedConnectionEvent::Notify { [INFO] [stdout] 244 | | id: connection_id, [INFO] [stdout] 245 | | event, [INFO] [stdout] 246 | | peer_id, [INFO] [stdout] 247 | | }) [INFO] [stdout] 248 | | })) [INFO] [stdout] | | - [INFO] [stdout] | |______________________________| [INFO] [stdout] | |______________________________this value will be stored in a temporary; let us call it `#9` [INFO] [stdout] | `#9` will be dropped later as of Edition 2024 [INFO] [stdout] 249 | | .await; [INFO] [stdout] | | - [INFO] [stdout] | |__________________________________| [INFO] [stdout] | |__________________________________this value will be stored in a temporary; let us call it `#10` [INFO] [stdout] | `#10` will be dropped later as of Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 252 | let _ = events [INFO] [stdout] | _________________________________- [INFO] [stdout] | |_________________________________| [INFO] [stdout] 253 | | .send(EstablishedConnectionEvent::Closed { [INFO] [stdout] 254 | | id: connection_id, [INFO] [stdout] 255 | | peer_id, [INFO] [stdout] 256 | | error: Some(error), [INFO] [stdout] 257 | | }) [INFO] [stdout] 258 | | .await; [INFO] [stdout] | | - [INFO] [stdout] | |__________________________________| [INFO] [stdout] | |__________________________________this value will be stored in a temporary; let us call it `#11` [INFO] [stdout] | `#11` will be dropped later as of Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 263 | | } [INFO] [stdout] | | - now the temporary value is dropped here, before the local variables in the block or statement [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: `closing_muxer` may invoke a custom destructor because it contains a trait object [INFO] [stdout] = note: `#2` may invoke a custom destructor because it contains a trait object [INFO] [stdout] = note: `#4` may invoke a custom destructor because it contains a trait object [INFO] [stdout] = note: `_closing_muxer` may invoke a custom destructor because it contains a trait object [INFO] [stdout] = note: `#8` may invoke a custom destructor because it contains a trait object [INFO] [stdout] = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages [INFO] [stdout] = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `quickcheck` [INFO] [stdout] --> src/connection.rs:777:9 [INFO] [stdout] | [INFO] [stdout] 777 | use quickcheck::*; [INFO] [stdout] | ^^^^^^^^^^ use of undeclared crate or module `quickcheck` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating benches/connection_handler.rs from 2021 edition to 2024 [INFO] [stdout] error[E0432]: unresolved import `quickcheck` [INFO] [stdout] --> src/lib.rs:1770:9 [INFO] [stdout] | [INFO] [stdout] 1770 | use quickcheck::*; [INFO] [stdout] | ^^^^^^^^^^ use of undeclared crate or module `quickcheck` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `libp2p_plaintext` [INFO] [stdout] --> src/lib.rs:1768:9 [INFO] [stdout] | [INFO] [stdout] 1768 | use libp2p_plaintext as plaintext; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no external crate `libp2p_plaintext` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `libp2p_yamux` [INFO] [stdout] --> src/lib.rs:1769:9 [INFO] [stdout] | [INFO] [stdout] 1769 | use libp2p_yamux as yamux; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ no external crate `libp2p_yamux` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stderr] error: could not compile `libp2p-swarm` (lib test) due to 4 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0433]: failed to resolve: could not find `NetworkBehaviour` in `libp2p_swarm` [INFO] [stdout] --> benches/connection_handler.rs:13:32 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(libp2p_swarm::NetworkBehaviour, Default)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^ could not find `NetworkBehaviour` in `libp2p_swarm` [INFO] [stdout] ... [INFO] [stdout] 57 | / gen_behaviour! { [INFO] [stdout] 58 | | SpinningBehaviour5 { a, b, c, d, e }; [INFO] [stdout] 59 | | SpinningBehaviour10 { a, b, c, d, e, f, g, h, i, j }; [INFO] [stdout] 60 | | SpinningBehaviour20 { a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u }; [INFO] [stdout] 61 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /tmp/fixit/src/lib.rs:124:30 [INFO] [stdout] | [INFO] [stdout] 124 | pub use libp2p_swarm_derive::NetworkBehaviour; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] note: the item is gated behind the `macros` feature [INFO] [stdout] --> /tmp/fixit/src/lib.rs:123:7 [INFO] [stdout] | [INFO] [stdout] 123 | #[cfg(feature = "macros")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `gen_behaviour` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating tests/listener.rs from 2021 edition to 2024 [INFO] [stdout] error: cannot find attribute `behaviour` in this scope [INFO] [stdout] --> benches/connection_handler.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | #[behaviour(prelude = "libp2p_swarm::derive_prelude")] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | / gen_behaviour! { [INFO] [stdout] 58 | | SpinningBehaviour5 { a, b, c, d, e }; [INFO] [stdout] 59 | | SpinningBehaviour10 { a, b, c, d, e, f, g, h, i, j }; [INFO] [stdout] 60 | | SpinningBehaviour20 { a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u }; [INFO] [stdout] 61 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `gen_behaviour` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `libp2p_plaintext` [INFO] [stdout] --> benches/connection_handler.rs:180:27 [INFO] [stdout] | [INFO] [stdout] 180 | .authenticate(libp2p_plaintext::Config::new(&keypair)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ use of undeclared crate or module `libp2p_plaintext` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use libp2p_swarm::Config; [INFO] [stdout] | [INFO] [stdout] help: if you import `Config`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 180 - .authenticate(libp2p_plaintext::Config::new(&keypair)) [INFO] [stdout] 180 + .authenticate(Config::new(&keypair)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `libp2p_yamux` [INFO] [stdout] --> benches/connection_handler.rs:181:24 [INFO] [stdout] | [INFO] [stdout] 181 | .multiplex(libp2p_yamux::Config::default()) [INFO] [stdout] | ^^^^^^^^^^^^ use of undeclared crate or module `libp2p_yamux` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use libp2p_swarm::Config; [INFO] [stdout] | [INFO] [stdout] help: if you import `Config`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 181 - .multiplex(libp2p_yamux::Config::default()) [INFO] [stdout] 181 + .multiplex(Config::default()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> benches/connection_handler.rs:37:36 [INFO] [stdout] | [INFO] [stdout] 37 | .poll_count($count:expr) [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 37 | .poll_count($count:expr_2021) [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> benches/connection_handler.rs:38:53 [INFO] [stdout] | [INFO] [stdout] 38 | .protocols_per_behaviour($protocols:expr), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 38 | .protocols_per_behaviour($protocols:expr_2021), [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `SpinningBehaviour5: NetworkBehaviour` is not satisfied [INFO] [stdout] --> benches/connection_handler.rs:45:22 [INFO] [stdout] | [INFO] [stdout] 45 | <$beh>::run_bench(c, $protocols, $count, true); [INFO] [stdout] | ^^^^ the trait `NetworkBehaviour` is not implemented for `SpinningBehaviour5` [INFO] [stdout] ... [INFO] [stdout] 63 | / benchmarks! { [INFO] [stdout] 64 | | singles::[ [INFO] [stdout] 65 | | SpinningBehaviour::bench().name(b).poll_count(1000).protocols_per_behaviour(10), [INFO] [stdout] 66 | | SpinningBehaviour::bench().name(c).poll_count(1000).protocols_per_behaviour(100), [INFO] [stdout] ... | [INFO] [stdout] 83 | | ]; [INFO] [stdout] 84 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `NetworkBehaviour`: [INFO] [stdout] SpinningBehaviour [INFO] [stdout] Toggle [INFO] [stdout] libp2p_swarm::derive_prelude::Either [INFO] [stdout] libp2p_swarm::dummy::Behaviour [INFO] [stdout] note: required by a bound in `BigBehaviour::run_bench` [INFO] [stdout] --> benches/connection_handler.rs:104:25 [INFO] [stdout] | [INFO] [stdout] 98 | fn run_bench( [INFO] [stdout] | --------- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 104 | Self: Default + NetworkBehaviour, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ required by this bound in `BigBehaviour::run_bench` [INFO] [stdout] = note: this error originates in the macro `benchmarks` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `SpinningBehaviour10: NetworkBehaviour` is not satisfied [INFO] [stdout] --> benches/connection_handler.rs:45:22 [INFO] [stdout] | [INFO] [stdout] 45 | <$beh>::run_bench(c, $protocols, $count, true); [INFO] [stdout] | ^^^^ the trait `NetworkBehaviour` is not implemented for `SpinningBehaviour10` [INFO] [stdout] ... [INFO] [stdout] 63 | / benchmarks! { [INFO] [stdout] 64 | | singles::[ [INFO] [stdout] 65 | | SpinningBehaviour::bench().name(b).poll_count(1000).protocols_per_behaviour(10), [INFO] [stdout] 66 | | SpinningBehaviour::bench().name(c).poll_count(1000).protocols_per_behaviour(100), [INFO] [stdout] ... | [INFO] [stdout] 83 | | ]; [INFO] [stdout] 84 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `NetworkBehaviour`: [INFO] [stdout] SpinningBehaviour [INFO] [stdout] Toggle [INFO] [stdout] libp2p_swarm::derive_prelude::Either [INFO] [stdout] libp2p_swarm::dummy::Behaviour [INFO] [stdout] note: required by a bound in `BigBehaviour::run_bench` [INFO] [stdout] --> benches/connection_handler.rs:104:25 [INFO] [stdout] | [INFO] [stdout] 98 | fn run_bench( [INFO] [stdout] | --------- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 104 | Self: Default + NetworkBehaviour, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ required by this bound in `BigBehaviour::run_bench` [INFO] [stdout] = note: this error originates in the macro `benchmarks` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `SpinningBehaviour20: NetworkBehaviour` is not satisfied [INFO] [stdout] --> benches/connection_handler.rs:45:22 [INFO] [stdout] | [INFO] [stdout] 45 | <$beh>::run_bench(c, $protocols, $count, true); [INFO] [stdout] | ^^^^ the trait `NetworkBehaviour` is not implemented for `SpinningBehaviour20` [INFO] [stdout] ... [INFO] [stdout] 63 | / benchmarks! { [INFO] [stdout] 64 | | singles::[ [INFO] [stdout] 65 | | SpinningBehaviour::bench().name(b).poll_count(1000).protocols_per_behaviour(10), [INFO] [stdout] 66 | | SpinningBehaviour::bench().name(c).poll_count(1000).protocols_per_behaviour(100), [INFO] [stdout] ... | [INFO] [stdout] 83 | | ]; [INFO] [stdout] 84 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `NetworkBehaviour`: [INFO] [stdout] SpinningBehaviour [INFO] [stdout] Toggle [INFO] [stdout] libp2p_swarm::derive_prelude::Either [INFO] [stdout] libp2p_swarm::dummy::Behaviour [INFO] [stdout] note: required by a bound in `BigBehaviour::run_bench` [INFO] [stdout] --> benches/connection_handler.rs:104:25 [INFO] [stdout] | [INFO] [stdout] 98 | fn run_bench( [INFO] [stdout] | --------- required by a bound in this associated function [INFO] [stdout] ... [INFO] [stdout] 104 | Self: Default + NetworkBehaviour, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ required by this bound in `BigBehaviour::run_bench` [INFO] [stdout] = note: this error originates in the macro `benchmarks` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `generate_ed25519` found for struct `libp2p_identity::Keypair` in the current scope [INFO] [stdout] --> benches/connection_handler.rs:176:45 [INFO] [stdout] | [INFO] [stdout] 176 | let keypair = libp2p_identity::Keypair::generate_ed25519(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ function or associated item not found in `Keypair` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `libp2p_identity::Keypair` consider using one of the following associated functions: [INFO] [stdout] libp2p_identity::Keypair::ed25519_from_bytes [INFO] [stdout] libp2p_identity::Keypair::from_protobuf_encoding [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/libp2p-identity-0.2.9/src/keypair.rs:169:5 [INFO] [stdout] | [INFO] [stdout] 169 | pub fn ed25519_from_bytes(bytes: impl AsMut<[u8]>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 263 | pub fn from_protobuf_encoding(bytes: &[u8]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0433, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `libp2p-swarm` (bench "connection_handler") due to 8 previous errors; 2 warnings emitted [INFO] [stdout] error[E0432]: unresolved import `libp2p_swarm_test` [INFO] [stdout] --> tests/listener.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use libp2p_swarm_test::SwarmExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ use of undeclared crate or module `libp2p_swarm_test` [INFO] [stdout] | [INFO] [stdout] help: there is a crate or module with a similar name [INFO] [stdout] | [INFO] [stdout] 18 | use libp2p_swarm::SwarmExt; [INFO] [stdout] | ~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating tests/connection_close.rs from 2021 edition to 2024 [INFO] [stdout] error[E0599]: no function or associated item named `new_ephemeral` found for struct `Swarm` in the current scope [INFO] [stdout] --> tests/listener.rs:22:28 [INFO] [stdout] | [INFO] [stdout] 22 | let mut swarm = Swarm::new_ephemeral(|_| Behaviour::default()); [INFO] [stdout] | ^^^^^^^^^^^^^ function or associated item not found in `Swarm<_>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `Swarm<_>`, consider using `Swarm::::new` which returns `Swarm<_>` [INFO] [stdout] --> /tmp/fixit/src/lib.rs:366:5 [INFO] [stdout] | [INFO] [stdout] 366 | / pub fn new( [INFO] [stdout] 367 | | transport: transport::Boxed<(PeerId, StreamMuxerBox)>, [INFO] [stdout] 368 | | behaviour: TBehaviour, [INFO] [stdout] 369 | | local_peer_id: PeerId, [INFO] [stdout] 370 | | config: Config, [INFO] [stdout] 371 | | ) -> Self { [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0432, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stderr] error: could not compile `libp2p-swarm` (test "listener") due to 2 previous errors [INFO] [stdout] error[E0432]: unresolved import `libp2p_swarm_test` [INFO] [stdout] --> tests/connection_close.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use libp2p_swarm_test::SwarmExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ use of undeclared crate or module `libp2p_swarm_test` [INFO] [stdout] | [INFO] [stdout] help: there is a crate or module with a similar name [INFO] [stdout] | [INFO] [stdout] 11 | use libp2p_swarm::SwarmExt; [INFO] [stdout] | ~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `new_ephemeral` found for struct `Swarm` in the current scope [INFO] [stdout] --> tests/connection_close.rs:17:29 [INFO] [stdout] | [INFO] [stdout] 17 | let mut swarm1 = Swarm::new_ephemeral(|_| Behaviour::new(3)); [INFO] [stdout] | ^^^^^^^^^^^^^ function or associated item not found in `Swarm<_>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `Swarm<_>`, consider using `Swarm::::new` which returns `Swarm<_>` [INFO] [stdout] --> /tmp/fixit/src/lib.rs:366:5 [INFO] [stdout] | [INFO] [stdout] 366 | / pub fn new( [INFO] [stdout] 367 | | transport: transport::Boxed<(PeerId, StreamMuxerBox)>, [INFO] [stdout] 368 | | behaviour: TBehaviour, [INFO] [stdout] 369 | | local_peer_id: PeerId, [INFO] [stdout] 370 | | config: Config, [INFO] [stdout] 371 | | ) -> Self { [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `new_ephemeral` found for struct `Swarm` in the current scope [INFO] [stdout] --> tests/connection_close.rs:18:29 [INFO] [stdout] | [INFO] [stdout] 18 | let mut swarm2 = Swarm::new_ephemeral(|_| Behaviour::new(3)); [INFO] [stdout] | ^^^^^^^^^^^^^ function or associated item not found in `Swarm<_>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `Swarm<_>`, consider using `Swarm::::new` which returns `Swarm<_>` [INFO] [stdout] --> /tmp/fixit/src/lib.rs:366:5 [INFO] [stdout] | [INFO] [stdout] 366 | / pub fn new( [INFO] [stdout] 367 | | transport: transport::Boxed<(PeerId, StreamMuxerBox)>, [INFO] [stdout] 368 | | behaviour: TBehaviour, [INFO] [stdout] 369 | | local_peer_id: PeerId, [INFO] [stdout] 370 | | config: Config, [INFO] [stdout] 371 | | ) -> Self { [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `libp2p_swarm_test` [INFO] [stdout] --> tests/connection_close.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | match libp2p_swarm_test::drive(&mut swarm1, &mut swarm2).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ use of undeclared crate or module `libp2p_swarm_test` [INFO] [stdout] | [INFO] [stdout] help: there is a crate or module with a similar name [INFO] [stdout] | [INFO] [stdout] 25 | match libp2p_swarm::drive(&mut swarm1, &mut swarm2).await { [INFO] [stdout] | ~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0432, E0433, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stderr] error: could not compile `libp2p-swarm` (test "connection_close") due to 4 previous errors [INFO] [stderr] error: failed to migrate to next edition [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo fix --edition --allow-no-vcs --allow-dirty --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "4eaa18ca2a4d8d60c1b9b60de1377dd54510b44da11ee5415c10128adad0a62e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4eaa18ca2a4d8d60c1b9b60de1377dd54510b44da11ee5415c10128adad0a62e", kill_on_drop: false }` [INFO] [stdout] 4eaa18ca2a4d8d60c1b9b60de1377dd54510b44da11ee5415c10128adad0a62e