[INFO] cloning repository https://github.com/AlonKing0/ekphos
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AlonKing0/ekphos" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlonKing0%2Fekphos", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlonKing0%2Fekphos'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 081b762640e752154ee48f5075cdd0f7149d8f02
[INFO] testing AlonKing0/ekphos against try#33835004928d3bf65db4d4712e1330766263b0bd for pr-155739
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlonKing0%2Fekphos" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AlonKing0/ekphos
[INFO] finished tweaking git repo https://github.com/AlonKing0/ekphos
[INFO] tweaked toml for git repo https://github.com/AlonKing0/ekphos written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AlonKing0/ekphos on toolchain 33835004928d3bf65db4d4712e1330766263b0bd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AlonKing0/ekphos 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" "+33835004928d3bf65db4d4712e1330766263b0bd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2656609127a1f458dced57675d1d3ac06ad720fb48f73a58191726e07df6aae4
[INFO] running `Command { std: "docker" "start" "-a" "2656609127a1f458dced57675d1d3ac06ad720fb48f73a58191726e07df6aae4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2656609127a1f458dced57675d1d3ac06ad720fb48f73a58191726e07df6aae4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2656609127a1f458dced57675d1d3ac06ad720fb48f73a58191726e07df6aae4", kill_on_drop: false }`
[INFO] [stdout] 2656609127a1f458dced57675d1d3ac06ad720fb48f73a58191726e07df6aae4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fb795c3a40188760868549e42dd7cb27545ce807e4ebbdba1f3ab78c970aca93
[INFO] running `Command { std: "docker" "start" "-a" "fb795c3a40188760868549e42dd7cb27545ce807e4ebbdba1f3ab78c970aca93", kill_on_drop: false }`
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling aligned v0.4.3
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling core2 v0.4.0
[INFO] [stderr]    Compiling cc v1.2.49
[INFO] [stderr]    Compiling precomputed-hash v0.1.1
[INFO] [stderr]    Compiling mac v0.1.1
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling rustls-pki-types v1.13.2
[INFO] [stderr]    Compiling zune-inflate v0.2.54
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling zune-jpeg v0.5.7
[INFO] [stderr]    Compiling moxcms v0.7.11
[INFO] [stderr]    Compiling futf v0.1.5
[INFO] [stderr]    Compiling bitstream-io v4.9.0
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling png v0.18.0
[INFO] [stderr]    Compiling tendril v0.4.3
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling phf v0.11.3
[INFO] [stderr]    Compiling string_cache_codegen v0.5.4
[INFO] [stderr]    Compiling phf_codegen v0.11.3
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling phf_shared v0.13.1
[INFO] [stderr]    Compiling instability v0.3.10
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling phf_generator v0.13.1
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling rustls v0.23.35
[INFO] [stderr]    Compiling x11rb-protocol v0.13.2
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling compact_str v0.8.1
[INFO] [stderr]    Compiling webpki-roots v1.0.4
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling web_atoms v0.1.3
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling quick-xml v0.38.4
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling yaml-rust v0.4.5
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling icy_sixel v0.1.3
[INFO] [stderr]    Compiling dirs v5.0.1
[INFO] [stderr]    Compiling shellexpand v3.1.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling fancy-regex v0.16.2
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling equator-macro v0.4.2
[INFO] [stderr]    Compiling zerocopy-derive v0.8.31
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]    Compiling profiling-procmacros v1.0.17
[INFO] [stderr]    Compiling fax_derive v0.2.0
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling profiling v1.0.17
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling equator v0.4.2
[INFO] [stderr]    Compiling fax v0.2.6
[INFO] [stderr]    Compiling match_token v0.35.0
[INFO] [stderr]    Compiling aligned-vec v0.6.4
[INFO] [stderr]    Compiling gethostname v1.1.0
[INFO] [stderr]    Compiling phf_macros v0.13.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling v_frame v0.3.9
[INFO] [stderr]    Compiling av1-grain v0.2.5
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling rustls-webpki v0.103.8
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling av-scenechange v0.14.1
[INFO] [stderr]    Compiling phf v0.13.1
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling x11rb v0.13.2
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling rav1e v0.8.1
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling ratatui v0.29.0
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling string_cache v0.8.9
[INFO] [stderr]    Compiling tiff v0.10.3
[INFO] [stderr]    Compiling exr v1.74.0
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling plist v1.8.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling markup5ever v0.35.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling html5ever v0.35.0
[INFO] [stderr]    Compiling xml5ever v0.35.0
[INFO] [stderr]    Compiling syntect v5.3.0
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling markup5ever_rcdom v0.35.0+unofficial
[INFO] [stderr]    Compiling htmd v0.5.0
[INFO] [stderr]    Compiling ureq v2.12.1
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling ravif v0.12.0
[INFO] [stderr]    Compiling image v0.25.9
[INFO] [stderr]    Compiling clipboard-rs v0.3.1
[INFO] [stderr]    Compiling arboard v3.6.1
[INFO] [stderr]    Compiling ratatui-image v3.0.0
[INFO] [stderr]    Compiling ekphos v0.10.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `command::Command`
[INFO] [stdout]   --> src/vim/mod.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub use command::Command;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `list_state` is never read
[INFO] [stdout]    --> src/app/state.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct App {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 447 |     pub list_state: ListState,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Word` is never constructed
[INFO] [stdout]    --> src/app/state.rs:520:5
[INFO] [stdout]     |
[INFO] [stdout] 519 | pub enum DeleteType {
[INFO] [stdout]     |          ---------- variant in this enum
[INFO] [stdout] 520 |     Word,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DeleteType` 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: associated items `sort_tree`, `sort_tree_items`, `get_tree_item_name`, and `start_buffer_search_backward` are never used
[INFO] [stdout]     --> src/app/state.rs:1022:8
[INFO] [stdout]      |
[INFO] [stdout]  524 | impl App {
[INFO] [stdout]      | -------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1022 |     fn sort_tree(&mut self) {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1026 |     fn sort_tree_items(items: &mut [FileTreeItem], notes: &[Note]) {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1040 |     fn get_tree_item_name<'b>(item: &'b FileTreeItem, notes: &'b [Note]) -> &'b str {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2603 |     pub fn start_buffer_search_backward(&mut self) {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_html` is never used
[INFO] [stdout]   --> src/clipboard.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn has_html() -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_content_plain` is never used
[INFO] [stdout]    --> src/clipboard.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn get_content_plain() -> ClipboardResult<ClipboardContent> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw_vertical_line` is never used
[INFO] [stdout]    --> src/ui/graph_view.rs:352:4
[INFO] [stdout]     |
[INFO] [stdout] 352 | fn draw_vertical_line(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/vim/mod.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub enum LastChange {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 62 |     ChangeLine(usize, String),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 63 |     /// Yank line(s): yy with count
[INFO] [stdout] 64 |     YankLine(usize),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 65 |     /// Delete to end: D
[INFO] [stdout] 66 |     DeleteToEnd,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 67 |     /// Change to end: C with inserted text
[INFO] [stdout] 68 |     ChangeToEnd(String),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     SubstituteChar(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     Insert(char, String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 79 |     /// Delete word forward: dw with count
[INFO] [stdout] 80 |     DeleteWordForward(usize),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 81 |     /// Delete word backward: db with count
[INFO] [stdout] 82 |     DeleteWordBackward(usize),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 83 |     /// Change word: cw with count and inserted text
[INFO] [stdout] 84 |     ChangeWord(usize, String),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LastChange` 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 `operator`, `motion`, `text_object`, `count`, `inserted_text`, and `register` are never read
[INFO] [stdout]   --> src/vim/mod.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct RecordedCommand {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 89 |     pub operator: Option<Operator>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 90 |     pub motion: Option<Motion>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 91 |     pub text_object: Option<(TextObjectScope, TextObject)>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 92 |     pub count: Option<usize>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 93 |     pub inserted_text: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 94 |     pub register: Option<char>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RecordedCommand` 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 `last_command`, `recording_command`, `insert_start_pos`, and `insert_buffer` are never read
[INFO] [stdout]    --> src/vim/mod.rs:130:9
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub struct VimState {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub last_command: Option<RecordedCommand>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 131 |     pub recording_command: Option<RecordedCommand>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub insert_start_pos: Option<Position>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub insert_buffer: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VimState` 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: multiple methods are never used
[INFO] [stdout]    --> src/vim/mod.rs:197:12
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl VimState {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 197 |     pub fn enter_replace_mode(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 |     pub fn enter_visual_block_mode(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 215 |     pub fn enter_operator_pending(&mut self, op: Operator) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn enter_insert_mode(&mut self, start_pos: Position) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 231 |     pub fn exit_insert_mode(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub fn enter_visual_mode(&mut self, line_wise: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 247 |     pub fn exit_command_mode(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |     pub fn record_command(&mut self, cmd: RecordedCommand) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 257 |     pub fn status_display(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `recording_register` and `get_last_macro` are never used
[INFO] [stdout]   --> src/vim/macro_record.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl MacroState {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn recording_register(&self) -> Option<char> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn get_last_macro(&self) -> Option<&Vec<KeyEvent>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_last_change`, `set_last_insert`, `delete`, and `list` are never used
[INFO] [stdout]   --> src/vim/marks.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl MarkMap {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn set_last_change(&mut self, pos: Position) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn set_last_insert(&mut self, pos: Position) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn delete(&mut self, mark: char) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn list(&self) -> Vec<(char, Position)> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Insert`, `Replace`, `Visual`, `VisualLine`, `VisualBlock`, and `OperatorPending` are never constructed
[INFO] [stdout]   --> src/vim/mode.rs:8:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub enum VimMode {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout]  7 |     Normal,
[INFO] [stdout]  8 |     Insert,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]  9 |     Replace,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 10 |     Visual,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 11 |     VisualLine,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 12 |     VisualBlock,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     OperatorPending { operator: Operator, count: Option<usize> },
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VimMode` 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: methods `is_visual`, `is_insert`, `is_replace`, `is_normal`, and `display_name` are never used
[INFO] [stdout]   --> src/vim/mode.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl VimMode {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] 26 |     pub fn is_visual(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn is_insert(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn is_replace(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn is_normal(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn display_name(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/vim/motion.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub enum Motion {
[INFO] [stdout]    |          ------ variants in this enum
[INFO] [stdout]  7 |     Left,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]  8 |     Right,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]  9 |     WordForward,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 10 |     WordBackward,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 11 |     WordEndForward,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 12 |     BigWordForward,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     BigWordBackward,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     BigWordEndForward,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     WordEndBackward,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     BigWordEndBackward,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     LineStart,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 18 |     FirstNonBlank,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 19 |     LineEnd,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 20 |     Up,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 21 |     Down,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 22 |     DocumentStart,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 23 |     DocumentEnd,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 24 |     GoToLine(usize),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 25 |     ParagraphForward,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     ParagraphBackward,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     ScreenTop,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 28 |     ScreenMiddle,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 29 |     ScreenBottom,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 30 |     HalfPageUp,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 31 |     HalfPageDown,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 32 |     PageUp,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 33 |     PageDown,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 34 |     MatchingBracket,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 35 |     FindChar,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 36 |     RepeatFind,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 37 |     RepeatFindReverse,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 38 |     SearchNext,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 39 |     SearchPrev,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Motion` 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: methods `is_linewise` and `is_exclusive` are never used
[INFO] [stdout]   --> src/vim/motion.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl Motion {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] 43 |     pub fn is_linewise(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn is_exclusive(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_word_char` is never used
[INFO] [stdout]   --> src/vim/motion.rs:72:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub fn is_word_char(c: char) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_word_forward` is never used
[INFO] [stdout]   --> src/vim/motion.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn find_word_forward(line: &str, col: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_word_back` is never used
[INFO] [stdout]    --> src/vim/motion.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn find_word_back(line: &str, col: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_word_end_forward` is never used
[INFO] [stdout]    --> src/vim/motion.rs:143:8
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub fn find_word_end_forward(line: &str, col: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_big_word_forward` is never used
[INFO] [stdout]    --> src/vim/motion.rs:175:8
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub fn find_big_word_forward(line: &str, col: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_big_word_back` is never used
[INFO] [stdout]    --> src/vim/motion.rs:196:8
[INFO] [stdout]     |
[INFO] [stdout] 196 | pub fn find_big_word_back(line: &str, col: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_big_word_end_forward` is never used
[INFO] [stdout]    --> src/vim/motion.rs:216:8
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub fn find_big_word_end_forward(line: &str, col: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_first_non_blank` is never used
[INFO] [stdout]    --> src/vim/motion.rs:237:8
[INFO] [stdout]     |
[INFO] [stdout] 237 | pub fn find_first_non_blank(line: &str) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_matching_bracket` is never used
[INFO] [stdout]    --> src/vim/motion.rs:243:8
[INFO] [stdout]     |
[INFO] [stdout] 243 | pub fn find_matching_bracket(lines: &[&str], pos: Position) -> Option<Position> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_paragraph_forward` is never used
[INFO] [stdout]    --> src/vim/motion.rs:322:8
[INFO] [stdout]     |
[INFO] [stdout] 322 | pub fn find_paragraph_forward(lines: &[&str], row: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_paragraph_backward` is never used
[INFO] [stdout]    --> src/vim/motion.rs:336:8
[INFO] [stdout]     |
[INFO] [stdout] 336 | pub fn find_paragraph_backward(lines: &[&str], row: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/vim/operator.rs:5:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum Operator {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout]  5 |     Delete,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]  6 |     Change,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]  7 |     Yank,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]  8 |     Indent,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]  9 |     Outdent,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 10 |     SwapCase,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 11 |     Lowercase,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 12 |     Uppercase,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Operator` 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: methods `enters_insert_mode` and `modifies_buffer` are never used
[INFO] [stdout]   --> src/vim/operator.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Operator {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn enters_insert_mode(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn modifies_buffer(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `named`, `numbered`, `unnamed`, `small_delete`, `last_search`, and `last_command` are never read
[INFO] [stdout]   --> src/vim/register.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct RegisterMap {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout]  7 |     named: HashMap<char, RegisterContent>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]  8 |     numbered: [RegisterContent; 10],
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]  9 |     unnamed: RegisterContent,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 10 |     small_delete: RegisterContent,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 11 |     last_search: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 12 |     last_command: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RegisterMap` 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 `text` and `linewise` are never read
[INFO] [stdout]   --> src/vim/register.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct RegisterContent {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 18 |     pub text: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 19 |     pub linewise: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RegisterContent` 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: multiple methods are never used
[INFO] [stdout]    --> src/vim/register.rs:39:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl RegisterMap {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  39 |     pub fn get(&self, reg: char) -> Option<&RegisterContent> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn get_for_paste(&self) -> &RegisterContent {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub fn set(&mut self, reg: char, content: RegisterContent) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn yank(&mut self, text: String, linewise: bool) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn delete(&mut self, text: String, linewise: bool) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn set_search(&mut self, pattern: String) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn get_search(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub fn set_command(&mut self, command: String) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn get_command(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn is_clipboard_selected(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 44s
[INFO] running `Command { std: "docker" "inspect" "fb795c3a40188760868549e42dd7cb27545ce807e4ebbdba1f3ab78c970aca93", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fb795c3a40188760868549e42dd7cb27545ce807e4ebbdba1f3ab78c970aca93", kill_on_drop: false }`
[INFO] [stdout] fb795c3a40188760868549e42dd7cb27545ce807e4ebbdba1f3ab78c970aca93
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 620d1dc23ec49aaad2616d952625f8158ad2e926b65d5331c7027dfc0290cb15
[INFO] running `Command { std: "docker" "start" "-a" "620d1dc23ec49aaad2616d952625f8158ad2e926b65d5331c7027dfc0290cb15", kill_on_drop: false }`
[INFO] [stderr]    Compiling ekphos v0.10.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `command::Command`
[INFO] [stdout]   --> src/vim/mod.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub use command::Command;
[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 variable: `i`
[INFO] [stdout]    --> src/vim/macro_record.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |         for i in 0..100 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `list_state` is never read
[INFO] [stdout]    --> src/app/state.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub struct App {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 447 |     pub list_state: ListState,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Word` is never constructed
[INFO] [stdout]    --> src/app/state.rs:520:5
[INFO] [stdout]     |
[INFO] [stdout] 519 | pub enum DeleteType {
[INFO] [stdout]     |          ---------- variant in this enum
[INFO] [stdout] 520 |     Word,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DeleteType` 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: associated items `sort_tree`, `sort_tree_items`, `get_tree_item_name`, and `start_buffer_search_backward` are never used
[INFO] [stdout]     --> src/app/state.rs:1022:8
[INFO] [stdout]      |
[INFO] [stdout]  524 | impl App {
[INFO] [stdout]      | -------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1022 |     fn sort_tree(&mut self) {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1026 |     fn sort_tree_items(items: &mut [FileTreeItem], notes: &[Note]) {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1040 |     fn get_tree_item_name<'b>(item: &'b FileTreeItem, notes: &'b [Note]) -> &'b str {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2603 |     pub fn start_buffer_search_backward(&mut self) {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_html` is never used
[INFO] [stdout]   --> src/clipboard.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn has_html() -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_content_plain` is never used
[INFO] [stdout]    --> src/clipboard.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn get_content_plain() -> ClipboardResult<ClipboardContent> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw_vertical_line` is never used
[INFO] [stdout]    --> src/ui/graph_view.rs:352:4
[INFO] [stdout]     |
[INFO] [stdout] 352 | fn draw_vertical_line(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/vim/mod.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub enum LastChange {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 62 |     ChangeLine(usize, String),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 63 |     /// Yank line(s): yy with count
[INFO] [stdout] 64 |     YankLine(usize),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 65 |     /// Delete to end: D
[INFO] [stdout] 66 |     DeleteToEnd,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 67 |     /// Change to end: C with inserted text
[INFO] [stdout] 68 |     ChangeToEnd(String),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     SubstituteChar(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     Insert(char, String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 79 |     /// Delete word forward: dw with count
[INFO] [stdout] 80 |     DeleteWordForward(usize),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 81 |     /// Delete word backward: db with count
[INFO] [stdout] 82 |     DeleteWordBackward(usize),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 83 |     /// Change word: cw with count and inserted text
[INFO] [stdout] 84 |     ChangeWord(usize, String),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LastChange` 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 `text_object`, `inserted_text`, and `register` are never read
[INFO] [stdout]   --> src/vim/mod.rs:91:9
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct RecordedCommand {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub text_object: Option<(TextObjectScope, TextObject)>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 92 |     pub count: Option<usize>,
[INFO] [stdout] 93 |     pub inserted_text: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 94 |     pub register: Option<char>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RecordedCommand` 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 `last_command`, `recording_command`, `insert_start_pos`, and `insert_buffer` are never read
[INFO] [stdout]    --> src/vim/mod.rs:130:9
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub struct VimState {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub last_command: Option<RecordedCommand>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 131 |     pub recording_command: Option<RecordedCommand>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub insert_start_pos: Option<Position>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub insert_buffer: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VimState` 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: methods `enter_operator_pending`, `enter_insert_mode`, `exit_insert_mode`, and `record_command` are never used
[INFO] [stdout]    --> src/vim/mod.rs:215:12
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl VimState {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 215 |     pub fn enter_operator_pending(&mut self, op: Operator) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn enter_insert_mode(&mut self, start_pos: Position) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 231 |     pub fn exit_insert_mode(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |     pub fn record_command(&mut self, cmd: RecordedCommand) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_replace` is never used
[INFO] [stdout]   --> src/vim/mode.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl VimMode {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn is_replace(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/vim/motion.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub enum Motion {
[INFO] [stdout]    |          ------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 14 |     BigWordEndForward,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     WordEndBackward,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     BigWordEndBackward,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     LineStart,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 18 |     FirstNonBlank,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     HalfPageUp,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 31 |     HalfPageDown,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 32 |     PageUp,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 33 |     PageDown,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 34 |     MatchingBracket,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 35 |     FindChar,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 36 |     RepeatFind,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 37 |     RepeatFindReverse,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 38 |     SearchNext,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 39 |     SearchPrev,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Motion` 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 `SwapCase`, `Lowercase`, and `Uppercase` are never constructed
[INFO] [stdout]   --> src/vim/operator.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum Operator {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 10 |     SwapCase,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 11 |     Lowercase,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 12 |     Uppercase,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Operator` 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 5.26s
[INFO] running `Command { std: "docker" "inspect" "620d1dc23ec49aaad2616d952625f8158ad2e926b65d5331c7027dfc0290cb15", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "620d1dc23ec49aaad2616d952625f8158ad2e926b65d5331c7027dfc0290cb15", kill_on_drop: false }`
[INFO] [stdout] 620d1dc23ec49aaad2616d952625f8158ad2e926b65d5331c7027dfc0290cb15
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 2f83f191fc8a18555515788759b74d16f44b82d2e51d3c6bce778b0ba90a7a1b
[INFO] running `Command { std: "docker" "start" "-a" "2f83f191fc8a18555515788759b74d16f44b82d2e51d3c6bce778b0ba90a7a1b", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `command::Command`
[INFO] [stderr]   --> src/vim/mod.rs:24:9
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub use command::Command;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]    --> src/vim/macro_record.rs:133:13
[INFO] [stderr]     |
[INFO] [stderr] 133 |         for i in 0..100 {
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `list_state` is never read
[INFO] [stderr]    --> src/app/state.rs:447:9
[INFO] [stderr]     |
[INFO] [stderr] 444 | pub struct App {
[INFO] [stderr]     |            --- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 447 |     pub list_state: ListState,
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Word` is never constructed
[INFO] [stderr]    --> src/app/state.rs:520:5
[INFO] [stderr]     |
[INFO] [stderr] 519 | pub enum DeleteType {
[INFO] [stderr]     |          ---------- variant in this enum
[INFO] [stderr] 520 |     Word,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `DeleteType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `sort_tree`, `sort_tree_items`, `get_tree_item_name`, and `start_buffer_search_backward` are never used
[INFO] [stderr]     --> src/app/state.rs:1022:8
[INFO] [stderr]      |
[INFO] [stderr]  524 | impl App {
[INFO] [stderr]      | -------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 1022 |     fn sort_tree(&mut self) {
[INFO] [stderr]      |        ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1026 |     fn sort_tree_items(items: &mut [FileTreeItem], notes: &[Note]) {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1040 |     fn get_tree_item_name<'b>(item: &'b FileTreeItem, notes: &'b [Note]) -> &'b str {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 2603 |     pub fn start_buffer_search_backward(&mut self) {
[INFO] [stderr]      |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `has_html` is never used
[INFO] [stderr]   --> src/clipboard.rs:31:8
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub fn has_html() -> bool {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_content_plain` is never used
[INFO] [stderr]    --> src/clipboard.rs:137:8
[INFO] [stderr]     |
[INFO] [stderr] 137 | pub fn get_content_plain() -> ClipboardResult<ClipboardContent> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `draw_vertical_line` is never used
[INFO] [stderr]    --> src/ui/graph_view.rs:352:4
[INFO] [stderr]     |
[INFO] [stderr] 352 | fn draw_vertical_line(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]   --> src/vim/mod.rs:62:5
[INFO] [stderr]    |
[INFO] [stderr] 58 | pub enum LastChange {
[INFO] [stderr]    |          ---------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 62 |     ChangeLine(usize, String),
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 63 |     /// Yank line(s): yy with count
[INFO] [stderr] 64 |     YankLine(usize),
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 65 |     /// Delete to end: D
[INFO] [stderr] 66 |     DeleteToEnd,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 67 |     /// Change to end: C with inserted text
[INFO] [stderr] 68 |     ChangeToEnd(String),
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 74 |     SubstituteChar(String),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 78 |     Insert(char, String),
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 79 |     /// Delete word forward: dw with count
[INFO] [stderr] 80 |     DeleteWordForward(usize),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 81 |     /// Delete word backward: db with count
[INFO] [stderr] 82 |     DeleteWordBackward(usize),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 83 |     /// Change word: cw with count and inserted text
[INFO] [stderr] 84 |     ChangeWord(usize, String),
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `LastChange` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `text_object`, `inserted_text`, and `register` are never read
[INFO] [stderr]   --> src/vim/mod.rs:91:9
[INFO] [stderr]    |
[INFO] [stderr] 88 | pub struct RecordedCommand {
[INFO] [stderr]    |            --------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 91 |     pub text_object: Option<(TextObjectScope, TextObject)>,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 92 |     pub count: Option<usize>,
[INFO] [stderr] 93 |     pub inserted_text: Option<String>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] 94 |     pub register: Option<char>,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `RecordedCommand` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `last_command`, `recording_command`, `insert_start_pos`, and `insert_buffer` are never read
[INFO] [stderr]    --> src/vim/mod.rs:130:9
[INFO] [stderr]     |
[INFO] [stderr] 117 | pub struct VimState {
[INFO] [stderr]     |            -------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 130 |     pub last_command: Option<RecordedCommand>,
[INFO] [stderr]     |         ^^^^^^^^^^^^
[INFO] [stderr] 131 |     pub recording_command: Option<RecordedCommand>,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 136 |     pub insert_start_pos: Option<Position>,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 141 |     pub insert_buffer: String,
[INFO] [stderr]     |         ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `VimState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `enter_operator_pending`, `enter_insert_mode`, `exit_insert_mode`, and `record_command` are never used
[INFO] [stderr]    --> src/vim/mod.rs:215:12
[INFO] [stderr]     |
[INFO] [stderr] 150 | impl VimState {
[INFO] [stderr]     | ------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 215 |     pub fn enter_operator_pending(&mut self, op: Operator) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 225 |     pub fn enter_insert_mode(&mut self, start_pos: Position) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 |     pub fn exit_insert_mode(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 252 |     pub fn record_command(&mut self, cmd: RecordedCommand) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `is_replace` is never used
[INFO] [stderr]   --> src/vim/mode.rs:34:12
[INFO] [stderr]    |
[INFO] [stderr] 25 | impl VimMode {
[INFO] [stderr]    | ------------ method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 34 |     pub fn is_replace(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]   --> src/vim/motion.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr]  6 | pub enum Motion {
[INFO] [stderr]    |          ------ variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 14 |     BigWordEndForward,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 15 |     WordEndBackward,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 16 |     BigWordEndBackward,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 17 |     LineStart,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 18 |     FirstNonBlank,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stdout] 
[INFO] [stderr] 30 |     HalfPageUp,
[INFO] [stdout] running 308 tests
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 31 |     HalfPageDown,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 32 |     PageUp,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 33 |     PageDown,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stdout] test editor::buffer::tests::test_delete_char ... ok
[INFO] [stderr] 34 |     MatchingBracket,
[INFO] [stdout] test editor::buffer::tests::test_from_lines ... ok
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] test editor::buffer::tests::test_insert_char ... ok
[INFO] [stderr] 35 |     FindChar,
[INFO] [stdout] test editor::buffer::tests::test_get_text_range ... ok
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stdout] test editor::buffer::tests::test_join_lines ... ok
[INFO] [stderr] 36 |     RepeatFind,
[INFO] [stdout] test editor::buffer::tests::test_split_line ... ok
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stdout] test editor::cursor::tests::test_selection_range ... ok
[INFO] [stderr] 37 |     RepeatFindReverse,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 38 |     SearchNext,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 39 |     SearchPrev,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Motion` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `SwapCase`, `Lowercase`, and `Uppercase` are never constructed
[INFO] [stderr]   --> src/vim/operator.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr]  4 | pub enum Operator {
[INFO] [stderr]    |          -------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 10 |     SwapCase,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 11 |     Lowercase,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 12 |     Uppercase,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Operator` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: `ekphos` (bin "ekphos" test) generated 15 warnings (run `cargo fix --bin "ekphos" -p ekphos --tests` to apply 2 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.30s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ekphos-b9b0b33ec8fffd4b)
[INFO] [stdout] test editor::buffer::tests::test_new_buffer ... ok
[INFO] [stdout] test editor::cursor::tests::test_word_back ... ok
[INFO] [stdout] test editor::history::tests::test_inverse_operations ... ok
[INFO] [stdout] test editor::cursor::tests::test_word_forward ... ok
[INFO] [stdout] test editor::history::tests::test_record_and_undo ... ok
[INFO] [stdout] test editor::history::tests::test_redo ... ok
[INFO] [stdout] test editor::history::tests::test_new_edit_clears_redo ... ok
[INFO] [stdout] test vim::command::tests::test_parse_empty ... ok
[INFO] [stdout] test vim::command::tests::test_parse_line_number ... ok
[INFO] [stdout] test vim::command::tests::test_parse_substitute_case_insensitive ... ok
[INFO] [stdout] test vim::command::tests::test_parse_substitute_different_delimiter ... ok
[INFO] [stdout] test vim::command::tests::test_parse_invalid ... ok
[INFO] [stdout] test vim::command::tests::test_parse_substitute_no_flags ... ok
[INFO] [stdout] test vim::command::tests::test_parse_substitute_with_global ... ok
[INFO] [stdout] test vim::command::tests::test_substitute_flags_parse ... ok
[INFO] [stdout] test vim::find::tests::test_double_reversed_is_original ... ok
[INFO] [stdout] test vim::command::tests::test_parse_simple_commands ... ok
[INFO] [stdout] test vim::find::tests::test_find_backward_not_found ... ok
[INFO] [stdout] test vim::find::tests::test_find_backward_at_start ... ok
[INFO] [stdout] test vim::find::tests::test_find_forward_from_middle ... ok
[INFO] [stdout] test vim::find::tests::test_find_backward_multiple_occurrences ... ok
[INFO] [stdout] test vim::find::tests::test_find_backward_first_char ... ok
[INFO] [stdout] test vim::find::tests::test_find_forward_at_last_position ... ok
[INFO] [stdout] test vim::find::tests::test_find_backward_single_char_string ... ok
[INFO] [stdout] test vim::find::tests::test_find_forward_basic ... ok
[INFO] [stdout] test vim::find::tests::test_find_backward_basic ... ok
[INFO] [stdout] test vim::find::tests::test_find_forward_last_char ... ok
[INFO] [stdout] test vim::find::tests::test_find_backward_at_position_1 ... ok
[INFO] [stdout] test vim::find::tests::test_find_forward_empty_string ... ok
[INFO] [stdout] test vim::find::tests::test_find_forward_multiple_occurrences ... ok
[INFO] [stdout] test vim::find::tests::test_find_single_char_string ... ok
[INFO] [stdout] test vim::find::tests::test_pending_find_backward ... ok
[INFO] [stdout] test vim::find::tests::test_find_unicode_char ... ok
[INFO] [stdout] test vim::find::tests::test_pending_find_forward ... ok
[INFO] [stdout] test vim::find::tests::test_find_forward_special_char ... ok
[INFO] [stdout] test vim::find::tests::test_find_newline_not_in_string ... ok
[INFO] [stdout] test vim::find::tests::test_find_not_found_backward ... ok
[INFO] [stdout] test vim::find::tests::test_find_not_found_forward ... ok
[INFO] [stdout] test vim::find::tests::test_find_forward_space ... ok
[INFO] [stdout] test vim::find::tests::test_pending_find_till_backward ... ok
[INFO] [stdout] test vim::find::tests::test_find_same_char_at_position ... ok
[INFO] [stdout] test vim::find::tests::test_reversed_forward_to_backward ... ok
[INFO] [stdout] test vim::find::tests::test_reversed_preserves_char ... ok
[INFO] [stdout] test vim::find::tests::test_till_backward_stops_after_char ... ok
[INFO] [stdout] test vim::find::tests::test_till_backward_basic ... ok
[INFO] [stdout] test vim::find::tests::test_reversed_backward_to_forward ... ok
[INFO] [stdout] test vim::find::tests::test_pending_find_till_forward ... ok
[INFO] [stdout] test vim::find::tests::test_reversed_preserves_till ... ok
[INFO] [stdout] test vim::find::tests::test_till_forward_adjacent_char ... ok
[INFO] [stdout] test vim::find::tests::test_till_forward_basic ... ok
[INFO] [stdout] test vim::find::tests::test_till_forward_stops_before_char ... ok
[INFO] [stdout] test vim::find::tests::test_till_not_found_backward ... ok
[INFO] [stdout] test vim::find::tests::test_till_not_found_forward ... ok
[INFO] [stdout] test vim::macro_record::tests::test_all_lowercase_registers ... ok
[INFO] [stdout] test vim::macro_record::tests::test_empty_macro_not_saved ... ok
[INFO] [stdout] test vim::macro_record::tests::test_get_macro_preserves_order ... ok
[INFO] [stdout] test vim::macro_record::tests::test_get_nonexistent_macro ... ok
[INFO] [stdout] test vim::macro_record::tests::test_last_macro_initially_none ... ok
[INFO] [stdout] test vim::macro_record::tests::test_last_played_nonexistent_register ... ok
[INFO] [stdout] test vim::macro_record::tests::test_last_played_updates ... ok
[INFO] [stdout] test vim::macro_record::tests::test_multiple_registers ... ok
[INFO] [stdout] test vim::macro_record::tests::test_new_state ... ok
[INFO] [stdout] test vim::macro_record::tests::test_overwrite_macro ... ok
[INFO] [stdout] test vim::macro_record::tests::test_record_and_stop ... ok
[INFO] [stdout] test vim::macro_record::tests::test_record_key_while_not_recording ... ok
[INFO] [stdout] test vim::macro_record::tests::test_record_key_with_modifiers ... ok
[INFO] [stdout] test vim::macro_record::tests::test_record_many_keys ... ok
[INFO] [stdout] test vim::macro_record::tests::test_record_single_key ... ok
[INFO] [stdout] test vim::macro_record::tests::test_record_special_keys ... ok
[INFO] [stdout] test vim::macro_record::tests::test_set_last_played ... ok
[INFO] [stdout] test vim::macro_record::tests::test_start_recording ... ok
[INFO] [stdout] test vim::macro_record::tests::test_start_recording_clears_buffer ... ok
[INFO] [stdout] test vim::macro_record::tests::test_start_recording_different_registers ... ok
[INFO] [stdout] test vim::macro_record::tests::test_stop_without_start ... ok
[INFO] [stdout] test vim::marks::tests::test_all_lowercase_marks ... ok
[INFO] [stdout] test vim::marks::tests::test_all_uppercase_marks ... ok
[INFO] [stdout] test vim::marks::tests::test_delete_mark ... ok
[INFO] [stdout] test vim::marks::tests::test_delete_and_rset ... ok
[INFO] [stdout] test vim::marks::tests::test_delete_nonexistent_mark ... ok
[INFO] [stdout] test vim::marks::tests::test_delete_one_of_multiple ... ok
[INFO] [stdout] test vim::marks::tests::test_invalid_mark_number ... ok
[INFO] [stdout] test vim::marks::tests::test_last_change ... ok
[INFO] [stdout] test vim::marks::tests::test_invalid_mark_symbol ... ok
[INFO] [stdout] test vim::marks::tests::test_invalid_mark_space ... ok
[INFO] [stdout] test vim::marks::tests::test_last_jump_single_quote ... ok
[INFO] [stdout] test vim::marks::tests::test_list_marks_all ... ok
[INFO] [stdout] test vim::marks::tests::test_list_does_not_include_special_marks ... ok
[INFO] [stdout] test vim::marks::tests::test_mark_at_origin ... ok
[INFO] [stdout] test vim::marks::tests::test_lowercase_a ... ok
[INFO] [stdout] test vim::marks::tests::test_lowercase_z ... ok
[INFO] [stdout] test vim::marks::tests::test_list_marks_empty ... ok
[INFO] [stdout] test vim::marks::tests::test_mark_large_position ... ok
[INFO] [stdout] test vim::marks::tests::test_set_and_get_mark ... ok
[INFO] [stdout] test vim::marks::tests::test_set_same_mark_multiple_times ... ok
[INFO] [stdout] test vim::marks::tests::test_special_marks_initially_none ... ok
[INFO] [stdout] test vim::marks::tests::test_set_overwrites_mark ... ok
[INFO] [stdout] test vim::marks::tests::test_last_jump_backtick ... ok
[INFO] [stdout] test vim::marks::tests::test_new_mark_map ... ok
[INFO] [stdout] test vim::marks::tests::test_last_jump_both_return_same ... ok
[INFO] [stdout] test vim::marks::tests::test_list_marks_sorted ... ok
[INFO] [stdout] test vim::marks::tests::test_last_insert ... ok
[INFO] [stdout] test vim::find::tests::test_find_forward_first_char ... ok
[INFO] [stdout] test vim::find::tests::test_find_tab ... ok
[INFO] [stdout] test vim::marks::tests::test_special_marks_update ... ok
[INFO] [stdout] test vim::marks::tests::test_uppercase_and_lowercase_separate ... ok
[INFO] [stdout] test vim::marks::tests::test_uppercase_marks ... ok
[INFO] [stdout] test vim::mode::tests::test_default_mode ... ok
[INFO] [stdout] test vim::mode::tests::test_display_name ... ok
[INFO] [stdout] test vim::mode::tests::test_is_command ... ok
[INFO] [stdout] test vim::mode::tests::test_is_insert ... ok
[INFO] [stdout] test vim::mode::tests::test_is_normal ... ok
[INFO] [stdout] test vim::mode::tests::test_is_visual ... ok
[INFO] [stdout] test vim::mode::tests::test_operator_pending_display ... ok
[INFO] [stdout] test vim::motion::tests::test_big_word_back_at_start ... ok
[INFO] [stdout] test vim::motion::tests::test_big_word_back_basic ... ok
[INFO] [stdout] test vim::motion::tests::test_big_word_back_empty ... ok
[INFO] [stdout] test vim::motion::tests::test_big_word_back_punctuation ... ok
[INFO] [stdout] test vim::motion::tests::test_big_word_end_forward_at_end ... ok
[INFO] [stdout] test vim::motion::tests::test_big_word_end_forward_basic ... ok
[INFO] [stdout] test vim::motion::tests::test_big_word_end_forward_punctuation ... ok
[INFO] [stdout] test vim::motion::tests::test_big_word_forward_at_end ... ok
[INFO] [stdout] test vim::motion::tests::test_big_word_forward_basic ... ok
[INFO] [stdout] test vim::motion::tests::test_big_word_forward_empty ... ok
[INFO] [stdout] test vim::motion::tests::test_first_non_blank_all_whitespace ... ok
[INFO] [stdout] test vim::motion::tests::test_big_word_forward_punctuation ... ok
[INFO] [stdout] test vim::motion::tests::test_first_non_blank_empty ... ok
[INFO] [stdout] test vim::motion::tests::test_first_non_blank_mixed ... ok
[INFO] [stdout] test vim::motion::tests::test_first_non_blank_no_indent ... ok
[INFO] [stdout] test vim::motion::tests::test_first_non_blank_spaces ... ok
[INFO] [stdout] test vim::motion::tests::test_first_non_blank_tabs ... ok
[INFO] [stdout] test vim::motion::tests::test_is_word_char_letters ... ok
[INFO] [stdout] test vim::motion::tests::test_is_word_char_numbers ... ok
[INFO] [stdout] test vim::motion::tests::test_is_word_char_punctuation ... ok
[INFO] [stdout] test vim::motion::tests::test_is_word_char_underscore ... ok
[INFO] [stdout] test vim::motion::tests::test_matching_bracket_curly ... ok
[INFO] [stdout] test vim::motion::tests::test_matching_bracket_angle ... ok
[INFO] [stdout] test vim::motion::tests::test_matching_bracket_empty_lines ... ok
[INFO] [stdout] test vim::motion::tests::test_matching_bracket_multiline ... ok
[INFO] [stdout] test vim::motion::tests::test_matching_bracket_nested ... ok
[INFO] [stdout] test vim::motion::tests::test_matching_bracket_not_on_bracket ... ok
[INFO] [stdout] test vim::motion::tests::test_matching_bracket_parens ... ok
[INFO] [stdout] test vim::motion::tests::test_matching_bracket_square ... ok
[INFO] [stdout] test vim::motion::tests::test_matching_bracket_unmatched ... ok
[INFO] [stdout] test vim::motion::tests::test_motion_is_linewise ... ok
[INFO] [stdout] test vim::motion::tests::test_paragraph_backward_at_start ... ok
[INFO] [stdout] test vim::motion::tests::test_paragraph_backward_basic ... ok
[INFO] [stdout] test vim::motion::tests::test_paragraph_backward_multiple_empty ... ok
[INFO] [stdout] test vim::motion::tests::test_paragraph_forward_basic ... ok
[INFO] [stdout] test vim::motion::tests::test_paragraph_forward_empty_doc ... ok
[INFO] [stdout] test vim::motion::tests::test_word_back_at_start ... ok
[INFO] [stdout] test vim::motion::tests::test_word_back_basic ... ok
[INFO] [stdout] test vim::motion::tests::test_word_back_empty_string ... ok
[INFO] [stdout] test vim::motion::tests::test_paragraph_forward_multiple_empty ... ok
[INFO] [stdout] test vim::motion::tests::test_word_back_punctuation ... ok
[INFO] [stdout] test vim::motion::tests::test_word_end_forward_multiple_spaces ... ok
[INFO] [stdout] test vim::motion::tests::test_word_end_forward_punctuation ... ok
[INFO] [stdout] test vim::motion::tests::test_word_end_forward_basic ... ok
[INFO] [stdout] test vim::motion::tests::test_paragraph_forward_whitespace_only_line ... ok
[INFO] [stdout] test vim::motion::tests::test_word_end_forward_at_end ... ok
[INFO] [stdout] test vim::motion::tests::test_word_end_forward_short_words ... ok
[INFO] [stdout] test vim::motion::tests::test_word_forward_at_end ... ok
[INFO] [stdout] test vim::motion::tests::test_word_back_multiple_spaces ... ok
[INFO] [stdout] test vim::motion::tests::test_word_forward_punctuation ... ok
[INFO] [stdout] test vim::motion::tests::test_word_forward_single_char ... ok
[INFO] [stdout] test vim::motion::tests::test_word_forward_underscore ... ok
[INFO] [stdout] test vim::operator::tests::test_modifies_buffer ... ok
[INFO] [stdout] test vim::operator::tests::test_operator_char ... ok
[INFO] [stdout] test vim::register::tests::test_all_lowercase_named_registers ... ok
[INFO] [stdout] test vim::register::tests::test_characterwise_preserved ... ok
[INFO] [stdout] test vim::register::tests::test_all_numbered_registers ... ok
[INFO] [stdout] test vim::register::tests::test_clear_selection ... ok
[INFO] [stdout] test vim::register::tests::test_append_to_empty_register ... ok
[INFO] [stdout] test vim::register::tests::test_command_register ... ok
[INFO] [stdout] test vim::operator::tests::test_enters_insert_mode ... ok
[INFO] [stdout] test vim::register::tests::test_command_register_initially_empty ... ok
[INFO] [stdout] test vim::register::tests::test_command_register_overwrite ... ok
[INFO] [stdout] test vim::motion::tests::test_motion_is_exclusive ... ok
[INFO] [stdout] test vim::motion::tests::test_word_forward_empty_string ... ok
[INFO] [stdout] test vim::motion::tests::test_word_forward_multiple_spaces ... ok
[INFO] [stdout] test vim::motion::tests::test_word_forward_numbers ... ok
[INFO] [stdout] test vim::register::tests::test_append_to_named ... ok
[INFO] [stdout] test vim::register::tests::test_delete_shifts_numbered ... ok
[INFO] [stdout] test vim::register::tests::test_delete_shifts_up_to_9 ... ok
[INFO] [stdout] test vim::register::tests::test_delete_to_named_register ... ok
[INFO] [stdout] test vim::register::tests::test_get_clipboard_registers ... ok
[INFO] [stdout] test vim::motion::tests::test_word_back_col_beyond_line ... ok
[INFO] [stdout] test vim::register::tests::test_get_small_delete_register ... ok
[INFO] [stdout] test vim::register::tests::test_get_for_paste_default ... ok
[INFO] [stdout] test vim::register::tests::test_get_for_paste_nonexistent_register ... ok
[INFO] [stdout] test vim::register::tests::test_delete_to_named_skips_numbered ... ok
[INFO] [stdout] test vim::register::tests::test_get_invalid_register ... ok
[INFO] [stdout] test vim::register::tests::test_get_for_paste_selected ... ok
[INFO] [stdout] test vim::register::tests::test_get_unnamed_register ... ok
[INFO] [stdout] test vim::register::tests::test_is_clipboard_selected_named ... ok
[INFO] [stdout] test vim::motion::tests::test_matching_bracket_deep_nested ... ok
[INFO] [stdout] test vim::motion::tests::test_matching_bracket_mixed_types ... ok
[INFO] [stdout] test vim::motion::tests::test_paragraph_forward_at_end ... ok
[INFO] [stdout] test vim::motion::tests::test_word_forward_basic ... ok
[INFO] [stdout] test vim::register::tests::test_is_clipboard_selected_none ... ok
[INFO] [stdout] test vim::register::tests::test_is_clipboard_selected_plus ... ok
[INFO] [stdout] test vim::register::tests::test_linewise_delete_not_small ... ok
[INFO] [stdout] test vim::register::tests::test_linewise_preserved_on_delete ... ok
[INFO] [stdout] test vim::register::tests::test_linewise_preserved_on_yank ... ok
[INFO] [stdout] test vim::register::tests::test_multiline_delete_not_small ... ok
[INFO] [stdout] test vim::register::tests::test_new_register_map ... ok
[INFO] [stdout] test vim::register::tests::test_numbered_register_0 ... ok
[INFO] [stdout] test vim::register::tests::test_search_register ... ok
[INFO] [stdout] test vim::register::tests::test_search_register_initially_empty ... ok
[INFO] [stdout] test vim::register::tests::test_search_register_overwrite ... ok
[INFO] [stdout] test vim::register::tests::test_select_changes_register ... ok
[INFO] [stdout] test vim::register::tests::test_select_register ... ok
[INFO] [stdout] test vim::register::tests::test_small_delete ... ok
[INFO] [stdout] test vim::register::tests::test_small_delete_not_linewise ... ok
[INFO] [stdout] test vim::register::tests::test_unnamed_register_initially_empty ... ok
[INFO] [stdout] test vim::register::tests::test_uppercase_get_returns_lowercase ... ok
[INFO] [stdout] test vim::register::tests::test_is_clipboard_selected_star ... ok
[INFO] [stdout] test vim::register::tests::test_yank_clears_selection ... ok
[INFO] [stdout] test vim::register::tests::test_yank_linewise ... ok
[INFO] [stdout] test vim::register::tests::test_yank_multiple_times ... ok
[INFO] [stdout] test vim::register::tests::test_yank_to_named ... ok
[INFO] [stdout] test vim::register::tests::test_yank_to_unnamed ... ok
[INFO] [stdout] test vim::tests::test_accumulate_count ... ok
[INFO] [stdout] test vim::register::tests::test_yank_characterwise ... ok
[INFO] [stdout] test vim::tests::test_enter_command_mode ... ok
[INFO] [stdout] test vim::tests::test_enter_replace_mode ... ok
[INFO] [stdout] test vim::tests::test_enter_visual_mode ... ok
[INFO] [stdout] test vim::tests::test_enter_visual_block_mode ... ok
[INFO] [stdout] test vim::tests::test_exit_command_mode ... ok
[INFO] [stdout] test vim::tests::test_get_count_default ... ok
[INFO] [stdout] test vim::tests::test_get_count_with_value ... ok
[INFO] [stdout] test vim::tests::test_macros_initialized ... ok
[INFO] [stdout] test vim::tests::test_recorded_command_default ... ok
[INFO] [stdout] test vim::tests::test_reset_pending ... ok
[INFO] [stdout] test vim::tests::test_reset_pending_clears_mark_and_macro ... ok
[INFO] [stdout] test vim::tests::test_marks_initialized ... ok
[INFO] [stdout] test vim::tests::test_status_display_pending_macro ... ok
[INFO] [stdout] test vim::tests::test_status_display_normal ... ok
[INFO] [stdout] test vim::tests::test_status_display_pending_mark ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_big_word_bounds_complex ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_big_word_bounds_inner ... ok
[INFO] [stdout] test vim::text_object::tests::test_delimiters_all ... ok
[INFO] [stdout] test vim::tests::test_status_display_pending_g ... ok
[INFO] [stdout] test vim::tests::test_vim_state_new ... ok
[INFO] [stdout] test vim::tests::test_status_display_recording ... ok
[INFO] [stdout] test vim::tests::test_status_display_with_count ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bounds_whitespace_only ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bounds_empty_lines ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bounds_row_out_of_bounds ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bounds_col_beyond_line ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_angle ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_around ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_at_open_bracket ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_big_word_bounds_around ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_complex_code ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_curly ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_deeply_nested ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_empty ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_inner ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_multiline ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_multiline_around ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_nested ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_no_brackets ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_square ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_bracket_bounds_unmatched ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_paragraph_bounds_around ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_paragraph_bounds_inner ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_paragraph_bounds_multiple_paragraphs ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_paragraph_bounds_at_empty_line ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_paragraph_bounds_single_line ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_quote_bounds_around ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_quote_bounds_at_quote_char ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_quote_bounds_backtick ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_quote_bounds_empty_quotes ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_quote_bounds_inner ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_quote_bounds_no_quotes ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_quote_bounds_single_quote ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_quote_bounds_unmatched_quote ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_word_bounds_around_leading_space ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_word_bounds_around_trailing_space ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_word_bounds_at_end ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_word_bounds_at_start ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_word_bounds_around ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_word_bounds_with_underscore ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_word_bounds_inner ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_word_bounds_empty_line ... ok
[INFO] [stdout] test vim::text_object::tests::test_is_word_char_numbers ... ok
[INFO] [stdout] test vim::text_object::tests::test_is_word_char_underscore ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_word_bounds_punctuation ... ok
[INFO] [stdout] test vim::text_object::tests::test_parse_big_word ... ok
[INFO] [stdout] test vim::text_object::tests::test_parse_angle_brackets ... ok
[INFO] [stdout] test vim::text_object::tests::test_parse_braces ... ok
[INFO] [stdout] test vim::text_object::tests::test_parse_parentheses ... ok
[INFO] [stdout] test vim::text_object::tests::test_find_word_bounds_single_word ... ok
[INFO] [stdout] test vim::text_object::tests::test_is_word_char_letters ... ok
[INFO] [stdout] test vim::text_object::tests::test_parse_brackets ... ok
[INFO] [stdout] test vim::text_object::tests::test_parse_quotes ... ok
[INFO] [stdout] test vim::text_object::tests::test_parse_word ... ok
[INFO] [stdout] test vim::text_object::tests::test_is_word_char_punctuation ... ok
[INFO] [stdout] test vim::text_object::tests::test_parse_invalid_scope ... ok
[INFO] [stdout] test vim::text_object::tests::test_parse_invalid_object ... ok
[INFO] [stdout] test vim::text_object::tests::test_parse_paragraph ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 308 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "2f83f191fc8a18555515788759b74d16f44b82d2e51d3c6bce778b0ba90a7a1b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f83f191fc8a18555515788759b74d16f44b82d2e51d3c6bce778b0ba90a7a1b", kill_on_drop: false }`
[INFO] [stdout] 2f83f191fc8a18555515788759b74d16f44b82d2e51d3c6bce778b0ba90a7a1b
