[INFO] cloning repository https://github.com/Gfjelstad/neocel
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Gfjelstad/neocel" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGfjelstad%2Fneocel", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGfjelstad%2Fneocel'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f6d02bfb00ed03ab50e52e45d4b4bd36bd183fa3
[INFO] checking Gfjelstad/neocel against a7c37f9f0ee5e93396106e9de20f4a86b4154e63 for pr-129249-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGfjelstad%2Fneocel" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Gfjelstad/neocel
[INFO] finished tweaking git repo https://github.com/Gfjelstad/neocel
[INFO] tweaked toml for git repo https://github.com/Gfjelstad/neocel written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Gfjelstad/neocel on toolchain a7c37f9f0ee5e93396106e9de20f4a86b4154e63
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a7c37f9f0ee5e93396106e9de20f4a86b4154e63" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Gfjelstad/neocel 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" "+a7c37f9f0ee5e93396106e9de20f4a86b4154e63" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded proc-macro2 v1.0.105
[INFO] [stderr]   Downloaded quote v1.0.43
[INFO] [stderr]   Downloaded simplelog v0.12.2
[INFO] [stderr]   Downloaded unindent v0.2.4
[INFO] [stderr]   Downloaded time-core v0.1.6
[INFO] [stderr]   Downloaded pyo3-macros v0.27.2
[INFO] [stderr]   Downloaded zmij v1.0.12
[INFO] [stderr]   Downloaded deranged v0.5.5
[INFO] [stderr]   Downloaded pythonize v0.27.0
[INFO] [stderr]   Downloaded target-lexicon v0.13.4
[INFO] [stderr]   Downloaded pyo3-build-config v0.27.2
[INFO] [stderr]   Downloaded time-macros v0.2.24
[INFO] [stderr]   Downloaded ryu v1.0.22
[INFO] [stderr]   Downloaded pyo3-ffi v0.27.2
[INFO] [stderr]   Downloaded pyo3-macros-backend v0.27.2
[INFO] [stderr]   Downloaded time v0.3.44
[INFO] [stderr]   Downloaded portable-atomic v1.13.0
[INFO] [stderr]   Downloaded syn v2.0.114
[INFO] [stderr]   Downloaded libc v0.2.180
[INFO] [stderr]   Downloaded pyo3 v0.27.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] a6086831effca0722bf4283ef095556eb767269ec52d073f5beb1a7c225cb592
[INFO] running `Command { std: "docker" "start" "a6086831effca0722bf4283ef095556eb767269ec52d073f5beb1a7c225cb592", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a6086831effca0722bf4283ef095556eb767269ec52d073f5beb1a7c225cb592", 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" "a6086831effca0722bf4283ef095556eb767269ec52d073f5beb1a7c225cb592" "/opt/rustwide/cargo-home/bin/cargo" "+a7c37f9f0ee5e93396106e9de20f4a86b4154e63" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a6086831effca0722bf4283ef095556eb767269ec52d073f5beb1a7c225cb592", 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" "a6086831effca0722bf4283ef095556eb767269ec52d073f5beb1a7c225cb592" "/opt/rustwide/cargo-home/bin/cargo" "+a7c37f9f0ee5e93396106e9de20f4a86b4154e63" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling target-lexicon v0.13.4
[INFO] [stderr]    Compiling proc-macro2 v1.0.105
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling quote v1.0.43
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]     Checking powerfmt v0.2.0
[INFO] [stderr]    Compiling zmij v1.0.12
[INFO] [stderr]    Compiling time-core v0.1.6
[INFO] [stderr]    Compiling num-conv v0.1.0
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]    Compiling time-macros v0.2.24
[INFO] [stderr]     Checking deranged v0.5.5
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling pyo3-build-config v0.27.2
[INFO] [stderr]     Checking unindent v0.2.4
[INFO] [stderr]     Checking num_threads v0.1.7
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking csv-core v0.1.13
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking ryu v1.0.22
[INFO] [stderr]     Checking termcolor v1.4.1
[INFO] [stderr]     Checking time v0.3.44
[INFO] [stderr]    Compiling pyo3-ffi v0.27.2
[INFO] [stderr]    Compiling pyo3-macros-backend v0.27.2
[INFO] [stderr]    Compiling pyo3 v0.27.2
[INFO] [stderr]     Checking uuid v1.19.0
[INFO] [stderr]     Checking csv v1.4.0
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking simplelog v0.12.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]    Compiling pyo3-macros v0.27.2
[INFO] [stderr]     Checking pythonize v0.27.0
[INFO] [stderr]     Checking neocel v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Py`
[INFO] [stdout]   --> src/main.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     Py, Python,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `path::PathBuf` and `str::FromStr`
[INFO] [stdout]  --> src/api/config.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{path::PathBuf, str::FromStr};
[INFO] [stdout]   |           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::json`
[INFO] [stdout]  --> src/api/config.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde_json::json;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DocumentDataProvider`, `DocumentData`, `Document`, and `text::TextDocumentData`
[INFO] [stdout]   --> src/api/config.rs:9:20
[INFO] [stdout]    |
[INFO] [stdout]  9 |         document::{Document, DocumentData},
[INFO] [stdout]    |                    ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 10 |         documents::{DocumentDataProvider, text::TextDocumentData},
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PyAny` and `Py`
[INFO] [stdout]  --> src/api/utils.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | use pyo3::{Py, PyAny, Python, types::PyAnyMethods};
[INFO] [stdout]   |            ^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]  --> src/api/utils.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde_json::Value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ffi::PyCFunction` and `types::PyDict`
[INFO] [stdout]  --> src/commands/command_dispatcher.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | use pyo3::{ffi::PyCFunction, prelude::*, types::PyDict};
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> src/commands/command_dispatcher.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | use serde_json::{Value, json};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/commands/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Deserialize`
[INFO] [stdout]  --> src/commands/mod.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use serde::Deserialize;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/engine/document.rs:13:28
[INFO] [stdout]    |
[INFO] [stdout] 13 |     collections::{HashMap, HashSet},
[INFO] [stdout]    |                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Engine`
[INFO] [stdout]  --> src/engine/documents/mod.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 |     engine::{Engine, WindowState},
[INFO] [stdout]   |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::btree_map::Range`
[INFO] [stdout]  --> src/engine/documents/text.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::btree_map::Range;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `document::DocumentData`
[INFO] [stdout]  --> src/engine/documents/text.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |         document::DocumentData,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pyo3::exceptions::asyncio::CancelledError`
[INFO] [stdout]  --> src/engine/layout.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use pyo3::exceptions::asyncio::CancelledError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `event::KeyEvent` and `style::Attribute`
[INFO] [stdout]  --> src/render/mod.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crossterm::{event::KeyEvent, style::Attribute};
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crossterm::event::KeyEvent`
[INFO] [stdout]  --> src/render/windows/info.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crossterm::event::KeyEvent;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `hash::Hash`, `max_by`, and `min`
[INFO] [stdout]  --> src/render/windows/table.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cmp::{max_by, min},
[INFO] [stdout]   |           ^^^^^^  ^^^
[INFO] [stdout] 3 |     collections::HashMap,
[INFO] [stdout] 4 |     hash::Hash,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crossterm::event::KeyEvent`
[INFO] [stdout]  --> src/render/windows/table.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crossterm::event::KeyEvent;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `KeyCode` and `KeyEvent`
[INFO] [stdout]  --> src/render/windows/text.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crossterm::event::{KeyCode, KeyEvent};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ApiContext`
[INFO] [stdout]   --> src/main.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         ApiContext, CommandDispatcher, CommandFunction, CommandRequest,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Py`
[INFO] [stdout]   --> src/main.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     Py, Python,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `path::PathBuf` and `str::FromStr`
[INFO] [stdout]  --> src/api/config.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{path::PathBuf, str::FromStr};
[INFO] [stdout]   |           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::json`
[INFO] [stdout]  --> src/api/config.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde_json::json;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DocumentDataProvider`, `DocumentData`, `Document`, and `text::TextDocumentData`
[INFO] [stdout]   --> src/api/config.rs:9:20
[INFO] [stdout]    |
[INFO] [stdout]  9 |         document::{Document, DocumentData},
[INFO] [stdout]    |                    ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 10 |         documents::{DocumentDataProvider, text::TextDocumentData},
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PyAny` and `Py`
[INFO] [stdout]  --> src/api/utils.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | use pyo3::{Py, PyAny, Python, types::PyAnyMethods};
[INFO] [stdout]   |            ^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]  --> src/api/utils.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde_json::Value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ffi::PyCFunction` and `types::PyDict`
[INFO] [stdout]  --> src/commands/command_dispatcher.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | use pyo3::{ffi::PyCFunction, prelude::*, types::PyDict};
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> src/commands/command_dispatcher.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | use serde_json::{Value, json};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/commands/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Deserialize`
[INFO] [stdout]  --> src/commands/mod.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use serde::Deserialize;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/engine/document.rs:13:28
[INFO] [stdout]    |
[INFO] [stdout] 13 |     collections::{HashMap, HashSet},
[INFO] [stdout]    |                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Engine`
[INFO] [stdout]  --> src/engine/documents/mod.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 |     engine::{Engine, WindowState},
[INFO] [stdout]   |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::btree_map::Range`
[INFO] [stdout]  --> src/engine/documents/text.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::btree_map::Range;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `document::DocumentData`
[INFO] [stdout]  --> src/engine/documents/text.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |         document::DocumentData,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pyo3::exceptions::asyncio::CancelledError`
[INFO] [stdout]  --> src/engine/layout.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use pyo3::exceptions::asyncio::CancelledError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `event::KeyEvent` and `style::Attribute`
[INFO] [stdout]  --> src/render/mod.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crossterm::{event::KeyEvent, style::Attribute};
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crossterm::event::KeyEvent`
[INFO] [stdout]  --> src/render/windows/info.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crossterm::event::KeyEvent;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `hash::Hash`, `max_by`, and `min`
[INFO] [stdout]  --> src/render/windows/table.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cmp::{max_by, min},
[INFO] [stdout]   |           ^^^^^^  ^^^
[INFO] [stdout] 3 |     collections::HashMap,
[INFO] [stdout] 4 |     hash::Hash,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crossterm::event::KeyEvent`
[INFO] [stdout]  --> src/render/windows/table.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crossterm::event::KeyEvent;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `KeyCode` and `KeyEvent`
[INFO] [stdout]  --> src/render/windows/text.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crossterm::event::{KeyCode, KeyEvent};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ApiContext`
[INFO] [stdout]   --> src/main.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         ApiContext, CommandDispatcher, CommandFunction, CommandRequest,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable call
[INFO] [stdout]   --> src/api/text_document_api.rs:22:69
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 Some(PathBuf::from_str(path.as_str()).map_err(|e| e.to_string())?),
[INFO] [stdout]    |                                                                   - ^^^^^^^^^ unreachable call
[INFO] [stdout]    |                                                                   |
[INFO] [stdout]    |                                                                   any code following this expression is unreachable
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable call
[INFO] [stdout]   --> src/api/text_document_api.rs:22:69
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 Some(PathBuf::from_str(path.as_str()).map_err(|e| e.to_string())?),
[INFO] [stdout]    |                                                                   - ^^^^^^^^^ unreachable call
[INFO] [stdout]    |                                                                   |
[INFO] [stdout]    |                                                                   any code following this expression is unreachable
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::engine::documents::DocumentDataProvider`
[INFO] [stdout]  --> src/engine/parse.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::engine::documents::DocumentDataProvider;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/api/command_api.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub fn test(state: &mut APIMethodParams) -> APIMethodResult {
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/api/command_api.rs:153:40
[INFO] [stdout]     |
[INFO] [stdout] 153 |             ExternalCommandInput::JSON(value) => {
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `theme`
[INFO] [stdout]   --> src/api/config.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |         let theme = utils::try_parse::<ThemeParams>(&state.params)?;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_theme`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `api`
[INFO] [stdout]   --> src/api/config.rs:24:25
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn register_methods(api: &mut super::API) {}
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_api`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `style`
[INFO] [stdout]   --> src/api/engine_api.rs:95:17
[INFO] [stdout]    |
[INFO] [stdout] 95 |                 style,
[INFO] [stdout]    |                 ^^^^^ help: try ignoring the field: `style: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `focusable`
[INFO] [stdout]   --> src/api/engine_api.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 |                 focusable,
[INFO] [stdout]    |                 ^^^^^^^^^ help: try ignoring the field: `focusable: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `zindex`
[INFO] [stdout]   --> src/api/engine_api.rs:98:17
[INFO] [stdout]    |
[INFO] [stdout] 98 |                 zindex,
[INFO] [stdout]    |                 ^^^^^^ help: try ignoring the field: `zindex: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `api`
[INFO] [stdout]   --> src/api/text_document_api.rs:36:25
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn register_methods(api: &mut super::API) {}
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_api`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::engine::documents::DocumentDataProvider`
[INFO] [stdout]  --> src/engine/parse.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::engine::documents::DocumentDataProvider;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/api/command_api.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub fn test(state: &mut APIMethodParams) -> APIMethodResult {
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/api/command_api.rs:153:40
[INFO] [stdout]     |
[INFO] [stdout] 153 |             ExternalCommandInput::JSON(value) => {
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `theme`
[INFO] [stdout]   --> src/api/config.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |         let theme = utils::try_parse::<ThemeParams>(&state.params)?;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_theme`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `api`
[INFO] [stdout]   --> src/api/config.rs:24:25
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn register_methods(api: &mut super::API) {}
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_api`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window`
[INFO] [stdout]   --> src/engine/documents/spreadsheet.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 93 |         window: &mut WindowState,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_window`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/engine/documents/spreadsheet.rs:94:9
[INFO] [stdout]    |
[INFO] [stdout] 94 |         key: crate::commands::Key,
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `style`
[INFO] [stdout]   --> src/api/engine_api.rs:95:17
[INFO] [stdout]    |
[INFO] [stdout] 95 |                 style,
[INFO] [stdout]    |                 ^^^^^ help: try ignoring the field: `style: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `focusable`
[INFO] [stdout]   --> src/api/engine_api.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 |                 focusable,
[INFO] [stdout]    |                 ^^^^^^^^^ help: try ignoring the field: `focusable: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `zindex`
[INFO] [stdout]   --> src/api/engine_api.rs:98:17
[INFO] [stdout]    |
[INFO] [stdout] 98 |                 zindex,
[INFO] [stdout]    |                 ^^^^^^ help: try ignoring the field: `zindex: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/engine/documents/text.rs:34:18
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn from_file(path: &str) -> Result<Self, String>
[INFO] [stdout]    |                  ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/engine/layout.rs:31:34
[INFO] [stdout]    |
[INFO] [stdout] 31 |                 LayoutNode::Leaf(id) => {
[INFO] [stdout]    |                                  ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ratio`
[INFO] [stdout]   --> src/engine/layout.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 |                     ratio,
[INFO] [stdout]    |                     ^^^^^ help: try ignoring the field: `ratio: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]    --> src/render/mod.rs:112:14
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let (w, d) = engine.get_current_window();
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]    --> src/render/mod.rs:160:13
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let start = self.screen_buffer.write_section(
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `params`
[INFO] [stdout]    --> src/main.rs:117:46
[INFO] [stdout]     |
[INFO] [stdout] 117 |         CommandFunction::Rust(Box::new(|api, params| {
[INFO] [stdout]     |                                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_params`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `background` is never read
[INFO] [stdout]   --> src/api/config.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct ThemeParams {
[INFO] [stdout]    |        ----------- field in this struct
[INFO] [stdout] 30 |     background: String,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/engine/documents/spreadsheet.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let file = File::open(path.clone()).map_err(|e| e.to_string())?;
[INFO] [stdout]    |                                   ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `api`
[INFO] [stdout]   --> src/api/text_document_api.rs:36:25
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn register_methods(api: &mut super::API) {}
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_api`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window`
[INFO] [stdout]   --> src/engine/documents/spreadsheet.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 93 |         window: &mut WindowState,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_window`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/engine/documents/spreadsheet.rs:94:9
[INFO] [stdout]    |
[INFO] [stdout] 94 |         key: crate::commands::Key,
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/engine/documents/text.rs:34:18
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn from_file(path: &str) -> Result<Self, String>
[INFO] [stdout]    |                  ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/engine/layout.rs:31:34
[INFO] [stdout]    |
[INFO] [stdout] 31 |                 LayoutNode::Leaf(id) => {
[INFO] [stdout]    |                                  ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ratio`
[INFO] [stdout]   --> src/engine/layout.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 |                     ratio,
[INFO] [stdout]    |                     ^^^^^ help: try ignoring the field: `ratio: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]    --> src/render/mod.rs:112:14
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let (w, d) = engine.get_current_window();
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]    --> src/render/mod.rs:160:13
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let start = self.screen_buffer.write_section(
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `params`
[INFO] [stdout]    --> src/main.rs:117:46
[INFO] [stdout]     |
[INFO] [stdout] 117 |         CommandFunction::Rust(Box::new(|api, params| {
[INFO] [stdout]     |                                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_params`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `background` is never read
[INFO] [stdout]   --> src/api/config.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct ThemeParams {
[INFO] [stdout]    |        ----------- field in this struct
[INFO] [stdout] 30 |     background: String,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/engine/documents/spreadsheet.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let file = File::open(path.clone()).map_err(|e| e.to_string())?;
[INFO] [stdout]    |                                   ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 40.99s
[INFO] running `Command { std: "docker" "inspect" "a6086831effca0722bf4283ef095556eb767269ec52d073f5beb1a7c225cb592", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a6086831effca0722bf4283ef095556eb767269ec52d073f5beb1a7c225cb592", kill_on_drop: false }`
[INFO] [stdout] a6086831effca0722bf4283ef095556eb767269ec52d073f5beb1a7c225cb592
