[INFO] fetching crate rmcp 0.1.5... [INFO] testing rmcp-0.1.5 against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_getrandom_patch_0 [INFO] extracting crate rmcp 0.1.5 into /workspace/builds/worker-0-tc1/source [INFO] started tweaking crates.io crate rmcp 0.1.5 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate rmcp 0.1.5 [INFO] tweaked toml for crates.io crate rmcp 0.1.5 written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate rmcp 0.1.5 on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate rmcp 0.1.5 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" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded sse-stream v0.1.3 [INFO] [stderr] Downloaded rmcp-macros v0.1.5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 962c0ef79d0aa0d7bca5db2ba0b3198077ee519f9517506ab2a3516b09411e2c [INFO] running `Command { std: "docker" "start" "-a" "962c0ef79d0aa0d7bca5db2ba0b3198077ee519f9517506ab2a3516b09411e2c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "962c0ef79d0aa0d7bca5db2ba0b3198077ee519f9517506ab2a3516b09411e2c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "962c0ef79d0aa0d7bca5db2ba0b3198077ee519f9517506ab2a3516b09411e2c", kill_on_drop: false }` [INFO] [stdout] 962c0ef79d0aa0d7bca5db2ba0b3198077ee519f9517506ab2a3516b09411e2c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 70821a0757012448fc9e6e4160b0d3ea8f39c20bcd81d9bc340c2c92aadc33ea [INFO] running `Command { std: "docker" "start" "-a" "70821a0757012448fc9e6e4160b0d3ea8f39c20bcd81d9bc340c2c92aadc33ea", kill_on_drop: false }` [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling syn v2.0.100 [INFO] [stderr] Compiling once_cell v1.21.1 [INFO] [stderr] Compiling schemars v0.8.22 [INFO] [stderr] Compiling iana-time-zone v0.1.62 [INFO] [stderr] Compiling dyn-clone v1.0.19 [INFO] [stderr] Compiling tracing-core v0.1.33 [INFO] [stderr] Compiling serde_derive_internals v0.29.1 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Compiling schemars_derive v0.8.22 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Compiling rmcp-macros v0.1.5 [INFO] [stderr] Compiling tokio v1.44.1 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling thiserror v2.0.12 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling tokio-util v0.7.14 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling chrono v0.4.40 [INFO] [stderr] Compiling rmcp v0.1.5 (/opt/rustwide/workdir) [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/service.rs:496:14 [INFO] [stdout] | [INFO] [stdout] 496 | let (mut sink, mut stream) = transport.into_transport(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/service.rs:496:24 [INFO] [stdout] | [INFO] [stdout] 496 | let (mut sink, mut stream) = transport.into_transport(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/service.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 160 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 163 | ) -> BoxFuture>; [INFO] [stdout] | ------------------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 163 | ) -> BoxFuture<'_, Result>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/service.rs:164:28 [INFO] [stdout] | [INFO] [stdout] 164 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture>; [INFO] [stdout] | ^^^^^ ------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 164 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture<'_, Result<(), McpError>>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/service.rs:172:9 [INFO] [stdout] | [INFO] [stdout] 172 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 175 | ) -> BoxFuture> { [INFO] [stdout] | ------------------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 175 | ) -> BoxFuture<'_, Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/service.rs:178:28 [INFO] [stdout] | [INFO] [stdout] 178 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture> { [INFO] [stdout] | ^^^^^ ------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 178 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture<'_, Result<(), McpError>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 45.03s [INFO] running `Command { std: "docker" "inspect" "70821a0757012448fc9e6e4160b0d3ea8f39c20bcd81d9bc340c2c92aadc33ea", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "70821a0757012448fc9e6e4160b0d3ea8f39c20bcd81d9bc340c2c92aadc33ea", kill_on_drop: false }` [INFO] [stdout] 70821a0757012448fc9e6e4160b0d3ea8f39c20bcd81d9bc340c2c92aadc33ea [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] b3e0504528e4509cfbfbe6b6825e00323b594b860501280648d7df5a1f518801 [INFO] running `Command { std: "docker" "start" "-a" "b3e0504528e4509cfbfbe6b6825e00323b594b860501280648d7df5a1f518801", kill_on_drop: false }` [INFO] [stderr] Compiling tracing-core v0.1.33 [INFO] [stderr] Compiling socket2 v0.5.8 [INFO] [stderr] Compiling regex-syntax v0.6.29 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling overload v0.1.1 [INFO] [stderr] Compiling sharded-slab v0.1.7 [INFO] [stderr] Compiling thread_local v1.1.8 [INFO] [stderr] Compiling nu-ansi-term v0.46.0 [INFO] [stderr] Compiling tokio v1.44.1 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling regex-automata v0.1.10 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling matchers v0.1.0 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling tracing-subscriber v0.3.19 [INFO] [stderr] Compiling tokio-util v0.7.14 [INFO] [stderr] Compiling rmcp v0.1.5 (/opt/rustwide/workdir) [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/service.rs:496:14 [INFO] [stdout] | [INFO] [stdout] 496 | let (mut sink, mut stream) = transport.into_transport(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/service.rs:496:24 [INFO] [stdout] | [INFO] [stdout] 496 | let (mut sink, mut stream) = transport.into_transport(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/service.rs:496:14 [INFO] [stdout] | [INFO] [stdout] 496 | let (mut sink, mut stream) = transport.into_transport(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/service.rs:496:24 [INFO] [stdout] | [INFO] [stdout] 496 | let (mut sink, mut stream) = transport.into_transport(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/service.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 160 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 163 | ) -> BoxFuture>; [INFO] [stdout] | ------------------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 163 | ) -> BoxFuture<'_, Result>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/service.rs:164:28 [INFO] [stdout] | [INFO] [stdout] 164 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture>; [INFO] [stdout] | ^^^^^ ------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 164 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture<'_, Result<(), McpError>>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/service.rs:172:9 [INFO] [stdout] | [INFO] [stdout] 172 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 175 | ) -> BoxFuture> { [INFO] [stdout] | ------------------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 175 | ) -> BoxFuture<'_, Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/service.rs:178:28 [INFO] [stdout] | [INFO] [stdout] 178 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture> { [INFO] [stdout] | ^^^^^ ------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 178 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture<'_, Result<(), McpError>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/service.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 160 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 163 | ) -> BoxFuture>; [INFO] [stdout] | ------------------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 163 | ) -> BoxFuture<'_, Result>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/service.rs:164:28 [INFO] [stdout] | [INFO] [stdout] 164 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture>; [INFO] [stdout] | ^^^^^ ------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 164 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture<'_, Result<(), McpError>>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/service.rs:172:9 [INFO] [stdout] | [INFO] [stdout] 172 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 175 | ) -> BoxFuture> { [INFO] [stdout] | ------------------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 175 | ) -> BoxFuture<'_, Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/service.rs:178:28 [INFO] [stdout] | [INFO] [stdout] 178 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture> { [INFO] [stdout] | ^^^^^ ------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 178 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture<'_, Result<(), McpError>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 35.11s [INFO] running `Command { std: "docker" "inspect" "b3e0504528e4509cfbfbe6b6825e00323b594b860501280648d7df5a1f518801", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b3e0504528e4509cfbfbe6b6825e00323b594b860501280648d7df5a1f518801", kill_on_drop: false }` [INFO] [stdout] b3e0504528e4509cfbfbe6b6825e00323b594b860501280648d7df5a1f518801 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 98dfab661f2eeb0d5cebb057d0058ac7d7a711d594afef7e52de416b32a00720 [INFO] running `Command { std: "docker" "start" "-a" "98dfab661f2eeb0d5cebb057d0058ac7d7a711d594afef7e52de416b32a00720", kill_on_drop: false }` [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/service.rs:496:14 [INFO] [stderr] | [INFO] [stderr] 496 | let (mut sink, mut stream) = transport.into_transport(); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/service.rs:496:24 [INFO] [stderr] | [INFO] [stderr] 496 | let (mut sink, mut stream) = transport.into_transport(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/service.rs:160:9 [INFO] [stderr] | [INFO] [stderr] 160 | &self, [INFO] [stderr] | ^^^^^ this lifetime flows to the output [INFO] [stderr] ... [INFO] [stderr] 163 | ) -> BoxFuture>; [INFO] [stderr] | ------------------------------------ the lifetime gets resolved as `'_` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 163 | ) -> BoxFuture<'_, Result>; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/service.rs:164:28 [INFO] [stderr] | [INFO] [stderr] 164 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture>; [INFO] [stderr] | ^^^^^ ------------------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 164 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture<'_, Result<(), McpError>>; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/service.rs:172:9 [INFO] [stderr] | [INFO] [stderr] 172 | &self, [INFO] [stderr] | ^^^^^ this lifetime flows to the output [INFO] [stderr] ... [INFO] [stderr] 175 | ) -> BoxFuture> { [INFO] [stderr] | ------------------------------------ the lifetime gets resolved as `'_` [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 175 | ) -> BoxFuture<'_, Result> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/service.rs:178:28 [INFO] [stderr] | [INFO] [stderr] 178 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture> { [INFO] [stderr] | ^^^^^ ------------------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 178 | fn handle_notification(&self, notification: R::PeerNot) -> BoxFuture<'_, Result<(), McpError>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: `rmcp` (lib) generated 6 warnings (run `cargo fix --lib -p rmcp` to apply 6 suggestions) [INFO] [stderr] warning: `rmcp` (lib test) generated 6 warnings (6 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.36s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/rmcp-a961ec03cec94b18) [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test model::tests::test_notification_serde ... ok [INFO] [stdout] test model::tests::test_initial_request_response_serde ... ok [INFO] [stdout] test transport::io::test::test_decode ... ok [INFO] [stdout] test model::capabilities::test::test_builder ... ok [INFO] [stdout] test transport::io::test::test_encode ... ok [INFO] [stdout] test model::tests::test_request_conversion ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/test_complex_schema.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/test_complex_schema-d1949fe8fb64e3d5) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test test_complex_schema ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/test_tool_handler.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/test_tool_handler-bed415cfb157e12d) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Running tests/test_tool_macros.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/test_tool_macros-424f07c1f35109bd) [INFO] [stdout] running 2 tests [INFO] [stdout] test test_tool_macros ... ok [INFO] [stdout] test test_tool_macros_with_empty_param ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "98dfab661f2eeb0d5cebb057d0058ac7d7a711d594afef7e52de416b32a00720", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "98dfab661f2eeb0d5cebb057d0058ac7d7a711d594afef7e52de416b32a00720", kill_on_drop: false }` [INFO] [stdout] 98dfab661f2eeb0d5cebb057d0058ac7d7a711d594afef7e52de416b32a00720