[INFO] cloning repository https://github.com/theruslanusmanov/rust-text-editor [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/theruslanusmanov/rust-text-editor" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftheruslanusmanov%2Frust-text-editor", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftheruslanusmanov%2Frust-text-editor'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 758953443609c2a8ce79b13427e0f570b1048fef [INFO] testing theruslanusmanov/rust-text-editor against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftheruslanusmanov%2Frust-text-editor" "/workspace/builds/worker-69/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-69/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/theruslanusmanov/rust-text-editor on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/theruslanusmanov/rust-text-editor [INFO] finished tweaking git repo https://github.com/theruslanusmanov/rust-text-editor [INFO] tweaked toml for git repo https://github.com/theruslanusmanov/rust-text-editor written to /workspace/builds/worker-69/source/Cargo.toml [INFO] crate git repo https://github.com/theruslanusmanov/rust-text-editor already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded serial_test_derive v0.6.0 [INFO] [stderr] Downloaded serial_test v0.6.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-69/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-69/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 236ecc7068dc93c224b352f531280bd69d6f0f9d745dfbf5119894e533658889 [INFO] running `Command { std: "docker" "start" "-a" "236ecc7068dc93c224b352f531280bd69d6f0f9d745dfbf5119894e533658889", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "236ecc7068dc93c224b352f531280bd69d6f0f9d745dfbf5119894e533658889", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "236ecc7068dc93c224b352f531280bd69d6f0f9d745dfbf5119894e533658889", kill_on_drop: false }` [INFO] [stdout] 236ecc7068dc93c224b352f531280bd69d6f0f9d745dfbf5119894e533658889 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-69/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-69/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 022e7bb9eea04796b44c86441d4b1b0654b4fa9faf0fb6ddf735a7504e2c946d [INFO] running `Command { std: "docker" "start" "-a" "022e7bb9eea04796b44c86441d4b1b0654b4fa9faf0fb6ddf735a7504e2c946d", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling libc v0.2.123 [INFO] [stderr] Compiling unicode-width v0.1.9 [INFO] [stderr] Compiling rust-text-editor v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error: environment variable `RUST_TEXT_EDITOR_VERSION` not defined [INFO] [stdout] --> src/editor.rs:513:72 [INFO] [stdout] | [INFO] [stdout] 513 | let welcome_message = concat!("Rust Text Editor ", env!("RUST_TEXT_EDITOR_VERSION")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `env` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `crate::row` [INFO] [stdout] --> src/editor.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::row::{HlState, Row}; [INFO] [stdout] | ^^^ could not find `row` in the crate root [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved imports `crate::ansi_escape`, `crate::syntax`, `crate::sys`, `crate::terminal` [INFO] [stdout] --> src/editor.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::{ansi_escape::*, syntax::Conf as SyntaxConf, sys, terminal, Config, Error}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^ ^^^ ^^^^^^^^ no `terminal` in the root [INFO] [stdout] | | | | [INFO] [stdout] | | | no `sys` in the root [INFO] [stdout] | | could not find `syntax` in the crate root [INFO] [stdout] | could not find `ansi_escape` in the crate root [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusMessage` [INFO] [stdout] --> src/editor.rs:31:66 [INFO] [stdout] | [INFO] [stdout] 31 | ($editor:expr, $($arg:expr),*) => ($editor.status_msg = Some(StatusMessage::new(format!($($arg),*)))) [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `StatusMessage` [INFO] [stdout] ... [INFO] [stdout] 169 | set_status!(editor, "{}", HELP_MESSAGE); [INFO] [stdout] | --------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `set_status` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusMessage` [INFO] [stdout] --> src/editor.rs:31:66 [INFO] [stdout] | [INFO] [stdout] 31 | ($editor:expr, $($arg:expr),*) => ($editor.status_msg = Some(StatusMessage::new(format!($($arg),*)))) [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `StatusMessage` [INFO] [stdout] ... [INFO] [stdout] 467 | Ok(w) => set_status!(self, "{} written to {}", format_size(*w as u64), file_name), [INFO] [stdout] | ------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `set_status` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusMessage` [INFO] [stdout] --> src/editor.rs:31:66 [INFO] [stdout] | [INFO] [stdout] 31 | ($editor:expr, $($arg:expr),*) => ($editor.status_msg = Some(StatusMessage::new(format!($($arg),*)))) [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `StatusMessage` [INFO] [stdout] ... [INFO] [stdout] 468 | Err(err) => set_status!(self, "Can't save! I/O error: {}", err) [INFO] [stdout] | --------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `set_status` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusMessage` [INFO] [stdout] --> src/editor.rs:31:66 [INFO] [stdout] | [INFO] [stdout] 31 | ($editor:expr, $($arg:expr),*) => ($editor.status_msg = Some(StatusMessage::new(format!($($arg),*)))) [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `StatusMessage` [INFO] [stdout] ... [INFO] [stdout] 600 | set_status!(self, "Press Ctrl+Q {} more {} to quit.", quit_times, times); [INFO] [stdout] | ------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `set_status` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusMessage` [INFO] [stdout] --> src/editor.rs:31:66 [INFO] [stdout] | [INFO] [stdout] 31 | ($editor:expr, $($arg:expr),*) => ($editor.status_msg = Some(StatusMessage::new(format!($($arg),*)))) [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `StatusMessage` [INFO] [stdout] ... [INFO] [stdout] 661 | set_status!(self, "{}", mode.status_msg()); [INFO] [stdout] | ------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `set_status` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusMessage` [INFO] [stdout] --> src/editor.rs:31:66 [INFO] [stdout] | [INFO] [stdout] 31 | ($editor:expr, $($arg:expr),*) => ($editor.status_msg = Some(StatusMessage::new(format!($($arg),*)))) [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `StatusMessage` [INFO] [stdout] ... [INFO] [stdout] 719 | PromptState::Cancelled => set_status!(ed, "Save aborted"), [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `set_status` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusMessage` [INFO] [stdout] --> src/editor.rs:31:66 [INFO] [stdout] | [INFO] [stdout] 31 | ($editor:expr, $($arg:expr),*) => ($editor.status_msg = Some(StatusMessage::new(format!($($arg),*)))) [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `StatusMessage` [INFO] [stdout] ... [INFO] [stdout] 760 | (Err(e), _) | (_, Err(e)) => set_status!(ed, "Parsing error: {}", e), [INFO] [stdout] | --------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `set_status` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusMessage` [INFO] [stdout] --> src/editor.rs:31:66 [INFO] [stdout] | [INFO] [stdout] 31 | ($editor:expr, $($arg:expr),*) => ($editor.status_msg = Some(StatusMessage::new(format!($($arg),*)))) [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `StatusMessage` [INFO] [stdout] ... [INFO] [stdout] 772 | set_status!(ed, "{}", String::from_utf8_lossy(&out.stderr).trim_end()), [INFO] [stdout] | ---------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `set_status` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StatusMessage` [INFO] [stdout] --> src/editor.rs:31:66 [INFO] [stdout] | [INFO] [stdout] 31 | ($editor:expr, $($arg:expr),*) => ($editor.status_msg = Some(StatusMessage::new(format!($($arg),*)))) [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `StatusMessage` [INFO] [stdout] ... [INFO] [stdout] 777 | Err(e) => set_status!(ed, "{}", e), [INFO] [stdout] | ------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `set_status` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `cdirs` in this scope [INFO] [stdout] --> src/config.rs:50:29 [INFO] [stdout] | [INFO] [stdout] 50 | let paths: Vec<_> = cdirs() [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `StatusMessage` in this scope [INFO] [stdout] --> src/editor.rs:117:24 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct Editor { [INFO] [stdout] | - help: you might be missing a type parameter: `` [INFO] [stdout] ... [INFO] [stdout] 117 | status_msg: Option, [INFO] [stdout] | ^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `StatusMessage` in this scope [INFO] [stdout] --> src/editor.rs:126:6 [INFO] [stdout] | [INFO] [stdout] 126 | impl StatusMessage { [INFO] [stdout] | ^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `size` in this scope [INFO] [stdout] --> src/editor.rs:274:29 [INFO] [stdout] | [INFO] [stdout] 274 | self.window_width = size.1; [INFO] [stdout] | ^^^^ help: a local variable with a similar name exists: `wsize` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `zelf` in this scope [INFO] [stdout] --> src/editor.rs:471:9 [INFO] [stdout] | [INFO] [stdout] 471 | zelf.dirty &= saved.is_err(); [INFO] [stdout] | ^^^^ help: a self constructor with a similar name exists: `Self` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `RESET_FMT` in this scope [INFO] [stdout] --> src/editor.rs:492:29 [INFO] [stdout] | [INFO] [stdout] 492 | buffer.push_str(RESET_FMT); [INFO] [stdout] | ^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `CLEAR_LINE_RIGHT_OF_CURSOR` in this scope [INFO] [stdout] --> src/editor.rs:504:29 [INFO] [stdout] | [INFO] [stdout] 504 | buffer.push_str(CLEAR_LINE_RIGHT_OF_CURSOR); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `REVERSE_VIDEO` in this scope [INFO] [stdout] --> src/editor.rs:535:57 [INFO] [stdout] | [INFO] [stdout] 535 | buffer.push_str(&format!("{}{}{:>4$.4$}{}\r\n", REVERSE_VIDEO, left, right, RESET_FMT, rw)); [INFO] [stdout] | ^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `RESET_FMT` in this scope [INFO] [stdout] --> src/editor.rs:535:85 [INFO] [stdout] | [INFO] [stdout] 535 | buffer.push_str(&format!("{}{}{:>4$.4$}{}\r\n", REVERSE_VIDEO, left, right, RESET_FMT, rw)); [INFO] [stdout] | ^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `CLEAR_LINE_RIGHT_OF_CURSOR` in this scope [INFO] [stdout] --> src/editor.rs:540:25 [INFO] [stdout] | [INFO] [stdout] 540 | buffer.push_str(CLEAR_LINE_RIGHT_OF_CURSOR); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `HIDE_CURSOR` in this scope [INFO] [stdout] --> src/editor.rs:551:42 [INFO] [stdout] | [INFO] [stdout] 551 | let mut buffer = format!("{}{}", HIDE_CURSOR, MOVE_CURSOR_TO_START); [INFO] [stdout] | ^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `MOVE_CURSOR_TO_START` in this scope [INFO] [stdout] --> src/editor.rs:551:55 [INFO] [stdout] | [INFO] [stdout] 551 | let mut buffer = format!("{}{}", HIDE_CURSOR, MOVE_CURSOR_TO_START); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `SHOW_CURSOR` in this scope [INFO] [stdout] --> src/editor.rs:563:63 [INFO] [stdout] | [INFO] [stdout] 563 | print!("{}\x1b[{};{}H{}", buffer, cursor_y, cursor_x, SHOW_CURSOR); [INFO] [stdout] | ^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `SOme` in this scope [INFO] [stdout] --> src/editor.rs:651:16 [INFO] [stdout] | [INFO] [stdout] 651 | if let SOme(path) = file_name.as_ref().map(|p| sys::path(p.as_str())) { [INFO] [stdout] | ^^^^ help: a tuple variant with a similar name exists (notice the capitalization): `Some` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `selfm` in this scope [INFO] [stdout] --> src/editor.rs:671:67 [INFO] [stdout] | [INFO] [stdout] 671 | Some(prompt_mode) => prompt_mode.process_keypress(selfm & key)? [INFO] [stdout] | ^^^^^ help: a local variable with a similar name exists: `self` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `CLEAR_SCREEN` in this scope [INFO] [stdout] --> src/editor.rs:684:28 [INFO] [stdout] | [INFO] [stdout] 684 | print!("{}{}", CLEAR_SCREEN, MOVE_CURSOR_TO_START); [INFO] [stdout] | ^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `MOVE_CURSOR_TO_START` in this scope [INFO] [stdout] --> src/editor.rs:684:42 [INFO] [stdout] | [INFO] [stdout] 684 | print!("{}{}", CLEAR_SCREEN, MOVE_CURSOR_TO_START); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `format` [INFO] [stdout] --> src/config.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::fmt::{Display, format}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/config.rs:7:35 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io::{BufRead, BufReader, Read}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `[u8]` cannot be known at compilation time [INFO] [stdout] --> src/config.rs:52:22 [INFO] [stdout] | [INFO] [stdout] 52 | .map(|d| Path::from(d).join("config.ini")) [INFO] [stdout] | ^^^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: within `Path`, the trait `Sized` is not implemented for `[u8]` [INFO] [stdout] = note: required because it appears within the type `Path` [INFO] [stdout] note: required by a bound in `from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `[u8]` cannot be known at compilation time [INFO] [stdout] --> src/config.rs:52:19 [INFO] [stdout] | [INFO] [stdout] 52 | .map(|d| Path::from(d).join("config.ini")) [INFO] [stdout] | ^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: within `Path`, the trait `Sized` is not implemented for `[u8]` [INFO] [stdout] = note: required because it appears within the type `Path` [INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size [INFO] [stdout] | [INFO] [stdout] 52 | .map(|&d| Path::from(d).join("config.ini")) [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `[u8]` cannot be known at compilation time [INFO] [stdout] --> src/config.rs:52:33 [INFO] [stdout] | [INFO] [stdout] 52 | .map(|d| Path::from(d).join("config.ini")) [INFO] [stdout] | ^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: within `Path`, the trait `Sized` is not implemented for `[u8]` [INFO] [stdout] = note: required because it appears within the type `Path` [INFO] [stdout] = note: all function arguments must have a statically known size [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `to_string` exists for struct `File`, but its trait bounds were not satisfied [INFO] [stdout] --> src/config.rs:86:67 [INFO] [stdout] | [INFO] [stdout] 86 | let file = File::open(path).map(|e| ConfErr(path.into(), 0, e.to_string()))?; [INFO] [stdout] | ^^^^^^^^^ method cannot be called on `File` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `File: std::fmt::Display` [INFO] [stdout] which is required by `File: ToString` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `error::Error: std::io::Read` is not satisfied [INFO] [stdout] --> src/config.rs:87:37 [INFO] [stdout] | [INFO] [stdout] 87 | for (i, line) in BufReader::new(file).lines().enumerate() { [INFO] [stdout] | -------------- ^^^^ the trait `std::io::Read` is not implemented for `error::Error` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `BufReader::::new` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `lines` exists for struct `BufReader`, but its trait bounds were not satisfied [INFO] [stdout] --> src/config.rs:87:43 [INFO] [stdout] | [INFO] [stdout] 87 | for (i, line) in BufReader::new(file).lines().enumerate() { [INFO] [stdout] | ^^^^^ method cannot be called on `BufReader` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: src/error.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Error { [INFO] [stdout] | -------------- doesn't satisfy `error::Error: std::io::Read` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `error::Error: std::io::Read` [INFO] [stdout] which is required by `BufReader: BufRead` [INFO] [stdout] `BufReader: BufRead` [INFO] [stdout] which is required by `&mut BufReader: BufRead` [INFO] [stdout] note: the following trait must be implemented [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0593]: closure is expected to take 1 argument, but it takes 0 arguments [INFO] [stdout] --> src/editor.rs:286:64 [INFO] [stdout] | [INFO] [stdout] 286 | successors(Some(self.rows.len()), |u| Some(u / 10).filter(|| u | *u > 0)).count(); [INFO] [stdout] | ^^^^^^ -- takes 0 arguments [INFO] [stdout] | | [INFO] [stdout] | expected closure that takes 1 argument [INFO] [stdout] | [INFO] [stdout] help: consider changing the closure to take and ignore the expected argument [INFO] [stdout] | [INFO] [stdout] 286 | successors(Some(self.rows.len()), |u| Some(u / 10).filter(|_| u | *u > 0)).count(); [INFO] [stdout] | ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `curor` on type `&mut Editor` [INFO] [stdout] --> src/editor.rs:369:35 [INFO] [stdout] | [INFO] [stdout] 369 | row.chars.splice(self.curor.x - n_bytes_to_remove..self.cursor.x, iter::empty()); [INFO] [stdout] | ^^^^^ help: a field with a similar name exists: `cursor` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `fi` on type `&mut Editor` [INFO] [stdout] --> src/editor.rs:372:52 [INFO] [stdout] | [INFO] [stdout] 372 | self.dirty = if self.is_empty() { self.fi.e_name.is_some() } else { true }; [INFO] [stdout] | ^^ unknown field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `prompt_mode`, `cursor`, `ln_pad`, `window_width`, `screen_rows` ... and 10 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `dirsty` on type `&mut Editor` [INFO] [stdout] --> src/editor.rs:407:18 [INFO] [stdout] | [INFO] [stdout] 407 | self.dirsty = true; [INFO] [stdout] | ^^^^^^ help: a field with a similar name exists: `dirty` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `connfig` on type `&Editor` [INFO] [stdout] --> src/editor.rs:541:33 [INFO] [stdout] | [INFO] [stdout] 541 | let msg_duration = self.connfig.message_dur; [INFO] [stdout] | ^^^^^^^ help: a field with a similar name exists: `config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/editor.rs:671:50 [INFO] [stdout] | [INFO] [stdout] 671 | Some(prompt_mode) => prompt_mode.process_keypress(selfm & key)? [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ----------- supplied 1 argument [INFO] [stdout] | | [INFO] [stdout] | expected 2 arguments [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/editor.rs:714:8 [INFO] [stdout] | [INFO] [stdout] 714 | fn process_keypress(self, ed: &mut Editor, key: &Key) -> Result, Error> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ---- --------------- --------- [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0283]: type annotations needed [INFO] [stdout] --> src/editor.rs:104:5 [INFO] [stdout] | [INFO] [stdout] 87 | #[derive(Default)] [INFO] [stdout] | ------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 104 | rows: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ cannot infer type [INFO] [stdout] | [INFO] [stdout] = note: cannot satisfy `_: Default` [INFO] [stdout] = note: this error originates in the derive macro `Default` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BufRead` [INFO] [stdout] --> src/config.rs:7:15 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io::{BufRead, BufReader, Read}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 42 previous errors; 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0283, E0412, E0425, E0432, E0433, E0531, E0593... [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rust-text-editor` due to 43 previous errors; 3 warnings emitted [INFO] running `Command { std: "docker" "inspect" "022e7bb9eea04796b44c86441d4b1b0654b4fa9faf0fb6ddf735a7504e2c946d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "022e7bb9eea04796b44c86441d4b1b0654b4fa9faf0fb6ddf735a7504e2c946d", kill_on_drop: false }` [INFO] [stdout] 022e7bb9eea04796b44c86441d4b1b0654b4fa9faf0fb6ddf735a7504e2c946d