[INFO] fetching crate deno_task_shell 0.33.3...
[INFO] checking deno_task_shell-0.33.3 against 52995a223f2919dd3e2e427231db90a257350ded for pr-129249-4
[INFO] extracting crate deno_task_shell 0.33.3 into /workspace/builds/worker-4-tc2/source
[INFO] removed /workspace/builds/worker-4-tc2/source/rust-toolchain.toml
[INFO] started tweaking crates.io crate deno_task_shell 0.33.3
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate deno_task_shell 0.33.3
[INFO] tweaked toml for crates.io crate deno_task_shell 0.33.3 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate deno_task_shell 0.33.3 on toolchain 52995a223f2919dd3e2e427231db90a257350ded
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate deno_task_shell 0.33.3 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" "+52995a223f2919dd3e2e427231db90a257350ded" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 38fef80add0870f86cd9bda229c22e95989803c0ecec938f1e9ac214e8d14b0c
[INFO] running `Command { std: "docker" "start" "38fef80add0870f86cd9bda229c22e95989803c0ecec938f1e9ac214e8d14b0c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "38fef80add0870f86cd9bda229c22e95989803c0ecec938f1e9ac214e8d14b0c", 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" "38fef80add0870f86cd9bda229c22e95989803c0ecec938f1e9ac214e8d14b0c" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "38fef80add0870f86cd9bda229c22e95989803c0ecec938f1e9ac214e8d14b0c", 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" "38fef80add0870f86cd9bda229c22e95989803c0ecec938f1e9ac214e8d14b0c" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]    Compiling icu_locid_transform_data v1.5.1
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]    Compiling icu_properties_data v1.5.1
[INFO] [stderr]    Compiling icu_normalizer_data v1.5.1
[INFO] [stderr]     Checking pin-project-lite v0.2.15
[INFO] [stderr]     Checking percent-encoding v2.3.1
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling syn v2.0.95
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling serde v1.0.217
[INFO] [stderr]     Checking bytes v1.9.0
[INFO] [stderr]     Checking path-dedot v3.1.1
[INFO] [stderr]     Checking which v8.0.0
[INFO] [stderr]     Checking glob v0.3.2
[INFO] [stderr]     Checking monch v0.6.0
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking tempfile v3.15.0
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking serde_json v1.0.134
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling deno_error_macro v0.7.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.9
[INFO] [stderr]    Compiling sys_traits_macros v0.1.0
[INFO] [stderr]    Compiling tokio-macros v2.4.0
[INFO] [stderr]     Checking sys_traits v0.1.17
[INFO] [stderr]     Checking tokio v1.42.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.7.5
[INFO] [stderr]     Checking zerovec v0.10.4
[INFO] [stderr]     Checking thiserror v2.0.9
[INFO] [stderr]     Checking tinystr v0.7.6
[INFO] [stderr]     Checking icu_collections v1.5.0
[INFO] [stderr]     Checking icu_locid v1.5.0
[INFO] [stderr]     Checking icu_provider v1.5.0
[INFO] [stderr]     Checking icu_locid_transform v1.5.0
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking icu_properties v1.5.1
[INFO] [stderr]     Checking deno_unsync v0.4.2
[INFO] [stderr]     Checking icu_normalizer v1.5.0
[INFO] [stderr]     Checking idna_adapter v1.2.0
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking deno_error v0.7.0
[INFO] [stderr]     Checking deno_path_util v0.6.0
[INFO] [stderr]     Checking deno_task_shell v0.33.3 (/opt/rustwide/workdir)
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cd.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     bail!("{}: Not a directory", path.to_string_lossy())
[INFO] [stdout]    |     ---------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout]    = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cd.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     bail!("too many arguments")
[INFO] [stdout]    |     --------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cd.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     bail!("expected at least 1 argument")
[INFO] [stdout]    |     ------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |   macro_rules! bail {
[INFO] [stdout] 51 |     ($($arg:tt)*) => {
[INFO] [stdout] 52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cp_mv.rs:61:7
[INFO] [stdout]    |
[INFO] [stdout] 61 | /       bail!(
[INFO] [stdout] 62 | |         "could not copy {} to {}: {}",
[INFO] [stdout] 63 | |         from.specified.to_string_lossy(),
[INFO] [stdout] 64 | |         to.specified.to_string_lossy(),
[INFO] [stdout] 65 | |         err
[INFO] [stdout] 66 | |       );
[INFO] [stdout]    | |_______- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cp_mv.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 79 |     bail!("source and destination are the same");
[INFO] [stdout]    |     -------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cp_mv.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |         bail!("destination was a file");
[INFO] [stdout]    |         ------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cp_mv.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 88 |         bail!("no support for copying to symlinks")
[INFO] [stdout]    |         ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cp_mv.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |         bail!("no support for copying from symlinks")
[INFO] [stdout]    |         --------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cp_mv.rs:95:7
[INFO] [stdout]    |
[INFO] [stdout] 95 |       bail!("source was a directory; maybe specify -r")
[INFO] [stdout]    |       ------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     bail!("missing file operand");
[INFO] [stdout]     |     ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 | /     bail!(
[INFO] [stdout] 177 | |       "missing destination file operand after '{}'",
[INFO] [stdout] 178 | |       paths[0].to_string_lossy()
[INFO] [stdout] 179 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 | /         bail!(
[INFO] [stdout] 188 | |           "cannot copy '{}': refusing to copy '..'",
[INFO] [stdout] 189 | |           from.to_string_lossy()
[INFO] [stdout] 190 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 | /         bail!(
[INFO] [stdout] 196 | |           "cannot copy '{}': the source has no final path component",
[INFO] [stdout] 197 | |           from.to_string_lossy()
[INFO] [stdout] 198 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:247:7
[INFO] [stdout]     |
[INFO] [stdout] 247 | /       bail!(
[INFO] [stdout] 248 | |         "could not move {} to {}: {}",
[INFO] [stdout] 249 | |         from.specified.to_string_lossy(),
[INFO] [stdout] 250 | |         to.specified.to_string_lossy(),
[INFO] [stdout] 251 | |         err
[INFO] [stdout] 252 | |       );
[INFO] [stdout]     | |_______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:276:5
[INFO] [stdout]     |
[INFO] [stdout] 276 |     bail!("missing file operand");
[INFO] [stdout]     |     ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:278:5
[INFO] [stdout]     |
[INFO] [stdout] 278 | /     bail!(
[INFO] [stdout] 279 | |       "missing destination file operand after '{}'",
[INFO] [stdout] 280 | |       paths[0].to_string_lossy()
[INFO] [stdout] 281 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 | /         bail!(
[INFO] [stdout] 289 | |           "cannot move '{}': refusing to move '.' or '..'",
[INFO] [stdout] 290 | |           from.to_string_lossy()
[INFO] [stdout] 291 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:296:9
[INFO] [stdout]     |
[INFO] [stdout] 296 | /         bail!(
[INFO] [stdout] 297 | |           "cannot move '{}': the source has no final path component",
[INFO] [stdout] 298 | |           from.to_string_lossy()
[INFO] [stdout] 299 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:325:7
[INFO] [stdout]     |
[INFO] [stdout] 325 | /       bail!(
[INFO] [stdout] 326 | |         "target '{}' is not a directory",
[INFO] [stdout] 327 | |         specified_destination.to_string_lossy()
[INFO] [stdout] 328 | |       );
[INFO] [stdout]     | |_______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/exit.rs:63:19
[INFO] [stdout]    |
[INFO] [stdout] 63 |         Err(_) => bail!("numeric argument required."),
[INFO] [stdout]    |                   ----------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/exit.rs:67:7
[INFO] [stdout]    |
[INFO] [stdout] 67 |       bail!("too many arguments")
[INFO] [stdout]    |       --------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/head.rs:240:9
[INFO] [stdout]     |
[INFO] [stdout] 240 |         bail!("only one file is supported for now");
[INFO] [stdout]     |         ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/head.rs:247:25
[INFO] [stdout]     |
[INFO] [stdout] 247 |               Err(_) => bail!("expected a numeric value following -n"),
[INFO] [stdout]     |                         ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/head.rs:250:13
[INFO] [stdout]     |
[INFO] [stdout] 250 |             bail!("expected a numeric value following -n")
[INFO] [stdout]     |             ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/head.rs:253:14
[INFO] [stdout]     |
[INFO] [stdout] 253 |         _ => bail!("expected a value following -n"),
[INFO] [stdout]     |              -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/head.rs:257:11
[INFO] [stdout]     |
[INFO] [stdout] 257 |           bail!("expected a value for --lines");
[INFO] [stdout]     |           ------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |   macro_rules! bail {
[INFO] [stdout] 51 |     ($($arg:tt)*) => {
[INFO] [stdout] 52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/mkdir.rs:59:7
[INFO] [stdout]    |
[INFO] [stdout] 59 | /       bail!(
[INFO] [stdout] 60 | |         "cannot create directory '{}': File exists",
[INFO] [stdout] 61 | |         specified_path.to_string_lossy()
[INFO] [stdout] 62 | |       );
[INFO] [stdout]    | |_______- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |   macro_rules! bail {
[INFO] [stdout] 51 |     ($($arg:tt)*) => {
[INFO] [stdout] 52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/mkdir.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | /         bail!(
[INFO] [stdout] 67 | |           "cannot create directory '{}': {}",
[INFO] [stdout] 68 | |           specified_path.to_string_lossy(),
[INFO] [stdout] 69 | |           err
[INFO] [stdout] 70 | |         );
[INFO] [stdout]    | |_________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |   macro_rules! bail {
[INFO] [stdout] 51 |     ($($arg:tt)*) => {
[INFO] [stdout] 52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/mkdir.rs:73:7
[INFO] [stdout]    |
[INFO] [stdout] 73 | /       bail!(
[INFO] [stdout] 74 | |         "cannot create directory '{}': {}",
[INFO] [stdout] 75 | |         specified_path.to_string_lossy(),
[INFO] [stdout] 76 | |         err
[INFO] [stdout] 77 | |       );
[INFO] [stdout]    | |_______- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/mkdir.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 |     bail!("missing operand");
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |   macro_rules! bail {
[INFO] [stdout] 51 |     ($($arg:tt)*) => {
[INFO] [stdout] 52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/rm.rs:71:7
[INFO] [stdout]    |
[INFO] [stdout] 71 | /       bail!(
[INFO] [stdout] 72 | |         "cannot remove '{}': {}",
[INFO] [stdout] 73 | |         specified_path.to_string_lossy(),
[INFO] [stdout] 74 | |         err
[INFO] [stdout] 75 | |       );
[INFO] [stdout]    | |_______- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/rm.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     bail!("missing operand");
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |   macro_rules! bail {
[INFO] [stdout] 51 |     ($($arg:tt)*) => {
[INFO] [stdout] 52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/sleep.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 91 | /             bail!(
[INFO] [stdout] 92 | |               "error parsing argument '{}' to number: {}",
[INFO] [stdout] 93 | |               arg.to_string_lossy(),
[INFO] [stdout] 94 | |               err
[INFO] [stdout] 95 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/sleep.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |     bail!("missing operand");
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/unset.rs:45:35
[INFO] [stdout]    |
[INFO] [stdout] 45 |     Some(flag) if flag == "-f" => bail!("unsupported flag: -f"),
[INFO] [stdout]    |                                   ----------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/xargs.rs:97:23
[INFO] [stdout]    |
[INFO] [stdout] 97 |               '\n' => bail!("{}", UNMATCHED_MESSAGE),
[INFO] [stdout]    |                       ------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:101:15
[INFO] [stdout]     |
[INFO] [stdout] 101 |               bail!("{}", UNMATCHED_MESSAGE)
[INFO] [stdout]     |               ------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:143:19
[INFO] [stdout]     |
[INFO] [stdout] 143 |           None => bail!("expected character following escape"),
[INFO] [stdout]     |                   -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:144:16
[INFO] [stdout]     |
[INFO] [stdout] 144 |           _ => bail!("unsupported/not implemented escape character"),
[INFO] [stdout]     |                ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |         bail!("expected a single byte char delimiter. Found: {}", arg);
[INFO] [stdout]     |         -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:154:7
[INFO] [stdout]     |
[INFO] [stdout] 154 |       bail!("expected non-empty delimiter");
[INFO] [stdout]     |       ------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:193:13
[INFO] [stdout]     |
[INFO] [stdout] 193 |             bail!("expected delimiter argument following -d to be UTF-8")
[INFO] [stdout]     |             ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:196:14
[INFO] [stdout]     |
[INFO] [stdout] 196 |         _ => bail!("expected delimiter argument following -d"),
[INFO] [stdout]     |              ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:210:5
[INFO] [stdout]     |
[INFO] [stdout] 210 |     bail!("cannot specify both null and delimiter flag")
[INFO] [stdout]     |     ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `deno_task_shell` (lib) due to 44 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cd.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     bail!("{}: Not a directory", path.to_string_lossy())
[INFO] [stdout]    |     ---------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout]    = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cd.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     bail!("too many arguments")
[INFO] [stdout]    |     --------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cd.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     bail!("expected at least 1 argument")
[INFO] [stdout]    |     ------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |   macro_rules! bail {
[INFO] [stdout] 51 |     ($($arg:tt)*) => {
[INFO] [stdout] 52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cp_mv.rs:61:7
[INFO] [stdout]    |
[INFO] [stdout] 61 | /       bail!(
[INFO] [stdout] 62 | |         "could not copy {} to {}: {}",
[INFO] [stdout] 63 | |         from.specified.to_string_lossy(),
[INFO] [stdout] 64 | |         to.specified.to_string_lossy(),
[INFO] [stdout] 65 | |         err
[INFO] [stdout] 66 | |       );
[INFO] [stdout]    | |_______- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cp_mv.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 79 |     bail!("source and destination are the same");
[INFO] [stdout]    |     -------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cp_mv.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |         bail!("destination was a file");
[INFO] [stdout]    |         ------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cp_mv.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 88 |         bail!("no support for copying to symlinks")
[INFO] [stdout]    |         ------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cp_mv.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |         bail!("no support for copying from symlinks")
[INFO] [stdout]    |         --------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/cp_mv.rs:95:7
[INFO] [stdout]    |
[INFO] [stdout] 95 |       bail!("source was a directory; maybe specify -r")
[INFO] [stdout]    |       ------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     bail!("missing file operand");
[INFO] [stdout]     |     ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 | /     bail!(
[INFO] [stdout] 177 | |       "missing destination file operand after '{}'",
[INFO] [stdout] 178 | |       paths[0].to_string_lossy()
[INFO] [stdout] 179 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 | /         bail!(
[INFO] [stdout] 188 | |           "cannot copy '{}': refusing to copy '..'",
[INFO] [stdout] 189 | |           from.to_string_lossy()
[INFO] [stdout] 190 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 | /         bail!(
[INFO] [stdout] 196 | |           "cannot copy '{}': the source has no final path component",
[INFO] [stdout] 197 | |           from.to_string_lossy()
[INFO] [stdout] 198 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:247:7
[INFO] [stdout]     |
[INFO] [stdout] 247 | /       bail!(
[INFO] [stdout] 248 | |         "could not move {} to {}: {}",
[INFO] [stdout] 249 | |         from.specified.to_string_lossy(),
[INFO] [stdout] 250 | |         to.specified.to_string_lossy(),
[INFO] [stdout] 251 | |         err
[INFO] [stdout] 252 | |       );
[INFO] [stdout]     | |_______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:276:5
[INFO] [stdout]     |
[INFO] [stdout] 276 |     bail!("missing file operand");
[INFO] [stdout]     |     ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:278:5
[INFO] [stdout]     |
[INFO] [stdout] 278 | /     bail!(
[INFO] [stdout] 279 | |       "missing destination file operand after '{}'",
[INFO] [stdout] 280 | |       paths[0].to_string_lossy()
[INFO] [stdout] 281 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 | /         bail!(
[INFO] [stdout] 289 | |           "cannot move '{}': refusing to move '.' or '..'",
[INFO] [stdout] 290 | |           from.to_string_lossy()
[INFO] [stdout] 291 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:296:9
[INFO] [stdout]     |
[INFO] [stdout] 296 | /         bail!(
[INFO] [stdout] 297 | |           "cannot move '{}': the source has no final path component",
[INFO] [stdout] 298 | |           from.to_string_lossy()
[INFO] [stdout] 299 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 |   macro_rules! bail {
[INFO] [stdout]  51 |     ($($arg:tt)*) => {
[INFO] [stdout]  52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/cp_mv.rs:325:7
[INFO] [stdout]     |
[INFO] [stdout] 325 | /       bail!(
[INFO] [stdout] 326 | |         "target '{}' is not a directory",
[INFO] [stdout] 327 | |         specified_destination.to_string_lossy()
[INFO] [stdout] 328 | |       );
[INFO] [stdout]     | |_______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/exit.rs:63:19
[INFO] [stdout]    |
[INFO] [stdout] 63 |         Err(_) => bail!("numeric argument required."),
[INFO] [stdout]    |                   ----------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/exit.rs:67:7
[INFO] [stdout]    |
[INFO] [stdout] 67 |       bail!("too many arguments")
[INFO] [stdout]    |       --------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/head.rs:240:9
[INFO] [stdout]     |
[INFO] [stdout] 240 |         bail!("only one file is supported for now");
[INFO] [stdout]     |         ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/head.rs:247:25
[INFO] [stdout]     |
[INFO] [stdout] 247 |               Err(_) => bail!("expected a numeric value following -n"),
[INFO] [stdout]     |                         ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/head.rs:250:13
[INFO] [stdout]     |
[INFO] [stdout] 250 |             bail!("expected a numeric value following -n")
[INFO] [stdout]     |             ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/head.rs:253:14
[INFO] [stdout]     |
[INFO] [stdout] 253 |         _ => bail!("expected a value following -n"),
[INFO] [stdout]     |              -------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/head.rs:257:11
[INFO] [stdout]     |
[INFO] [stdout] 257 |           bail!("expected a value for --lines");
[INFO] [stdout]     |           ------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |   macro_rules! bail {
[INFO] [stdout] 51 |     ($($arg:tt)*) => {
[INFO] [stdout] 52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/mkdir.rs:59:7
[INFO] [stdout]    |
[INFO] [stdout] 59 | /       bail!(
[INFO] [stdout] 60 | |         "cannot create directory '{}': File exists",
[INFO] [stdout] 61 | |         specified_path.to_string_lossy()
[INFO] [stdout] 62 | |       );
[INFO] [stdout]    | |_______- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |   macro_rules! bail {
[INFO] [stdout] 51 |     ($($arg:tt)*) => {
[INFO] [stdout] 52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/mkdir.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | /         bail!(
[INFO] [stdout] 67 | |           "cannot create directory '{}': {}",
[INFO] [stdout] 68 | |           specified_path.to_string_lossy(),
[INFO] [stdout] 69 | |           err
[INFO] [stdout] 70 | |         );
[INFO] [stdout]    | |_________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |   macro_rules! bail {
[INFO] [stdout] 51 |     ($($arg:tt)*) => {
[INFO] [stdout] 52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/mkdir.rs:73:7
[INFO] [stdout]    |
[INFO] [stdout] 73 | /       bail!(
[INFO] [stdout] 74 | |         "cannot create directory '{}': {}",
[INFO] [stdout] 75 | |         specified_path.to_string_lossy(),
[INFO] [stdout] 76 | |         err
[INFO] [stdout] 77 | |       );
[INFO] [stdout]    | |_______- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/mkdir.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 |     bail!("missing operand");
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |   macro_rules! bail {
[INFO] [stdout] 51 |     ($($arg:tt)*) => {
[INFO] [stdout] 52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/rm.rs:71:7
[INFO] [stdout]    |
[INFO] [stdout] 71 | /       bail!(
[INFO] [stdout] 72 | |         "cannot remove '{}': {}",
[INFO] [stdout] 73 | |         specified_path.to_string_lossy(),
[INFO] [stdout] 74 | |         err
[INFO] [stdout] 75 | |       );
[INFO] [stdout]    | |_______- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/rm.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     bail!("missing operand");
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |   macro_rules! bail {
[INFO] [stdout] 51 |     ($($arg:tt)*) => {
[INFO] [stdout] 52 |       return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/sleep.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 91 | /             bail!(
[INFO] [stdout] 92 | |               "error parsing argument '{}' to number: {}",
[INFO] [stdout] 93 | |               arg.to_string_lossy(),
[INFO] [stdout] 94 | |               err
[INFO] [stdout] 95 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/sleep.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |     bail!("missing operand");
[INFO] [stdout]     |     ------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/unset.rs:45:35
[INFO] [stdout]    |
[INFO] [stdout] 45 |     Some(flag) if flag == "-f" => bail!("unsupported flag: -f"),
[INFO] [stdout]    |                                   ----------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]   --> src/shell/commands/error.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | macro_rules! bail {
[INFO] [stdout] 51 |   ($($arg:tt)*) => {
[INFO] [stdout] 52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/shell/commands/xargs.rs:97:23
[INFO] [stdout]    |
[INFO] [stdout] 97 |               '\n' => bail!("{}", UNMATCHED_MESSAGE),
[INFO] [stdout]    |                       ------------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:101:15
[INFO] [stdout]     |
[INFO] [stdout] 101 |               bail!("{}", UNMATCHED_MESSAGE)
[INFO] [stdout]     |               ------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:143:19
[INFO] [stdout]     |
[INFO] [stdout] 143 |           None => bail!("expected character following escape"),
[INFO] [stdout]     |                   -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:144:16
[INFO] [stdout]     |
[INFO] [stdout] 144 |           _ => bail!("unsupported/not implemented escape character"),
[INFO] [stdout]     |                ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |         bail!("expected a single byte char delimiter. Found: {}", arg);
[INFO] [stdout]     |         -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:154:7
[INFO] [stdout]     |
[INFO] [stdout] 154 |       bail!("expected non-empty delimiter");
[INFO] [stdout]     |       ------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:193:13
[INFO] [stdout]     |
[INFO] [stdout] 193 |             bail!("expected delimiter argument following -d to be UTF-8")
[INFO] [stdout]     |             ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:196:14
[INFO] [stdout]     |
[INFO] [stdout] 196 |         _ => bail!("expected delimiter argument following -d"),
[INFO] [stdout]     |              ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ShellCommandError`
[INFO] [stdout]    --> src/shell/commands/error.rs:52:16
[INFO] [stdout]     |
[INFO] [stdout]  50 | macro_rules! bail {
[INFO] [stdout]  51 |   ($($arg:tt)*) => {
[INFO] [stdout]  52 |     return Err($crate::shell::commands::error::ShellCommandError(format!($($arg)*)).into())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/shell/commands/xargs.rs:210:5
[INFO] [stdout]     |
[INFO] [stdout] 210 |     bail!("cannot specify both null and delimiter flag")
[INFO] [stdout]     |     ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<ShellCommandError as Into<ShellCommandError>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `deno_task_shell` (lib test) due to 44 previous errors
[INFO] running `Command { std: "docker" "inspect" "38fef80add0870f86cd9bda229c22e95989803c0ecec938f1e9ac214e8d14b0c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "38fef80add0870f86cd9bda229c22e95989803c0ecec938f1e9ac214e8d14b0c", kill_on_drop: false }`
[INFO] [stdout] 38fef80add0870f86cd9bda229c22e95989803c0ecec938f1e9ac214e8d14b0c
