[INFO] cloning repository https://github.com/AndrewBregger/rem
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AndrewBregger/rem" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAndrewBregger%2Frem", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAndrewBregger%2Frem'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a6c9e3eb17857ee65335cfbfed3a35d43d632671
[INFO] checking AndrewBregger/rem against master#c8a31b780d5415358566a20b94912620a3f27067 for pr-139493-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAndrewBregger%2Frem" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AndrewBregger/rem
[INFO] finished tweaking git repo https://github.com/AndrewBregger/rem
[INFO] tweaked toml for git repo https://github.com/AndrewBregger/rem written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AndrewBregger/rem on toolchain c8a31b780d5415358566a20b94912620a3f27067
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c8a31b780d5415358566a20b94912620a3f27067" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AndrewBregger/rem 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" "+c8a31b780d5415358566a20b94912620a3f27067" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded bitflags v1.1.0
[INFO] [stderr]   Downloaded nalgebra-glm v0.4.0
[INFO] [stderr]   Downloaded glutin_egl_sys v0.1.3
[INFO] [stderr]   Downloaded smallvec v0.6.10
[INFO] [stderr]   Downloaded glutin_glx_sys v0.1.5
[INFO] [stderr]   Downloaded vcpkg v0.2.7
[INFO] [stderr]   Downloaded downcast-rs v1.0.4
[INFO] [stderr]   Downloaded stb_truetype v0.2.6
[INFO] [stderr]   Downloaded autocfg v0.1.4
[INFO] [stderr]   Downloaded num-rational v0.2.2
[INFO] [stderr]   Downloaded rawpointer v0.1.0
[INFO] [stderr]   Downloaded adler32 v1.0.3
[INFO] [stderr]   Downloaded glutin_wgl_sys v0.1.3
[INFO] [stderr]   Downloaded color_quant v1.0.1
[INFO] [stderr]   Downloaded gif v0.10.2
[INFO] [stderr]   Downloaded gleam v0.6.18
[INFO] [stderr]   Downloaded cgl v0.2.3
[INFO] [stderr]   Downloaded glutin_emscripten_sys v0.1.0
[INFO] [stderr]   Downloaded inflate v0.4.5
[INFO] [stderr]   Downloaded num-derive v0.2.5
[INFO] [stderr]   Downloaded either v1.5.2
[INFO] [stderr]   Downloaded same-file v1.0.4
[INFO] [stderr]   Downloaded glutin v0.21.0
[INFO] [stderr]   Downloaded glutin_gles2_sys v0.1.3
[INFO] [stderr]   Downloaded num-iter v0.1.39
[INFO] [stderr]   Downloaded wayland-sys v0.21.13
[INFO] [stderr]   Downloaded wayland-commons v0.21.13
[INFO] [stderr]   Downloaded num_cpus v1.10.1
[INFO] [stderr]   Downloaded gl_generator v0.11.0
[INFO] [stderr]   Downloaded freetype-sys v0.7.1
[INFO] [stderr]   Downloaded wayland-client v0.21.13
[INFO] [stderr]   Downloaded derivative v1.0.2
[INFO] [stderr]   Downloaded gl_generator v0.13.0
[INFO] [stderr]   Downloaded num-integer v0.1.41
[INFO] [stderr]   Downloaded matrixmultiply v0.2.2
[INFO] [stderr]   Downloaded num-complex v0.2.3
[INFO] [stderr]   Downloaded cocoa v0.18.4
[INFO] [stderr]   Downloaded cc v1.0.37
[INFO] [stderr]   Downloaded walkdir v2.2.8
[INFO] [stderr]   Downloaded objc v0.2.6
[INFO] [stderr]   Downloaded alga v0.9.1
[INFO] [stderr]   Downloaded rusttype v0.7.7
[INFO] [stderr]   Downloaded xml-rs v0.8.0
[INFO] [stderr]   Downloaded x11-dl v2.18.3
[INFO] [stderr]   Downloaded arrayvec v0.4.11
[INFO] [stderr]   Downloaded jpeg-decoder v0.1.15
[INFO] [stderr]   Downloaded smithay-client-toolkit v0.4.6
[INFO] [stderr]   Downloaded wayland-protocols v0.21.13
[INFO] [stderr]   Downloaded png v0.14.1
[INFO] [stderr]   Downloaded image v0.21.2
[INFO] [stderr]   Downloaded deflate v0.7.20
[INFO] [stderr]   Downloaded libm v0.1.4
[INFO] [stderr]   Downloaded wayland-scanner v0.21.13
[INFO] [stderr]   Downloaded winit v0.19.1
[INFO] [stderr]   Downloaded syn v0.15.39
[INFO] [stderr]   Downloaded nalgebra v0.18.0
[INFO] [stderr]   Downloaded rayon v1.1.0
[INFO] [stderr]   Downloaded rayon-core v1.5.0
[INFO] [stderr]   Downloaded libc v0.2.59
[INFO] [stderr]   Downloaded rustc-demangle v0.1.15
[INFO] [stderr]   Downloaded quote v0.6.12
[INFO] [stderr]   Downloaded crossbeam-queue v0.1.2
[INFO] [stderr]   Downloaded cfg-if v0.1.9
[INFO] [stderr]   Downloaded backtrace v0.3.32
[INFO] [stderr]   Downloaded backtrace-sys v0.1.30
[INFO] [stderr]   Downloaded libz-sys v1.0.25
[INFO] [stderr]   Downloaded tiff v0.2.2
[INFO] [stderr]   Downloaded winapi v0.3.7
[INFO] [stderr]   Downloaded freetype-rs v0.20.0
[INFO] [stderr]   Downloaded ropey v1.0.1
[INFO] [stderr]   Downloaded num-traits v0.2.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c8a31b780d5415358566a20b94912620a3f27067" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 62793b7614f1e127ca048aa03081cfa2546dca55f99f0577718957d355ff7312
[INFO] running `Command { std: "docker" "start" "-a" "62793b7614f1e127ca048aa03081cfa2546dca55f99f0577718957d355ff7312", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "62793b7614f1e127ca048aa03081cfa2546dca55f99f0577718957d355ff7312", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "62793b7614f1e127ca048aa03081cfa2546dca55f99f0577718957d355ff7312", kill_on_drop: false }`
[INFO] [stdout] 62793b7614f1e127ca048aa03081cfa2546dca55f99f0577718957d355ff7312
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c8a31b780d5415358566a20b94912620a3f27067" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e73db716a34018dfeb589435af6766dab72ce29523ccfa08070300c5028c281f
[INFO] running `Command { std: "docker" "start" "-a" "e73db716a34018dfeb589435af6766dab72ce29523ccfa08070300c5028c281f", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v0.1.4
[INFO] [stderr]    Compiling libc v0.2.59
[INFO] [stderr]    Compiling xml-rs v0.8.0
[INFO] [stderr]     Checking lazy_static v1.3.0
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling cc v1.0.37
[INFO] [stderr]     Checking cfg-if v0.1.9
[INFO] [stderr]     Checking rand_core v0.4.0
[INFO] [stderr]    Compiling bitflags v1.1.0
[INFO] [stderr]    Compiling arrayvec v0.4.11
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling pkg-config v0.3.14
[INFO] [stderr]     Checking nodrop v0.1.13
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling log v0.4.6
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling syn v0.15.39
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking crossbeam-utils v0.6.5
[INFO] [stderr]     Checking memoffset v0.2.1
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling libm v0.1.4
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking same-file v1.0.4
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]    Compiling num-complex v0.2.3
[INFO] [stderr]     Checking downcast-rs v1.0.4
[INFO] [stderr]    Compiling rayon-core v1.5.0
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]     Checking stable_deref_trait v1.1.1
[INFO] [stderr]     Checking smallvec v0.6.10
[INFO] [stderr]    Compiling typenum v1.10.0
[INFO] [stderr]     Checking stb_truetype v0.2.6
[INFO] [stderr]     Checking crossbeam-epoch v0.7.1
[INFO] [stderr]     Checking owning_ref v0.4.0
[INFO] [stderr]     Checking walkdir v2.2.8
[INFO] [stderr]    Compiling parking_lot_core v0.4.0
[INFO] [stderr]    Compiling num-iter v0.1.39
[INFO] [stderr]    Compiling gl_generator v0.11.0
[INFO] [stderr]     Checking crossbeam-queue v0.1.2
[INFO] [stderr]    Compiling x11-dl v2.18.3
[INFO] [stderr]    Compiling num-derive v0.2.5
[INFO] [stderr]     Checking xdg v2.2.0
[INFO] [stderr]     Checking adler32 v1.0.3
[INFO] [stderr]     Checking lock_api v0.1.5
[INFO] [stderr]    Compiling quote v0.6.12
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking num_cpus v1.10.1
[INFO] [stderr]     Checking crossbeam-deque v0.6.3
[INFO] [stderr]    Compiling wayland-scanner v0.21.13
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]    Compiling freetype-sys v0.7.1
[INFO] [stderr]    Compiling gl_generator v0.13.0
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]     Checking ordered-float v1.0.2
[INFO] [stderr]     Checking line_drawing v0.7.0
[INFO] [stderr]    Compiling num-rational v0.2.2
[INFO] [stderr]     Checking rusttype v0.7.7
[INFO] [stderr]     Checking rawpointer v0.1.0
[INFO] [stderr]    Compiling libloading v0.5.2
[INFO] [stderr]    Compiling libz-sys v1.0.25
[INFO] [stderr]     Checking lzw v0.10.0
[INFO] [stderr]     Checking either v1.5.2
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.3
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.5
[INFO] [stderr]     Checking andrew v0.2.1
[INFO] [stderr]     Checking rayon v1.1.0
[INFO] [stderr]     Checking matrixmultiply v0.2.2
[INFO] [stderr]     Checking dlib v0.4.1
[INFO] [stderr]     Checking wayland-sys v0.21.13
[INFO] [stderr]     Checking deflate v0.7.20
[INFO] [stderr]     Checking inflate v0.4.5
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking alga v0.9.1
[INFO] [stderr]     Checking color_quant v1.0.1
[INFO] [stderr]     Checking percent-encoding v1.0.1
[INFO] [stderr]    Compiling gl v0.13.0
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking ropey v1.0.1
[INFO] [stderr]     Checking gif v0.10.2
[INFO] [stderr]     Checking generic-array v0.12.3
[INFO] [stderr]     Checking png v0.14.1
[INFO] [stderr]     Checking freetype-rs v0.20.0
[INFO] [stderr]     Checking nalgebra v0.18.0
[INFO] [stderr]    Compiling wayland-client v0.21.13
[INFO] [stderr]    Compiling wayland-protocols v0.21.13
[INFO] [stderr]     Checking parking_lot v0.7.1
[INFO] [stderr]     Checking jpeg-decoder v0.1.15
[INFO] [stderr]     Checking wayland-commons v0.21.13
[INFO] [stderr]    Compiling derivative v1.0.2
[INFO] [stderr]     Checking tiff v0.2.2
[INFO] [stderr]     Checking image v0.21.2
[INFO] [stderr]     Checking nalgebra-glm v0.4.0
[INFO] [stderr]     Checking smithay-client-toolkit v0.4.6
[INFO] [stderr]     Checking winit v0.19.1
[INFO] [stderr]     Checking glutin v0.21.0
[INFO] [stderr]     Checking rem v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved imports `crate::pane`, `crate::pane`
[INFO] [stdout]   --> src/render/render.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::pane::{self, Cursor, Pane, PaneID};
[INFO] [stdout]    |            ^^^^   ^^^^ no `pane` in the root
[INFO] [stdout]    |            |
[INFO] [stdout]    |            could not find `pane` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pane`
[INFO] [stdout]   --> src/render/shader.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::pane::CellSize;
[INFO] [stdout]    |            ^^^^ could not find `pane` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::pane`, `crate::pane`
[INFO] [stdout]   --> src/render/render.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::pane::{self, Cursor, Pane, PaneID};
[INFO] [stdout]    |            ^^^^   ^^^^ no `pane` in the root
[INFO] [stdout]    |            |
[INFO] [stdout]    |            could not find `pane` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `super::pane`
[INFO] [stdout]  --> src/config.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::pane::CellSize;
[INFO] [stdout]   |            ^^^^ could not find `pane` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pane`
[INFO] [stdout]  --> src/config.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::pane;
[INFO] [stdout]   |     ^^^^^^^^^^^ no `pane` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pane`
[INFO] [stdout]   --> src/render/shader.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::pane::CellSize;
[INFO] [stdout]    |            ^^^^ could not find `pane` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pane`
[INFO] [stdout]  --> src/editor.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::pane;
[INFO] [stdout]   |     ^^^^^^^^^^^ no `pane` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `view::CellSize`, `view::ViewSize`, `view::Cells`
[INFO] [stdout]  --> src/main_window.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use view::{CellSize, ViewSize, LineCache, Cells, View};
[INFO] [stdout]   |            ^^^^^^^^  ^^^^^^^^             ^^^^^
[INFO] [stdout]   |            |         |                    |
[INFO] [stdout]   |            |         |                    no `Cells` in `view`
[INFO] [stdout]   |            |         |                    help: a similar name exists in the module (notice the capitalization): `cells`
[INFO] [stdout]   |            |         no `ViewSize` in `view`
[INFO] [stdout]   |            no `CellSize` in `view`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `super::pane`
[INFO] [stdout]  --> src/config.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::pane::CellSize;
[INFO] [stdout]   |            ^^^^ could not find `pane` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pane`
[INFO] [stdout]  --> src/config.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::pane;
[INFO] [stdout]   |     ^^^^^^^^^^^ no `pane` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::pane`
[INFO] [stdout]  --> src/editor.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::pane;
[INFO] [stdout]   |     ^^^^^^^^^^^ no `pane` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0106]: missing lifetime specifier
[INFO] [stdout]   --> src/main_window.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 |     views: Vec<View>,
[INFO] [stdout]    |                ^^^^ expected named lifetime parameter
[INFO] [stdout]    |
[INFO] [stdout] help: consider introducing a named lifetime parameter
[INFO] [stdout]    |
[INFO] [stdout] 13 ~ struct MainWindow<'a> {
[INFO] [stdout] 14 |     /// all of the file views of this editor.
[INFO] [stdout] 15 ~     views: Vec<View<'a>>,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `view::CellSize`, `view::ViewSize`, `view::Cells`
[INFO] [stdout]  --> src/main_window.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use view::{CellSize, ViewSize, LineCache, Cells, View};
[INFO] [stdout]   |            ^^^^^^^^  ^^^^^^^^             ^^^^^
[INFO] [stdout]   |            |         |                    |
[INFO] [stdout]   |            |         |                    no `Cells` in `view`
[INFO] [stdout]   |            |         |                    help: a similar name exists in the module (notice the capitalization): `cells`
[INFO] [stdout]   |            |         no `ViewSize` in `view`
[INFO] [stdout]   |            no `CellSize` in `view`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0106]: missing lifetime specifier
[INFO] [stdout]   --> src/main_window.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 |     views: Vec<View>,
[INFO] [stdout]    |                ^^^^ expected named lifetime parameter
[INFO] [stdout]    |
[INFO] [stdout] help: consider introducing a named lifetime parameter
[INFO] [stdout]    |
[INFO] [stdout] 13 ~ struct MainWindow<'a> {
[INFO] [stdout] 14 |     /// all of the file views of this editor.
[INFO] [stdout] 15 ~     views: Vec<View<'a>>,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `pane`
[INFO] [stdout]   --> src/main_window.rs:36:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let loc = pane::Loc::new(0f32, 0f32);
[INFO] [stdout]    |                   ^^^^ use of unresolved module or unlinked crate `pane`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/pane/mod.rs, use `mod pane` in this file to declare the module
[INFO] [stdout]   --> src/main.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout]  1 + mod pane;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `MainWindow` in this scope
[INFO] [stdout]   --> src/editor.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |     main_window: MainWindow,
[INFO] [stdout]    |                  ^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] note: struct `crate::main_window::MainWindow` exists but is inaccessible
[INFO] [stdout]   --> src/main_window.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct MainWindow {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `MainWindow`
[INFO] [stdout]    --> src/editor.rs:126:27
[INFO] [stdout]     |
[INFO] [stdout] 126 |         let main_window = MainWindow::new(window, cell_size)?;
[INFO] [stdout]     |                           ^^^^^^^^^^ use of undeclared type `MainWindow`
[INFO] [stdout]     |
[INFO] [stdout] note: struct `crate::main_window::MainWindow` exists but is inaccessible
[INFO] [stdout]    --> src/main_window.rs:13:1
[INFO] [stdout]     |
[INFO] [stdout]  13 | struct MainWindow {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `PaneID` in this scope
[INFO] [stdout]    --> src/editor.rs:206:47
[INFO] [stdout]     |
[INFO] [stdout] 206 |     pub fn register_document(&mut self, pane: PaneID, doc: editor_core::DocID) {
[INFO] [stdout]     |                                               ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Window` in this scope
[INFO] [stdout]   --> src/main_window.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |     window: Window,
[INFO] [stdout]    |             ^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::config::Window;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::window::Window;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use glutin::Window;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Size` in this scope
[INFO] [stdout]   --> src/main_window.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 |     cells: Size<u32>,
[INFO] [stdout]    |            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/c8a31b780d5415358566a20b94912620a3f27067/library/core/src/marker.rs:160:1
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named trait `Sized` defined here
[INFO] [stdout] help: a trait with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 25 |     cells: Sized<u32>,
[INFO] [stdout]    |                +
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::render::Size;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::size::Size;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Window` in this scope
[INFO] [stdout]   --> src/main_window.rs:29:20
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new(window: Window, cell_size: CellSize) -> Result<Self> {
[INFO] [stdout]    |                    ^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::config::Window;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::window::Window;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use glutin::Window;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pane` in this scope
[INFO] [stdout]   --> src/main_window.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             pane,
[INFO] [stdout]    |             ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `HashMap`
[INFO] [stdout]   --> src/main_window.rs:40:26
[INFO] [stdout]    |
[INFO] [stdout] 40 |             pane_states: HashMap::new(),
[INFO] [stdout]    |                          ^^^^^^^ use of undeclared type `HashMap`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  1 + use std::collections::HashMap;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/render/caches.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::ptr;
[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 import: `FontDesc`
[INFO] [stdout]  --> src/render/caches.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::font::{self, FontDesc, FontKey, FontSize, GlyphKey, RasterizedGlyph, Rasterizer};
[INFO] [stdout]   |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gl::types::*`
[INFO] [stdout]  --> src/render/framebuffer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use gl::types::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gl::types::*`
[INFO] [stdout]  --> src/render/render.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use gl::types::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nalgebra_glm as glm`
[INFO] [stdout]  --> src/render/render.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nalgebra_glm as glm;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/render/render.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ffi::CString`
[INFO] [stdout]  --> src/render/render.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ffi::CString;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FontDesc`, `FontKey`, `FontSize`, `GlyphKey`, and `RasterizedGlyph`
[INFO] [stdout]   --> src/render/render.rs:16:25
[INFO] [stdout]    |
[INFO] [stdout] 16 | use super::font::{self, FontDesc, FontKey, FontSize, GlyphKey, RasterizedGlyph, Rasterizer};
[INFO] [stdout]    |                         ^^^^^^^^  ^^^^^^^  ^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Glyph`
[INFO] [stdout]   --> src/render/render.rs:19:20
[INFO] [stdout]    |
[INFO] [stdout] 19 | use super::{Error, Glyph, GlyphCache, Result};
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]  --> src/render/shader.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::path::PathBuf;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `render::PaneState`
[INFO] [stdout]  --> src/editor.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use render::PaneState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WindowSize`
[INFO] [stdout]   --> src/editor.rs:14:29
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::window::{Window, WindowSize};
[INFO] [stdout]    |                             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::size::Size`
[INFO] [stdout]   --> src/editor.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use super::size::Size;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `From`
[INFO] [stdout]   --> src/editor.rs:22:20
[INFO] [stdout]    |
[INFO] [stdout] 22 | use std::convert::{From, Into};
[INFO] [stdout]    |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/editor.rs:148:13
[INFO] [stdout]     |
[INFO] [stdout] 148 |             /// @TODO change back to normal
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 149 |             mode: EditorMode::Insert,
[INFO] [stdout]     |             ------------------------ rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ropey::iter::Bytes`
[INFO] [stdout]   --> src/editor_core/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ropey::iter::Bytes;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DeviceEvent`, `ElementState`, `NotCurrent`, `VirtualKeyCode`, and `WindowEvent`
[INFO] [stdout]  --> src/window.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     DeviceEvent, ElementState, Event, EventsLoop, NotCurrent, PossiblyCurrent, VirtualKeyCode,
[INFO] [stdout]   |     ^^^^^^^^^^^  ^^^^^^^^^^^^                     ^^^^^^^^^^                   ^^^^^^^^^^^^^^
[INFO] [stdout] 4 |     WindowEvent, WindowedContext,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LineCache`
[INFO] [stdout]  --> src/main_window.rs:3:32
[INFO] [stdout]   |
[INFO] [stdout] 3 | use view::{CellSize, ViewSize, LineCache, Cells, View};
[INFO] [stdout]   |                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cells::*`
[INFO] [stdout]  --> src/view/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use cells::*;
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `view_status::*`
[INFO] [stdout]  --> src/view/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use view_status::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FrameSize`
[INFO] [stdout]   --> src/view/mod.rs:11:47
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::render::framebuffer::{FrameBuffer, FrameSize};
[INFO] [stdout]    |                                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `pane`
[INFO] [stdout]   --> src/main_window.rs:36:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let loc = pane::Loc::new(0f32, 0f32);
[INFO] [stdout]    |                   ^^^^ use of unresolved module or unlinked crate `pane`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/pane/mod.rs, use `mod pane` in this file to declare the module
[INFO] [stdout]   --> src/main.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout]  1 + mod pane;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `MainWindow` in this scope
[INFO] [stdout]   --> src/editor.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |     main_window: MainWindow,
[INFO] [stdout]    |                  ^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] note: struct `crate::main_window::MainWindow` exists but is inaccessible
[INFO] [stdout]   --> src/main_window.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct MainWindow {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `MainWindow`
[INFO] [stdout]    --> src/editor.rs:126:27
[INFO] [stdout]     |
[INFO] [stdout] 126 |         let main_window = MainWindow::new(window, cell_size)?;
[INFO] [stdout]     |                           ^^^^^^^^^^ use of undeclared type `MainWindow`
[INFO] [stdout]     |
[INFO] [stdout] note: struct `crate::main_window::MainWindow` exists but is inaccessible
[INFO] [stdout]    --> src/main_window.rs:13:1
[INFO] [stdout]     |
[INFO] [stdout]  13 | struct MainWindow {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `PaneID` in this scope
[INFO] [stdout]    --> src/editor.rs:206:47
[INFO] [stdout]     |
[INFO] [stdout] 206 |     pub fn register_document(&mut self, pane: PaneID, doc: editor_core::DocID) {
[INFO] [stdout]     |                                               ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Window` in this scope
[INFO] [stdout]   --> src/main_window.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |     window: Window,
[INFO] [stdout]    |             ^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::config::Window;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::window::Window;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use glutin::Window;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Size` in this scope
[INFO] [stdout]   --> src/main_window.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 |     cells: Size<u32>,
[INFO] [stdout]    |            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/c8a31b780d5415358566a20b94912620a3f27067/library/core/src/marker.rs:160:1
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named trait `Sized` defined here
[INFO] [stdout] help: a trait with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 25 |     cells: Sized<u32>,
[INFO] [stdout]    |                +
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::render::Size;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::size::Size;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Window` in this scope
[INFO] [stdout]   --> src/main_window.rs:29:20
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new(window: Window, cell_size: CellSize) -> Result<Self> {
[INFO] [stdout]    |                    ^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::config::Window;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use crate::window::Window;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use glutin::Window;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pane` in this scope
[INFO] [stdout]   --> src/main_window.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             pane,
[INFO] [stdout]    |             ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `HashMap`
[INFO] [stdout]   --> src/main_window.rs:40:26
[INFO] [stdout]    |
[INFO] [stdout] 40 |             pane_states: HashMap::new(),
[INFO] [stdout]    |                          ^^^^^^^ use of undeclared type `HashMap`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  1 + use std::collections::HashMap;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr`
[INFO] [stdout]  --> src/render/caches.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::ptr;
[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 import: `FontDesc`
[INFO] [stdout]  --> src/render/caches.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::font::{self, FontDesc, FontKey, FontSize, GlyphKey, RasterizedGlyph, Rasterizer};
[INFO] [stdout]   |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gl::types::*`
[INFO] [stdout]  --> src/render/framebuffer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use gl::types::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gl::types::*`
[INFO] [stdout]  --> src/render/render.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use gl::types::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nalgebra_glm as glm`
[INFO] [stdout]  --> src/render/render.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nalgebra_glm as glm;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/render/render.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ffi::CString`
[INFO] [stdout]  --> src/render/render.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ffi::CString;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FontDesc`, `FontKey`, `FontSize`, `GlyphKey`, and `RasterizedGlyph`
[INFO] [stdout]   --> src/render/render.rs:16:25
[INFO] [stdout]    |
[INFO] [stdout] 16 | use super::font::{self, FontDesc, FontKey, FontSize, GlyphKey, RasterizedGlyph, Rasterizer};
[INFO] [stdout]    |                         ^^^^^^^^  ^^^^^^^  ^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Glyph`
[INFO] [stdout]   --> src/render/render.rs:19:20
[INFO] [stdout]    |
[INFO] [stdout] 19 | use super::{Error, Glyph, GlyphCache, Result};
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]  --> src/render/shader.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::path::PathBuf;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `render::PaneState`
[INFO] [stdout]  --> src/editor.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use render::PaneState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WindowSize`
[INFO] [stdout]   --> src/editor.rs:14:29
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::window::{Window, WindowSize};
[INFO] [stdout]    |                             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::size::Size`
[INFO] [stdout]   --> src/editor.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use super::size::Size;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `From`
[INFO] [stdout]   --> src/editor.rs:22:20
[INFO] [stdout]    |
[INFO] [stdout] 22 | use std::convert::{From, Into};
[INFO] [stdout]    |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/editor.rs:148:13
[INFO] [stdout]     |
[INFO] [stdout] 148 |             /// @TODO change back to normal
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 149 |             mode: EditorMode::Insert,
[INFO] [stdout]     |             ------------------------ rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ropey::iter::Bytes`
[INFO] [stdout]   --> src/editor_core/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ropey::iter::Bytes;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DeviceEvent`, `ElementState`, `NotCurrent`, `VirtualKeyCode`, and `WindowEvent`
[INFO] [stdout]  --> src/window.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     DeviceEvent, ElementState, Event, EventsLoop, NotCurrent, PossiblyCurrent, VirtualKeyCode,
[INFO] [stdout]   |     ^^^^^^^^^^^  ^^^^^^^^^^^^                     ^^^^^^^^^^                   ^^^^^^^^^^^^^^
[INFO] [stdout] 4 |     WindowEvent, WindowedContext,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LineCache`
[INFO] [stdout]  --> src/main_window.rs:3:32
[INFO] [stdout]   |
[INFO] [stdout] 3 | use view::{CellSize, ViewSize, LineCache, Cells, View};
[INFO] [stdout]   |                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cells::*`
[INFO] [stdout]  --> src/view/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use cells::*;
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `view_status::*`
[INFO] [stdout]  --> src/view/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use view_status::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FrameSize`
[INFO] [stdout]   --> src/view/mod.rs:11:47
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::render::framebuffer::{FrameBuffer, FrameSize};
[INFO] [stdout]    |                                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> src/main_window.rs:29:52
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new(window: Window, cell_size: CellSize) -> Result<Self> {
[INFO] [stdout]    |                                                    ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                    |
[INFO] [stdout]    |                                                    expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new(window: Window, cell_size: CellSize) -> Result<Self, E> {
[INFO] [stdout]    |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` attribute cannot be used on use statements
[INFO] [stdout]  --> src/render/mod.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[macro_use]` can be applied to crates, extern crates, and modules
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` attribute cannot be used on use statements
[INFO] [stdout]  --> src/editor.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use] use crate::render;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[macro_use]` can be applied to crates, extern crates, and modules
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: enum takes 2 generic arguments but 1 generic argument was supplied
[INFO] [stdout]   --> src/main_window.rs:29:52
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new(window: Window, cell_size: CellSize) -> Result<Self> {
[INFO] [stdout]    |                                                    ^^^^^^ ---- supplied 1 generic argument
[INFO] [stdout]    |                                                    |
[INFO] [stdout]    |                                                    expected 2 generic arguments
[INFO] [stdout]    |
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new(window: Window, cell_size: CellSize) -> Result<Self, E> {
[INFO] [stdout]    |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` attribute cannot be used on use statements
[INFO] [stdout]  --> src/render/mod.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[macro_use]` can be applied to crates, extern crates, and modules
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` attribute cannot be used on use statements
[INFO] [stdout]  --> src/editor.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use] use crate::render;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[macro_use]` can be applied to crates, extern crates, and modules
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `compute_cell_size` found for struct `App` in the current scope
[INFO] [stdout]    --> src/editor.rs:122:31
[INFO] [stdout]     |
[INFO] [stdout]  75 | pub struct App {
[INFO] [stdout]     | -------------- function or associated item `compute_cell_size` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 122 |         let cell_size = Self::compute_cell_size(cache.metrics(), &config.font);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ function or associated item not found in `App`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `App`, consider using `App::new` which returns `std::result::Result<App, editor::Error>`
[INFO] [stdout]    --> src/editor.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 |     pub fn new(mut config: config::Config) -> Result<Self> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0063]: missing field `timer` in initializer of `App`
[INFO] [stdout]    --> src/editor.rs:144:23
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let mut app = Self {
[INFO] [stdout]     |                       ^^^^ missing `timer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `vertical_split_active_pane` found for struct `App` in the current scope
[INFO] [stdout]    --> src/editor.rs:160:13
[INFO] [stdout]     |
[INFO] [stdout]  75 | pub struct App {
[INFO] [stdout]     | -------------- method `vertical_split_active_pane` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 160 |         app.vertical_split_active_pane(docid);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `App`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `compute_cell_size` found for struct `App` in the current scope
[INFO] [stdout]    --> src/editor.rs:122:31
[INFO] [stdout]     |
[INFO] [stdout]  75 | pub struct App {
[INFO] [stdout]     | -------------- function or associated item `compute_cell_size` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 122 |         let cell_size = Self::compute_cell_size(cache.metrics(), &config.font);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ function or associated item not found in `App`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `App`, consider using `App::new` which returns `std::result::Result<App, editor::Error>`
[INFO] [stdout]    --> src/editor.rs:96:5
[INFO] [stdout]     |
[INFO] [stdout]  96 |     pub fn new(mut config: config::Config) -> Result<Self> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0063]: missing field `timer` in initializer of `App`
[INFO] [stdout]    --> src/editor.rs:144:23
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let mut app = Self {
[INFO] [stdout]     |                       ^^^^ missing `timer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `vertical_split_active_pane` found for struct `App` in the current scope
[INFO] [stdout]    --> src/editor.rs:160:13
[INFO] [stdout]     |
[INFO] [stdout]  75 | pub struct App {
[INFO] [stdout]     | -------------- method `vertical_split_active_pane` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 160 |         app.vertical_split_active_pane(docid);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `App`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `Timer` has no field named `duration`
[INFO] [stdout]   --> src/timer.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |             duration: None
[INFO] [stdout]    |             ^^^^^^^^ `Timer` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/timer.rs:20:39
[INFO] [stdout]    |
[INFO] [stdout] 20 |           if let Some(last) = self.last {
[INFO] [stdout]    |  _______________________________________^
[INFO] [stdout] 21 | |             self.last = None;
[INFO] [stdout] 22 | |             last.elapsed();
[INFO] [stdout]    | |                           - help: remove this semicolon to return this value
[INFO] [stdout] 23 | |         }
[INFO] [stdout]    | |_________^ expected `Duration`, found `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/timer.rs:30:39
[INFO] [stdout]    |
[INFO] [stdout] 30 |           if let Some(last) = self.last {
[INFO] [stdout]    |  _______________________________________^
[INFO] [stdout] 31 | |             last.elapsed();
[INFO] [stdout]    | |                           - help: remove this semicolon to return this value
[INFO] [stdout] 32 | |         }
[INFO] [stdout]    | |_________^ expected `Duration`, found `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `MainWindow` has no field named `pane`
[INFO] [stdout]   --> src/main_window.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             pane,
[INFO] [stdout]    |             ^^^^ `MainWindow` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `views`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `MainWindow` has no field named `pane_states`
[INFO] [stdout]   --> src/main_window.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |             pane_states: HashMap::new(),
[INFO] [stdout]    |             ^^^^^^^^^^^ `MainWindow` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `views`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `pane` on type `MainWindow`
[INFO] [stdout]   --> src/main_window.rs:49:30
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let id = main_window.pane.id();
[INFO] [stdout]    |                              ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `views`, `tab_bar`, `window`, `cell_size`, `cells`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `pane` on type `MainWindow`
[INFO] [stdout]   --> src/main_window.rs:50:32
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let size = main_window.pane.size().clone();
[INFO] [stdout]    |                                ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `views`, `tab_bar`, `window`, `cell_size`, `cells`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `timer::Timer` has no field named `duration`
[INFO] [stdout]   --> src/timer.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |             duration: None
[INFO] [stdout]    |             ^^^^^^^^ `timer::Timer` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: all struct fields are already assigned
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/timer.rs:20:39
[INFO] [stdout]    |
[INFO] [stdout] 20 |           if let Some(last) = self.last {
[INFO] [stdout]    |  _______________________________________^
[INFO] [stdout] 21 | |             self.last = None;
[INFO] [stdout] 22 | |             last.elapsed();
[INFO] [stdout]    | |                           - help: remove this semicolon to return this value
[INFO] [stdout] 23 | |         }
[INFO] [stdout]    | |_________^ expected `Duration`, found `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/timer.rs:30:39
[INFO] [stdout]    |
[INFO] [stdout] 30 |           if let Some(last) = self.last {
[INFO] [stdout]    |  _______________________________________^
[INFO] [stdout] 31 | |             last.elapsed();
[INFO] [stdout]    | |                           - help: remove this semicolon to return this value
[INFO] [stdout] 32 | |         }
[INFO] [stdout]    | |_________^ expected `Duration`, found `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `MainWindow` has no field named `pane`
[INFO] [stdout]   --> src/main_window.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             pane,
[INFO] [stdout]    |             ^^^^ `MainWindow` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `views`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `MainWindow` has no field named `pane_states`
[INFO] [stdout]   --> src/main_window.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |             pane_states: HashMap::new(),
[INFO] [stdout]    |             ^^^^^^^^^^^ `MainWindow` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `views`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `pane` on type `MainWindow`
[INFO] [stdout]   --> src/main_window.rs:49:30
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let id = main_window.pane.id();
[INFO] [stdout]    |                              ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `views`, `tab_bar`, `window`, `cell_size`, `cells`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `pane` on type `MainWindow`
[INFO] [stdout]   --> src/main_window.rs:50:32
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let size = main_window.pane.size().clone();
[INFO] [stdout]    |                                ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `views`, `tab_bar`, `window`, `cell_size`, `cells`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `create_pane_state` found for struct `MainWindow` in the current scope
[INFO] [stdout]   --> src/main_window.rs:52:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct MainWindow {
[INFO] [stdout]    | ----------------- method `create_pane_state` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 52 |         main_window.create_pane_state(size, id)?;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^ method not found in `MainWindow`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `create_pane_state` found for struct `MainWindow` in the current scope
[INFO] [stdout]   --> src/main_window.rs:52:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct MainWindow {
[INFO] [stdout]    | ----------------- method `create_pane_state` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 52 |         main_window.create_pane_state(size, id)?;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^ method not found in `MainWindow`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `set_pane_active` found for struct `MainWindow` in the current scope
[INFO] [stdout]   --> src/main_window.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct MainWindow {
[INFO] [stdout]    | ----------------- method `set_pane_active` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 54 |         main_window.set_pane_active(main_window.pane.id());
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^ method not found in `MainWindow`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `pane` on type `MainWindow`
[INFO] [stdout]   --> src/main_window.rs:54:49
[INFO] [stdout]    |
[INFO] [stdout] 54 |         main_window.set_pane_active(main_window.pane.id());
[INFO] [stdout]    |                                                 ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `views`, `tab_bar`, `window`, `cell_size`, `cells`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/view/line_cache.rs:42:49
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn insert(&mut self, atom: Atom<'a>) -> Result<()> {
[INFO] [stdout]    |            ------                               ^^^^^^^^^^ expected `Result<(), Error>`, found `()`
[INFO] [stdout]    |            |
[INFO] [stdout]    |            implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `std::result::Result<(), line_cache::Error>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/view/line_cache.rs:45:47
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn remove(&mut self, index: usize) -> Result<()> {
[INFO] [stdout]    |            ------                             ^^^^^^^^^^ expected `Result<(), Error>`, found `()`
[INFO] [stdout]    |            |
[INFO] [stdout]    |            implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `std::result::Result<(), line_cache::Error>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `set_pane_active` found for struct `MainWindow` in the current scope
[INFO] [stdout]   --> src/main_window.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct MainWindow {
[INFO] [stdout]    | ----------------- method `set_pane_active` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 54 |         main_window.set_pane_active(main_window.pane.id());
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^ method not found in `MainWindow`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `pane` on type `MainWindow`
[INFO] [stdout]   --> src/main_window.rs:54:49
[INFO] [stdout]    |
[INFO] [stdout] 54 |         main_window.set_pane_active(main_window.pane.id());
[INFO] [stdout]    |                                                 ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `views`, `tab_bar`, `window`, `cell_size`, `cells`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/view/line_cache.rs:42:49
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn insert(&mut self, atom: Atom<'a>) -> Result<()> {
[INFO] [stdout]    |            ------                               ^^^^^^^^^^ expected `Result<(), Error>`, found `()`
[INFO] [stdout]    |            |
[INFO] [stdout]    |            implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `std::result::Result<(), line_cache::Error>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/view/line_cache.rs:45:47
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn remove(&mut self, index: usize) -> Result<()> {
[INFO] [stdout]    |            ------                             ^^^^^^^^^^ expected `Result<(), Error>`, found `()`
[INFO] [stdout]    |            |
[INFO] [stdout]    |            implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `std::result::Result<(), line_cache::Error>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `render_panes` found for struct `App` in the current scope
[INFO] [stdout]    --> src/main.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |         app.render_panes()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^ method not found in `App`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/editor.rs:75:1
[INFO] [stdout]     |
[INFO] [stdout]  75 | pub struct App {
[INFO] [stdout]     | -------------- method `render_panes` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `render_panes` found for struct `App` in the current scope
[INFO] [stdout]    --> src/main.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |         app.render_panes()?;
[INFO] [stdout]     |             ^^^^^^^^^^^^ method not found in `App`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/editor.rs:75:1
[INFO] [stdout]     |
[INFO] [stdout]  75 | pub struct App {
[INFO] [stdout]     | -------------- method `render_panes` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `render_window` found for struct `App` in the current scope
[INFO] [stdout]    --> src/main.rs:123:13
[INFO] [stdout]     |
[INFO] [stdout] 123 |         app.render_window();
[INFO] [stdout]     |             ^^^^^^^^^^^^^ method not found in `App`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/editor.rs:75:1
[INFO] [stdout]     |
[INFO] [stdout]  75 | pub struct App {
[INFO] [stdout]     | -------------- method `render_window` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `font::Rasterizer`
[INFO] [stdout]   --> src/main.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use font::Rasterizer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `render_window` found for struct `App` in the current scope
[INFO] [stdout]    --> src/main.rs:123:13
[INFO] [stdout]     |
[INFO] [stdout] 123 |         app.render_window();
[INFO] [stdout]     |             ^^^^^^^^^^^^^ method not found in `App`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/editor.rs:75:1
[INFO] [stdout]     |
[INFO] [stdout]  75 | pub struct App {
[INFO] [stdout]     | -------------- method `render_window` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `font::Rasterizer`
[INFO] [stdout]   --> src/main.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use font::Rasterizer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dpi`
[INFO] [stdout]    --> src/render/caches.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |         dpi: f32,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_dpi`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 194 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 225 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dpi`
[INFO] [stdout]    --> src/render/caches.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |         dpi: f32,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_dpi`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 194 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 239 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 194 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 254 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 194 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 268 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 194 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 283 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] 346 |                 gl::ActiveTexture(gl::TEXTURE0 + batch.texture_id);
[INFO] [stdout] 347 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 349 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 352 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 355 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 358 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 366 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 383 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 398 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] 399 |             gl::BindVertexArray(self.vao);
[INFO] [stdout] 400 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 398 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 413 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/render/render.rs:432:13
[INFO] [stdout]     |
[INFO] [stdout] 432 |         let mut rasterizer = font::FreeTypeRasterizer::new(dpi).map_err(|e| Error::FontError(e))?;
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 194 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 225 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 194 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 239 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 194 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 254 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 194 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 268 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 194 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 283 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] 346 |                 gl::ActiveTexture(gl::TEXTURE0 + batch.texture_id);
[INFO] [stdout] 347 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 349 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 352 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 355 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 358 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 366 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 345 |             unsafe {
[INFO] [stdout]     |             ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 383 |                 glCheck!();
[INFO] [stdout]     |                 ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ch`
[INFO] [stdout]    --> src/editor.rs:446:41
[INFO] [stdout]     |
[INFO] [stdout] 446 |     fn process_command_input(&mut self, ch: char) {}
[INFO] [stdout]     |                                         ^^ help: if this is intentional, prefix it with an underscore: `_ch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 398 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] 399 |             gl::BindVertexArray(self.vao);
[INFO] [stdout] 400 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/render/render.rs:27:23
[INFO] [stdout]     |
[INFO] [stdout]  27 |             let err = unsafe { gl::GetError() };
[INFO] [stdout]     |                       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 398 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 413 |             glCheck!();
[INFO] [stdout]     |             ---------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `glCheck` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ch`
[INFO] [stdout]   --> src/editor_core/mod.rs:79:67
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn delete(doc: DocID, start_index: usize, x: u32, y: u32, ch: char) -> Self {
[INFO] [stdout]    |                                                                   ^^ help: if this is intentional, prefix it with an underscore: `_ch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/render/render.rs:432:13
[INFO] [stdout]     |
[INFO] [stdout] 432 |         let mut rasterizer = font::FreeTypeRasterizer::new(dpi).map_err(|e| Error::FontError(e))?;
[INFO] [stdout]     |             ----^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `doc`
[INFO] [stdout]    --> src/editor_core/mod.rs:263:34
[INFO] [stdout]     |
[INFO] [stdout] 263 |     pub fn close_file(&mut self, doc: DocID) -> Result<()> {
[INFO] [stdout]     |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_doc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ch`
[INFO] [stdout]    --> src/editor.rs:446:41
[INFO] [stdout]     |
[INFO] [stdout] 446 |     fn process_command_input(&mut self, ch: char) {}
[INFO] [stdout]     |                                         ^^ help: if this is intentional, prefix it with an underscore: `_ch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ch`
[INFO] [stdout]   --> src/editor_core/mod.rs:79:67
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn delete(doc: DocID, start_index: usize, x: u32, y: u32, ch: char) -> Self {
[INFO] [stdout]    |                                                                   ^^ help: if this is intentional, prefix it with an underscore: `_ch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `userParam`
[INFO] [stdout]   --> src/main.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     userParam: *mut std::ffi::c_void,
[INFO] [stdout]    |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_userParam`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `doc`
[INFO] [stdout]    --> src/editor_core/mod.rs:263:34
[INFO] [stdout]     |
[INFO] [stdout] 263 |     pub fn close_file(&mut self, doc: DocID) -> Result<()> {
[INFO] [stdout]     |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_doc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0063, E0106, E0107, E0308, E0412, E0425, E0432, E0433, E0560...
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0063`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `userParam`
[INFO] [stdout]   --> src/main.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     userParam: *mut std::ffi::c_void,
[INFO] [stdout]    |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_userParam`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rem` (bin "rem") due to 34 previous errors; 44 warnings emitted
[INFO] [stdout] Some errors have detailed explanations: E0063, E0106, E0107, E0308, E0412, E0425, E0432, E0433, E0560...
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] For more information about an error, try `rustc --explain E0063`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rem` (bin "rem" test) due to 34 previous errors; 44 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "e73db716a34018dfeb589435af6766dab72ce29523ccfa08070300c5028c281f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e73db716a34018dfeb589435af6766dab72ce29523ccfa08070300c5028c281f", kill_on_drop: false }`
[INFO] [stdout] e73db716a34018dfeb589435af6766dab72ce29523ccfa08070300c5028c281f
