[INFO] fetching crate x-path 0.1.0-alpha.0...
[INFO] checking x-path-0.1.0-alpha.0 against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] extracting crate x-path 0.1.0-alpha.0 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate x-path 0.1.0-alpha.0
[INFO] finished tweaking crates.io crate x-path 0.1.0-alpha.0
[INFO] tweaked toml for crates.io crate x-path 0.1.0-alpha.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate x-path 0.1.0-alpha.0 on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 50 packages to highest compatible versions
[INFO] [stderr]       Adding windows-sys v0.45.0 (available: v0.61.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] bff47c69a1e0d14d7bbbd8f10197a99a591a53a548b830d87d10cdfa6ad71cb4
[INFO] running `Command { std: "docker" "start" "bff47c69a1e0d14d7bbbd8f10197a99a591a53a548b830d87d10cdfa6ad71cb4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bff47c69a1e0d14d7bbbd8f10197a99a591a53a548b830d87d10cdfa6ad71cb4", 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" "bff47c69a1e0d14d7bbbd8f10197a99a591a53a548b830d87d10cdfa6ad71cb4" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bff47c69a1e0d14d7bbbd8f10197a99a591a53a548b830d87d10cdfa6ad71cb4", 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" "bff47c69a1e0d14d7bbbd8f10197a99a591a53a548b830d87d10cdfa6ad71cb4" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling serde_json v1.0.154
[INFO] [stderr]    Compiling camino v1.2.6
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling syn v3.0.9
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]     Checking unicode-ident v1.0.27
[INFO] [stderr]     Checking winnow v0.5.40
[INFO] [stderr]    Compiling pulldown-cmark v0.9.6
[INFO] [stderr]     Checking getopts v0.2.24
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling fs-err v2.11.0
[INFO] [stderr]     Checking semver v1.0.28
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking string-sections v0.1.0
[INFO] [stderr]     Checking x-path v0.1.0-alpha.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: methods `is_slash`, `is_current_dir`, and `is_user_dir` are never used
[INFO] [stdout]  --> src/ext/str_ext.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) trait StrExt {
[INFO] [stdout]   |                  ------ methods in this trait
[INFO] [stdout] 6 |     fn is_slash(&self) -> bool;
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 7 |     fn is_current_dir(&self) -> bool;
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     fn is_user_dir(&self) -> bool;
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/abs_dir_path.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct AbsDirPath(PathInner);
[INFO] [stdout]   |            ---------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/abs_file_path.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct AbsFilePath(PathInner);
[INFO] [stdout]   |            ----------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/abs_path.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct AbsPath(PathInner);
[INFO] [stdout]   |            ------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/dir_path.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct DirPath(PathInner);
[INFO] [stdout]   |            ------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/file_path.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct FilePath(PathInner);
[INFO] [stdout]   |            -------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/rel_dir_path.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct RelDirPath(PathInner);
[INFO] [stdout]   |            ---------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/rel_file_path.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct RelFilePath(PathInner);
[INFO] [stdout]   |            ----------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/rel_path.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct RelPath(PathInner);
[INFO] [stdout]   |            ------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/inner/expand_envs.rs:29:56
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) fn expand_envs<'a>(path: &'a str) -> Result<Cow<str>> {
[INFO] [stdout]    |                                      --                ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) fn expand_envs<'a>(path: &'a str) -> Result<Cow<'a, str>> {
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/inner/path.rs:75:18
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn chars(&self) -> Chars {
[INFO] [stdout]    |                  ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn chars(&self) -> Chars<'_> {
[INFO] [stdout]    |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/inner/path.rs:79:21
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn segments(&self) -> Segments {
[INFO] [stdout]    |                     ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn segments(&self) -> Segments<'_> {
[INFO] [stdout]    |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/inner/win_drive.rs:37:35
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub(crate) fn windows_drive(path: &str) -> Result<(Drive, Cow<str>)> {
[INFO] [stdout]    |                                   ^^^^                    ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub(crate) fn windows_drive(path: &str) -> Result<(Drive, Cow<'_, str>)> {
[INFO] [stdout]    |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]  --> src/path/any_path.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub fn segments(&self) -> Segments {
[INFO] [stdout]   |                     ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]   |                     |
[INFO] [stdout]   |                     the lifetime is elided here
[INFO] [stdout]   |
[INFO] [stdout]   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub fn segments(&self) -> Segments<'_> {
[INFO] [stdout]   |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/any_path.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn chars(&self) -> Chars {
[INFO] [stdout]    |                  ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn chars(&self) -> Chars<'_> {
[INFO] [stdout]    |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking serde v1.0.229
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking cargo-platform v0.1.9
[INFO] [stderr]     Checking cargo_metadata v0.15.4
[INFO] [stderr]     Checking toml_edit v0.19.15
[INFO] [stderr]     Checking toml v0.7.8
[INFO] [stderr]     Checking markdown-includes v0.1.1
[INFO] [stdout] warning: trait `PathBufExt` is never used
[INFO] [stdout]  --> src/ext/path_ext.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) trait PathBufExt {
[INFO] [stdout]   |                  ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_slash`, `is_current_dir`, and `is_user_dir` are never used
[INFO] [stdout]  --> src/ext/str_ext.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) trait StrExt {
[INFO] [stdout]   |                  ------ methods in this trait
[INFO] [stdout] 6 |     fn is_slash(&self) -> bool;
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 7 |     fn is_current_dir(&self) -> bool;
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     fn is_user_dir(&self) -> bool;
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/abs_dir_path.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct AbsDirPath(PathInner);
[INFO] [stdout]   |            ---------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/abs_file_path.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct AbsFilePath(PathInner);
[INFO] [stdout]   |            ----------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/abs_path.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct AbsPath(PathInner);
[INFO] [stdout]   |            ------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/dir_path.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct DirPath(PathInner);
[INFO] [stdout]   |            ------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/file_path.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct FilePath(PathInner);
[INFO] [stdout]   |            -------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/rel_dir_path.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct RelDirPath(PathInner);
[INFO] [stdout]   |            ---------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/rel_file_path.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct RelFilePath(PathInner);
[INFO] [stdout]   |            ----------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/path/rel_path.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct RelPath(PathInner);
[INFO] [stdout]   |            ------- ^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/inner/expand_envs.rs:157:17
[INFO] [stdout]     |
[INFO] [stdout] 157 |     expand_envs(path.into()).unwrap().replace('\\', "/")
[INFO] [stdout]     |                 ^^^^^^^^^^^
[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: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 157 -     expand_envs(path.into()).unwrap().replace('\\', "/")
[INFO] [stdout] 157 +     expand_envs(path).unwrap().replace('\\', "/")
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 157 -     expand_envs(path.into()).unwrap().replace('\\', "/")
[INFO] [stdout] 157 +     expand_envs(<&str as Into<_>>::into(path)).unwrap().replace('\\', "/")
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/inner/expand_envs.rs:162:17
[INFO] [stdout]     |
[INFO] [stdout] 162 |     expand_envs(path.into())
[INFO] [stdout]     |                 ^^^^^^^^^^^
[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] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 162 -     expand_envs(path.into())
[INFO] [stdout] 162 +     expand_envs(path)
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 162 -     expand_envs(path.into())
[INFO] [stdout] 162 +     expand_envs(<&str as Into<_>>::into(path))
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/inner/expand_envs.rs:29:56
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) fn expand_envs<'a>(path: &'a str) -> Result<Cow<str>> {
[INFO] [stdout]    |                                      --                ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) fn expand_envs<'a>(path: &'a str) -> Result<Cow<'a, str>> {
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/inner/path.rs:75:18
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn chars(&self) -> Chars {
[INFO] [stdout]    |                  ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn chars(&self) -> Chars<'_> {
[INFO] [stdout]    |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/inner/path.rs:79:21
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn segments(&self) -> Segments {
[INFO] [stdout]    |                     ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn segments(&self) -> Segments<'_> {
[INFO] [stdout]    |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/inner/win_drive.rs:37:35
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub(crate) fn windows_drive(path: &str) -> Result<(Drive, Cow<str>)> {
[INFO] [stdout]    |                                   ^^^^                    ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub(crate) fn windows_drive(path: &str) -> Result<(Drive, Cow<'_, str>)> {
[INFO] [stdout]    |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]  --> src/path/any_path.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub fn segments(&self) -> Segments {
[INFO] [stdout]   |                     ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]   |                     |
[INFO] [stdout]   |                     the lifetime is elided here
[INFO] [stdout]   |
[INFO] [stdout]   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub fn segments(&self) -> Segments<'_> {
[INFO] [stdout]   |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/any_path.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn chars(&self) -> Chars {
[INFO] [stdout]    |                  ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn chars(&self) -> Chars<'_> {
[INFO] [stdout]    |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `x-path` (lib test) due to 2 previous errors; 16 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "bff47c69a1e0d14d7bbbd8f10197a99a591a53a548b830d87d10cdfa6ad71cb4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bff47c69a1e0d14d7bbbd8f10197a99a591a53a548b830d87d10cdfa6ad71cb4", kill_on_drop: false }`
[INFO] [stdout] bff47c69a1e0d14d7bbbd8f10197a99a591a53a548b830d87d10cdfa6ad71cb4
