[INFO] cloning repository https://github.com/tim-schultz/mcp-client-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tim-schultz/mcp-client-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftim-schultz%2Fmcp-client-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftim-schultz%2Fmcp-client-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1c7de4a5936c3779629d668c556cb45ca64c757e
[INFO] testing tim-schultz/mcp-client-rs against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftim-schultz%2Fmcp-client-rs" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tim-schultz/mcp-client-rs
[INFO] removed 0 missing examples
[INFO] finished tweaking git repo https://github.com/tim-schultz/mcp-client-rs
[INFO] tweaked toml for git repo https://github.com/tim-schultz/mcp-client-rs written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tim-schultz/mcp-client-rs on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tim-schultz/mcp-client-rs 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded fastrand v2.2.0
[INFO] [stderr]   Downloaded async-signal v0.2.10
[INFO] [stderr]   Downloaded redox_syscall v0.5.7
[INFO] [stderr]   Downloaded async-net v2.0.0
[INFO] [stderr]   Downloaded async-executor v1.13.1
[INFO] [stderr]   Downloaded polling v3.7.4
[INFO] [stderr]   Downloaded futures-lite v2.5.0
[INFO] [stderr]   Downloaded async-io v2.4.0
[INFO] [stderr]   Downloaded async-fs v2.1.2
[INFO] [stderr]   Downloaded async-process v2.3.0
[INFO] [stderr]   Downloaded piper v0.2.4
[INFO] [stderr]   Downloaded smol v2.0.2
[INFO] [stderr]   Downloaded rustix v0.38.41
[INFO] [stderr]   Downloaded libc v0.2.167
[INFO] [stderr]   Downloaded tokio v1.41.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 691d0d60a6a7e76921a7007da2b9497742738d034dd371d530a3c625300a77f8
[INFO] running `Command { std: "docker" "start" "-a" "691d0d60a6a7e76921a7007da2b9497742738d034dd371d530a3c625300a77f8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "691d0d60a6a7e76921a7007da2b9497742738d034dd371d530a3c625300a77f8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "691d0d60a6a7e76921a7007da2b9497742738d034dd371d530a3c625300a77f8", kill_on_drop: false }`
[INFO] [stdout] 691d0d60a6a7e76921a7007da2b9497742738d034dd371d530a3c625300a77f8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c5f4a2b0c757886c2fca0bf23aa0a6f0873c3401796e17f8084d41df1df9fd1d
[INFO] running `Command { std: "docker" "start" "-a" "c5f4a2b0c757886c2fca0bf23aa0a6f0873c3401796e17f8084d41df1df9fd1d", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling pin-project-lite v0.2.15
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]    Compiling libc v0.2.167
[INFO] [stderr]    Compiling fastrand v2.2.0
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling litemap v0.7.4
[INFO] [stderr]    Compiling rustix v0.38.41
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling tracing-core v0.1.33
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling icu_locid_transform_data v1.5.0
[INFO] [stderr]    Compiling async-task v4.7.1
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling icu_properties_data v1.5.0
[INFO] [stderr]    Compiling icu_normalizer_data v1.5.0
[INFO] [stderr]    Compiling piper v0.2.4
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling futures-lite v2.5.0
[INFO] [stderr]    Compiling serde v1.0.215
[INFO] [stderr]    Compiling anyhow v1.0.94
[INFO] [stderr]    Compiling serde_json v1.0.133
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling bytes v1.9.0
[INFO] [stderr]    Compiling itoa v1.0.14
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling dotenv v0.15.0
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling event-listener v5.3.1
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling event-listener-strategy v0.5.3
[INFO] [stderr]    Compiling async-lock v3.4.0
[INFO] [stderr]    Compiling async-channel v2.3.1
[INFO] [stderr]    Compiling syn v2.0.90
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling socket2 v0.5.8
[INFO] [stderr]    Compiling blocking v1.6.1
[INFO] [stderr]    Compiling async-executor v1.13.1
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling async-fs v2.1.2
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.5
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.215
[INFO] [stderr]    Compiling tokio-macros v2.4.0
[INFO] [stderr]    Compiling polling v3.7.4
[INFO] [stderr]    Compiling async-io v2.4.0
[INFO] [stderr]    Compiling tokio v1.41.1
[INFO] [stderr]    Compiling async-signal v0.2.10
[INFO] [stderr]    Compiling async-net v2.0.0
[INFO] [stderr]    Compiling zerofrom v0.1.5
[INFO] [stderr]    Compiling async-process v2.3.0
[INFO] [stderr]    Compiling yoke v0.7.5
[INFO] [stderr]    Compiling zerovec v0.10.4
[INFO] [stderr]    Compiling smol v2.0.2
[INFO] [stderr]    Compiling tinystr v0.7.6
[INFO] [stderr]    Compiling icu_collections v1.5.0
[INFO] [stderr]    Compiling icu_locid v1.5.0
[INFO] [stderr]    Compiling icu_provider v1.5.0
[INFO] [stderr]    Compiling icu_locid_transform v1.5.0
[INFO] [stderr]    Compiling icu_properties v1.5.1
[INFO] [stderr]    Compiling icu_normalizer v1.5.0
[INFO] [stderr]    Compiling idna_adapter v1.2.0
[INFO] [stderr]    Compiling idna v1.0.3
[INFO] [stderr]    Compiling url v2.5.4
[INFO] [stderr]    Compiling mcp-client-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type `JsonRpcError` is more private than the item `ResponseContent::Error::error`
[INFO] [stdout]    --> src/types.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |     Error { error: JsonRpcError },
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ field `ResponseContent::Error::error` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `JsonRpcError` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/types.rs:289:1
[INFO] [stdout]     |
[INFO] [stdout] 289 | struct JsonRpcError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `code`, `message`, and `data` are never read
[INFO] [stdout]    --> src/types.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 289 | struct JsonRpcError {
[INFO] [stdout]     |        ------------ fields in this struct
[INFO] [stdout] 290 |     code: i32,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 291 |     message: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 292 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 293 |     data: Option<serde_json::Value>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `JsonRpcError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `JsonRpcError` is more private than the item `ResponseContent::Error::error`
[INFO] [stdout]    --> src/types.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |     Error { error: JsonRpcError },
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ field `ResponseContent::Error::error` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `JsonRpcError` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/types.rs:289:1
[INFO] [stdout]     |
[INFO] [stdout] 289 | struct JsonRpcError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_capabilities`, `list_prompts`, `list_resources`, `read_resources`, and `list_tools` are never used
[INFO] [stdout]    --> src/protocol.rs:98:12
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl Protocol {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn get_capabilities(&self) -> Option<&ServerCapabilities> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub async fn list_prompts(&self) -> Result<Vec<Prompt>, ClientError> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 |     pub async fn list_resources(&self) -> Result<ResourcesListResponse, ClientError> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     pub async fn read_resources(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub async fn list_tools(&self) -> Result<ListToolsResponse, ClientError> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `protocol_version`, `server_info`, and `meta` are never read
[INFO] [stdout]   --> src/types.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct InitializeResponse {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout]  8 |     pub protocol_version: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]  9 |     pub capabilities: ServerCapabilities,
[INFO] [stdout] 10 |     pub server_info: ServerInfo,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 11 |     #[serde(rename = "_meta", skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 12 |     pub meta: Option<HashMap<String, serde_json::Value>>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InitializeResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `version` are never read
[INFO] [stdout]   --> src/types.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct ServerInfo {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 17 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 18 |     pub version: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ServerInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ResourcesReadResponse` is never constructed
[INFO] [stdout]   --> src/types.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct ResourcesReadResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ResourcesListResponse` is never constructed
[INFO] [stdout]   --> src/types.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct ResourcesListResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Resource` is never constructed
[INFO] [stdout]   --> src/types.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct Resource {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ListToolsResponse` is never constructed
[INFO] [stdout]   --> src/types.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct ListToolsResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Tool` is never constructed
[INFO] [stdout]   --> src/types.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct Tool {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `content`, `is_error`, and `meta` are never read
[INFO] [stdout]   --> src/types.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct CallToolResponse {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 71 |     pub content: Vec<ToolResponseContent>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 72 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 73 |     pub is_error: Option<bool>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 74 |     #[serde(rename = "_meta", skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 75 |     pub meta: Option<HashMap<String, serde_json::Value>>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CallToolResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Prompt` is never constructed
[INFO] [stdout]   --> src/types.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct Prompt {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/types.rs:99:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | pub enum RequestType {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout]  99 |     ResourcesUnsubscribe,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 100 |     ResourcesSubscribe,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 101 |     ResourcesRead,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 102 |     ResourcesList,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 103 |     LoggingSetLevel,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 104 |     PromptsGet,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 105 |     PromptsList,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 106 |     CompletionComplete,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 107 |     Ping,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 108 |     ListTools,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 109 |     ListResourceTemplates,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 110 |     ListRoots,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RequestType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Experimental`, `Logging`, `Prompts`, `Resources`, and `Sampling` are never constructed
[INFO] [stdout]    --> src/types.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub enum ServerCapability {
[INFO] [stdout]     |          ---------------- variants in this enum
[INFO] [stdout] 115 |     Experimental,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 116 |     Logging,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 117 |     Prompts,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 118 |     Resources,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 119 |     Tools,
[INFO] [stdout] 120 |     Sampling,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ServerCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `levels` is never read
[INFO] [stdout]    --> src/types.rs:157:9
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub struct LoggingCapability {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] 157 |     pub levels: Vec<String>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LoggingCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `supports_custom` is never read
[INFO] [stdout]    --> src/types.rs:162:9
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub struct PromptsCapability {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] 162 |     pub supports_custom: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PromptsCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `supports_subscribe` and `supports_delta` are never read
[INFO] [stdout]    --> src/types.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub struct ResourcesCapability {
[INFO] [stdout]     |            ------------------- fields in this struct
[INFO] [stdout] 167 |     pub supports_subscribe: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 168 |     pub supports_delta: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ResourcesCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `supports_streaming` is never read
[INFO] [stdout]    --> src/types.rs:174:9
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub struct ToolsCapability {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 173 |     #[serde(default)]
[INFO] [stdout] 174 |     pub supports_streaming: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolsCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `max_tokens` and `supported_methods` are never read
[INFO] [stdout]    --> src/types.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub struct SamplingCapability {
[INFO] [stdout]     |            ------------------ fields in this struct
[INFO] [stdout] 179 |     pub max_tokens: Option<u32>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 180 |     pub supported_methods: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SamplingCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ResourceError` and `PromptError` are never constructed
[INFO] [stdout]    --> src/types.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub enum ClientError {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 187 |     ResourceError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 188 |     ToolError(String),
[INFO] [stdout] 189 |     PromptError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ClientError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `jsonrpc` and `id` are never read
[INFO] [stdout]    --> src/types.rs:275:9
[INFO] [stdout]     |
[INFO] [stdout] 274 | pub struct JsonRpcResponse<T> {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 275 |     pub jsonrpc: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 276 |     pub id: u64,
[INFO] [stdout]     |         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `JsonRpcResponse` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `error` is never read
[INFO] [stdout]    --> src/types.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |     Error { error: JsonRpcError },
[INFO] [stdout]     |     -----   ^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ResponseContent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `code`, `message`, and `data` are never read
[INFO] [stdout]    --> src/types.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 289 | struct JsonRpcError {
[INFO] [stdout]     |        ------------ fields in this struct
[INFO] [stdout] 290 |     code: i32,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 291 |     message: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 292 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 293 |     data: Option<serde_json::Value>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `JsonRpcError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 34.76s
[INFO] running `Command { std: "docker" "inspect" "c5f4a2b0c757886c2fca0bf23aa0a6f0873c3401796e17f8084d41df1df9fd1d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c5f4a2b0c757886c2fca0bf23aa0a6f0873c3401796e17f8084d41df1df9fd1d", kill_on_drop: false }`
[INFO] [stdout] c5f4a2b0c757886c2fca0bf23aa0a6f0873c3401796e17f8084d41df1df9fd1d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a70d6d507bed3949c0cac4e64caaf3203c723ed798d317aa4739e1fc7a7bdd70
[INFO] running `Command { std: "docker" "start" "-a" "a70d6d507bed3949c0cac4e64caaf3203c723ed798d317aa4739e1fc7a7bdd70", kill_on_drop: false }`
[INFO] [stderr]    Compiling mcp-client-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type `JsonRpcError` is more private than the item `ResponseContent::Error::error`
[INFO] [stdout]    --> src/types.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |     Error { error: JsonRpcError },
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ field `ResponseContent::Error::error` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `JsonRpcError` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/types.rs:289:1
[INFO] [stdout]     |
[INFO] [stdout] 289 | struct JsonRpcError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `code`, `message`, and `data` are never read
[INFO] [stdout]    --> src/types.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 289 | struct JsonRpcError {
[INFO] [stdout]     |        ------------ fields in this struct
[INFO] [stdout] 290 |     code: i32,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 291 |     message: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 292 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 293 |     data: Option<serde_json::Value>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `JsonRpcError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `JsonRpcError` is more private than the item `ResponseContent::Error::error`
[INFO] [stdout]    --> src/types.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |     Error { error: JsonRpcError },
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ field `ResponseContent::Error::error` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `JsonRpcError` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/types.rs:289:1
[INFO] [stdout]     |
[INFO] [stdout] 289 | struct JsonRpcError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `code`, `message`, and `data` are never read
[INFO] [stdout]    --> src/types.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 289 | struct JsonRpcError {
[INFO] [stdout]     |        ------------ fields in this struct
[INFO] [stdout] 290 |     code: i32,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 291 |     message: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 292 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 293 |     data: Option<serde_json::Value>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `JsonRpcError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `JsonRpcError` is more private than the item `ResponseContent::Error::error`
[INFO] [stdout]    --> src/types.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |     Error { error: JsonRpcError },
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ field `ResponseContent::Error::error` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `JsonRpcError` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/types.rs:289:1
[INFO] [stdout]     |
[INFO] [stdout] 289 | struct JsonRpcError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_capabilities`, `list_prompts`, `list_resources`, `read_resources`, and `list_tools` are never used
[INFO] [stdout]    --> src/protocol.rs:98:12
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl Protocol {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn get_capabilities(&self) -> Option<&ServerCapabilities> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub async fn list_prompts(&self) -> Result<Vec<Prompt>, ClientError> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 |     pub async fn list_resources(&self) -> Result<ResourcesListResponse, ClientError> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     pub async fn read_resources(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub async fn list_tools(&self) -> Result<ListToolsResponse, ClientError> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `protocol_version`, `server_info`, and `meta` are never read
[INFO] [stdout]   --> src/types.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct InitializeResponse {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout]  8 |     pub protocol_version: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]  9 |     pub capabilities: ServerCapabilities,
[INFO] [stdout] 10 |     pub server_info: ServerInfo,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 11 |     #[serde(rename = "_meta", skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 12 |     pub meta: Option<HashMap<String, serde_json::Value>>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InitializeResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `version` are never read
[INFO] [stdout]   --> src/types.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct ServerInfo {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 17 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 18 |     pub version: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ServerInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ResourcesReadResponse` is never constructed
[INFO] [stdout]   --> src/types.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct ResourcesReadResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ResourcesListResponse` is never constructed
[INFO] [stdout]   --> src/types.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct ResourcesListResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Resource` is never constructed
[INFO] [stdout]   --> src/types.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct Resource {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ListToolsResponse` is never constructed
[INFO] [stdout]   --> src/types.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct ListToolsResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Tool` is never constructed
[INFO] [stdout]   --> src/types.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct Tool {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `content`, `is_error`, and `meta` are never read
[INFO] [stdout]   --> src/types.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct CallToolResponse {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 71 |     pub content: Vec<ToolResponseContent>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 72 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 73 |     pub is_error: Option<bool>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 74 |     #[serde(rename = "_meta", skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 75 |     pub meta: Option<HashMap<String, serde_json::Value>>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CallToolResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Prompt` is never constructed
[INFO] [stdout]   --> src/types.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub struct Prompt {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/types.rs:99:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | pub enum RequestType {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout]  99 |     ResourcesUnsubscribe,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 100 |     ResourcesSubscribe,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 101 |     ResourcesRead,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 102 |     ResourcesList,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 103 |     LoggingSetLevel,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 104 |     PromptsGet,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 105 |     PromptsList,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 106 |     CompletionComplete,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 107 |     Ping,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 108 |     ListTools,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 109 |     ListResourceTemplates,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 110 |     ListRoots,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RequestType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Experimental`, `Logging`, `Prompts`, `Resources`, and `Sampling` are never constructed
[INFO] [stdout]    --> src/types.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub enum ServerCapability {
[INFO] [stdout]     |          ---------------- variants in this enum
[INFO] [stdout] 115 |     Experimental,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 116 |     Logging,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 117 |     Prompts,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 118 |     Resources,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 119 |     Tools,
[INFO] [stdout] 120 |     Sampling,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ServerCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `levels` is never read
[INFO] [stdout]    --> src/types.rs:157:9
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub struct LoggingCapability {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] 157 |     pub levels: Vec<String>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LoggingCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `supports_custom` is never read
[INFO] [stdout]    --> src/types.rs:162:9
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub struct PromptsCapability {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] 162 |     pub supports_custom: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PromptsCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `supports_subscribe` and `supports_delta` are never read
[INFO] [stdout]    --> src/types.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub struct ResourcesCapability {
[INFO] [stdout]     |            ------------------- fields in this struct
[INFO] [stdout] 167 |     pub supports_subscribe: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 168 |     pub supports_delta: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ResourcesCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `supports_streaming` is never read
[INFO] [stdout]    --> src/types.rs:174:9
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub struct ToolsCapability {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 173 |     #[serde(default)]
[INFO] [stdout] 174 |     pub supports_streaming: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolsCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `max_tokens` and `supported_methods` are never read
[INFO] [stdout]    --> src/types.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub struct SamplingCapability {
[INFO] [stdout]     |            ------------------ fields in this struct
[INFO] [stdout] 179 |     pub max_tokens: Option<u32>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 180 |     pub supported_methods: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SamplingCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ResourceError` and `PromptError` are never constructed
[INFO] [stdout]    --> src/types.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub enum ClientError {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 187 |     ResourceError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 188 |     ToolError(String),
[INFO] [stdout] 189 |     PromptError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ClientError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `jsonrpc` and `id` are never read
[INFO] [stdout]    --> src/types.rs:275:9
[INFO] [stdout]     |
[INFO] [stdout] 274 | pub struct JsonRpcResponse<T> {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 275 |     pub jsonrpc: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 276 |     pub id: u64,
[INFO] [stdout]     |         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `JsonRpcResponse` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `error` is never read
[INFO] [stdout]    --> src/types.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |     Error { error: JsonRpcError },
[INFO] [stdout]     |     -----   ^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ResponseContent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `code`, `message`, and `data` are never read
[INFO] [stdout]    --> src/types.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 289 | struct JsonRpcError {
[INFO] [stdout]     |        ------------ fields in this struct
[INFO] [stdout] 290 |     code: i32,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 291 |     message: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 292 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stdout] 293 |     data: Option<serde_json::Value>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `JsonRpcError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.75s
[INFO] running `Command { std: "docker" "inspect" "a70d6d507bed3949c0cac4e64caaf3203c723ed798d317aa4739e1fc7a7bdd70", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a70d6d507bed3949c0cac4e64caaf3203c723ed798d317aa4739e1fc7a7bdd70", kill_on_drop: false }`
[INFO] [stdout] a70d6d507bed3949c0cac4e64caaf3203c723ed798d317aa4739e1fc7a7bdd70
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] bfab845ef9221ac10891142c8652e41ea286293d6cad3b7a236d793024448eaa
[INFO] running `Command { std: "docker" "start" "-a" "bfab845ef9221ac10891142c8652e41ea286293d6cad3b7a236d793024448eaa", kill_on_drop: false }`
[INFO] [stderr] warning: type `JsonRpcError` is more private than the item `ResponseContent::Error::error`
[INFO] [stdout] 
[INFO] [stderr]    --> src/types.rs:285:13
[INFO] [stdout] running 0 tests
[INFO] [stderr]     |
[INFO] [stdout] 
[INFO] [stderr] 285 |     Error { error: JsonRpcError },
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^ field `ResponseContent::Error::error` is reachable at visibility `pub`
[INFO] [stdout] 
[INFO] [stderr]     |
[INFO] [stdout] 
[INFO] [stderr] note: but type `JsonRpcError` is only usable at visibility `pub(self)`
[INFO] [stdout] running 0 tests
[INFO] [stderr]    --> src/types.rs:289:1
[INFO] [stdout] 
[INFO] [stderr]     |
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr] 289 | struct JsonRpcError {
[INFO] [stdout] 
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `code`, `message`, and `data` are never read
[INFO] [stderr]    --> src/types.rs:290:5
[INFO] [stderr]     |
[INFO] [stderr] 289 | struct JsonRpcError {
[INFO] [stderr]     |        ------------ fields in this struct
[INFO] [stderr] 290 |     code: i32,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 291 |     message: String,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 292 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stderr] 293 |     data: Option<serde_json::Value>,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `JsonRpcError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `mcp-client-rs` (lib) generated 2 warnings
[INFO] [stderr] warning: `mcp-client-rs` (lib test) generated 2 warnings (2 duplicates)
[INFO] [stderr] warning: type `JsonRpcError` is more private than the item `ResponseContent::Error::error`
[INFO] [stderr]    --> src/types.rs:285:13
[INFO] [stderr]     |
[INFO] [stderr] 285 |     Error { error: JsonRpcError },
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^ field `ResponseContent::Error::error` is reachable at visibility `pub(crate)`
[INFO] [stderr]     |
[INFO] [stderr] note: but type `JsonRpcError` is only usable at visibility `pub(self)`
[INFO] [stderr]    --> src/types.rs:289:1
[INFO] [stderr]     |
[INFO] [stderr] 289 | struct JsonRpcError {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_capabilities`, `list_prompts`, `list_resources`, `read_resources`, and `list_tools` are never used
[INFO] [stderr]    --> src/protocol.rs:98:12
[INFO] [stderr]     |
[INFO] [stderr]  35 | impl Protocol {
[INFO] [stderr]     | ------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  98 |     pub fn get_capabilities(&self) -> Option<&ServerCapabilities> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 170 |     pub async fn list_prompts(&self) -> Result<Vec<Prompt>, ClientError> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 185 |     pub async fn list_resources(&self) -> Result<ResourcesListResponse, ClientError> {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 200 |     pub async fn read_resources(
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 225 |     pub async fn list_tools(&self) -> Result<ListToolsResponse, ClientError> {
[INFO] [stderr]     |                  ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `protocol_version`, `server_info`, and `meta` are never read
[INFO] [stderr]   --> src/types.rs:8:9
[INFO] [stderr]    |
[INFO] [stderr]  7 | pub struct InitializeResponse {
[INFO] [stderr]    |            ------------------ fields in this struct
[INFO] [stderr]  8 |     pub protocol_version: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^
[INFO] [stderr]  9 |     pub capabilities: ServerCapabilities,
[INFO] [stderr] 10 |     pub server_info: ServerInfo,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 11 |     #[serde(rename = "_meta", skip_serializing_if = "Option::is_none")]
[INFO] [stderr] 12 |     pub meta: Option<HashMap<String, serde_json::Value>>,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `InitializeResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name` and `version` are never read
[INFO] [stderr]   --> src/types.rs:17:9
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub struct ServerInfo {
[INFO] [stderr]    |            ---------- fields in this struct
[INFO] [stderr] 17 |     pub name: String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 18 |     pub version: String,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ServerInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ResourcesReadResponse` is never constructed
[INFO] [stderr]   --> src/types.rs:23:12
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub struct ResourcesReadResponse {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ResourcesListResponse` is never constructed
[INFO] [stderr]   --> src/types.rs:39:12
[INFO] [stderr]    |
[INFO] [stderr] 39 | pub struct ResourcesListResponse {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Resource` is never constructed
[INFO] [stderr]   --> src/types.rs:48:12
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub struct Resource {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ListToolsResponse` is never constructed
[INFO] [stderr]   --> src/types.rs:55:12
[INFO] [stderr]    |
[INFO] [stderr] 55 | pub struct ListToolsResponse {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Tool` is never constructed
[INFO] [stderr]   --> src/types.rs:61:12
[INFO] [stderr]    |
[INFO] [stderr] 61 | pub struct Tool {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `content`, `is_error`, and `meta` are never read
[INFO] [stderr]   --> src/types.rs:71:9
[INFO] [stderr]    |
[INFO] [stderr] 70 | pub struct CallToolResponse {
[INFO] [stderr]    |            ---------------- fields in this struct
[INFO] [stderr] 71 |     pub content: Vec<ToolResponseContent>,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 72 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stderr] 73 |     pub is_error: Option<bool>,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 74 |     #[serde(rename = "_meta", skip_serializing_if = "Option::is_none")]
[INFO] [stderr] 75 |     pub meta: Option<HashMap<String, serde_json::Value>>,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CallToolResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Prompt` is never constructed
[INFO] [stderr]   --> src/types.rs:90:12
[INFO] [stderr]    |
[INFO] [stderr] 90 | pub struct Prompt {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]    --> src/types.rs:99:5
[INFO] [stderr]     |
[INFO] [stderr]  96 | pub enum RequestType {
[INFO] [stderr]     |          ----------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr]  99 |     ResourcesUnsubscribe,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 100 |     ResourcesSubscribe,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 101 |     ResourcesRead,
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 102 |     ResourcesList,
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 103 |     LoggingSetLevel,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 104 |     PromptsGet,
[INFO] [stderr]     |     ^^^^^^^^^^
[INFO] [stderr] 105 |     PromptsList,
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr] 106 |     CompletionComplete,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 107 |     Ping,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 108 |     ListTools,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr] 109 |     ListResourceTemplates,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 110 |     ListRoots,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `RequestType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Experimental`, `Logging`, `Prompts`, `Resources`, and `Sampling` are never constructed
[INFO] [stderr]    --> src/types.rs:115:5
[INFO] [stderr]     |
[INFO] [stderr] 114 | pub enum ServerCapability {
[INFO] [stderr]     |          ---------------- variants in this enum
[INFO] [stderr] 115 |     Experimental,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 116 |     Logging,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 117 |     Prompts,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 118 |     Resources,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr] 119 |     Tools,
[INFO] [stderr] 120 |     Sampling,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ServerCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `levels` is never read
[INFO] [stderr]    --> src/types.rs:157:9
[INFO] [stderr]     |
[INFO] [stderr] 156 | pub struct LoggingCapability {
[INFO] [stderr]     |            ----------------- field in this struct
[INFO] [stderr] 157 |     pub levels: Vec<String>,
[INFO] [stderr]     |         ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `LoggingCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `supports_custom` is never read
[INFO] [stderr]    --> src/types.rs:162:9
[INFO] [stderr]     |
[INFO] [stderr] 161 | pub struct PromptsCapability {
[INFO] [stderr]     |            ----------------- field in this struct
[INFO] [stderr] 162 |     pub supports_custom: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `PromptsCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `supports_subscribe` and `supports_delta` are never read
[INFO] [stderr]    --> src/types.rs:167:9
[INFO] [stderr]     |
[INFO] [stderr] 166 | pub struct ResourcesCapability {
[INFO] [stderr]     |            ------------------- fields in this struct
[INFO] [stderr] 167 |     pub supports_subscribe: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 168 |     pub supports_delta: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ResourcesCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `supports_streaming` is never read
[INFO] [stderr]    --> src/types.rs:174:9
[INFO] [stderr]     |
[INFO] [stderr] 172 | pub struct ToolsCapability {
[INFO] [stderr]     |            --------------- field in this struct
[INFO] [stderr] 173 |     #[serde(default)]
[INFO] [stderr] 174 |     pub supports_streaming: bool,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ToolsCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `max_tokens` and `supported_methods` are never read
[INFO] [stderr]    --> src/types.rs:179:9
[INFO] [stderr]     |
[INFO] [stderr] 178 | pub struct SamplingCapability {
[INFO] [stderr]     |            ------------------ fields in this struct
[INFO] [stderr] 179 |     pub max_tokens: Option<u32>,
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr] 180 |     pub supported_methods: Vec<String>,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `SamplingCapability` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `ResourceError` and `PromptError` are never constructed
[INFO] [stderr]    --> src/types.rs:187:5
[INFO] [stderr]     |
[INFO] [stderr] 184 | pub enum ClientError {
[INFO] [stderr]     |          ----------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 187 |     ResourceError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 188 |     ToolError(String),
[INFO] [stderr] 189 |     PromptError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ClientError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `jsonrpc` and `id` are never read
[INFO] [stderr]    --> src/types.rs:275:9
[INFO] [stderr]     |
[INFO] [stderr] 274 | pub struct JsonRpcResponse<T> {
[INFO] [stderr]     |            --------------- fields in this struct
[INFO] [stderr] 275 |     pub jsonrpc: String,
[INFO] [stderr]     |         ^^^^^^^
[INFO] [stderr] 276 |     pub id: u64,
[INFO] [stderr]     |         ^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `JsonRpcResponse` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `error` is never read
[INFO] [stderr]    --> src/types.rs:285:13
[INFO] [stderr]     |
[INFO] [stderr] 285 |     Error { error: JsonRpcError },
[INFO] [stderr]     |     -----   ^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     field in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ResponseContent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `code`, `message`, and `data` are never read
[INFO] [stderr]    --> src/types.rs:290:5
[INFO] [stderr]     |
[INFO] [stderr] 289 | struct JsonRpcError {
[INFO] [stderr]     |        ------------ fields in this struct
[INFO] [stderr] 290 |     code: i32,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 291 |     message: String,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 292 |     #[serde(skip_serializing_if = "Option::is_none")]
[INFO] [stderr] 293 |     data: Option<serde_json::Value>,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `JsonRpcError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: `mcp-client-rs` (bin "mcp-client-rs" test) generated 22 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.18s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/mcp_client_rs-78b9b3cb4c0299ca)
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/mcp_client_rs-44c58dd45cc285a5)
[INFO] [stderr]    Doc-tests mcp_client_rs
[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] running `Command { std: "docker" "inspect" "bfab845ef9221ac10891142c8652e41ea286293d6cad3b7a236d793024448eaa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bfab845ef9221ac10891142c8652e41ea286293d6cad3b7a236d793024448eaa", kill_on_drop: false }`
[INFO] [stdout] bfab845ef9221ac10891142c8652e41ea286293d6cad3b7a236d793024448eaa
