[INFO] fetching crate cmdr_macro 0.3.12...
[INFO] testing cmdr_macro-0.3.12 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate cmdr_macro 0.3.12 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate cmdr_macro 0.3.12
[INFO] finished tweaking crates.io crate cmdr_macro 0.3.12
[INFO] tweaked toml for crates.io crate cmdr_macro 0.3.12 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate cmdr_macro 0.3.12 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 6 packages to latest compatible versions
[INFO] [stderr]       Adding itertools v0.9.0 (available: v0.14.0)
[INFO] [stderr]       Adding syn v1.0.109 (available: v2.0.110)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b8a46024752e2b48bfc969dd7209c17b0ffda78723565d1080e11299f5fc5b30
[INFO] running `Command { std: "docker" "start" "-a" "b8a46024752e2b48bfc969dd7209c17b0ffda78723565d1080e11299f5fc5b30", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b8a46024752e2b48bfc969dd7209c17b0ffda78723565d1080e11299f5fc5b30", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b8a46024752e2b48bfc969dd7209c17b0ffda78723565d1080e11299f5fc5b30", kill_on_drop: false }`
[INFO] [stdout] b8a46024752e2b48bfc969dd7209c17b0ffda78723565d1080e11299f5fc5b30
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2d1eee1f49a02b8639d4ece7aa99cca5de21d38d9e929963231bbf7abaed8594
[INFO] running `Command { std: "docker" "start" "-a" "2d1eee1f49a02b8639d4ece7aa99cca5de21d38d9e929963231bbf7abaed8594", kill_on_drop: false }`
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling itertools v0.9.0
[INFO] [stderr]    Compiling cmdr_macro v0.3.12 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/commands.rs:232:16
[INFO] [stdout]     |
[INFO] [stdout] 232 |         if let syn::Lit::Str(string) = name_val.lit {
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:17:5
[INFO] [stdout]     |
[INFO] [stdout]  17 |     unused_qualifications
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 232 -         if let syn::Lit::Str(string) = name_val.lit {
[INFO] [stdout] 232 +         if let Lit::Str(string) = name_val.lit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/commands.rs:106:24
[INFO] [stdout]     |
[INFO] [stdout] 106 |                   panic!(format!(
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 107 | |                     "Wrong return type for command {}, should be CommandReult",
[INFO] [stdout] 108 | |                     method_ident
[INFO] [stdout] 109 | |                 ));
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 106 ~                 panic!(
[INFO] [stdout] 107 |                     "Wrong return type for command {}, should be CommandReult",
[INFO] [stdout] 108 |                     method_ident
[INFO] [stdout] 109 ~                 );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/commands.rs:126:21
[INFO] [stdout]     |
[INFO] [stdout] 126 |           _ => panic!(format!(
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 127 | |             "Invalid signature for command {}, expected '&mut self, args &[String]'",
[INFO] [stdout] 128 | |             method_ident
[INFO] [stdout] 129 | |         )),
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 126 ~         _ => panic!(
[INFO] [stdout] 127 |             "Invalid signature for command {}, expected '&mut self, args &[String]'",
[INFO] [stdout] 128 |             method_ident
[INFO] [stdout] 129 ~         ),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.18s
[INFO] running `Command { std: "docker" "inspect" "2d1eee1f49a02b8639d4ece7aa99cca5de21d38d9e929963231bbf7abaed8594", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2d1eee1f49a02b8639d4ece7aa99cca5de21d38d9e929963231bbf7abaed8594", kill_on_drop: false }`
[INFO] [stdout] 2d1eee1f49a02b8639d4ece7aa99cca5de21d38d9e929963231bbf7abaed8594
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e17fcebbba4aa2b5f55de3d79a5c6e6aec158a1b005bd09c526355e770fb9324
[INFO] running `Command { std: "docker" "start" "-a" "e17fcebbba4aa2b5f55de3d79a5c6e6aec158a1b005bd09c526355e770fb9324", kill_on_drop: false }`
[INFO] [stderr]    Compiling cmdr_macro v0.3.12 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/commands.rs:232:16
[INFO] [stdout]     |
[INFO] [stdout] 232 |         if let syn::Lit::Str(string) = name_val.lit {
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:17:5
[INFO] [stdout]     |
[INFO] [stdout]  17 |     unused_qualifications
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 232 -         if let syn::Lit::Str(string) = name_val.lit {
[INFO] [stdout] 232 +         if let Lit::Str(string) = name_val.lit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/commands.rs:232:16
[INFO] [stdout]     |
[INFO] [stdout] 232 |         if let syn::Lit::Str(string) = name_val.lit {
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:17:5
[INFO] [stdout]     |
[INFO] [stdout]  17 |     unused_qualifications
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 232 -         if let syn::Lit::Str(string) = name_val.lit {
[INFO] [stdout] 232 +         if let Lit::Str(string) = name_val.lit {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/commands.rs:106:24
[INFO] [stdout]     |
[INFO] [stdout] 106 |                   panic!(format!(
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 107 | |                     "Wrong return type for command {}, should be CommandReult",
[INFO] [stdout] 108 | |                     method_ident
[INFO] [stdout] 109 | |                 ));
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 106 ~                 panic!(
[INFO] [stdout] 107 |                     "Wrong return type for command {}, should be CommandReult",
[INFO] [stdout] 108 |                     method_ident
[INFO] [stdout] 109 ~                 );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/commands.rs:126:21
[INFO] [stdout]     |
[INFO] [stdout] 126 |           _ => panic!(format!(
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 127 | |             "Invalid signature for command {}, expected '&mut self, args &[String]'",
[INFO] [stdout] 128 | |             method_ident
[INFO] [stdout] 129 | |         )),
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 126 ~         _ => panic!(
[INFO] [stdout] 127 |             "Invalid signature for command {}, expected '&mut self, args &[String]'",
[INFO] [stdout] 128 |             method_ident
[INFO] [stdout] 129 ~         ),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/commands.rs:106:24
[INFO] [stdout]     |
[INFO] [stdout] 106 |                   panic!(format!(
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 107 | |                     "Wrong return type for command {}, should be CommandReult",
[INFO] [stdout] 108 | |                     method_ident
[INFO] [stdout] 109 | |                 ));
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 106 ~                 panic!(
[INFO] [stdout] 107 |                     "Wrong return type for command {}, should be CommandReult",
[INFO] [stdout] 108 |                     method_ident
[INFO] [stdout] 109 ~                 );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/commands.rs:126:21
[INFO] [stdout]     |
[INFO] [stdout] 126 |           _ => panic!(format!(
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 127 | |             "Invalid signature for command {}, expected '&mut self, args &[String]'",
[INFO] [stdout] 128 | |             method_ident
[INFO] [stdout] 129 | |         )),
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 126 ~         _ => panic!(
[INFO] [stdout] 127 |             "Invalid signature for command {}, expected '&mut self, args &[String]'",
[INFO] [stdout] 128 |             method_ident
[INFO] [stdout] 129 ~         ),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.95s
[INFO] running `Command { std: "docker" "inspect" "e17fcebbba4aa2b5f55de3d79a5c6e6aec158a1b005bd09c526355e770fb9324", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e17fcebbba4aa2b5f55de3d79a5c6e6aec158a1b005bd09c526355e770fb9324", kill_on_drop: false }`
[INFO] [stdout] e17fcebbba4aa2b5f55de3d79a5c6e6aec158a1b005bd09c526355e770fb9324
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 7b5abb2a77b865de55eb12576d8855e2f99246c37700c3e1a309a8debcf6290c
[INFO] running `Command { std: "docker" "start" "-a" "7b5abb2a77b865de55eb12576d8855e2f99246c37700c3e1a309a8debcf6290c", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary qualification
[INFO] [stderr]    --> src/commands.rs:232:16
[INFO] [stderr]     |
[INFO] [stderr] 232 |         if let syn::Lit::Str(string) = name_val.lit {
[INFO] [stderr]     |                ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:17:5
[INFO] [stderr]     |
[INFO] [stderr]  17 |     unused_qualifications
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] help: remove the unnecessary path segments
[INFO] [stderr]     |
[INFO] [stderr] 232 -         if let syn::Lit::Str(string) = name_val.lit {
[INFO] [stderr] 232 +         if let Lit::Str(string) = name_val.lit {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/commands.rs:106:24
[INFO] [stderr]     |
[INFO] [stderr] 106 |                   panic!(format!(
[INFO] [stderr]     |  ________________________^
[INFO] [stderr] 107 | |                     "Wrong return type for command {}, should be CommandReult",
[INFO] [stderr] 108 | |                     method_ident
[INFO] [stderr] 109 | |                 ));
[INFO] [stderr]     | |_________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]     |
[INFO] [stderr] 106 ~                 panic!(
[INFO] [stderr] 107 |                     "Wrong return type for command {}, should be CommandReult",
[INFO] [stderr] 108 |                     method_ident
[INFO] [stderr] 109 ~                 );
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/commands.rs:126:21
[INFO] [stderr]     |
[INFO] [stderr] 126 |           _ => panic!(format!(
[INFO] [stderr]     |  _____________________^
[INFO] [stderr] 127 | |             "Invalid signature for command {}, expected '&mut self, args &[String]'",
[INFO] [stderr] 128 | |             method_ident
[INFO] [stderr] 129 | |         )),
[INFO] [stderr]     | |_________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]     |
[INFO] [stderr] 126 ~         _ => panic!(
[INFO] [stderr] 127 |             "Invalid signature for command {}, expected '&mut self, args &[String]'",
[INFO] [stderr] 128 |             method_ident
[INFO] [stderr] 129 ~         ),
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `cmdr_macro` (lib) generated 3 warnings (run `cargo fix --lib -p cmdr_macro` to apply 3 suggestions)
[INFO] [stderr] warning: `cmdr_macro` (lib test) generated 3 warnings (3 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/cmdr_macro-a76b69325ae2b22f)
[INFO] [stdout] 
[INFO] [stdout] running 27 tests
[INFO] [stdout] test commands::when_parsing_function_cmd_attributes::should_ignore_method_without_cmd_attribute ... ok
[INFO] [stdout] test commands::when_parsing_function_cmd_attributes::should_parse_command_name ... ok
[INFO] [stdout] test commands::when_parsing_function_cmd_attributes::should_ignore_docstring_if_cmd_attribute_help_available ... ok
[INFO] [stdout] test commands::when_parsing_function_cmd_attributes::should_parse_alias_from_cmd_attribute ... ok
[INFO] [stdout] test commands::when_parsing_function_cmd_attributes::should_parse_inner_doc_string_as_help_text ... ok
[INFO] [stdout] test commands::when_parsing_function_cmd_attributes::should_parse_name_from_multiple_cmd_attributes ... ok
[INFO] [stdout] test commands::when_parsing_function_cmd_attributes::should_parse_named_command_name ... ok
[INFO] [stdout] test commands::when_parsing_function_cmd_attributes::should_set_missing_help_text_to_none ... ok
[INFO] [stdout] test overrides::tests::should_override_after_command_when_available ... ok
[INFO] [stdout] test commands::when_parsing_function_cmd_attributes::should_parse_plain_cmd_attribute ... ok
[INFO] [stdout] test commands::when_parsing_function_cmd_attributes::should_parse_outer_doc_string_as_help_text ... ok
[INFO] [stdout] test commands::when_parsing_function_cmd_attributes::should_strip_help_text_spaces ... ok
[INFO] [stdout] test overrides::tests::should_override_after_loop_when_available ... ok
[INFO] [stdout] test commands::when_parsing_function_cmd_attributes::should_parse_multiline_help_from_cmd_attribute ... ok
[INFO] [stdout] test overrides::tests::should_override_before_loop_when_available ... ok
[INFO] [stdout] test overrides::tests::should_override_default_when_available ... ok
[INFO] [stdout] test overrides::tests::should_override_handle_error_when_available ... ok
[INFO] [stdout] test overrides::tests::should_override_prompt_when_available ... ok
[INFO] [stdout] test overrides::tests::should_override_before_command_when_available ... ok
[INFO] [stdout] test overrides::tests::should_override_multiple_commands_when_available ... ok
[INFO] [stdout] test overrides::tests::should_override_nothing_when_no_overridable_methods ... ok
[INFO] [stdout] test parsing::tests::should_return_impl_self_type ... ok
[INFO] [stdout] test overrides::tests::should_override_help_when_available ... ok
[INFO] [stdout] test parsing::when_comparing_signatures::should_succeed_for_same_function ... ok
[INFO] [stdout] test parsing::when_comparing_signatures::should_fail_for_different_functions ... ok
[INFO] [stdout] test parsing::when_comparing_signatures::should_succeed_for_different_parameter_names ... ok
[INFO] [stdout] test overrides::tests::should_panic_when_overriding_prompt_with_wrong_signature - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 27 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests cmdr_macro
[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" "7b5abb2a77b865de55eb12576d8855e2f99246c37700c3e1a309a8debcf6290c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7b5abb2a77b865de55eb12576d8855e2f99246c37700c3e1a309a8debcf6290c", kill_on_drop: false }`
[INFO] [stdout] 7b5abb2a77b865de55eb12576d8855e2f99246c37700c3e1a309a8debcf6290c
