[INFO] cloning repository https://github.com/TerminalWitchcraft/marcos
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TerminalWitchcraft/marcos" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTerminalWitchcraft%2Fmarcos", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTerminalWitchcraft%2Fmarcos'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 856c6a41e22319d52752927e9423cb36db670a1a
[INFO] checking TerminalWitchcraft/marcos/856c6a41e22319d52752927e9423cb36db670a1a against master#dc375db7d8df0aa450e622c529147c95eee756f5 for pr-156749
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTerminalWitchcraft%2Fmarcos" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/TerminalWitchcraft/marcos
[INFO] finished tweaking git repo https://github.com/TerminalWitchcraft/marcos
[INFO] tweaked toml for git repo https://github.com/TerminalWitchcraft/marcos written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/TerminalWitchcraft/marcos on toolchain dc375db7d8df0aa450e622c529147c95eee756f5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dc375db7d8df0aa450e622c529147c95eee756f5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/TerminalWitchcraft/marcos 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" "+dc375db7d8df0aa450e622c529147c95eee756f5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded bytesize v1.0.1
[INFO] [stderr]   Downloaded uname v0.1.1
[INFO] [stderr]   Downloaded users v0.8.1
[INFO] [stderr]   Downloaded systemstat v0.1.5
[INFO] [stderr]   Downloaded enum-map v0.4.1
[INFO] [stderr]   Downloaded reexport-proc-macro v1.0.6
[INFO] [stderr]   Downloaded enumset v0.3.19
[INFO] [stderr]   Downloaded enumset_derive v0.3.2
[INFO] [stderr]   Downloaded hermit-abi v0.1.13
[INFO] [stderr]   Downloaded enum-map-derive v0.4.3
[INFO] [stderr]   Downloaded alphanumeric-sort v1.0.13
[INFO] [stderr]   Downloaded quote v1.0.6
[INFO] [stderr]   Downloaded array-macro v1.0.5
[INFO] [stderr]   Downloaded termion v1.5.5
[INFO] [stderr]   Downloaded signal-hook v0.1.15
[INFO] [stderr]   Downloaded proc-macro2 v1.0.17
[INFO] [stderr]   Downloaded backtrace v0.3.48
[INFO] [stderr]   Downloaded syn v1.0.27
[INFO] [stderr]   Downloaded object v0.19.0
[INFO] [stderr]   Downloaded addr2line v0.12.1
[INFO] [stderr]   Downloaded cursive v0.9.2
[INFO] [stderr]   Downloaded clap v2.33.2
[INFO] [stderr]   Downloaded fern v0.5.9
[INFO] [stderr]   Downloaded gimli v0.21.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 3d0a898dbccc7829ced4c9c789d9188119c9cbfefb68ecd4d7b7ad7f1b947c91
[INFO] running `Command { std: "docker" "start" "3d0a898dbccc7829ced4c9c789d9188119c9cbfefb68ecd4d7b7ad7f1b947c91", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "3d0a898dbccc7829ced4c9c789d9188119c9cbfefb68ecd4d7b7ad7f1b947c91" "/opt/rustwide/cargo-home/bin/cargo" "+dc375db7d8df0aa450e622c529147c95eee756f5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3d0a898dbccc7829ced4c9c789d9188119c9cbfefb68ecd4d7b7ad7f1b947c91", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "3d0a898dbccc7829ced4c9c789d9188119c9cbfefb68ecd4d7b7ad7f1b947c91" "/opt/rustwide/cargo-home/bin/cargo" "+dc375db7d8df0aa450e622c529147c95eee756f5" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.71
[INFO] [stderr]    Compiling proc-macro2 v1.0.17
[INFO] [stderr]    Compiling syn v1.0.27
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]    Compiling unicase v2.6.0
[INFO] [stderr]     Checking owning_ref v0.4.1
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling num-iter v0.1.40
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]    Compiling serde v1.0.110
[INFO] [stderr]     Checking crossbeam-utils v0.6.6
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking gimli v0.21.0
[INFO] [stderr]     Checking object v0.19.0
[INFO] [stderr]     Checking lock_api v0.1.5
[INFO] [stderr]     Checking numtoa v0.1.0
[INFO] [stderr]     Checking reexport-proc-macro v1.0.6
[INFO] [stderr]     Checking crossbeam-epoch v0.6.1
[INFO] [stderr]     Checking crossbeam-utils v0.5.0
[INFO] [stderr]     Checking rustc-demangle v0.1.16
[INFO] [stderr]     Checking array-macro v1.0.5
[INFO] [stderr]     Checking bytesize v1.0.1
[INFO] [stderr]     Checking unicode-segmentation v1.6.0
[INFO] [stderr]     Checking xi-unicode v0.1.0
[INFO] [stderr]     Checking alphanumeric-sort v1.0.13
[INFO] [stderr]    Compiling mime_guess v2.0.3
[INFO] [stderr]    Compiling quote v1.0.6
[INFO] [stderr]     Checking rand v0.5.6
[INFO] [stderr]     Checking time v0.1.43
[INFO] [stderr]     Checking signal-hook-registry v1.2.0
[INFO] [stderr]     Checking memchr v1.0.2
[INFO] [stderr]     Checking termion v1.5.5
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking users v0.8.1
[INFO] [stderr]     Checking uname v0.1.1
[INFO] [stderr]     Checking dirs v1.0.5
[INFO] [stderr]     Checking num-complex v0.2.4
[INFO] [stderr]     Checking clap v2.33.2
[INFO] [stderr]     Checking nom v3.2.1
[INFO] [stderr]     Checking signal-hook v0.1.15
[INFO] [stderr]     Checking chrono v0.4.11
[INFO] [stderr]     Checking parking_lot_core v0.3.1
[INFO] [stderr]     Checking num v0.2.1
[INFO] [stderr]     Checking parking_lot v0.6.4
[INFO] [stderr]     Checking systemstat v0.1.5
[INFO] [stderr]     Checking fern v0.5.9
[INFO] [stderr]     Checking crossbeam-channel v0.2.6
[INFO] [stderr]     Checking addr2line v0.12.1
[INFO] [stderr]    Compiling enumset_derive v0.3.2
[INFO] [stderr]     Checking backtrace v0.3.48
[INFO] [stderr]     Checking enumset v0.3.19
[INFO] [stderr]    Compiling synstructure v0.12.3
[INFO] [stderr]     Checking toml v0.4.10
[INFO] [stderr]    Compiling enum-map-derive v0.4.3
[INFO] [stderr]    Compiling serde_derive v1.0.110
[INFO] [stderr]     Checking enum-map v0.4.1
[INFO] [stderr]     Checking cursive v0.9.2
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking marcos v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]   --> src/lib.rs:71:1
[INFO] [stdout]    |
[INFO] [stdout] 71 | #[macro_use]
[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 `#[macro_use]` import
[INFO] [stdout]   --> src/lib.rs:71:1
[INFO] [stdout]    |
[INFO] [stdout] 71 | #[macro_use]
[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: `cursive::event::Key`
[INFO] [stdout]  --> src/config/keys.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cursive::event::Key;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cursive::event::Key`
[INFO] [stdout]  --> src/config/keys.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cursive::event::Key;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::*`
[INFO] [stdout]  --> src/config/keys.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::error::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::*`
[INFO] [stdout]  --> src/config/keys.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::error::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `mime_guess::guess_mime_type`: Use `from_path(path).first_or_octet_stream()` instead
[INFO] [stdout]   --> src/core/app.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | use mime_guess::guess_mime_type;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `mime_guess::guess_mime_type`: Use `from_path(path).first_or_octet_stream()` instead
[INFO] [stdout]    --> src/core/app.rs:455:30
[INFO] [stdout]     |
[INFO] [stdout] 455 |             let data: Mime = guess_mime_type(entry);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ui/multi_select.rs:58:26
[INFO] [stdout]    |
[INFO] [stdout] 58 |     on_submit: Option<Rc<Fn(&mut Cursive, &T)>>,
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 58 |     on_submit: Option<Rc<dyn Fn(&mut Cursive, &T)>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ui/multi_select.rs:60:26
[INFO] [stdout]    |
[INFO] [stdout] 60 |     on_select: Option<Rc<Fn(&mut Cursive, &T)>>,
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 60 |     on_select: Option<Rc<dyn Fn(&mut Cursive, &T)>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `mime_guess::guess_mime_type`: Use `from_path(path).first_or_octet_stream()` instead
[INFO] [stdout]   --> src/core/app.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | use mime_guess::guess_mime_type;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `mime_guess::guess_mime_type`: Use `from_path(path).first_or_octet_stream()` instead
[INFO] [stdout]    --> src/core/app.rs:455:30
[INFO] [stdout]     |
[INFO] [stdout] 455 |             let data: Mime = guess_mime_type(entry);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ui/multi_select.rs:58:26
[INFO] [stdout]    |
[INFO] [stdout] 58 |     on_submit: Option<Rc<Fn(&mut Cursive, &T)>>,
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 58 |     on_submit: Option<Rc<dyn Fn(&mut Cursive, &T)>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ui/multi_select.rs:60:26
[INFO] [stdout]    |
[INFO] [stdout] 60 |     on_select: Option<Rc<Fn(&mut Cursive, &T)>>,
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 60 |     on_select: Option<Rc<dyn Fn(&mut Cursive, &T)>>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:20:32
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn cause(&self) -> Option<&Fail> {
[INFO] [stdout]    |                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn cause(&self) -> Option<&dyn Fail> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:20:32
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn cause(&self) -> Option<&Fail> {
[INFO] [stdout]    |                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn cause(&self) -> Option<&dyn Fail> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/core/app.rs:188:41
[INFO] [stdout]     |
[INFO] [stdout] 188 | ...                   if let Some(mut tab) = v_clone2.borrow_mut().get_mut(&1) {
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/core/app.rs:188:41
[INFO] [stdout]     |
[INFO] [stdout] 188 | ...                   if let Some(mut tab) = v_clone2.borrow_mut().get_mut(&1) {
[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: multiple variants are never constructed
[INFO] [stdout]   --> src/config/keys.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | enum Modifier {
[INFO] [stdout]    |      -------- variants in this enum
[INFO] [stdout]  8 |     // Shift is not included, as Capital letter denotes shift key usage!
[INFO] [stdout]  9 |     Alt,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 10 |     Ctrl,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 11 |     Shift,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 12 |     AltCtrl,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 13 |     AltShift,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 14 |     CtrlShift,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 15 |     NoMod,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `takes_count`, `max_count`, `modifier`, `key`, and `operation` are never read
[INFO] [stdout]   --> src/config/keys.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct KeySequence {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 21 |     takes_count: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 22 |     max_count: Option<i8>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 23 |     modifier: Modifier,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 24 |     key: Vec<char>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 25 |     operation: fn(&mut Cursive),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `emit_sequence` is never used
[INFO] [stdout]   --> src/config/keys.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl KeySequence {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 29 |     /// Funtion to emit a vector of `Event`s.
[INFO] [stdout] 30 |     fn emit_sequence(self) -> (bool, Vec<Event>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `input_count` is never read
[INFO] [stdout]   --> src/ui/multi_select.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct MultiSelectView<T = String> {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 70 |     input_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_alphabete` is never used
[INFO] [stdout]    --> src/ui/multi_select.rs:785:4
[INFO] [stdout]     |
[INFO] [stdout] 785 | fn is_alphabete(event: &Event) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `KeyMaps` should have a snake case name
[INFO] [stdout]   --> src/config/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     KeyMaps: keys::KeyMaps,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to snake case: `key_maps`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Options` should have a snake case name
[INFO] [stdout]   --> src/config/mod.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Options: options::ConfigOptions,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/config/mod.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Config`
[INFO] [stdout] 11 | pub struct Config {
[INFO] [stdout]    |            ------ `Config` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/config/mod.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout] 11 | pub struct Config {
[INFO] [stdout]    |            ------ `Config` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/config/keys.rs:115:10
[INFO] [stdout]     |
[INFO] [stdout] 115 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]     |          ^--------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Serialize` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_KeyMaps`
[INFO] [stdout] 116 | pub struct KeyMaps {
[INFO] [stdout]     |            ------- `KeyMaps` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/config/keys.rs:115:21
[INFO] [stdout]     |
[INFO] [stdout] 115 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]     |                     ^----------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Deserialize` is not local
[INFO] [stdout]     |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_KeyMaps`
[INFO] [stdout] 116 | pub struct KeyMaps {
[INFO] [stdout]     |            ------- `KeyMaps` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/config/options.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Serialize` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Size`
[INFO] [stdout] 2 | enum Size {
[INFO] [stdout]   |      ---- `Size` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/config/options.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |                     ^----------
[INFO] [stdout]   |                     |
[INFO] [stdout]   |                     `Deserialize` is not local
[INFO] [stdout]   |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Size`
[INFO] [stdout] 2 | enum Size {
[INFO] [stdout]   |      ---- `Size` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/config/options.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Serialize` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_StatusPosition`
[INFO] [stdout] 8 | enum StatusPosition {
[INFO] [stdout]   |      -------------- `StatusPosition` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/config/options.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |                     ^----------
[INFO] [stdout]   |                     |
[INFO] [stdout]   |                     `Deserialize` is not local
[INFO] [stdout]   |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StatusPosition`
[INFO] [stdout] 8 | enum StatusPosition {
[INFO] [stdout]   |      -------------- `StatusPosition` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/config/options.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ConfigOptions`
[INFO] [stdout] 14 | pub struct ConfigOptions {
[INFO] [stdout]    |            ------------- `ConfigOptions` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/config/options.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ConfigOptions`
[INFO] [stdout] 14 | pub struct ConfigOptions {
[INFO] [stdout]    |            ------------- `ConfigOptions` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind`
[INFO] [stdout] 37 | pub enum ErrorKind {
[INFO] [stdout]    |          --------- `ErrorKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind`
[INFO] [stdout] 37 | pub enum ErrorKind {
[INFO] [stdout]    |          --------- `ErrorKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/config/keys.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | enum Modifier {
[INFO] [stdout]    |      -------- variants in this enum
[INFO] [stdout]  8 |     // Shift is not included, as Capital letter denotes shift key usage!
[INFO] [stdout]  9 |     Alt,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 10 |     Ctrl,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 11 |     Shift,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 12 |     AltCtrl,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 13 |     AltShift,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 14 |     CtrlShift,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 15 |     NoMod,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `takes_count`, `max_count`, `modifier`, `key`, and `operation` are never read
[INFO] [stdout]   --> src/config/keys.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct KeySequence {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 21 |     takes_count: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 22 |     max_count: Option<i8>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 23 |     modifier: Modifier,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 24 |     key: Vec<char>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 25 |     operation: fn(&mut Cursive),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `emit_sequence` is never used
[INFO] [stdout]   --> src/config/keys.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl KeySequence {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 29 |     /// Funtion to emit a vector of `Event`s.
[INFO] [stdout] 30 |     fn emit_sequence(self) -> (bool, Vec<Event>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `input_count` is never read
[INFO] [stdout]   --> src/ui/multi_select.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct MultiSelectView<T = String> {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 70 |     input_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_alphabete` is never used
[INFO] [stdout]    --> src/ui/multi_select.rs:785:4
[INFO] [stdout]     |
[INFO] [stdout] 785 | fn is_alphabete(event: &Event) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `KeyMaps` should have a snake case name
[INFO] [stdout]   --> src/config/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     KeyMaps: keys::KeyMaps,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to snake case: `key_maps`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Options` should have a snake case name
[INFO] [stdout]   --> src/config/mod.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Options: options::ConfigOptions,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/config/mod.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Config`
[INFO] [stdout] 11 | pub struct Config {
[INFO] [stdout]    |            ------ `Config` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/config/mod.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout] 11 | pub struct Config {
[INFO] [stdout]    |            ------ `Config` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/config/keys.rs:115:10
[INFO] [stdout]     |
[INFO] [stdout] 115 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]     |          ^--------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Serialize` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_KeyMaps`
[INFO] [stdout] 116 | pub struct KeyMaps {
[INFO] [stdout]     |            ------- `KeyMaps` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/config/keys.rs:115:21
[INFO] [stdout]     |
[INFO] [stdout] 115 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]     |                     ^----------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Deserialize` is not local
[INFO] [stdout]     |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_KeyMaps`
[INFO] [stdout] 116 | pub struct KeyMaps {
[INFO] [stdout]     |            ------- `KeyMaps` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/config/options.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Serialize` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Size`
[INFO] [stdout] 2 | enum Size {
[INFO] [stdout]   |      ---- `Size` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/config/options.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |                     ^----------
[INFO] [stdout]   |                     |
[INFO] [stdout]   |                     `Deserialize` is not local
[INFO] [stdout]   |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Size`
[INFO] [stdout] 2 | enum Size {
[INFO] [stdout]   |      ---- `Size` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/config/options.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Serialize` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_StatusPosition`
[INFO] [stdout] 8 | enum StatusPosition {
[INFO] [stdout]   |      -------------- `StatusPosition` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/config/options.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]   |                     ^----------
[INFO] [stdout]   |                     |
[INFO] [stdout]   |                     `Deserialize` is not local
[INFO] [stdout]   |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StatusPosition`
[INFO] [stdout] 8 | enum StatusPosition {
[INFO] [stdout]   |      -------------- `StatusPosition` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/config/options.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ConfigOptions`
[INFO] [stdout] 14 | pub struct ConfigOptions {
[INFO] [stdout]    |            ------------- `ConfigOptions` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/config/options.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ConfigOptions`
[INFO] [stdout] 14 | pub struct ConfigOptions {
[INFO] [stdout]    |            ------------- `ConfigOptions` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ErrorKind`
[INFO] [stdout] 37 | pub enum ErrorKind {
[INFO] [stdout]    |          --------- `ErrorKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/error.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ErrorKind`
[INFO] [stdout] 37 | pub enum ErrorKind {
[INFO] [stdout]    |          --------- `ErrorKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.20s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v3.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 6`
[INFO] running `Command { std: "docker" "inspect" "3d0a898dbccc7829ced4c9c789d9188119c9cbfefb68ecd4d7b7ad7f1b947c91", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3d0a898dbccc7829ced4c9c789d9188119c9cbfefb68ecd4d7b7ad7f1b947c91", kill_on_drop: false }`
[INFO] [stdout] 3d0a898dbccc7829ced4c9c789d9188119c9cbfefb68ecd4d7b7ad7f1b947c91
