[INFO] cloning repository https://github.com/Bluscream/linux-gui-mcp
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Bluscream/linux-gui-mcp" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBluscream%2Flinux-gui-mcp", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBluscream%2Flinux-gui-mcp'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a9fb53cfa56fc90d692c4479f745361955024ca3
[INFO] checking Bluscream/linux-gui-mcp against 0335fc7ee9e33d92e03d99f3e2fb0fe6119f3cc0 for pr-158915-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBluscream%2Flinux-gui-mcp" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Bluscream/linux-gui-mcp
[INFO] finished tweaking git repo https://github.com/Bluscream/linux-gui-mcp
[INFO] tweaked toml for git repo https://github.com/Bluscream/linux-gui-mcp written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Bluscream/linux-gui-mcp on toolchain 0335fc7ee9e33d92e03d99f3e2fb0fe6119f3cc0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0335fc7ee9e33d92e03d99f3e2fb0fe6119f3cc0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Bluscream/linux-gui-mcp 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" "+0335fc7ee9e33d92e03d99f3e2fb0fe6119f3cc0" "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/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] f18e124efbd2eefb18ae03ce932db5b1d60af174bc21857f993e7775289b45d4
[INFO] running `Command { std: "docker" "start" "f18e124efbd2eefb18ae03ce932db5b1d60af174bc21857f993e7775289b45d4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f18e124efbd2eefb18ae03ce932db5b1d60af174bc21857f993e7775289b45d4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f18e124efbd2eefb18ae03ce932db5b1d60af174bc21857f993e7775289b45d4" "/opt/rustwide/cargo-home/bin/cargo" "+0335fc7ee9e33d92e03d99f3e2fb0fe6119f3cc0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f18e124efbd2eefb18ae03ce932db5b1d60af174bc21857f993e7775289b45d4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f18e124efbd2eefb18ae03ce932db5b1d60af174bc21857f993e7775289b45d4" "/opt/rustwide/cargo-home/bin/cargo" "+0335fc7ee9e33d92e03d99f3e2fb0fe6119f3cc0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling libc v0.2.189
[INFO] [stderr]     Checking futures-core v0.3.34
[INFO] [stderr]     Checking bitflags v2.13.1
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]     Checking memchr v2.8.3
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]     Checking futures-io v0.3.34
[INFO] [stderr]     Checking parking v2.2.1
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling winnow v1.0.4
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.22
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]     Checking fastrand v2.5.0
[INFO] [stderr]    Compiling zmij v1.0.23
[INFO] [stderr]    Compiling shlex v2.0.1
[INFO] [stderr]    Compiling pkg-config v0.3.34
[INFO] [stderr]    Compiling find-msvc-tools v0.1.11
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking event-listener v5.4.2
[INFO] [stderr]     Checking unicode-ident v1.0.24
[INFO] [stderr]     Checking futures-lite v2.6.1
[INFO] [stderr]     Checking futures-sink v0.3.34
[INFO] [stderr]    Compiling cc v1.4.4
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling wayland-client v0.31.15
[INFO] [stderr]    Compiling crc32fast v1.5.1
[INFO] [stderr]    Compiling quick-xml v0.41.0
[INFO] [stderr]    Compiling wayland-sys v0.31.11
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]     Checking downcast-rs v1.2.1
[INFO] [stderr]     Checking simd-adler32 v0.3.10
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]     Checking smallvec v1.15.2
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]     Checking futures-channel v0.3.34
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]    Compiling ref-cast v1.0.27
[INFO] [stderr]     Checking async-task v4.7.1
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]     Checking futures-task v0.3.34
[INFO] [stderr]    Compiling cfg_aliases v0.2.2
[INFO] [stderr]    Compiling endi v1.1.1
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]    Compiling toml_parser v1.1.3+spec-1.1.0
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]     Checking fixedbitset v0.5.7
[INFO] [stderr]     Checking tap v1.0.1
[INFO] [stderr]    Compiling wayland-scanner v0.31.11
[INFO] [stderr]     Checking bytes v1.12.1
[INFO] [stderr]     Checking atomic-waker v1.1.2
[INFO] [stderr]     Checking wyz v0.5.1
[INFO] [stderr]    Compiling wayland-backend v0.3.17
[INFO] [stderr]     Checking piper v0.2.5
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking mio v1.2.2
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling toml_edit v0.25.13+spec-1.1.0
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking async-lock v3.4.2
[INFO] [stderr]     Checking aho-corasick v1.1.5
[INFO] [stderr]     Checking nom v8.0.0
[INFO] [stderr]    Compiling anyhow v1.0.104
[INFO] [stderr]     Checking dyn-clone v1.0.20
[INFO] [stderr]     Checking regex-syntax v0.8.11
[INFO] [stderr]     Checking funty v2.0.0
[INFO] [stderr]     Checking pxfm v0.1.30
[INFO] [stderr]    Compiling rmcp v3.1.4
[INFO] [stderr]     Checking png v0.18.1
[INFO] [stderr]     Checking blocking v1.7.0
[INFO] [stderr]     Checking uuid v1.25.0
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]     Checking petgraph v0.8.3
[INFO] [stderr]     Checking bitvec v1.1.1
[INFO] [stderr]     Checking os_pipe v1.2.3
[INFO] [stderr]     Checking async-executor v1.14.0
[INFO] [stderr]     Checking async-broadcast v0.7.2
[INFO] [stderr]     Checking ordered-stream v0.2.0
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]    Compiling pastey v0.2.3
[INFO] [stderr]     Checking byteorder-lite v0.1.0
[INFO] [stderr]     Checking base64 v0.23.1
[INFO] [stderr]     Checking log v0.4.34
[INFO] [stderr]     Checking bytemuck v1.25.2
[INFO] [stderr]     Checking base64 v0.22.1
[INFO] [stderr]     Checking regex-automata v0.4.18
[INFO] [stderr]     Checking moxcms v0.8.1
[INFO] [stderr]    Compiling darling_core v0.24.1
[INFO] [stderr]    Compiling serde_derive_internals v0.30.0
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling async-recursion v1.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling futures-macro v0.3.34
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]    Compiling ref-cast-impl v1.0.27
[INFO] [stderr]    Compiling tokio-macros v2.7.2
[INFO] [stderr]    Compiling async-trait v0.1.92
[INFO] [stderr]     Checking async-signal v0.2.14
[INFO] [stderr]    Compiling serde_repr v0.1.21
[INFO] [stderr]     Checking async-process v2.5.0
[INFO] [stderr]    Compiling schemars_derive v1.2.2
[INFO] [stderr]     Checking tokio v1.53.1
[INFO] [stderr]     Checking futures-util v0.3.34
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking evdev v0.13.2
[INFO] [stderr]     Checking regex v1.13.1
[INFO] [stderr]     Checking wayland-protocols v0.32.13
[INFO] [stderr]    Compiling darling_macro v0.24.1
[INFO] [stderr]    Compiling darling v0.24.1
[INFO] [stderr]    Compiling rmcp-macros v3.1.4
[INFO] [stderr]     Checking tree_magic_mini v3.2.2
[INFO] [stderr]     Checking image v0.25.10
[INFO] [stderr]    Compiling zvariant_utils v4.2.0
[INFO] [stderr]    Compiling enumflags2 v0.7.12
[INFO] [stderr]    Compiling zcheapstr v1.1.0
[INFO] [stderr]     Checking chrono v0.4.45
[INFO] [stderr]     Checking futures-executor v0.3.34
[INFO] [stderr]     Checking futures v0.3.34
[INFO] [stderr]    Compiling zvariant_derive v5.15.0
[INFO] [stderr]    Compiling zvariant v5.15.0
[INFO] [stderr]     Checking tokio-util v0.7.19
[INFO] [stderr]     Checking schemars v1.2.2
[INFO] [stderr]     Checking wayland-protocols-wlr v0.3.12
[INFO] [stderr]     Checking wl-clipboard-rs v0.9.3
[INFO] [stderr]    Compiling zbus_names v4.3.4
[INFO] [stderr]    Compiling zbus_macros v5.19.0
[INFO] [stderr]     Checking zbus v5.19.0
[INFO] [stderr]     Checking linux-gui-mcp v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated associated function `evdev::uinput::VirtualDeviceBuilder::<'a>::new`: use `VirtualDevice::builder()` instead
[INFO] [stdout]   --> src/bin/../input.rs:50:41
[INFO] [stdout]    |
[INFO] [stdout] 50 |     let pointer = VirtualDeviceBuilder::new()?
[INFO] [stdout]    |                                         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `evdev::uinput::VirtualDeviceBuilder::<'a>::new`: use `VirtualDevice::builder()` instead
[INFO] [stdout]   --> src/bin/../input.rs:65:39
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let wheel = VirtualDeviceBuilder::new()?
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `evdev::uinput::VirtualDeviceBuilder::<'a>::new`: use `VirtualDevice::builder()` instead
[INFO] [stdout]   --> src/bin/../input.rs:73:42
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let keyboard = VirtualDeviceBuilder::new()?
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `wheel` and `keyboard` are never read
[INFO] [stdout]   --> src/bin/../input.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct Devices {
[INFO] [stdout]    |        ------- fields in this struct
[INFO] [stdout] 23 |     pointer: VirtualDevice,
[INFO] [stdout] 24 |     wheel: VirtualDevice,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 25 |     keyboard: VirtualDevice,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `button` is never used
[INFO] [stdout]    --> src/bin/../input.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn button(name: &str) -> Result<KeyCode> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `click` is never used
[INFO] [stdout]    --> src/bin/../input.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn click(name: &str, count: u32) -> Result<()> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `press_button` is never used
[INFO] [stdout]    --> src/bin/../input.rs:150:8
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub fn press_button(name: &str, down: bool) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scroll` is never used
[INFO] [stdout]    --> src/bin/../input.rs:158:8
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub fn scroll(amount: i32) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `press_keys` is never used
[INFO] [stdout]    --> src/bin/../input.rs:173:8
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub fn press_keys(codes: &[u16]) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_keys` is never used
[INFO] [stdout]    --> src/bin/../input.rs:185:8
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub fn type_keys(sequences: &[Vec<u16>], delay_ms: u64) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/bin/../shell.rs:42:14
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub async fn run(argv: &[&str]) -> Result<String> {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `have` is never used
[INFO] [stdout]   --> src/bin/../shell.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn have(program: &str) -> bool {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `settle` is never used
[INFO] [stdout]   --> src/bin/../shell.rs:77:14
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub async fn settle(milliseconds: u64) {
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `evdev::uinput::VirtualDeviceBuilder::<'a>::new`: use `VirtualDevice::builder()` instead
[INFO] [stdout]   --> src/bin/../input.rs:50:41
[INFO] [stdout]    |
[INFO] [stdout] 50 |     let pointer = VirtualDeviceBuilder::new()?
[INFO] [stdout]    |                                         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `evdev::uinput::VirtualDeviceBuilder::<'a>::new`: use `VirtualDevice::builder()` instead
[INFO] [stdout]   --> src/bin/../input.rs:65:39
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let wheel = VirtualDeviceBuilder::new()?
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `evdev::uinput::VirtualDeviceBuilder::<'a>::new`: use `VirtualDevice::builder()` instead
[INFO] [stdout]   --> src/bin/../input.rs:73:42
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let keyboard = VirtualDeviceBuilder::new()?
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `evdev::uinput::VirtualDeviceBuilder::<'a>::new`: use `VirtualDevice::builder()` instead
[INFO] [stdout]   --> src/input.rs:50:41
[INFO] [stdout]    |
[INFO] [stdout] 50 |     let pointer = VirtualDeviceBuilder::new()?
[INFO] [stdout]    |                                         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `evdev::uinput::VirtualDeviceBuilder::<'a>::new`: use `VirtualDevice::builder()` instead
[INFO] [stdout]   --> src/input.rs:65:39
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let wheel = VirtualDeviceBuilder::new()?
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `evdev::uinput::VirtualDeviceBuilder::<'a>::new`: use `VirtualDevice::builder()` instead
[INFO] [stdout]   --> src/input.rs:73:42
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let keyboard = VirtualDeviceBuilder::new()?
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `wheel` and `keyboard` are never read
[INFO] [stdout]   --> src/bin/../input.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct Devices {
[INFO] [stdout]    |        ------- fields in this struct
[INFO] [stdout] 23 |     pointer: VirtualDevice,
[INFO] [stdout] 24 |     wheel: VirtualDevice,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 25 |     keyboard: VirtualDevice,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `button` is never used
[INFO] [stdout]    --> src/bin/../input.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn button(name: &str) -> Result<KeyCode> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `click` is never used
[INFO] [stdout]    --> src/bin/../input.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn click(name: &str, count: u32) -> Result<()> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `press_button` is never used
[INFO] [stdout]    --> src/bin/../input.rs:150:8
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub fn press_button(name: &str, down: bool) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scroll` is never used
[INFO] [stdout]    --> src/bin/../input.rs:158:8
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub fn scroll(amount: i32) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `press_keys` is never used
[INFO] [stdout]    --> src/bin/../input.rs:173:8
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub fn press_keys(codes: &[u16]) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_keys` is never used
[INFO] [stdout]    --> src/bin/../input.rs:185:8
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub fn type_keys(sequences: &[Vec<u16>], delay_ms: u64) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/bin/../shell.rs:42:14
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub async fn run(argv: &[&str]) -> Result<String> {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `have` is never used
[INFO] [stdout]   --> src/bin/../shell.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn have(program: &str) -> bool {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `settle` is never used
[INFO] [stdout]   --> src/bin/../shell.rs:77:14
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub async fn settle(milliseconds: u64) {
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SERVICE` is never used
[INFO] [stdout]   --> src/capture.rs:23:7
[INFO] [stdout]    |
[INFO] [stdout] 23 | const SERVICE: &str = "org.kde.KWin";
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PATH` is never used
[INFO] [stdout]   --> src/capture.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const PATH: &str = "/org/kde/KWin/ScreenShot2";
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INTERFACE` is never used
[INFO] [stdout]   --> src/capture.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const INTERFACE: &str = "org.kde.KWin.ScreenShot2";
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `capture` is never used
[INFO] [stdout]   --> src/capture.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn capture(what: &str, out: &str, area: Option<(i32, i32, i32, i32)>) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number` is never used
[INFO] [stdout]   --> src/capture.rs:91:4
[INFO] [stdout]    |
[INFO] [stdout] 91 | fn number(metadata: &HashMap<String, OwnedValue>, key: &str) -> Result<u64> {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pipe` is never used
[INFO] [stdout]   --> src/capture.rs:99:4
[INFO] [stdout]    |
[INFO] [stdout] 99 | fn pipe() -> std::io::Result<(OwnedFd, OwnedFd)> {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `libc_pipe` is never used
[INFO] [stdout]    --> src/capture.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 |     fn libc_pipe(fds: *mut i32) -> i32;
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Devices` is never constructed
[INFO] [stdout]   --> src/input.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct Devices {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `devices` is never used
[INFO] [stdout]   --> src/input.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn devices() -> Result<&'static Mutex<Devices>> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build` is never used
[INFO] [stdout]   --> src/input.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn build() -> Result<Devices> {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_by` is never used
[INFO] [stdout]   --> src/input.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn move_by(dx: i32, dy: i32) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `home` is never used
[INFO] [stdout]    --> src/input.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub fn home() -> Result<()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_to` is never used
[INFO] [stdout]    --> src/input.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn move_to(x: i32, y: i32, scale: (f64, f64)) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `button` is never used
[INFO] [stdout]    --> src/input.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn button(name: &str) -> Result<KeyCode> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `click` is never used
[INFO] [stdout]    --> src/input.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn click(name: &str, count: u32) -> Result<()> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `press_button` is never used
[INFO] [stdout]    --> src/input.rs:150:8
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub fn press_button(name: &str, down: bool) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scroll` is never used
[INFO] [stdout]    --> src/input.rs:158:8
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub fn scroll(amount: i32) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `press_keys` is never used
[INFO] [stdout]    --> src/input.rs:173:8
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub fn press_keys(codes: &[u16]) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_keys` is never used
[INFO] [stdout]    --> src/input.rs:185:8
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub fn type_keys(sequences: &[Vec<u16>], delay_ms: u64) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `session_env` is never used
[INFO] [stdout]   --> src/shell.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn session_env() -> &'static HashMap<String, String> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/shell.rs:42:14
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub async fn run(argv: &[&str]) -> Result<String> {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `have` is never used
[INFO] [stdout]   --> src/shell.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn have(program: &str) -> bool {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `settle` is never used
[INFO] [stdout]   --> src/shell.rs:77:14
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub async fn settle(milliseconds: u64) {
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getuid` is never used
[INFO] [stdout]   --> src/shell.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn getuid() -> u32;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `evdev::uinput::VirtualDeviceBuilder::<'a>::new`: use `VirtualDevice::builder()` instead
[INFO] [stdout]   --> src/input.rs:50:41
[INFO] [stdout]    |
[INFO] [stdout] 50 |     let pointer = VirtualDeviceBuilder::new()?
[INFO] [stdout]    |                                         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `evdev::uinput::VirtualDeviceBuilder::<'a>::new`: use `VirtualDevice::builder()` instead
[INFO] [stdout]   --> src/input.rs:65:39
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let wheel = VirtualDeviceBuilder::new()?
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `evdev::uinput::VirtualDeviceBuilder::<'a>::new`: use `VirtualDevice::builder()` instead
[INFO] [stdout]   --> src/input.rs:73:42
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let keyboard = VirtualDeviceBuilder::new()?
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SERVICE` is never used
[INFO] [stdout]   --> src/capture.rs:23:7
[INFO] [stdout]    |
[INFO] [stdout] 23 | const SERVICE: &str = "org.kde.KWin";
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PATH` is never used
[INFO] [stdout]   --> src/capture.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const PATH: &str = "/org/kde/KWin/ScreenShot2";
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INTERFACE` is never used
[INFO] [stdout]   --> src/capture.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const INTERFACE: &str = "org.kde.KWin.ScreenShot2";
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `capture` is never used
[INFO] [stdout]   --> src/capture.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn capture(what: &str, out: &str, area: Option<(i32, i32, i32, i32)>) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `number` is never used
[INFO] [stdout]   --> src/capture.rs:91:4
[INFO] [stdout]    |
[INFO] [stdout] 91 | fn number(metadata: &HashMap<String, OwnedValue>, key: &str) -> Result<u64> {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pipe` is never used
[INFO] [stdout]   --> src/capture.rs:99:4
[INFO] [stdout]    |
[INFO] [stdout] 99 | fn pipe() -> std::io::Result<(OwnedFd, OwnedFd)> {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `libc_pipe` is never used
[INFO] [stdout]    --> src/capture.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 |     fn libc_pipe(fds: *mut i32) -> i32;
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Devices` is never constructed
[INFO] [stdout]   --> src/input.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct Devices {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `devices` is never used
[INFO] [stdout]   --> src/input.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn devices() -> Result<&'static Mutex<Devices>> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build` is never used
[INFO] [stdout]   --> src/input.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn build() -> Result<Devices> {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_by` is never used
[INFO] [stdout]   --> src/input.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn move_by(dx: i32, dy: i32) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `home` is never used
[INFO] [stdout]    --> src/input.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub fn home() -> Result<()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_to` is never used
[INFO] [stdout]    --> src/input.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn move_to(x: i32, y: i32, scale: (f64, f64)) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `button` is never used
[INFO] [stdout]    --> src/input.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn button(name: &str) -> Result<KeyCode> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `click` is never used
[INFO] [stdout]    --> src/input.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn click(name: &str, count: u32) -> Result<()> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `press_button` is never used
[INFO] [stdout]    --> src/input.rs:150:8
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub fn press_button(name: &str, down: bool) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scroll` is never used
[INFO] [stdout]    --> src/input.rs:158:8
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub fn scroll(amount: i32) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `press_keys` is never used
[INFO] [stdout]    --> src/input.rs:173:8
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub fn press_keys(codes: &[u16]) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_keys` is never used
[INFO] [stdout]    --> src/input.rs:185:8
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub fn type_keys(sequences: &[Vec<u16>], delay_ms: u64) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `session_env` is never used
[INFO] [stdout]   --> src/shell.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn session_env() -> &'static HashMap<String, String> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/shell.rs:42:14
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub async fn run(argv: &[&str]) -> Result<String> {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `have` is never used
[INFO] [stdout]   --> src/shell.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn have(program: &str) -> bool {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `settle` is never used
[INFO] [stdout]   --> src/shell.rs:77:14
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub async fn settle(milliseconds: u64) {
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `getuid` is never used
[INFO] [stdout]   --> src/shell.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn getuid() -> u32;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `base64`
[INFO] [stderr]  --> Cargo.toml:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | base64 = "0.22"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `base64`
[INFO] [stderr] warning: unused dependency `regex`
[INFO] [stderr]  --> Cargo.toml:5:1
[INFO] [stderr]   |
[INFO] [stderr] 5 | regex = "1"
[INFO] [stderr]   | ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: consider removing the dependency on `regex`
[INFO] [stderr] warning: unused dependency `rmcp`
[INFO] [stderr]   --> Cargo.toml:16:15
[INFO] [stderr]    |
[INFO] [stderr] 16 | [dependencies.rmcp]
[INFO] [stderr]    |               ^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `rmcp`
[INFO] [stderr] warning: unused dependency `wl-clipboard-rs`
[INFO] [stderr]  --> Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | wl-clipboard-rs = "0.9"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: consider removing the dependency on `wl-clipboard-rs`
[INFO] [stderr] warning: `linux-gui-mcp` (manifest) generated 4 warnings
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 22s
[INFO] running `Command { std: "docker" "inspect" "f18e124efbd2eefb18ae03ce932db5b1d60af174bc21857f993e7775289b45d4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f18e124efbd2eefb18ae03ce932db5b1d60af174bc21857f993e7775289b45d4", kill_on_drop: false }`
[INFO] [stdout] f18e124efbd2eefb18ae03ce932db5b1d60af174bc21857f993e7775289b45d4
