[INFO] fetching crate app 0.6.5...
[INFO] testing app-0.6.5 against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151
[INFO] extracting crate app 0.6.5 into /workspace/builds/worker-4-tc1/source
[INFO] validating manifest of crates.io crate app 0.6.5 on toolchain 1871252fc8bb672d40787e67404e6eaae7059369
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate app 0.6.5
[INFO] finished tweaking crates.io crate app 0.6.5
[INFO] tweaked toml for crates.io crate app 0.6.5 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 25 packages to latest compatible versions
[INFO] [stderr]       Adding arrayvec v0.5.2 (latest: v0.7.4)
[INFO] [stderr]       Adding base64 v0.13.1 (latest: v0.22.1)
[INFO] [stderr]       Adding blake2b_simd v0.5.11 (latest: v1.0.2)
[INFO] [stderr]       Adding constant_time_eq v0.1.5 (latest: v0.3.0)
[INFO] [stderr]       Adding dirs v1.0.5 (latest: v5.0.1)
[INFO] [stderr]       Adding getrandom v0.1.16 (latest: v0.2.15)
[INFO] [stderr]       Adding lazy_static v0.2.11 (latest: v1.4.0)
[INFO] [stderr]       Adding quick-error v1.2.3 (latest: v2.0.1)
[INFO] [stderr]       Adding redox_syscall v0.1.57 (latest: v0.5.1)
[INFO] [stderr]       Adding redox_users v0.3.5 (latest: v0.4.5)
[INFO] [stderr]       Adding rust-argon2 v0.8.3 (latest: v2.1.0)
[INFO] [stderr]       Adding term v0.5.2 (latest: v0.7.0)
[INFO] [stderr]       Adding time v0.1.45 (latest: v0.3.36)
[INFO] [stderr]       Adding wasi v0.9.0+wasi-snapshot-preview1 (latest: v0.13.1+wasi-0.2.0)
[INFO] [stderr]       Adding wasi v0.10.0+wasi-snapshot-preview1 (latest: v0.13.1+wasi-0.2.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded stderr v0.8.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c566a53ffd08d8f1626f25e4e370b48f3bb3a89adbae371a6c48fcb444aa1821
[INFO] running `Command { std: "docker" "start" "-a" "c566a53ffd08d8f1626f25e4e370b48f3bb3a89adbae371a6c48fcb444aa1821", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c566a53ffd08d8f1626f25e4e370b48f3bb3a89adbae371a6c48fcb444aa1821", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c566a53ffd08d8f1626f25e4e370b48f3bb3a89adbae371a6c48fcb444aa1821", kill_on_drop: false }`
[INFO] [stdout] c566a53ffd08d8f1626f25e4e370b48f3bb3a89adbae371a6c48fcb444aa1821
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7ca3f154a335b9d5569ee631017faa7214aae37927fe790781ce8e93b32b7db8
[INFO] running `Command { std: "docker" "start" "-a" "7ca3f154a335b9d5569ee631017faa7214aae37927fe790781ce8e93b32b7db8", kill_on_drop: false }`
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling dirs v1.0.5
[INFO] [stderr]    Compiling term v0.5.2
[INFO] [stderr]    Compiling stderr v0.8.0
[INFO] [stderr]    Compiling app v0.6.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead.
[INFO] [stdout]    --> src/lib.rs:277:37
[INFO] [stdout]     |
[INFO] [stdout] 277 |         self.helper.home_dir = env::home_dir().map(|s| s.to_string_lossy().into_owned());
[INFO] [stdout]     |                                     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/ovp.rs:385:5
[INFO] [stdout]     |
[INFO] [stdout] 385 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/ovp.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 |     inner: Box<OptValueParse<'app> + 'app>,
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 8 |     inner: Box<dyn OptValueParse<'app> + 'app>,
[INFO] [stdout]   |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/avp.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 |     inner: Box<ArgsValueParse<'app> + 'app>,
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 8 |     inner: Box<dyn ArgsValueParse<'app> + 'app>,
[INFO] [stdout]   |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:12:27
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(value: Box<OptValueParse<'app> + 'app>) -> Self {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(value: Box<dyn OptValueParse<'app> + 'app>) -> Self {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ref(&self) -> &Box<OptValueParse<'app> + 'app> {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ref(&self) -> &Box<dyn OptValueParse<'app> + 'app> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:23:38
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_mut(&mut self) -> &mut Box<OptValueParse<'app> + 'app> {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_mut(&mut self) -> &mut Box<dyn OptValueParse<'app> + 'app> {
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:12:27
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(value: Box<ArgsValueParse<'app> + 'app>) -> Self {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(value: Box<dyn ArgsValueParse<'app> + 'app>) -> Self {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ref(&self) -> &Box<ArgsValueParse<'app> + 'app> {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ref(&self) -> &Box<dyn ArgsValueParse<'app> + 'app> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:23:38
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_mut(&mut self) -> &mut Box<ArgsValueParse<'app> + 'app> {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_mut(&mut self) -> &mut Box<dyn ArgsValueParse<'app> + 'app> {
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'app> AsRef<Box<OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'app> AsRef<Box<dyn OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'app> AsRef<Box<ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'app> AsRef<Box<dyn ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'app> AsMut<Box<OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'app> AsMut<Box<dyn OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'app> AsMut<Box<ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'app> AsMut<Box<dyn ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/lib.rs:129:36
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 .add_help(unsafe { &mut HELP })
[INFO] [stdout]     |                                    ^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 .add_help(unsafe { addr_of_mut!(HELP) })
[INFO] [stdout]     |                                    ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/lib.rs:490:42
[INFO] [stdout]     |
[INFO] [stdout] 490 |             Opt::new("version", unsafe { &mut VERSION })
[INFO] [stdout]     |                                          ^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 490 |             Opt::new("version", unsafe { addr_of_mut!(VERSION) })
[INFO] [stdout]     |                                          ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/lib.rs:503:29
[INFO] [stdout]     |
[INFO] [stdout] 503 |         c.add_help(unsafe { &mut HELP_SUBCMD })
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 503 |         c.add_help(unsafe { addr_of_mut!(HELP_SUBCMD) })
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `fix_style_left` is never used
[INFO] [stdout]  --> src/help.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait FixStyle {
[INFO] [stdout]   |       -------- method in this trait
[INFO] [stdout] 2 |     fn fix_style(&self) -> String;
[INFO] [stdout] 3 |     fn fix_style_left(&self) -> String;
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/help.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | /         dbln!(
[INFO] [stdout] 45 | |             "{:?}\n{:?}\n\n{:?},\n\n{:?}\n\n{:?}",
[INFO] [stdout] 46 | |             cmd_name,
[INFO] [stdout] 47 | |             self.cmd_infos,
[INFO] [stdout] ...  |
[INFO] [stdout] 50 | |             self.cmd_args
[INFO] [stdout] 51 | |         );
[INFO] [stdout]    | |_________^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:268:9
[INFO] [stdout]     |
[INFO] [stdout] 268 |         dbln!("parse_strings(): {:?}", args);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:413:9
[INFO] [stdout]     |
[INFO] [stdout] 413 |         dbln!("$CARGO_HOME: {:?}", cargo_home_bin);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:414:9
[INFO] [stdout]     |
[INFO] [stdout] 414 |         dbln!("$current_exe_dir: {:?}", current_exe_dir);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:453:17
[INFO] [stdout]     |
[INFO] [stdout] 453 |                 dbln!("{}", usage);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:564:13
[INFO] [stdout]     |
[INFO] [stdout] 564 |             dbln!("i+1/args_len: {}/{}: {:?}", i + 1, args.len(), &args[i..]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:645:9
[INFO] [stdout]     |
[INFO] [stdout] 645 | /         dbln!(
[INFO] [stdout] 646 | |             "Args_len/argstr_len/argstr_used_len/a_len: {}/{}/{}/{}",
[INFO] [stdout] 647 | |             args.len(),
[INFO] [stdout] 648 | |             argstr.len(),
[INFO] [stdout] 649 | |             argstr_used_len,
[INFO] [stdout] 650 | |             a_len
[INFO] [stdout] 651 | |         );
[INFO] [stdout]     | |_________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:653:13
[INFO] [stdout]     |
[INFO] [stdout] 653 |             dbln!("argstr_used_len == argstr.len() && a_len != 0");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:656:13
[INFO] [stdout]     |
[INFO] [stdout] 656 |             dbln!("argstr_used_len + a_len > argstr.len()");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:689:13
[INFO] [stdout]     |
[INFO] [stdout] 689 | /             dbln!(
[INFO] [stdout] 690 | |                 "Some(len): {} {:?} + {:?}",
[INFO] [stdout] 691 | |                 len,
[INFO] [stdout] 692 | |                 argstr.slice(0..len),
[INFO] [stdout] 693 | |                 argstr.slice(len..)
[INFO] [stdout] 694 | |             );
[INFO] [stdout]     | |_____________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:710:9
[INFO] [stdout]     |
[INFO] [stdout] 710 |         dbln!("len()>1:\nRaw: {:?}\nslice: {}", argstr, argstr);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 29 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.36s
[INFO] running `Command { std: "docker" "inspect" "7ca3f154a335b9d5569ee631017faa7214aae37927fe790781ce8e93b32b7db8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7ca3f154a335b9d5569ee631017faa7214aae37927fe790781ce8e93b32b7db8", kill_on_drop: false }`
[INFO] [stdout] 7ca3f154a335b9d5569ee631017faa7214aae37927fe790781ce8e93b32b7db8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] db8a9b95ed1809b511f16fc61af7eb90c6d2ee878b92669cff835e3696fd16fb
[INFO] running `Command { std: "docker" "start" "-a" "db8a9b95ed1809b511f16fc61af7eb90c6d2ee878b92669cff835e3696fd16fb", kill_on_drop: false }`
[INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead.
[INFO] [stdout]    --> src/lib.rs:277:37
[INFO] [stdout]     |
[INFO] [stdout] 277 |         self.helper.home_dir = env::home_dir().map(|s| s.to_string_lossy().into_owned());
[INFO] [stdout]     |                                     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/ovp.rs:385:5
[INFO] [stdout]     |
[INFO] [stdout] 385 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/ovp.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 |     inner: Box<OptValueParse<'app> + 'app>,
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 8 |     inner: Box<dyn OptValueParse<'app> + 'app>,
[INFO] [stdout]   |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/avp.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 |     inner: Box<ArgsValueParse<'app> + 'app>,
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 8 |     inner: Box<dyn ArgsValueParse<'app> + 'app>,
[INFO] [stdout]   |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:12:27
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(value: Box<OptValueParse<'app> + 'app>) -> Self {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(value: Box<dyn OptValueParse<'app> + 'app>) -> Self {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ref(&self) -> &Box<OptValueParse<'app> + 'app> {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ref(&self) -> &Box<dyn OptValueParse<'app> + 'app> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:23:38
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_mut(&mut self) -> &mut Box<OptValueParse<'app> + 'app> {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_mut(&mut self) -> &mut Box<dyn OptValueParse<'app> + 'app> {
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:12:27
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(value: Box<ArgsValueParse<'app> + 'app>) -> Self {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(value: Box<dyn ArgsValueParse<'app> + 'app>) -> Self {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ref(&self) -> &Box<ArgsValueParse<'app> + 'app> {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ref(&self) -> &Box<dyn ArgsValueParse<'app> + 'app> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:23:38
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_mut(&mut self) -> &mut Box<ArgsValueParse<'app> + 'app> {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_mut(&mut self) -> &mut Box<dyn ArgsValueParse<'app> + 'app> {
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'app> AsRef<Box<OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'app> AsRef<Box<dyn OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'app> AsRef<Box<ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'app> AsRef<Box<dyn ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'app> AsMut<Box<OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'app> AsMut<Box<dyn OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'app> AsMut<Box<ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'app> AsMut<Box<dyn ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/lib.rs:129:36
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 .add_help(unsafe { &mut HELP })
[INFO] [stdout]     |                                    ^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 .add_help(unsafe { addr_of_mut!(HELP) })
[INFO] [stdout]     |                                    ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/lib.rs:490:42
[INFO] [stdout]     |
[INFO] [stdout] 490 |             Opt::new("version", unsafe { &mut VERSION })
[INFO] [stdout]     |                                          ^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 490 |             Opt::new("version", unsafe { addr_of_mut!(VERSION) })
[INFO] [stdout]     |                                          ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling app v0.6.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/lib.rs:503:29
[INFO] [stdout]     |
[INFO] [stdout] 503 |         c.add_help(unsafe { &mut HELP_SUBCMD })
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 503 |         c.add_help(unsafe { addr_of_mut!(HELP_SUBCMD) })
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `fix_style_left` is never used
[INFO] [stdout]  --> src/help.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait FixStyle {
[INFO] [stdout]   |       -------- method in this trait
[INFO] [stdout] 2 |     fn fix_style(&self) -> String;
[INFO] [stdout] 3 |     fn fix_style_left(&self) -> String;
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/help.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | /         dbln!(
[INFO] [stdout] 45 | |             "{:?}\n{:?}\n\n{:?},\n\n{:?}\n\n{:?}",
[INFO] [stdout] 46 | |             cmd_name,
[INFO] [stdout] 47 | |             self.cmd_infos,
[INFO] [stdout] ...  |
[INFO] [stdout] 50 | |             self.cmd_args
[INFO] [stdout] 51 | |         );
[INFO] [stdout]    | |_________^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:268:9
[INFO] [stdout]     |
[INFO] [stdout] 268 |         dbln!("parse_strings(): {:?}", args);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:413:9
[INFO] [stdout]     |
[INFO] [stdout] 413 |         dbln!("$CARGO_HOME: {:?}", cargo_home_bin);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:414:9
[INFO] [stdout]     |
[INFO] [stdout] 414 |         dbln!("$current_exe_dir: {:?}", current_exe_dir);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:453:17
[INFO] [stdout]     |
[INFO] [stdout] 453 |                 dbln!("{}", usage);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:564:13
[INFO] [stdout]     |
[INFO] [stdout] 564 |             dbln!("i+1/args_len: {}/{}: {:?}", i + 1, args.len(), &args[i..]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:645:9
[INFO] [stdout]     |
[INFO] [stdout] 645 | /         dbln!(
[INFO] [stdout] 646 | |             "Args_len/argstr_len/argstr_used_len/a_len: {}/{}/{}/{}",
[INFO] [stdout] 647 | |             args.len(),
[INFO] [stdout] 648 | |             argstr.len(),
[INFO] [stdout] 649 | |             argstr_used_len,
[INFO] [stdout] 650 | |             a_len
[INFO] [stdout] 651 | |         );
[INFO] [stdout]     | |_________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:653:13
[INFO] [stdout]     |
[INFO] [stdout] 653 |             dbln!("argstr_used_len == argstr.len() && a_len != 0");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:656:13
[INFO] [stdout]     |
[INFO] [stdout] 656 |             dbln!("argstr_used_len + a_len > argstr.len()");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:689:13
[INFO] [stdout]     |
[INFO] [stdout] 689 | /             dbln!(
[INFO] [stdout] 690 | |                 "Some(len): {} {:?} + {:?}",
[INFO] [stdout] 691 | |                 len,
[INFO] [stdout] 692 | |                 argstr.slice(0..len),
[INFO] [stdout] 693 | |                 argstr.slice(len..)
[INFO] [stdout] 694 | |             );
[INFO] [stdout]     | |_____________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:710:9
[INFO] [stdout]     |
[INFO] [stdout] 710 |         dbln!("len()>1:\nRaw: {:?}\nslice: {}", argstr, argstr);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 29 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> tests/test.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 169 |     dbln!("msg_args: {:?}", args);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> tests/test.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     dbln!("rest: {:?}\t\trest_parse: {:?}", rest, rest_parse);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> tests/test.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     dbln!("fht2p_value: {:?}", value);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> tests/test.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     dbln!("fht2p_parse: {:?}", fht2p);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> tests/test.rs:173:5
[INFO] [stdout]     |
[INFO] [stdout] 173 |     dbln!();
[INFO] [stdout]     |     ^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead.
[INFO] [stdout]    --> src/lib.rs:277:37
[INFO] [stdout]     |
[INFO] [stdout] 277 |         self.helper.home_dir = env::home_dir().map(|s| s.to_string_lossy().into_owned());
[INFO] [stdout]     |                                     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` is ignored on function prototypes
[INFO] [stdout]    --> src/ovp.rs:385:5
[INFO] [stdout]     |
[INFO] [stdout] 385 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/ovp.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 |     inner: Box<OptValueParse<'app> + 'app>,
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 8 |     inner: Box<dyn OptValueParse<'app> + 'app>,
[INFO] [stdout]   |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/avp.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 |     inner: Box<ArgsValueParse<'app> + 'app>,
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 8 |     inner: Box<dyn ArgsValueParse<'app> + 'app>,
[INFO] [stdout]   |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:12:27
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(value: Box<OptValueParse<'app> + 'app>) -> Self {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(value: Box<dyn OptValueParse<'app> + 'app>) -> Self {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ref(&self) -> &Box<OptValueParse<'app> + 'app> {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ref(&self) -> &Box<dyn OptValueParse<'app> + 'app> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:23:38
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_mut(&mut self) -> &mut Box<OptValueParse<'app> + 'app> {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_mut(&mut self) -> &mut Box<dyn OptValueParse<'app> + 'app> {
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:12:27
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(value: Box<ArgsValueParse<'app> + 'app>) -> Self {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new(value: Box<dyn ArgsValueParse<'app> + 'app>) -> Self {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ref(&self) -> &Box<ArgsValueParse<'app> + 'app> {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ref(&self) -> &Box<dyn ArgsValueParse<'app> + 'app> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:23:38
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_mut(&mut self) -> &mut Box<ArgsValueParse<'app> + 'app> {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_mut(&mut self) -> &mut Box<dyn ArgsValueParse<'app> + 'app> {
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'app> AsRef<Box<OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'app> AsRef<Box<dyn OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'app> AsRef<Box<ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'app> AsRef<Box<dyn ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ovp.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'app> AsMut<Box<OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'app> AsMut<Box<dyn OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/avp.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'app> AsMut<Box<ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'app> AsMut<Box<dyn ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/lib.rs:129:36
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 .add_help(unsafe { &mut HELP })
[INFO] [stdout]     |                                    ^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 .add_help(unsafe { addr_of_mut!(HELP) })
[INFO] [stdout]     |                                    ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/lib.rs:490:42
[INFO] [stdout]     |
[INFO] [stdout] 490 |             Opt::new("version", unsafe { &mut VERSION })
[INFO] [stdout]     |                                          ^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 490 |             Opt::new("version", unsafe { addr_of_mut!(VERSION) })
[INFO] [stdout]     |                                          ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/lib.rs:503:29
[INFO] [stdout]     |
[INFO] [stdout] 503 |         c.add_help(unsafe { &mut HELP_SUBCMD })
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 503 |         c.add_help(unsafe { addr_of_mut!(HELP_SUBCMD) })
[INFO] [stdout]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `fix_style_left` is never used
[INFO] [stdout]  --> src/help.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait FixStyle {
[INFO] [stdout]   |       -------- method in this trait
[INFO] [stdout] 2 |     fn fix_style(&self) -> String;
[INFO] [stdout] 3 |     fn fix_style_left(&self) -> String;
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/help.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | /         dbln!(
[INFO] [stdout] 45 | |             "{:?}\n{:?}\n\n{:?},\n\n{:?}\n\n{:?}",
[INFO] [stdout] 46 | |             cmd_name,
[INFO] [stdout] 47 | |             self.cmd_infos,
[INFO] [stdout] ...  |
[INFO] [stdout] 50 | |             self.cmd_args
[INFO] [stdout] 51 | |         );
[INFO] [stdout]    | |_________^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:268:9
[INFO] [stdout]     |
[INFO] [stdout] 268 |         dbln!("parse_strings(): {:?}", args);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:413:9
[INFO] [stdout]     |
[INFO] [stdout] 413 |         dbln!("$CARGO_HOME: {:?}", cargo_home_bin);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:414:9
[INFO] [stdout]     |
[INFO] [stdout] 414 |         dbln!("$current_exe_dir: {:?}", current_exe_dir);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:453:17
[INFO] [stdout]     |
[INFO] [stdout] 453 |                 dbln!("{}", usage);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:564:13
[INFO] [stdout]     |
[INFO] [stdout] 564 |             dbln!("i+1/args_len: {}/{}: {:?}", i + 1, args.len(), &args[i..]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:645:9
[INFO] [stdout]     |
[INFO] [stdout] 645 | /         dbln!(
[INFO] [stdout] 646 | |             "Args_len/argstr_len/argstr_used_len/a_len: {}/{}/{}/{}",
[INFO] [stdout] 647 | |             args.len(),
[INFO] [stdout] 648 | |             argstr.len(),
[INFO] [stdout] 649 | |             argstr_used_len,
[INFO] [stdout] 650 | |             a_len
[INFO] [stdout] 651 | |         );
[INFO] [stdout]     | |_________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:653:13
[INFO] [stdout]     |
[INFO] [stdout] 653 |             dbln!("argstr_used_len == argstr.len() && a_len != 0");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:656:13
[INFO] [stdout]     |
[INFO] [stdout] 656 |             dbln!("argstr_used_len + a_len > argstr.len()");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:689:13
[INFO] [stdout]     |
[INFO] [stdout] 689 | /             dbln!(
[INFO] [stdout] 690 | |                 "Some(len): {} {:?} + {:?}",
[INFO] [stdout] 691 | |                 len,
[INFO] [stdout] 692 | |                 argstr.slice(0..len),
[INFO] [stdout] 693 | |                 argstr.slice(len..)
[INFO] [stdout] 694 | |             );
[INFO] [stdout]     | |_____________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/lib.rs:710:9
[INFO] [stdout]     |
[INFO] [stdout] 710 |         dbln!("len()>1:\nRaw: {:?}\nslice: {}", argstr, argstr);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 29 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.02s
[INFO] running `Command { std: "docker" "inspect" "db8a9b95ed1809b511f16fc61af7eb90c6d2ee878b92669cff835e3696fd16fb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "db8a9b95ed1809b511f16fc61af7eb90c6d2ee878b92669cff835e3696fd16fb", kill_on_drop: false }`
[INFO] [stdout] db8a9b95ed1809b511f16fc61af7eb90c6d2ee878b92669cff835e3696fd16fb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 7caf930841fdf2f2f296c204b1fe0625b3b34ba203a15f4a4426999d4997a7ab
[INFO] running `Command { std: "docker" "start" "-a" "7caf930841fdf2f2f296c204b1fe0625b3b34ba203a15f4a4426999d4997a7ab", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead.
[INFO] [stderr]    --> src/lib.rs:277:37
[INFO] [stderr]     |
[INFO] [stderr] 277 |         self.helper.home_dir = env::home_dir().map(|s| s.to_string_lossy().into_owned());
[INFO] [stderr]     |                                     ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` is ignored on function prototypes
[INFO] [stderr]    --> src/ovp.rs:385:5
[INFO] [stderr]     |
[INFO] [stderr] 385 |     #[inline]
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_attributes)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/ovp.rs:8:16
[INFO] [stderr]   |
[INFO] [stderr] 8 |     inner: Box<OptValueParse<'app> + 'app>,
[INFO] [stderr]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]   |
[INFO] [stderr] 8 |     inner: Box<dyn OptValueParse<'app> + 'app>,
[INFO] [stderr]   |                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/avp.rs:8:16
[INFO] [stderr]   |
[INFO] [stderr] 8 |     inner: Box<ArgsValueParse<'app> + 'app>,
[INFO] [stderr]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]   |
[INFO] [stderr] 8 |     inner: Box<dyn ArgsValueParse<'app> + 'app>,
[INFO] [stderr]   |                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ovp.rs:12:27
[INFO] [stderr]    |
[INFO] [stderr] 12 |     pub fn new(value: Box<OptValueParse<'app> + 'app>) -> Self {
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 12 |     pub fn new(value: Box<dyn OptValueParse<'app> + 'app>) -> Self {
[INFO] [stderr]    |                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ovp.rs:18:30
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fn as_ref(&self) -> &Box<OptValueParse<'app> + 'app> {
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fn as_ref(&self) -> &Box<dyn OptValueParse<'app> + 'app> {
[INFO] [stderr]    |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ovp.rs:23:38
[INFO] [stderr]    |
[INFO] [stderr] 23 |     fn as_mut(&mut self) -> &mut Box<OptValueParse<'app> + 'app> {
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 23 |     fn as_mut(&mut self) -> &mut Box<dyn OptValueParse<'app> + 'app> {
[INFO] [stderr]    |                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/avp.rs:12:27
[INFO] [stderr]    |
[INFO] [stderr] 12 |     pub fn new(value: Box<ArgsValueParse<'app> + 'app>) -> Self {
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 12 |     pub fn new(value: Box<dyn ArgsValueParse<'app> + 'app>) -> Self {
[INFO] [stderr]    |                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/avp.rs:18:30
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fn as_ref(&self) -> &Box<ArgsValueParse<'app> + 'app> {
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fn as_ref(&self) -> &Box<dyn ArgsValueParse<'app> + 'app> {
[INFO] [stderr]    |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/avp.rs:23:38
[INFO] [stderr]    |
[INFO] [stderr] 23 |     fn as_mut(&mut self) -> &mut Box<ArgsValueParse<'app> + 'app> {
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 23 |     fn as_mut(&mut self) -> &mut Box<dyn ArgsValueParse<'app> + 'app> {
[INFO] [stderr]    |                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ovp.rs:17:22
[INFO] [stderr]    |
[INFO] [stderr] 17 | impl<'app> AsRef<Box<OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stderr]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 17 | impl<'app> AsRef<Box<dyn OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stderr]    |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/avp.rs:17:22
[INFO] [stderr]    |
[INFO] [stderr] 17 | impl<'app> AsRef<Box<ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stderr]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 17 | impl<'app> AsRef<Box<dyn ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stderr]    |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ovp.rs:22:22
[INFO] [stderr]    |
[INFO] [stderr] 22 | impl<'app> AsMut<Box<OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stderr]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 22 | impl<'app> AsMut<Box<dyn OptValueParse<'app> + 'app>> for OptValue<'app> {
[INFO] [stderr]    |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/avp.rs:22:22
[INFO] [stderr]    |
[INFO] [stderr] 22 | impl<'app> AsMut<Box<ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stderr]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 22 | impl<'app> AsMut<Box<dyn ArgsValueParse<'app> + 'app>> for ArgsValue<'app> {
[INFO] [stderr]    |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> src/lib.rs:129:36
[INFO] [stderr]     |
[INFO] [stderr] 129 |                 .add_help(unsafe { &mut HELP })
[INFO] [stderr]     |                                    ^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 129 |                 .add_help(unsafe { addr_of_mut!(HELP) })
[INFO] [stderr]     |                                    ~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> src/lib.rs:490:42
[INFO] [stderr]     |
[INFO] [stderr] 490 |             Opt::new("version", unsafe { &mut VERSION })
[INFO] [stderr]     |                                          ^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 490 |             Opt::new("version", unsafe { addr_of_mut!(VERSION) })
[INFO] [stderr]     |                                          ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stderr]    --> src/lib.rs:503:29
[INFO] [stderr]     |
[INFO] [stderr] 503 |         c.add_help(unsafe { &mut HELP_SUBCMD })
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stderr]     = note: this will be a hard error in the 2024 edition
[INFO] [stderr]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 503 |         c.add_help(unsafe { addr_of_mut!(HELP_SUBCMD) })
[INFO] [stderr]     |                             ~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: method `fix_style_left` is never used
[INFO] [stderr]  --> src/help.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | trait FixStyle {
[INFO] [stderr]   |       -------- method in this trait
[INFO] [stderr] 2 |     fn fix_style(&self) -> String;
[INFO] [stderr] 3 |     fn fix_style_left(&self) -> String;
[INFO] [stderr]   |        ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]   --> src/help.rs:44:9
[INFO] [stderr]    |
[INFO] [stderr] 44 | /         dbln!(
[INFO] [stderr] 45 | |             "{:?}\n{:?}\n\n{:?},\n\n{:?}\n\n{:?}",
[INFO] [stderr] 46 | |             cmd_name,
[INFO] [stderr] 47 | |             self.cmd_infos,
[INFO] [stderr] ...  |
[INFO] [stderr] 50 | |             self.cmd_args
[INFO] [stderr] 51 | |         );
[INFO] [stderr]    | |_________^ the borrow produces a value
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]    = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/lib.rs:268:9
[INFO] [stderr]     |
[INFO] [stderr] 268 |         dbln!("parse_strings(): {:?}", args);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/lib.rs:413:9
[INFO] [stderr]     |
[INFO] [stderr] 413 |         dbln!("$CARGO_HOME: {:?}", cargo_home_bin);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/lib.rs:414:9
[INFO] [stderr]     |
[INFO] [stderr] 414 |         dbln!("$current_exe_dir: {:?}", current_exe_dir);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/lib.rs:453:17
[INFO] [stderr]     |
[INFO] [stderr] 453 |                 dbln!("{}", usage);
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/lib.rs:564:13
[INFO] [stderr]     |
[INFO] [stderr] 564 |             dbln!("i+1/args_len: {}/{}: {:?}", i + 1, args.len(), &args[i..]);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/lib.rs:645:9
[INFO] [stderr]     |
[INFO] [stderr] 645 | /         dbln!(
[INFO] [stderr] 646 | |             "Args_len/argstr_len/argstr_used_len/a_len: {}/{}/{}/{}",
[INFO] [stderr] 647 | |             args.len(),
[INFO] [stderr] 648 | |             argstr.len(),
[INFO] [stderr] 649 | |             argstr_used_len,
[INFO] [stderr] 650 | |             a_len
[INFO] [stderr] 651 | |         );
[INFO] [stderr]     | |_________^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/lib.rs:653:13
[INFO] [stderr]     |
[INFO] [stderr] 653 |             dbln!("argstr_used_len == argstr.len() && a_len != 0");
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/lib.rs:656:13
[INFO] [stderr]     |
[INFO] [stderr] 656 |             dbln!("argstr_used_len + a_len > argstr.len()");
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/lib.rs:689:13
[INFO] [stderr]     |
[INFO] [stderr] 689 | /             dbln!(
[INFO] [stderr] 690 | |                 "Some(len): {} {:?} + {:?}",
[INFO] [stderr] 691 | |                 len,
[INFO] [stderr] 692 | |                 argstr.slice(0..len),
[INFO] [stderr] 693 | |                 argstr.slice(len..)
[INFO] [stderr] 694 | |             );
[INFO] [stderr]     | |_____________^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/lib.rs:710:9
[INFO] [stderr]     |
[INFO] [stderr] 710 |         dbln!("len()>1:\nRaw: {:?}\nslice: {}", argstr, argstr);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `app` (lib) generated 29 warnings (run `cargo fix --lib -p app` to apply 12 suggestions)
[INFO] [stderr] warning: `app` (lib test) generated 29 warnings (29 duplicates)
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> tests/test.rs:169:5
[INFO] [stderr]     |
[INFO] [stderr] 169 |     dbln!("msg_args: {:?}", args);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> tests/test.rs:170:5
[INFO] [stderr]     |
[INFO] [stderr] 170 |     dbln!("rest: {:?}\t\trest_parse: {:?}", rest, rest_parse);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> tests/test.rs:171:5
[INFO] [stderr]     |
[INFO] [stderr] 171 |     dbln!("fht2p_value: {:?}", value);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> tests/test.rs:172:5
[INFO] [stderr]     |
[INFO] [stderr] 172 |     dbln!("fht2p_parse: {:?}", fht2p);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> tests/test.rs:173:5
[INFO] [stderr]     |
[INFO] [stderr] 173 |     dbln!();
[INFO] [stderr]     |     ^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `db` which comes from the expansion of the macro `dbln` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `app` (test "test") generated 5 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/app-8fcefad7923db50d)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test avp::tests::chars ... ok
[INFO] [stdout] test ovp::tests::chars ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/helps.rs (/opt/rustwide/target/debug/deps/helps-5c1e25e7014ef141)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test main ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/test.rs (/opt/rustwide/target/debug/deps/test-73b59a75ead73be8)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr] pkg!: "test"
[INFO] [stdout] test inner ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests app
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "7caf930841fdf2f2f296c204b1fe0625b3b34ba203a15f4a4426999d4997a7ab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7caf930841fdf2f2f296c204b1fe0625b3b34ba203a15f4a4426999d4997a7ab", kill_on_drop: false }`
[INFO] [stdout] 7caf930841fdf2f2f296c204b1fe0625b3b34ba203a15f4a4426999d4997a7ab
