[INFO] fetching crate shi 0.1.5...
[INFO] building shi-0.1.5 against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] extracting crate shi 0.1.5 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate shi 0.1.5
[INFO] finished tweaking crates.io crate shi 0.1.5
[INFO] tweaked toml for crates.io crate shi 0.1.5 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate shi 0.1.5 on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate shi 0.1.5 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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded dirs-sys-next v0.1.1
[INFO] [stderr]   Downloaded rustyline-derive v0.4.0
[INFO] [stderr]   Downloaded thiserror-impl v1.0.24
[INFO] [stderr]   Downloaded output_vt100 v0.1.2
[INFO] [stderr]   Downloaded thiserror v1.0.24
[INFO] [stderr]   Downloaded ctor v0.1.16
[INFO] [stderr]   Downloaded rustyline v7.1.0
[INFO] [stderr]   Downloaded pretty_assertions v0.6.1
[INFO] [stderr]   Downloaded nix v0.19.1
[INFO] [stderr]   Downloaded syn v1.0.55
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3aedeb1d5e201d649f709e38cd39f4a098f837be0039c9db62ea0f32e98f0dd5
[INFO] running `Command { std: "docker" "start" "-a" "3aedeb1d5e201d649f709e38cd39f4a098f837be0039c9db62ea0f32e98f0dd5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3aedeb1d5e201d649f709e38cd39f4a098f837be0039c9db62ea0f32e98f0dd5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3aedeb1d5e201d649f709e38cd39f4a098f837be0039c9db62ea0f32e98f0dd5", kill_on_drop: false }`
[INFO] [stdout] 3aedeb1d5e201d649f709e38cd39f4a098f837be0039c9db62ea0f32e98f0dd5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] eb80388f42e2f4d4e8d5a8bb95c2ada9d2876a1d04d1d55a87356e47242e4427
[INFO] running `Command { std: "docker" "start" "-a" "eb80388f42e2f4d4e8d5a8bb95c2ada9d2876a1d04d1d55a87356e47242e4427", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.81
[INFO] [stderr]    Compiling syn v1.0.55
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]    Compiling unicode-segmentation v1.7.1
[INFO] [stderr]    Compiling quote v1.0.8
[INFO] [stderr]    Compiling dirs-sys-next v0.1.1
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling fs2 v0.4.3
[INFO] [stderr]    Compiling nix v0.19.1
[INFO] [stderr]    Compiling colored v2.0.0
[INFO] [stderr]    Compiling dirs-next v2.0.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.24
[INFO] [stderr]    Compiling rustyline-derive v0.4.0
[INFO] [stderr]    Compiling rustyline v7.1.0
[INFO] [stderr]    Compiling thiserror v1.0.24
[INFO] [stderr]    Compiling shi v0.1.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/command/help.rs:339:85
[INFO] [stdout]     |
[INFO] [stdout] 339 |                   command failed to parse: \'DNE\' is not a recognized command.\n\n\t \
[INFO] [stdout]     |  _____________________________________________________________________________________^
[INFO] [stdout] ...   |
[INFO] [stdout] 342 | |                     => expected one of \'leaf\' or \'foo\'.\n\n\
[INFO] [stdout]     | |____________________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/command/help.rs:342:64
[INFO] [stdout]     |
[INFO] [stdout] 342 |                       => expected one of \'leaf\' or \'foo\'.\n\n\
[INFO] [stdout]     |  ________________________________________________________________^
[INFO] [stdout] ...   |
[INFO] [stdout] 345 | |                 Run \'helptree\' for more info on the entire command tree.\n\
[INFO] [stdout]     | |________________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `phantom` is never read
[INFO] [stdout]   --> src/command/exit.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct ExitCommand<'a, S> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 12 |     phantom: &'a PhantomData<S>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExitCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `phantom` is never read
[INFO] [stdout]   --> src/command/help.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct HelpCommand<'a, S> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 17 |     // TODO: Not sure if we need this crap.
[INFO] [stdout] 18 |     phantom: &'a PhantomData<S>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HelpCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `phantom` is never read
[INFO] [stdout]   --> src/command/helptree.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct HelpTreeCommand<'a, S> {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 35 |     // TODO: Not sure if we need this crap.
[INFO] [stdout] 36 |     phantom: &'a PhantomData<S>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HelpTreeCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `phantom` is never read
[INFO] [stdout]   --> src/command/history.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct HistoryCommand<'a, S> {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 16 |     phantom: &'a PhantomData<S>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HistoryCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `quotation` is never read
[INFO] [stdout]   --> src/tokenizer.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | struct QuotePair {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 39 |     quotation: char,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QuotePair` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/command/parent.rs:59:29
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn get_sub_cmd_for_args(&self, args: &[String]) -> Result<&Command<S>> {
[INFO] [stdout]    |                             ^^^^^                             ^^^^^^^^^^^
[INFO] [stdout]    |                             |                                 ||
[INFO] [stdout]    |                             |                                 |the same lifetime is hidden here
[INFO] [stdout]    |                             the lifetime is elided here       the same lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn get_sub_cmd_for_args(&self, args: &[String]) -> Result<&Command<'_, S>> {
[INFO] [stdout]    |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/command/parent.rs:81:25
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn sub_commands(&self) -> &CommandSet<S> {
[INFO] [stdout]    |                         ^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                         |         ||
[INFO] [stdout]    |                         |         |the same lifetime is hidden here
[INFO] [stdout]    |                         |         the same lifetime is elided here
[INFO] [stdout]    |                         the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn sub_commands(&self) -> &CommandSet<'_, S> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/command_set.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn iter(&self) -> CommandSetIterator<S> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn iter(&self) -> CommandSetIterator<'_, S> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/shell.rs:50:36
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn new(prompt: &'a str) -> Shell<()> {
[INFO] [stdout]    |                         --         ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn new(prompt: &'a str) -> Shell<'a, ()> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/shell.rs:86:57
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn new_with_state(prompt: &'a str, state: S) -> Shell<S>
[INFO] [stdout]    |                                    --                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn new_with_state(prompt: &'a str, state: S) -> Shell<'a, S>
[INFO] [stdout]    |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.23s
[INFO] running `Command { std: "docker" "inspect" "eb80388f42e2f4d4e8d5a8bb95c2ada9d2876a1d04d1d55a87356e47242e4427", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eb80388f42e2f4d4e8d5a8bb95c2ada9d2876a1d04d1d55a87356e47242e4427", kill_on_drop: false }`
[INFO] [stdout] eb80388f42e2f4d4e8d5a8bb95c2ada9d2876a1d04d1d55a87356e47242e4427
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3823a3540f722bfbccaf50ae45afdc161002907bc01b6daa9ba8cf0fb4bff3ec
[INFO] running `Command { std: "docker" "start" "-a" "3823a3540f722bfbccaf50ae45afdc161002907bc01b6daa9ba8cf0fb4bff3ec", kill_on_drop: false }`
[INFO] [stderr]    Compiling difference v2.0.0
[INFO] [stderr]    Compiling anyhow v1.0.40
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/command/help.rs:339:85
[INFO] [stdout]     |
[INFO] [stdout] 339 |                   command failed to parse: \'DNE\' is not a recognized command.\n\n\t \
[INFO] [stdout]     |  _____________________________________________________________________________________^
[INFO] [stdout] ...   |
[INFO] [stdout] 342 | |                     => expected one of \'leaf\' or \'foo\'.\n\n\
[INFO] [stdout]     | |____________________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/command/help.rs:342:64
[INFO] [stdout]     |
[INFO] [stdout] 342 |                       => expected one of \'leaf\' or \'foo\'.\n\n\
[INFO] [stdout]     |  ________________________________________________________________^
[INFO] [stdout] ...   |
[INFO] [stdout] 345 | |                 Run \'helptree\' for more info on the entire command tree.\n\
[INFO] [stdout]     | |________________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `phantom` is never read
[INFO] [stdout]   --> src/command/exit.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct ExitCommand<'a, S> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 12 |     phantom: &'a PhantomData<S>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExitCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `phantom` is never read
[INFO] [stdout]   --> src/command/help.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct HelpCommand<'a, S> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 17 |     // TODO: Not sure if we need this crap.
[INFO] [stdout] 18 |     phantom: &'a PhantomData<S>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HelpCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `phantom` is never read
[INFO] [stdout]   --> src/command/helptree.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct HelpTreeCommand<'a, S> {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 35 |     // TODO: Not sure if we need this crap.
[INFO] [stdout] 36 |     phantom: &'a PhantomData<S>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HelpTreeCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `phantom` is never read
[INFO] [stdout]   --> src/command/history.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct HistoryCommand<'a, S> {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 16 |     phantom: &'a PhantomData<S>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HistoryCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `quotation` is never read
[INFO] [stdout]   --> src/tokenizer.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | struct QuotePair {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 39 |     quotation: char,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QuotePair` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/command/parent.rs:59:29
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn get_sub_cmd_for_args(&self, args: &[String]) -> Result<&Command<S>> {
[INFO] [stdout]    |                             ^^^^^                             ^^^^^^^^^^^
[INFO] [stdout]    |                             |                                 ||
[INFO] [stdout]    |                             |                                 |the same lifetime is hidden here
[INFO] [stdout]    |                             the lifetime is elided here       the same lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn get_sub_cmd_for_args(&self, args: &[String]) -> Result<&Command<'_, S>> {
[INFO] [stdout]    |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/command/parent.rs:81:25
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn sub_commands(&self) -> &CommandSet<S> {
[INFO] [stdout]    |                         ^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                         |         ||
[INFO] [stdout]    |                         |         |the same lifetime is hidden here
[INFO] [stdout]    |                         |         the same lifetime is elided here
[INFO] [stdout]    |                         the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn sub_commands(&self) -> &CommandSet<'_, S> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/command_set.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn iter(&self) -> CommandSetIterator<S> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn iter(&self) -> CommandSetIterator<'_, S> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/shell.rs:50:36
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn new(prompt: &'a str) -> Shell<()> {
[INFO] [stdout]    |                         --         ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn new(prompt: &'a str) -> Shell<'a, ()> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/shell.rs:86:57
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn new_with_state(prompt: &'a str, state: S) -> Shell<S>
[INFO] [stdout]    |                                    --                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn new_with_state(prompt: &'a str, state: S) -> Shell<'a, S>
[INFO] [stdout]    |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling pretty_assertions v0.6.1
[INFO] [stderr]    Compiling shi v0.1.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/command/help.rs:339:85
[INFO] [stdout]     |
[INFO] [stdout] 339 |                   command failed to parse: \'DNE\' is not a recognized command.\n\n\t \
[INFO] [stdout]     |  _____________________________________________________________________________________^
[INFO] [stdout] ...   |
[INFO] [stdout] 342 | |                     => expected one of \'leaf\' or \'foo\'.\n\n\
[INFO] [stdout]     | |____________________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple lines skipped by escaped newline
[INFO] [stdout]    --> src/command/help.rs:342:64
[INFO] [stdout]     |
[INFO] [stdout] 342 |                       => expected one of \'leaf\' or \'foo\'.\n\n\
[INFO] [stdout]     |  ________________________________________________________________^
[INFO] [stdout] ...   |
[INFO] [stdout] 345 | |                 Run \'helptree\' for more info on the entire command tree.\n\
[INFO] [stdout]     | |________________^ skipping everything up to and including this point
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/command/help.rs:179:19
[INFO] [stdout]     |
[INFO] [stdout] 179 |         #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/command/help.rs:184:19
[INFO] [stdout]     |
[INFO] [stdout] 184 |         #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/command_set.rs:158:19
[INFO] [stdout]     |
[INFO] [stdout] 158 |         #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/command_set.rs:163:19
[INFO] [stdout]     |
[INFO] [stdout] 163 |         #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/parser.rs:328:19
[INFO] [stdout]     |
[INFO] [stdout] 328 |         #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include`
[INFO] [stdout]    --> src/parser.rs:368:19
[INFO] [stdout]     |
[INFO] [stdout] 368 |         #[cfg(not(tarpaulin_include))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `phantom` is never read
[INFO] [stdout]   --> src/command/exit.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct ExitCommand<'a, S> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 12 |     phantom: &'a PhantomData<S>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExitCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `phantom` is never read
[INFO] [stdout]   --> src/command/help.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct HelpCommand<'a, S> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 17 |     // TODO: Not sure if we need this crap.
[INFO] [stdout] 18 |     phantom: &'a PhantomData<S>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HelpCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `phantom` is never read
[INFO] [stdout]   --> src/command/helptree.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct HelpTreeCommand<'a, S> {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 35 |     // TODO: Not sure if we need this crap.
[INFO] [stdout] 36 |     phantom: &'a PhantomData<S>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HelpTreeCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `phantom` is never read
[INFO] [stdout]   --> src/command/history.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct HistoryCommand<'a, S> {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 16 |     phantom: &'a PhantomData<S>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HistoryCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `quotation` is never read
[INFO] [stdout]   --> src/tokenizer.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | struct QuotePair {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 39 |     quotation: char,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QuotePair` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/command/parent.rs:59:29
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn get_sub_cmd_for_args(&self, args: &[String]) -> Result<&Command<S>> {
[INFO] [stdout]    |                             ^^^^^                             ^^^^^^^^^^^
[INFO] [stdout]    |                             |                                 ||
[INFO] [stdout]    |                             |                                 |the same lifetime is hidden here
[INFO] [stdout]    |                             the lifetime is elided here       the same lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn get_sub_cmd_for_args(&self, args: &[String]) -> Result<&Command<'_, S>> {
[INFO] [stdout]    |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/command/parent.rs:81:25
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn sub_commands(&self) -> &CommandSet<S> {
[INFO] [stdout]    |                         ^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                         |         ||
[INFO] [stdout]    |                         |         |the same lifetime is hidden here
[INFO] [stdout]    |                         |         the same lifetime is elided here
[INFO] [stdout]    |                         the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn sub_commands(&self) -> &CommandSet<'_, S> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/command_set.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn iter(&self) -> CommandSetIterator<S> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn iter(&self) -> CommandSetIterator<'_, S> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/parser.rs:301:22
[INFO] [stdout]     |
[INFO] [stdout] 301 |         fn new(name: &str) -> ParseTestCommand<S> {
[INFO] [stdout]     |                      ^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 301 |         fn new(name: &str) -> ParseTestCommand<'_, S> {
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/shell.rs:50:36
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn new(prompt: &'a str) -> Shell<()> {
[INFO] [stdout]    |                         --         ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn new(prompt: &'a str) -> Shell<'a, ()> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/shell.rs:86:57
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn new_with_state(prompt: &'a str, state: S) -> Shell<S>
[INFO] [stdout]    |                                    --                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn new_with_state(prompt: &'a str, state: S) -> Shell<'a, S>
[INFO] [stdout]    |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tokenizer.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn n(s: &str) -> Blob {
[INFO] [stdout]    |             ^^^^     ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |             |
[INFO] [stdout]    |             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn n(s: &str) -> Blob<'_> {
[INFO] [stdout]    |                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/tokenizer.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn q(s: &str) -> Blob {
[INFO] [stdout]    |             ^^^^     ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |             |
[INFO] [stdout]    |             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn q(s: &str) -> Blob<'_> {
[INFO] [stdout]    |                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 6.16s
[INFO] running `Command { std: "docker" "inspect" "3823a3540f722bfbccaf50ae45afdc161002907bc01b6daa9ba8cf0fb4bff3ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3823a3540f722bfbccaf50ae45afdc161002907bc01b6daa9ba8cf0fb4bff3ec", kill_on_drop: false }`
[INFO] [stdout] 3823a3540f722bfbccaf50ae45afdc161002907bc01b6daa9ba8cf0fb4bff3ec
