[INFO] crate clap 2.33.1 is already in cache [INFO] testing clap-2.33.1 against 1.45.2 for beta-1.46-1 [INFO] extracting crate clap 2.33.1 into /workspace/builds/worker-5/source [INFO] validating manifest of crates.io crate clap 2.33.1 on toolchain 1.45.2 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.45.2" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking crates.io crate clap 2.33.1 [INFO] finished tweaking crates.io crate clap 2.33.1 [INFO] tweaked toml for crates.io crate clap 2.33.1 written to /workspace/builds/worker-5/source/Cargo.toml [INFO] crate crates.io crate clap 2.33.1 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.45.2" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+1.45.2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 46fd87e5a4f37de4ed657f169cf897964aa68f239e5abd961ab24627d3b5b7ea [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "46fd87e5a4f37de4ed657f169cf897964aa68f239e5abd961ab24627d3b5b7ea", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "46fd87e5a4f37de4ed657f169cf897964aa68f239e5abd961ab24627d3b5b7ea", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "46fd87e5a4f37de4ed657f169cf897964aa68f239e5abd961ab24627d3b5b7ea", kill_on_drop: false }` [INFO] [stdout] 46fd87e5a4f37de4ed657f169cf897964aa68f239e5abd961ab24627d3b5b7ea [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+1.45.2" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 891779b79918bcb3225647b1945bb0b13a95b3e6fe4062280f447e6636d4c24e [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "891779b79918bcb3225647b1945bb0b13a95b3e6fe4062280f447e6636d4c24e", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.69 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling unicode-width v0.1.7 [INFO] [stderr] Compiling strsim v0.8.0 [INFO] [stderr] Compiling ansi_term v0.11.0 [INFO] [stderr] Compiling vec_map v0.8.1 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling clap v2.33.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:43:27 [INFO] [stdout] | [INFO] [stdout] 43 | fn as_base(&self) -> &ArgWithDisplay<'b, 'c>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:49:27 [INFO] [stdout] | [INFO] [stdout] 49 | fn as_base(&self) -> &ArgWithDisplay<'b, 'c> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:54:61 [INFO] [stdout] | [INFO] [stdout] 54 | fn as_arg_trait<'a, 'b, T: ArgWithOrder<'a, 'b>>(x: &T) -> &ArgWithOrder<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'a, 'b>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:85:21 [INFO] [stdout] | [INFO] [stdout] 85 | writer: &'a mut Write, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:101:20 [INFO] [stdout] | [INFO] [stdout] 101 | w: &'a mut Write, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:141:38 [INFO] [stdout] | [INFO] [stdout] 141 | pub fn write_app_help(w: &'a mut Write, app: &App, use_long: bool) -> ClapResult<()> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:148:41 [INFO] [stdout] | [INFO] [stdout] 148 | pub fn write_parser_help(w: &'a mut Write, parser: &Parser, use_long: bool) -> ClapResult<()> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:156:51 [INFO] [stdout] | [INFO] [stdout] 156 | pub fn write_parser_help_to_stderr(w: &'a mut Write, parser: &Parser) -> ClapResult<()> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:163:20 [INFO] [stdout] | [INFO] [stdout] 163 | w: &'a mut Write, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:208:32 [INFO] [stdout] | [INFO] [stdout] 208 | I: Iterator>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:236:32 [INFO] [stdout] | [INFO] [stdout] 236 | I: Iterator>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:273:43 [INFO] [stdout] | [INFO] [stdout] 273 | fn write_arg<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:283:39 [INFO] [stdout] | [INFO] [stdout] 283 | fn short<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:296:38 [INFO] [stdout] | [INFO] [stdout] 296 | fn long<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:325:37 [INFO] [stdout] | [INFO] [stdout] 325 | fn val<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:453:38 [INFO] [stdout] | [INFO] [stdout] 453 | fn help<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>, spec_vals: &str) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:511:29 [INFO] [stdout] | [INFO] [stdout] 511 | fn spec_vals(&self, a: &ArgWithDisplay) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:579:42 [INFO] [stdout] | [INFO] [stdout] 579 | fn should_show_arg(use_long: bool, arg: &ArgWithOrder) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:149:17 [INFO] [stdout] | [INFO] [stdout] 149 | / (self.flags.iter().any(|f| &f.b.name == arg) [INFO] [stdout] 150 | | || self.opts.iter().any(|o| &o.b.name == arg) [INFO] [stdout] 151 | | || self.positionals.values().any(|p| &p.b.name == arg) [INFO] [stdout] 152 | | || self.groups.iter().any(|g| &g.name == arg)) [INFO] [stdout] | |__________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 149 | self.flags.iter().any(|f| &f.b.name == arg) [INFO] [stdout] 150 | || self.opts.iter().any(|o| &o.b.name == arg) [INFO] [stdout] 151 | || self.positionals.values().any(|p| &p.b.name == arg) [INFO] [stdout] 152 | || self.groups.iter().any(|g| &g.name == arg) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:200:13 [INFO] [stdout] | [INFO] [stdout] 200 | (self.positionals.len() + 1) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | (self.positionals.len() + 1) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:334:17 [INFO] [stdout] | [INFO] [stdout] 334 | (self.positionals.len() + 1) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:842:17 [INFO] [stdout] | [INFO] [stdout] 842 | (o.is_set(ArgSettings::AllowLeadingHyphen) || app_wide_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:850:17 [INFO] [stdout] | [INFO] [stdout] 850 | (p.is_set(ArgSettings::AllowLeadingHyphen) || app_wide_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/parser.rs:964:39 [INFO] [stdout] | [INFO] [stdout] 964 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/parser.rs:1110:39 [INFO] [stdout] | [INFO] [stdout] 1110 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/parser.rs:1238:27 [INFO] [stdout] | [INFO] [stdout] 1238 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/parser.rs:2168:55 [INFO] [stdout] | [INFO] [stdout] 2168 | pub fn find_any_arg(&self, name: &str) -> Option<&AnyArg<'a, 'b>> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/validator.rs:214:32 [INFO] [stdout] | [INFO] [stdout] 214 | if let Some(arg) = find_any_by_name!(self.0, name) { [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/validator.rs:231:39 [INFO] [stdout] | [INFO] [stdout] 231 | if let Some(bl) = find_any_by_name!(self.0, *arg).unwrap().blacklist() { [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/validator.rs:364:25 [INFO] [stdout] | [INFO] [stdout] 364 | (ma.vals.len() % num as usize) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/validator.rs:467:37 [INFO] [stdout] | [INFO] [stdout] 467 | } else if let Some(a) = find_any_by_name!(self.0, *name) { [INFO] [stdout] | -------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/validator.rs:508:42 [INFO] [stdout] | [INFO] [stdout] 508 | fn validate_arg_conflicts(&self, a: &AnyArg, matcher: &ArgMatcher) -> Option { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/validator.rs:523:44 [INFO] [stdout] | [INFO] [stdout] 523 | fn validate_required_unless(&self, a: &AnyArg, matcher: &ArgMatcher) -> Option { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/validator.rs:578:42 [INFO] [stdout] | [INFO] [stdout] 578 | fn is_missing_required_ok(&self, a: &AnyArg, matcher: &ArgMatcher) -> bool { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/mod.rs:1844:39 [INFO] [stdout] | [INFO] [stdout] 1844 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/mod.rs:1847:42 [INFO] [stdout] | [INFO] [stdout] 1847 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/any_arg.rs:26:39 [INFO] [stdout] | [INFO] [stdout] 26 | fn validator(&self) -> Option<&Rc Result<(), String>>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/any_arg.rs:27:42 [INFO] [stdout] | [INFO] [stdout] 27 | fn validator_os(&self) -> Option<&Rc Result<(), OsString>>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/any_arg.rs:89:39 [INFO] [stdout] | [INFO] [stdout] 89 | fn validator(&self) -> Option<&Rc Result<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/any_arg.rs:92:42 [INFO] [stdout] | [INFO] [stdout] 92 | fn validator_os(&self) -> Option<&Rc Result<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/flag.rs:103:39 [INFO] [stdout] | [INFO] [stdout] 103 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/flag.rs:106:42 [INFO] [stdout] | [INFO] [stdout] 106 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/option.rs:156:39 [INFO] [stdout] | [INFO] [stdout] 156 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/option.rs:159:42 [INFO] [stdout] | [INFO] [stdout] 159 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/positional.rs:177:39 [INFO] [stdout] | [INFO] [stdout] 177 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/positional.rs:180:42 [INFO] [stdout] | [INFO] [stdout] 180 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/valued.rs:19:30 [INFO] [stdout] | [INFO] [stdout] 19 | pub validator: Option Result<(), String>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/valued.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | pub validator_os: Option Result<(), OsString>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_matcher.rs:30:20 [INFO] [stdout] | [INFO] [stdout] 30 | a: Option<&AnyArg<'a, 'b>>, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_matcher.rs:75:60 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn handle_self_overrides<'b>(&mut self, a: Option<&AnyArg<'a, 'b>>) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:412:15 [INFO] [stdout] | [INFO] [stdout] 412 | arg: &AnyArg, [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:450:33 [INFO] [stdout] | [INFO] [stdout] 450 | pub fn empty_value(arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:478:15 [INFO] [stdout] | [INFO] [stdout] 478 | arg: &AnyArg, [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:663:48 [INFO] [stdout] | [INFO] [stdout] 663 | pub fn too_many_values(val: V, arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:692:15 [INFO] [stdout] | [INFO] [stdout] 692 | arg: &AnyArg, [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:725:42 [INFO] [stdout] | [INFO] [stdout] 725 | pub fn value_validation(arg: Option<&AnyArg>, err: String, color: ColorWhen) -> Self { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:748:24 [INFO] [stdout] | [INFO] [stdout] 748 | let n: Option<&AnyArg> = None; [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:754:15 [INFO] [stdout] | [INFO] [stdout] 754 | arg: &AnyArg, [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:789:47 [INFO] [stdout] | [INFO] [stdout] 789 | pub fn unexpected_multiple_usage(arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stdout] --> src/app/parser.rs:96:14 [INFO] [stdout] | [INFO] [stdout] 96 | .trim_left_matches(|c| c == '-') [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stdout] --> src/app/parser.rs:105:14 [INFO] [stdout] | [INFO] [stdout] 105 | .trim_left_matches(|c| c == '-') [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stdout] --> src/app/parser.rs:138:75 [INFO] [stdout] | [INFO] [stdout] 138 | Err(why) => panic!("couldn't create completion file: {}", why.description()), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stdout] --> src/args/arg.rs:337:35 [INFO] [stdout] | [INFO] [stdout] 337 | self.s.short = s.as_ref().trim_left_matches(|c| c == '-').chars().nth(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stdout] --> src/args/arg.rs:377:30 [INFO] [stdout] | [INFO] [stdout] 377 | self.s.long = Some(l.trim_left_matches(|c| c == '-')); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:852:60 [INFO] [stdout] | [INFO] [stdout] 852 | message: format!("{} {}", c.error("error:"), e.description()), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:910:35 [INFO] [stdout] | [INFO] [stdout] 910 | Error::with_description(e.description(), ErrorKind::Io) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:916:35 [INFO] [stdout] | [INFO] [stdout] 916 | Error::with_description(e.description(), ErrorKind::Format) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 68 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 16.61s [INFO] running `Command { std: "docker" "inspect" "891779b79918bcb3225647b1945bb0b13a95b3e6fe4062280f447e6636d4c24e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "891779b79918bcb3225647b1945bb0b13a95b3e6fe4062280f447e6636d4c24e", kill_on_drop: false }` [INFO] [stdout] 891779b79918bcb3225647b1945bb0b13a95b3e6fe4062280f447e6636d4c24e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+1.45.2" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] aa6c19454cc4f9146c4137321c160762b20aaf8f3f0b82d84de1ae8772bbf956 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "aa6c19454cc4f9146c4137321c160762b20aaf8f3f0b82d84de1ae8772bbf956", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling version_check v0.9.1 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling serde v1.0.106 [INFO] [stderr] Compiling matches v0.1.8 [INFO] [stderr] Compiling smallvec v1.4.0 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling pulldown-cmark v0.4.1 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling either v1.5.3 [INFO] [stderr] Compiling percent-encoding v1.0.1 [INFO] [stderr] Compiling regex-syntax v0.6.17 [INFO] [stderr] Compiling semver-parser v0.9.0 [INFO] [stderr] Compiling unicode-bidi v0.3.4 [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:43:27 [INFO] [stdout] | [INFO] [stdout] 43 | fn as_base(&self) -> &ArgWithDisplay<'b, 'c>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:49:27 [INFO] [stdout] | [INFO] [stdout] 49 | fn as_base(&self) -> &ArgWithDisplay<'b, 'c> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:54:61 [INFO] [stdout] | [INFO] [stdout] 54 | fn as_arg_trait<'a, 'b, T: ArgWithOrder<'a, 'b>>(x: &T) -> &ArgWithOrder<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'a, 'b>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:85:21 [INFO] [stdout] | [INFO] [stdout] 85 | writer: &'a mut Write, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:101:20 [INFO] [stdout] | [INFO] [stdout] 101 | w: &'a mut Write, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:141:38 [INFO] [stdout] | [INFO] [stdout] 141 | pub fn write_app_help(w: &'a mut Write, app: &App, use_long: bool) -> ClapResult<()> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:148:41 [INFO] [stdout] | [INFO] [stdout] 148 | pub fn write_parser_help(w: &'a mut Write, parser: &Parser, use_long: bool) -> ClapResult<()> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:156:51 [INFO] [stdout] | [INFO] [stdout] 156 | pub fn write_parser_help_to_stderr(w: &'a mut Write, parser: &Parser) -> ClapResult<()> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:163:20 [INFO] [stdout] | [INFO] [stdout] 163 | w: &'a mut Write, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:208:32 [INFO] [stdout] | [INFO] [stdout] 208 | I: Iterator>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:236:32 [INFO] [stdout] | [INFO] [stdout] 236 | I: Iterator>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:273:43 [INFO] [stdout] | [INFO] [stdout] 273 | fn write_arg<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:283:39 [INFO] [stdout] | [INFO] [stdout] 283 | fn short<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:296:38 [INFO] [stdout] | [INFO] [stdout] 296 | fn long<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:325:37 [INFO] [stdout] | [INFO] [stdout] 325 | fn val<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:453:38 [INFO] [stdout] | [INFO] [stdout] 453 | fn help<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>, spec_vals: &str) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:511:29 [INFO] [stdout] | [INFO] [stdout] 511 | fn spec_vals(&self, a: &ArgWithDisplay) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:579:42 [INFO] [stdout] | [INFO] [stdout] 579 | fn should_show_arg(use_long: bool, arg: &ArgWithOrder) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:149:17 [INFO] [stdout] | [INFO] [stdout] 149 | / (self.flags.iter().any(|f| &f.b.name == arg) [INFO] [stdout] 150 | | || self.opts.iter().any(|o| &o.b.name == arg) [INFO] [stdout] 151 | | || self.positionals.values().any(|p| &p.b.name == arg) [INFO] [stdout] 152 | | || self.groups.iter().any(|g| &g.name == arg)) [INFO] [stdout] | |__________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 149 | self.flags.iter().any(|f| &f.b.name == arg) [INFO] [stdout] 150 | || self.opts.iter().any(|o| &o.b.name == arg) [INFO] [stdout] 151 | || self.positionals.values().any(|p| &p.b.name == arg) [INFO] [stdout] 152 | || self.groups.iter().any(|g| &g.name == arg) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:200:13 [INFO] [stdout] | [INFO] [stdout] 200 | (self.positionals.len() + 1) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | (self.positionals.len() + 1) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:334:17 [INFO] [stdout] | [INFO] [stdout] 334 | (self.positionals.len() + 1) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:842:17 [INFO] [stdout] | [INFO] [stdout] 842 | (o.is_set(ArgSettings::AllowLeadingHyphen) || app_wide_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:850:17 [INFO] [stdout] | [INFO] [stdout] 850 | (p.is_set(ArgSettings::AllowLeadingHyphen) || app_wide_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/parser.rs:964:39 [INFO] [stdout] | [INFO] [stdout] 964 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/parser.rs:1110:39 [INFO] [stdout] | [INFO] [stdout] 1110 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/parser.rs:1238:27 [INFO] [stdout] | [INFO] [stdout] 1238 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/parser.rs:2168:55 [INFO] [stdout] | [INFO] [stdout] 2168 | pub fn find_any_arg(&self, name: &str) -> Option<&AnyArg<'a, 'b>> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/validator.rs:214:32 [INFO] [stdout] | [INFO] [stdout] 214 | if let Some(arg) = find_any_by_name!(self.0, name) { [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/validator.rs:231:39 [INFO] [stdout] | [INFO] [stdout] 231 | if let Some(bl) = find_any_by_name!(self.0, *arg).unwrap().blacklist() { [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/validator.rs:364:25 [INFO] [stdout] | [INFO] [stdout] 364 | (ma.vals.len() % num as usize) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/validator.rs:467:37 [INFO] [stdout] | [INFO] [stdout] 467 | } else if let Some(a) = find_any_by_name!(self.0, *name) { [INFO] [stdout] | -------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/validator.rs:508:42 [INFO] [stdout] | [INFO] [stdout] 508 | fn validate_arg_conflicts(&self, a: &AnyArg, matcher: &ArgMatcher) -> Option { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/validator.rs:523:44 [INFO] [stdout] | [INFO] [stdout] 523 | fn validate_required_unless(&self, a: &AnyArg, matcher: &ArgMatcher) -> Option { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/validator.rs:578:42 [INFO] [stdout] | [INFO] [stdout] 578 | fn is_missing_required_ok(&self, a: &AnyArg, matcher: &ArgMatcher) -> bool { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/mod.rs:1844:39 [INFO] [stdout] | [INFO] [stdout] 1844 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/mod.rs:1847:42 [INFO] [stdout] | [INFO] [stdout] 1847 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/any_arg.rs:26:39 [INFO] [stdout] | [INFO] [stdout] 26 | fn validator(&self) -> Option<&Rc Result<(), String>>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/any_arg.rs:27:42 [INFO] [stdout] | [INFO] [stdout] 27 | fn validator_os(&self) -> Option<&Rc Result<(), OsString>>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/any_arg.rs:89:39 [INFO] [stdout] | [INFO] [stdout] 89 | fn validator(&self) -> Option<&Rc Result<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/any_arg.rs:92:42 [INFO] [stdout] | [INFO] [stdout] 92 | fn validator_os(&self) -> Option<&Rc Result<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/flag.rs:103:39 [INFO] [stdout] | [INFO] [stdout] 103 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/flag.rs:106:42 [INFO] [stdout] | [INFO] [stdout] 106 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/option.rs:156:39 [INFO] [stdout] | [INFO] [stdout] 156 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/option.rs:159:42 [INFO] [stdout] | [INFO] [stdout] 159 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/positional.rs:177:39 [INFO] [stdout] | [INFO] [stdout] 177 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/positional.rs:180:42 [INFO] [stdout] | [INFO] [stdout] 180 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/valued.rs:19:30 [INFO] [stdout] | [INFO] [stdout] 19 | pub validator: Option Result<(), String>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/valued.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | pub validator_os: Option Result<(), OsString>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_matcher.rs:30:20 [INFO] [stdout] | [INFO] [stdout] 30 | a: Option<&AnyArg<'a, 'b>>, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_matcher.rs:75:60 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn handle_self_overrides<'b>(&mut self, a: Option<&AnyArg<'a, 'b>>) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:412:15 [INFO] [stdout] | [INFO] [stdout] 412 | arg: &AnyArg, [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:450:33 [INFO] [stdout] | [INFO] [stdout] 450 | pub fn empty_value(arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:478:15 [INFO] [stdout] | [INFO] [stdout] 478 | arg: &AnyArg, [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:663:48 [INFO] [stdout] | [INFO] [stdout] 663 | pub fn too_many_values(val: V, arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:692:15 [INFO] [stdout] | [INFO] [stdout] 692 | arg: &AnyArg, [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:725:42 [INFO] [stdout] | [INFO] [stdout] 725 | pub fn value_validation(arg: Option<&AnyArg>, err: String, color: ColorWhen) -> Self { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:748:24 [INFO] [stdout] | [INFO] [stdout] 748 | let n: Option<&AnyArg> = None; [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:754:15 [INFO] [stdout] | [INFO] [stdout] 754 | arg: &AnyArg, [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:789:47 [INFO] [stdout] | [INFO] [stdout] 789 | pub fn unexpected_multiple_usage(arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stdout] --> src/app/parser.rs:96:14 [INFO] [stdout] | [INFO] [stdout] 96 | .trim_left_matches(|c| c == '-') [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stdout] --> src/app/parser.rs:105:14 [INFO] [stdout] | [INFO] [stdout] 105 | .trim_left_matches(|c| c == '-') [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stdout] --> src/app/parser.rs:138:75 [INFO] [stdout] | [INFO] [stdout] 138 | Err(why) => panic!("couldn't create completion file: {}", why.description()), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stdout] --> src/args/arg.rs:337:35 [INFO] [stdout] | [INFO] [stdout] 337 | self.s.short = s.as_ref().trim_left_matches(|c| c == '-').chars().nth(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stdout] --> src/args/arg.rs:377:30 [INFO] [stdout] | [INFO] [stdout] 377 | self.s.long = Some(l.trim_left_matches(|c| c == '-')); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:852:60 [INFO] [stdout] | [INFO] [stdout] 852 | message: format!("{} {}", c.error("error:"), e.description()), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:910:35 [INFO] [stdout] | [INFO] [stdout] 910 | Error::with_description(e.description(), ErrorKind::Io) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:916:35 [INFO] [stdout] | [INFO] [stdout] 916 | Error::with_description(e.description(), ErrorKind::Format) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 68 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling thread_local v1.0.1 [INFO] [stderr] Compiling itertools v0.8.2 [INFO] [stderr] Compiling unicode-normalization v0.1.12 [INFO] [stderr] Compiling unicase v2.6.0 [INFO] [stderr] Compiling aho-corasick v0.7.10 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Compiling idna v0.1.5 [INFO] [stderr] Compiling url v1.7.2 [INFO] [stderr] Compiling regex v1.3.7 [INFO] [stderr] Compiling toml v0.5.6 [INFO] [stderr] Compiling version-sync v0.8.1 [INFO] [stderr] Compiling clap v2.33.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:43:27 [INFO] [stdout] | [INFO] [stdout] 43 | fn as_base(&self) -> &ArgWithDisplay<'b, 'c>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:49:27 [INFO] [stdout] | [INFO] [stdout] 49 | fn as_base(&self) -> &ArgWithDisplay<'b, 'c> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:54:61 [INFO] [stdout] | [INFO] [stdout] 54 | fn as_arg_trait<'a, 'b, T: ArgWithOrder<'a, 'b>>(x: &T) -> &ArgWithOrder<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'a, 'b>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:85:21 [INFO] [stdout] | [INFO] [stdout] 85 | writer: &'a mut Write, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:101:20 [INFO] [stdout] | [INFO] [stdout] 101 | w: &'a mut Write, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:141:38 [INFO] [stdout] | [INFO] [stdout] 141 | pub fn write_app_help(w: &'a mut Write, app: &App, use_long: bool) -> ClapResult<()> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:148:41 [INFO] [stdout] | [INFO] [stdout] 148 | pub fn write_parser_help(w: &'a mut Write, parser: &Parser, use_long: bool) -> ClapResult<()> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:156:51 [INFO] [stdout] | [INFO] [stdout] 156 | pub fn write_parser_help_to_stderr(w: &'a mut Write, parser: &Parser) -> ClapResult<()> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:163:20 [INFO] [stdout] | [INFO] [stdout] 163 | w: &'a mut Write, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:208:32 [INFO] [stdout] | [INFO] [stdout] 208 | I: Iterator>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:236:32 [INFO] [stdout] | [INFO] [stdout] 236 | I: Iterator>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:273:43 [INFO] [stdout] | [INFO] [stdout] 273 | fn write_arg<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:283:39 [INFO] [stdout] | [INFO] [stdout] 283 | fn short<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:296:38 [INFO] [stdout] | [INFO] [stdout] 296 | fn long<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:325:37 [INFO] [stdout] | [INFO] [stdout] 325 | fn val<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:453:38 [INFO] [stdout] | [INFO] [stdout] 453 | fn help<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>, spec_vals: &str) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:511:29 [INFO] [stdout] | [INFO] [stdout] 511 | fn spec_vals(&self, a: &ArgWithDisplay) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/help.rs:579:42 [INFO] [stdout] | [INFO] [stdout] 579 | fn should_show_arg(use_long: bool, arg: &ArgWithOrder) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:149:17 [INFO] [stdout] | [INFO] [stdout] 149 | / (self.flags.iter().any(|f| &f.b.name == arg) [INFO] [stdout] 150 | | || self.opts.iter().any(|o| &o.b.name == arg) [INFO] [stdout] 151 | | || self.positionals.values().any(|p| &p.b.name == arg) [INFO] [stdout] 152 | | || self.groups.iter().any(|g| &g.name == arg)) [INFO] [stdout] | |__________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 149 | self.flags.iter().any(|f| &f.b.name == arg) [INFO] [stdout] 150 | || self.opts.iter().any(|o| &o.b.name == arg) [INFO] [stdout] 151 | || self.positionals.values().any(|p| &p.b.name == arg) [INFO] [stdout] 152 | || self.groups.iter().any(|g| &g.name == arg) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:200:13 [INFO] [stdout] | [INFO] [stdout] 200 | (self.positionals.len() + 1) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | (self.positionals.len() + 1) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:334:17 [INFO] [stdout] | [INFO] [stdout] 334 | (self.positionals.len() + 1) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:842:17 [INFO] [stdout] | [INFO] [stdout] 842 | (o.is_set(ArgSettings::AllowLeadingHyphen) || app_wide_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/parser.rs:850:17 [INFO] [stdout] | [INFO] [stdout] 850 | (p.is_set(ArgSettings::AllowLeadingHyphen) || app_wide_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/parser.rs:964:39 [INFO] [stdout] | [INFO] [stdout] 964 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/parser.rs:1110:39 [INFO] [stdout] | [INFO] [stdout] 1110 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/parser.rs:1238:27 [INFO] [stdout] | [INFO] [stdout] 1238 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stdout] | ------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/parser.rs:2168:55 [INFO] [stdout] | [INFO] [stdout] 2168 | pub fn find_any_arg(&self, name: &str) -> Option<&AnyArg<'a, 'b>> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/validator.rs:214:32 [INFO] [stdout] | [INFO] [stdout] 214 | if let Some(arg) = find_any_by_name!(self.0, name) { [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/validator.rs:231:39 [INFO] [stdout] | [INFO] [stdout] 231 | if let Some(bl) = find_any_by_name!(self.0, *arg).unwrap().blacklist() { [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/app/validator.rs:364:25 [INFO] [stdout] | [INFO] [stdout] 364 | (ma.vals.len() % num as usize) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/macros.rs:970:63 [INFO] [stdout] | [INFO] [stdout] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] | [INFO] [stdout] ::: src/app/validator.rs:467:37 [INFO] [stdout] | [INFO] [stdout] 467 | } else if let Some(a) = find_any_by_name!(self.0, *name) { [INFO] [stdout] | -------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/validator.rs:508:42 [INFO] [stdout] | [INFO] [stdout] 508 | fn validate_arg_conflicts(&self, a: &AnyArg, matcher: &ArgMatcher) -> Option { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/validator.rs:523:44 [INFO] [stdout] | [INFO] [stdout] 523 | fn validate_required_unless(&self, a: &AnyArg, matcher: &ArgMatcher) -> Option { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/validator.rs:578:42 [INFO] [stdout] | [INFO] [stdout] 578 | fn is_missing_required_ok(&self, a: &AnyArg, matcher: &ArgMatcher) -> bool { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/mod.rs:1844:39 [INFO] [stdout] | [INFO] [stdout] 1844 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/app/mod.rs:1847:42 [INFO] [stdout] | [INFO] [stdout] 1847 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/any_arg.rs:26:39 [INFO] [stdout] | [INFO] [stdout] 26 | fn validator(&self) -> Option<&Rc Result<(), String>>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/any_arg.rs:27:42 [INFO] [stdout] | [INFO] [stdout] 27 | fn validator_os(&self) -> Option<&Rc Result<(), OsString>>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/any_arg.rs:89:39 [INFO] [stdout] | [INFO] [stdout] 89 | fn validator(&self) -> Option<&Rc Result<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/any_arg.rs:92:42 [INFO] [stdout] | [INFO] [stdout] 92 | fn validator_os(&self) -> Option<&Rc Result<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/flag.rs:103:39 [INFO] [stdout] | [INFO] [stdout] 103 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/flag.rs:106:42 [INFO] [stdout] | [INFO] [stdout] 106 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/option.rs:156:39 [INFO] [stdout] | [INFO] [stdout] 156 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/option.rs:159:42 [INFO] [stdout] | [INFO] [stdout] 159 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/positional.rs:177:39 [INFO] [stdout] | [INFO] [stdout] 177 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/positional.rs:180:42 [INFO] [stdout] | [INFO] [stdout] 180 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/valued.rs:19:30 [INFO] [stdout] | [INFO] [stdout] 19 | pub validator: Option Result<(), String>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_builder/valued.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | pub validator_os: Option Result<(), OsString>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_matcher.rs:30:20 [INFO] [stdout] | [INFO] [stdout] 30 | a: Option<&AnyArg<'a, 'b>>, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/args/arg_matcher.rs:75:60 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn handle_self_overrides<'b>(&mut self, a: Option<&AnyArg<'a, 'b>>) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:412:15 [INFO] [stdout] | [INFO] [stdout] 412 | arg: &AnyArg, [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:450:33 [INFO] [stdout] | [INFO] [stdout] 450 | pub fn empty_value(arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:478:15 [INFO] [stdout] | [INFO] [stdout] 478 | arg: &AnyArg, [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:663:48 [INFO] [stdout] | [INFO] [stdout] 663 | pub fn too_many_values(val: V, arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:692:15 [INFO] [stdout] | [INFO] [stdout] 692 | arg: &AnyArg, [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:725:42 [INFO] [stdout] | [INFO] [stdout] 725 | pub fn value_validation(arg: Option<&AnyArg>, err: String, color: ColorWhen) -> Self { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:748:24 [INFO] [stdout] | [INFO] [stdout] 748 | let n: Option<&AnyArg> = None; [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:754:15 [INFO] [stdout] | [INFO] [stdout] 754 | arg: &AnyArg, [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/errors.rs:789:47 [INFO] [stdout] | [INFO] [stdout] 789 | pub fn unexpected_multiple_usage(arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stdout] --> src/app/parser.rs:96:14 [INFO] [stdout] | [INFO] [stdout] 96 | .trim_left_matches(|c| c == '-') [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stdout] --> src/app/parser.rs:105:14 [INFO] [stdout] | [INFO] [stdout] 105 | .trim_left_matches(|c| c == '-') [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stdout] --> src/app/parser.rs:138:75 [INFO] [stdout] | [INFO] [stdout] 138 | Err(why) => panic!("couldn't create completion file: {}", why.description()), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stdout] --> src/args/arg.rs:337:35 [INFO] [stdout] | [INFO] [stdout] 337 | self.s.short = s.as_ref().trim_left_matches(|c| c == '-').chars().nth(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stdout] --> src/args/arg.rs:377:30 [INFO] [stdout] | [INFO] [stdout] 377 | self.s.long = Some(l.trim_left_matches(|c| c == '-')); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:852:60 [INFO] [stdout] | [INFO] [stdout] 852 | message: format!("{} {}", c.error("error:"), e.description()), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:910:35 [INFO] [stdout] | [INFO] [stdout] 910 | Error::with_description(e.description(), ErrorKind::Io) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:916:35 [INFO] [stdout] | [INFO] [stdout] 916 | Error::with_description(e.description(), ErrorKind::Format) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 68 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 48.79s [INFO] running `Command { std: "docker" "inspect" "aa6c19454cc4f9146c4137321c160762b20aaf8f3f0b82d84de1ae8772bbf956", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "aa6c19454cc4f9146c4137321c160762b20aaf8f3f0b82d84de1ae8772bbf956", kill_on_drop: false }` [INFO] [stdout] aa6c19454cc4f9146c4137321c160762b20aaf8f3f0b82d84de1ae8772bbf956 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+1.45.2" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] b1c003620e49d9ab4cc96ecea96ab4feb1bba7f218fa3740ef2311bc8283a4d2 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "b1c003620e49d9ab4cc96ecea96ab4feb1bba7f218fa3740ef2311bc8283a4d2", kill_on_drop: false }` [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:43:27 [INFO] [stderr] | [INFO] [stderr] 43 | fn as_base(&self) -> &ArgWithDisplay<'b, 'c>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:49:27 [INFO] [stderr] | [INFO] [stderr] 49 | fn as_base(&self) -> &ArgWithDisplay<'b, 'c> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:54:61 [INFO] [stderr] | [INFO] [stderr] 54 | fn as_arg_trait<'a, 'b, T: ArgWithOrder<'a, 'b>>(x: &T) -> &ArgWithOrder<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'a, 'b>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:85:21 [INFO] [stderr] | [INFO] [stderr] 85 | writer: &'a mut Write, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:101:20 [INFO] [stderr] | [INFO] [stderr] 101 | w: &'a mut Write, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:141:38 [INFO] [stderr] | [INFO] [stderr] 141 | pub fn write_app_help(w: &'a mut Write, app: &App, use_long: bool) -> ClapResult<()> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:148:41 [INFO] [stderr] | [INFO] [stderr] 148 | pub fn write_parser_help(w: &'a mut Write, parser: &Parser, use_long: bool) -> ClapResult<()> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:156:51 [INFO] [stderr] | [INFO] [stderr] 156 | pub fn write_parser_help_to_stderr(w: &'a mut Write, parser: &Parser) -> ClapResult<()> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:163:20 [INFO] [stderr] | [INFO] [stderr] 163 | w: &'a mut Write, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:208:32 [INFO] [stderr] | [INFO] [stderr] 208 | I: Iterator>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:236:32 [INFO] [stderr] | [INFO] [stderr] 236 | I: Iterator>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:273:43 [INFO] [stderr] | [INFO] [stderr] 273 | fn write_arg<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:283:39 [INFO] [stderr] | [INFO] [stderr] 283 | fn short<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:296:38 [INFO] [stderr] | [INFO] [stderr] 296 | fn long<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:325:37 [INFO] [stderr] | [INFO] [stderr] 325 | fn val<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:453:38 [INFO] [stderr] | [INFO] [stderr] 453 | fn help<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>, spec_vals: &str) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:511:29 [INFO] [stderr] | [INFO] [stderr] 511 | fn spec_vals(&self, a: &ArgWithDisplay) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:579:42 [INFO] [stderr] | [INFO] [stderr] 579 | fn should_show_arg(use_long: bool, arg: &ArgWithOrder) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder` [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/parser.rs:149:17 [INFO] [stderr] | [INFO] [stderr] 149 | / (self.flags.iter().any(|f| &f.b.name == arg) [INFO] [stderr] 150 | | || self.opts.iter().any(|o| &o.b.name == arg) [INFO] [stderr] 151 | | || self.positionals.values().any(|p| &p.b.name == arg) [INFO] [stderr] 152 | | || self.groups.iter().any(|g| &g.name == arg)) [INFO] [stderr] | |__________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 149 | self.flags.iter().any(|f| &f.b.name == arg) [INFO] [stderr] 150 | || self.opts.iter().any(|o| &o.b.name == arg) [INFO] [stderr] 151 | || self.positionals.values().any(|p| &p.b.name == arg) [INFO] [stderr] 152 | || self.groups.iter().any(|g| &g.name == arg) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/parser.rs:200:13 [INFO] [stderr] | [INFO] [stderr] 200 | (self.positionals.len() + 1) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/parser.rs:309:17 [INFO] [stderr] | [INFO] [stderr] 309 | (self.positionals.len() + 1) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/parser.rs:334:17 [INFO] [stderr] | [INFO] [stderr] 334 | (self.positionals.len() + 1) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/parser.rs:842:17 [INFO] [stderr] | [INFO] [stderr] 842 | (o.is_set(ArgSettings::AllowLeadingHyphen) || app_wide_settings) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/parser.rs:850:17 [INFO] [stderr] | [INFO] [stderr] 850 | (p.is_set(ArgSettings::AllowLeadingHyphen) || app_wide_settings) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/macros.rs:970:63 [INFO] [stderr] | [INFO] [stderr] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] | [INFO] [stderr] ::: src/app/parser.rs:964:39 [INFO] [stderr] | [INFO] [stderr] 964 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stderr] | ------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/macros.rs:970:63 [INFO] [stderr] | [INFO] [stderr] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] | [INFO] [stderr] ::: src/app/parser.rs:1110:39 [INFO] [stderr] | [INFO] [stderr] 1110 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stderr] | ------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/macros.rs:970:63 [INFO] [stderr] | [INFO] [stderr] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] | [INFO] [stderr] ::: src/app/parser.rs:1238:27 [INFO] [stderr] | [INFO] [stderr] 1238 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stderr] | ------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/parser.rs:2168:55 [INFO] [stderr] | [INFO] [stderr] 2168 | pub fn find_any_arg(&self, name: &str) -> Option<&AnyArg<'a, 'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/macros.rs:970:63 [INFO] [stderr] | [INFO] [stderr] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] | [INFO] [stderr] ::: src/app/validator.rs:214:32 [INFO] [stderr] | [INFO] [stderr] 214 | if let Some(arg) = find_any_by_name!(self.0, name) { [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/macros.rs:970:63 [INFO] [stderr] | [INFO] [stderr] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] | [INFO] [stderr] ::: src/app/validator.rs:231:39 [INFO] [stderr] | [INFO] [stderr] 231 | if let Some(bl) = find_any_by_name!(self.0, *arg).unwrap().blacklist() { [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/validator.rs:364:25 [INFO] [stderr] | [INFO] [stderr] 364 | (ma.vals.len() % num as usize) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/macros.rs:970:63 [INFO] [stderr] | [INFO] [stderr] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] | [INFO] [stderr] ::: src/app/validator.rs:467:37 [INFO] [stderr] | [INFO] [stderr] 467 | } else if let Some(a) = find_any_by_name!(self.0, *name) { [INFO] [stderr] | -------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/validator.rs:508:42 [INFO] [stderr] | [INFO] [stderr] 508 | fn validate_arg_conflicts(&self, a: &AnyArg, matcher: &ArgMatcher) -> Option { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/validator.rs:523:44 [INFO] [stderr] | [INFO] [stderr] 523 | fn validate_required_unless(&self, a: &AnyArg, matcher: &ArgMatcher) -> Option { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/validator.rs:578:42 [INFO] [stderr] | [INFO] [stderr] 578 | fn is_missing_required_ok(&self, a: &AnyArg, matcher: &ArgMatcher) -> bool { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/mod.rs:1844:39 [INFO] [stderr] | [INFO] [stderr] 1844 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/mod.rs:1847:42 [INFO] [stderr] | [INFO] [stderr] 1847 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/any_arg.rs:26:39 [INFO] [stderr] | [INFO] [stderr] 26 | fn validator(&self) -> Option<&Rc Result<(), String>>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/any_arg.rs:27:42 [INFO] [stderr] | [INFO] [stderr] 27 | fn validator_os(&self) -> Option<&Rc Result<(), OsString>>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/any_arg.rs:89:39 [INFO] [stderr] | [INFO] [stderr] 89 | fn validator(&self) -> Option<&Rc Result<(), String>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/any_arg.rs:92:42 [INFO] [stderr] | [INFO] [stderr] 92 | fn validator_os(&self) -> Option<&Rc Result<(), OsString>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/flag.rs:103:39 [INFO] [stderr] | [INFO] [stderr] 103 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/flag.rs:106:42 [INFO] [stderr] | [INFO] [stderr] 106 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/option.rs:156:39 [INFO] [stderr] | [INFO] [stderr] 156 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/option.rs:159:42 [INFO] [stderr] | [INFO] [stderr] 159 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/positional.rs:177:39 [INFO] [stderr] | [INFO] [stderr] 177 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/positional.rs:180:42 [INFO] [stderr] | [INFO] [stderr] 180 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/valued.rs:19:30 [INFO] [stderr] | [INFO] [stderr] 19 | pub validator: Option Result<(), String>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/valued.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | pub validator_os: Option Result<(), OsString>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_matcher.rs:30:20 [INFO] [stderr] | [INFO] [stderr] 30 | a: Option<&AnyArg<'a, 'b>>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_matcher.rs:75:60 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn handle_self_overrides<'b>(&mut self, a: Option<&AnyArg<'a, 'b>>) { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:412:15 [INFO] [stderr] | [INFO] [stderr] 412 | arg: &AnyArg, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:450:33 [INFO] [stderr] | [INFO] [stderr] 450 | pub fn empty_value(arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:478:15 [INFO] [stderr] | [INFO] [stderr] 478 | arg: &AnyArg, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:663:48 [INFO] [stderr] | [INFO] [stderr] 663 | pub fn too_many_values(val: V, arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:692:15 [INFO] [stderr] | [INFO] [stderr] 692 | arg: &AnyArg, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:725:42 [INFO] [stderr] | [INFO] [stderr] 725 | pub fn value_validation(arg: Option<&AnyArg>, err: String, color: ColorWhen) -> Self { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:748:24 [INFO] [stderr] | [INFO] [stderr] 748 | let n: Option<&AnyArg> = None; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:754:15 [INFO] [stderr] | [INFO] [stderr] 754 | arg: &AnyArg, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:789:47 [INFO] [stderr] | [INFO] [stderr] 789 | pub fn unexpected_multiple_usage(arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stderr] --> src/app/parser.rs:96:14 [INFO] [stderr] | [INFO] [stderr] 96 | .trim_left_matches(|c| c == '-') [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stderr] --> src/app/parser.rs:105:14 [INFO] [stderr] | [INFO] [stderr] 105 | .trim_left_matches(|c| c == '-') [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/app/parser.rs:138:75 [INFO] [stderr] | [INFO] [stderr] 138 | Err(why) => panic!("couldn't create completion file: {}", why.description()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stderr] --> src/args/arg.rs:337:35 [INFO] [stderr] | [INFO] [stderr] 337 | self.s.short = s.as_ref().trim_left_matches(|c| c == '-').chars().nth(0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stderr] --> src/args/arg.rs:377:30 [INFO] [stderr] | [INFO] [stderr] 377 | self.s.long = Some(l.trim_left_matches(|c| c == '-')); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:852:60 [INFO] [stderr] | [INFO] [stderr] 852 | message: format!("{} {}", c.error("error:"), e.description()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:910:35 [INFO] [stderr] | [INFO] [stderr] 910 | Error::with_description(e.description(), ErrorKind::Io) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:916:35 [INFO] [stderr] | [INFO] [stderr] 916 | Error::with_description(e.description(), ErrorKind::Format) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 68 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:43:27 [INFO] [stderr] | [INFO] [stderr] 43 | fn as_base(&self) -> &ArgWithDisplay<'b, 'c>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:49:27 [INFO] [stderr] | [INFO] [stderr] 49 | fn as_base(&self) -> &ArgWithDisplay<'b, 'c> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:54:61 [INFO] [stderr] | [INFO] [stderr] 54 | fn as_arg_trait<'a, 'b, T: ArgWithOrder<'a, 'b>>(x: &T) -> &ArgWithOrder<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'a, 'b>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:85:21 [INFO] [stderr] | [INFO] [stderr] 85 | writer: &'a mut Write, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:101:20 [INFO] [stderr] | [INFO] [stderr] 101 | w: &'a mut Write, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:141:38 [INFO] [stderr] | [INFO] [stderr] 141 | pub fn write_app_help(w: &'a mut Write, app: &App, use_long: bool) -> ClapResult<()> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:148:41 [INFO] [stderr] | [INFO] [stderr] 148 | pub fn write_parser_help(w: &'a mut Write, parser: &Parser, use_long: bool) -> ClapResult<()> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:156:51 [INFO] [stderr] | [INFO] [stderr] 156 | pub fn write_parser_help_to_stderr(w: &'a mut Write, parser: &Parser) -> ClapResult<()> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:163:20 [INFO] [stderr] | [INFO] [stderr] 163 | w: &'a mut Write, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:208:32 [INFO] [stderr] | [INFO] [stderr] 208 | I: Iterator>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:236:32 [INFO] [stderr] | [INFO] [stderr] 236 | I: Iterator>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:273:43 [INFO] [stderr] | [INFO] [stderr] 273 | fn write_arg<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:283:39 [INFO] [stderr] | [INFO] [stderr] 283 | fn short<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:296:38 [INFO] [stderr] | [INFO] [stderr] 296 | fn long<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:325:37 [INFO] [stderr] | [INFO] [stderr] 325 | fn val<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:453:38 [INFO] [stderr] | [INFO] [stderr] 453 | fn help<'b, 'c>(&mut self, arg: &ArgWithDisplay<'b, 'c>, spec_vals: &str) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay<'b, 'c>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:511:29 [INFO] [stderr] | [INFO] [stderr] 511 | fn spec_vals(&self, a: &ArgWithDisplay) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithDisplay` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/help.rs:579:42 [INFO] [stderr] | [INFO] [stderr] 579 | fn should_show_arg(use_long: bool, arg: &ArgWithOrder) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn ArgWithOrder` [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/parser.rs:149:17 [INFO] [stderr] | [INFO] [stderr] 149 | / (self.flags.iter().any(|f| &f.b.name == arg) [INFO] [stderr] 150 | | || self.opts.iter().any(|o| &o.b.name == arg) [INFO] [stderr] 151 | | || self.positionals.values().any(|p| &p.b.name == arg) [INFO] [stderr] 152 | | || self.groups.iter().any(|g| &g.name == arg)) [INFO] [stderr] | |__________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 149 | self.flags.iter().any(|f| &f.b.name == arg) [INFO] [stderr] 150 | || self.opts.iter().any(|o| &o.b.name == arg) [INFO] [stderr] 151 | || self.positionals.values().any(|p| &p.b.name == arg) [INFO] [stderr] 152 | || self.groups.iter().any(|g| &g.name == arg) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/parser.rs:200:13 [INFO] [stderr] | [INFO] [stderr] 200 | (self.positionals.len() + 1) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/parser.rs:309:17 [INFO] [stderr] | [INFO] [stderr] 309 | (self.positionals.len() + 1) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/parser.rs:334:17 [INFO] [stderr] | [INFO] [stderr] 334 | (self.positionals.len() + 1) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/parser.rs:842:17 [INFO] [stderr] | [INFO] [stderr] 842 | (o.is_set(ArgSettings::AllowLeadingHyphen) || app_wide_settings) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/parser.rs:850:17 [INFO] [stderr] | [INFO] [stderr] 850 | (p.is_set(ArgSettings::AllowLeadingHyphen) || app_wide_settings) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/macros.rs:970:63 [INFO] [stderr] | [INFO] [stderr] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] | [INFO] [stderr] ::: src/app/parser.rs:964:39 [INFO] [stderr] | [INFO] [stderr] 964 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stderr] | ------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/macros.rs:970:63 [INFO] [stderr] | [INFO] [stderr] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] | [INFO] [stderr] ::: src/app/parser.rs:1110:39 [INFO] [stderr] | [INFO] [stderr] 1110 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stderr] | ------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/macros.rs:970:63 [INFO] [stderr] | [INFO] [stderr] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] | [INFO] [stderr] ::: src/app/parser.rs:1238:27 [INFO] [stderr] | [INFO] [stderr] 1238 | let any_arg = find_any_by_name!(self, self.cache.unwrap_or("")); [INFO] [stderr] | ------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/parser.rs:2168:55 [INFO] [stderr] | [INFO] [stderr] 2168 | pub fn find_any_arg(&self, name: &str) -> Option<&AnyArg<'a, 'b>> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/macros.rs:970:63 [INFO] [stderr] | [INFO] [stderr] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] | [INFO] [stderr] ::: src/app/validator.rs:214:32 [INFO] [stderr] | [INFO] [stderr] 214 | if let Some(arg) = find_any_by_name!(self.0, name) { [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/macros.rs:970:63 [INFO] [stderr] | [INFO] [stderr] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] | [INFO] [stderr] ::: src/app/validator.rs:231:39 [INFO] [stderr] | [INFO] [stderr] 231 | if let Some(bl) = find_any_by_name!(self.0, *arg).unwrap().blacklist() { [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/app/validator.rs:364:25 [INFO] [stderr] | [INFO] [stderr] 364 | (ma.vals.len() % num as usize) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/macros.rs:970:63 [INFO] [stderr] | [INFO] [stderr] 970 | fn as_trait_obj<'a, 'b, T: AnyArg<'a, 'b>>(x: &T) -> &AnyArg<'a, 'b> { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] | [INFO] [stderr] ::: src/app/validator.rs:467:37 [INFO] [stderr] | [INFO] [stderr] 467 | } else if let Some(a) = find_any_by_name!(self.0, *name) { [INFO] [stderr] | -------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/validator.rs:508:42 [INFO] [stderr] | [INFO] [stderr] 508 | fn validate_arg_conflicts(&self, a: &AnyArg, matcher: &ArgMatcher) -> Option { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/validator.rs:523:44 [INFO] [stderr] | [INFO] [stderr] 523 | fn validate_required_unless(&self, a: &AnyArg, matcher: &ArgMatcher) -> Option { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/validator.rs:578:42 [INFO] [stderr] | [INFO] [stderr] 578 | fn is_missing_required_ok(&self, a: &AnyArg, matcher: &ArgMatcher) -> bool { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/mod.rs:1844:39 [INFO] [stderr] | [INFO] [stderr] 1844 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/app/mod.rs:1847:42 [INFO] [stderr] | [INFO] [stderr] 1847 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/any_arg.rs:26:39 [INFO] [stderr] | [INFO] [stderr] 26 | fn validator(&self) -> Option<&Rc Result<(), String>>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/any_arg.rs:27:42 [INFO] [stderr] | [INFO] [stderr] 27 | fn validator_os(&self) -> Option<&Rc Result<(), OsString>>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/any_arg.rs:89:39 [INFO] [stderr] | [INFO] [stderr] 89 | fn validator(&self) -> Option<&Rc Result<(), String>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/any_arg.rs:92:42 [INFO] [stderr] | [INFO] [stderr] 92 | fn validator_os(&self) -> Option<&Rc Result<(), OsString>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/flag.rs:103:39 [INFO] [stderr] | [INFO] [stderr] 103 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/flag.rs:106:42 [INFO] [stderr] | [INFO] [stderr] 106 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/option.rs:156:39 [INFO] [stderr] | [INFO] [stderr] 156 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/option.rs:159:42 [INFO] [stderr] | [INFO] [stderr] 159 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/positional.rs:177:39 [INFO] [stderr] | [INFO] [stderr] 177 | fn validator(&self) -> Option<&Rc StdResult<(), String>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> StdResult<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/positional.rs:180:42 [INFO] [stderr] | [INFO] [stderr] 180 | fn validator_os(&self) -> Option<&Rc StdResult<(), OsString>>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> StdResult<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/valued.rs:19:30 [INFO] [stderr] | [INFO] [stderr] 19 | pub validator: Option Result<(), String>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(String) -> Result<(), String>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_builder/valued.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | pub validator_os: Option Result<(), OsString>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&OsStr) -> Result<(), OsString>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_matcher.rs:30:20 [INFO] [stderr] | [INFO] [stderr] 30 | a: Option<&AnyArg<'a, 'b>>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/args/arg_matcher.rs:75:60 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn handle_self_overrides<'b>(&mut self, a: Option<&AnyArg<'a, 'b>>) { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn AnyArg<'a, 'b>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:412:15 [INFO] [stderr] | [INFO] [stderr] 412 | arg: &AnyArg, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:450:33 [INFO] [stderr] | [INFO] [stderr] 450 | pub fn empty_value(arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:478:15 [INFO] [stderr] | [INFO] [stderr] 478 | arg: &AnyArg, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:663:48 [INFO] [stderr] | [INFO] [stderr] 663 | pub fn too_many_values(val: V, arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:692:15 [INFO] [stderr] | [INFO] [stderr] 692 | arg: &AnyArg, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:725:42 [INFO] [stderr] | [INFO] [stderr] 725 | pub fn value_validation(arg: Option<&AnyArg>, err: String, color: ColorWhen) -> Self { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:748:24 [INFO] [stderr] | [INFO] [stderr] 748 | let n: Option<&AnyArg> = None; [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:754:15 [INFO] [stderr] | [INFO] [stderr] 754 | arg: &AnyArg, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/errors.rs:789:47 [INFO] [stderr] | [INFO] [stderr] 789 | pub fn unexpected_multiple_usage(arg: &AnyArg, usage: U, color: ColorWhen) -> Self [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn AnyArg` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stderr] --> src/app/parser.rs:96:14 [INFO] [stderr] | [INFO] [stderr] 96 | .trim_left_matches(|c| c == '-') [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stderr] --> src/app/parser.rs:105:14 [INFO] [stderr] | [INFO] [stderr] 105 | .trim_left_matches(|c| c == '-') [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/app/parser.rs:138:75 [INFO] [stderr] | [INFO] [stderr] 138 | Err(why) => panic!("couldn't create completion file: {}", why.description()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stderr] --> src/args/arg.rs:337:35 [INFO] [stderr] | [INFO] [stderr] 337 | self.s.short = s.as_ref().trim_left_matches(|c| c == '-').chars().nth(0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'bitflags::core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stderr] --> src/args/arg.rs:377:30 [INFO] [stderr] | [INFO] [stderr] 377 | self.s.long = Some(l.trim_left_matches(|c| c == '-')); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:852:60 [INFO] [stderr] | [INFO] [stderr] 852 | message: format!("{} {}", c.error("error:"), e.description()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:910:35 [INFO] [stderr] | [INFO] [stderr] 910 | Error::with_description(e.description(), ErrorKind::Io) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/errors.rs:916:35 [INFO] [stderr] | [INFO] [stderr] 916 | Error::with_description(e.description(), ErrorKind::Format) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 68 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.12s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/clap-ba4ea1e5e9561092 [INFO] [stdout] [INFO] [stdout] running 88 tests [INFO] [stdout] test args::arg_builder::option::test::optbuilder_display1 ... ok [INFO] [stdout] test app::settings::test::app_settings_fromstr ... ok [INFO] [stdout] test args::arg_builder::flag::test::flagbuilder_display ... ok [INFO] [stdout] test args::arg_builder::positional::test::display_required ... ok [INFO] [stdout] test args::arg_builder::positional::test::display_val_names ... ok [INFO] [stdout] test args::arg_builder::positional::test::display_val_names_req ... ok [INFO] [stdout] test args::arg_matches::tests::test_default_indices ... ok [INFO] [stdout] test args::arg_matches::tests::test_default_indices_with_shorter_lifetime ... ok [INFO] [stdout] test args::arg_matches::tests::test_default_osvalues ... ok [INFO] [stdout] test args::arg_matches::tests::test_default_osvalues_with_shorter_lifetime ... ok [INFO] [stdout] test args::group::test::test_debug ... ok [INFO] [stdout] test args::group::test::test_from ... ok [INFO] [stdout] test app::help::test::wrap_help_last_word ... ok [INFO] [stdout] test args::arg_matches::tests::test_default_values ... ok [INFO] [stdout] test args::arg_matches::tests::test_default_values_with_shorter_lifetime ... ok [INFO] [stdout] test args::settings::test::arg_settings_fromstr ... ok [INFO] [stdout] test args::arg_builder::flag::test::flagbuilder_display_single_alias ... ok [INFO] [stdout] test args::arg_builder::flag::test::flagbuilder_display_multiple_aliases ... ok [INFO] [stdout] test args::arg_builder::option::test::optbuilder_display_multiple_aliases ... ok [INFO] [stdout] test args::arg_builder::option::test::optbuilder_display2 ... ok [INFO] [stdout] test args::arg_builder::option::test::optbuilder_display_single_alias ... ok [INFO] [stdout] test fmt::test::colored_output ... ok [INFO] [stdout] test usage_parser::test::create_flag_usage ... ok [INFO] [stdout] test usage_parser::test::create_option_usage6 ... ok [INFO] [stdout] test args::arg_builder::positional::test::display_mult ... ok [INFO] [stdout] test args::group::test::groups ... ok [INFO] [stdout] test usage_parser::test::create_option_usage8 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage9 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both1 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both4 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both2 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both5 ... ok [INFO] [stdout] test args::arg_builder::option::test::optbuilder_display3 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both7 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both8 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both_equals1 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both_equals3 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both_equals4 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both_equals6 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both_equals8 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both6 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both_equals5 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both_equals2 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both_equals7 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long1 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long10 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long4 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long6 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long9 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long3 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long5 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long_equals1 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long_equals2 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long_equals10 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long_equals3 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long_equals4 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long_equals5 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long7 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long8 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long_equals7 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long_equals9 ... ok [INFO] [stdout] test usage_parser::test::create_option_with_vals2 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long_equals6 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long_equals8 ... ok [INFO] [stdout] test usage_parser::test::create_option_with_vals1 ... ok [INFO] [stdout] test usage_parser::test::create_option_with_vals3 ... ok [INFO] [stdout] test usage_parser::test::create_option_with_vals4 ... ok [INFO] [stdout] test usage_parser::test::create_option_with_vals5 ... ok [INFO] [stdout] test usage_parser::test::create_positional_usage ... ok [INFO] [stdout] test usage_parser::test::create_positional_usage0 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage0 ... ok [INFO] [stdout] test usage_parser::test::nonascii ... ok [INFO] [stdout] test usage_parser::test::create_option_usage1 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_long2 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage3 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage2 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage4 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage7 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage5 ... ok [INFO] [stdout] test usage_parser::test::create_option_usage_both3 ... ok [INFO] [stderr] Doc-tests clap [INFO] [stdout] test usage_parser::test::pos_req_mult_help ... ok [INFO] [stdout] test usage_parser::test::pos_help_lit_single_quote ... ok [INFO] [stdout] test usage_parser::test::pos_req ... ok [INFO] [stdout] test usage_parser::test::pos_help_newline ... ok [INFO] [stdout] test usage_parser::test::pos_help_newline_lit_sq ... ok [INFO] [stdout] test usage_parser::test::pos_mult ... ok [INFO] [stdout] test usage_parser::test::pos_help_double_lit_single_quote ... ok [INFO] [stdout] test usage_parser::test::pos_mult_help ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 88 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 307 tests [INFO] [stdout] test src/app/mod.rs - app::App::bin_name (line 203) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::gen_completions (line 1346) ... ignored [INFO] [stdout] test src/app/mod.rs - app::App::gen_completions (line 1370) ... ignored [INFO] [stdout] test src/app/mod.rs - app::App::gen_completions_to (line 1412) ... ignored [INFO] [stdout] test src/app/mod.rs - app::App::after_help (line 297) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::args (line 802) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::args_from_usage (line 849) ... ok [INFO] [stdout] test src/app/mod.rs - app::App (line 43) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::arg_from_usage (line 827) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::about (line 226) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::arg (line 776) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::before_help (line 314) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::author (line 179) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::alias (line 881) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::get_matches (line 1452) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::get_matches_safe (line 1473) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::group (line 1000) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::global_setting (line 634) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::get_matches_from_safe (line 1552) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::name (line 271) ... ignored [INFO] [stdout] test src/app/mod.rs - app::App::get_matches_from_safe_borrow (line 1588) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::get_matches_from (line 1502) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::max_term_width (line 761) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::help_short (line 464) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::long_about (line 249) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::global_settings (line 656) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::groups (line 1023) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::help (line 424) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::help_message (line 510) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::subcommand (line 1058) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::setting (line 590) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::long_version (line 363) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::new (line 75) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::unset_setting (line 679) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::set_term_width (line 733) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::settings (line 610) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::template (line 565) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::gen_completions (line 1324) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::version (line 337) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::usage (line 399) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::version_message (line 529) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::version_short (line 490) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::unset_settings (line 698) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::visible_aliases (line 959) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::with_defaults (line 101) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::visible_alias (line 935) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::subcommands (line 1078) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::write_version (line 1275) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::print_help (line 1159) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::write_long_version (line 1296) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::print_long_help (line 1189) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::write_long_help (line 1247) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::write_help (line 1216) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::ColorAlways (line 469) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::AllowMissingPositional (line 269) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::ColorAuto (line 451) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::ColorNever (line 487) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::aliases (line 906) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::DeriveDisplayOrder (line 616) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::ColoredHelp (line 431) ... ok [INFO] [stdout] test src/app/mod.rs - app::App::display_order (line 1109) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::AllowMissingPositional (line 287) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::ArgsNegateSubcommands (line 391) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::AllowLeadingHyphen (line 198) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::DontCollapseArgsInUsage (line 499) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::GlobalVersion (line 633) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::DontDelimitTrailingValues (line 516) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::ArgRequiredElseHelp (line 411) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::NextLineHelp (line 716) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::AllowExternalSubcommands (line 354) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::InferSubcommands (line 678) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::AllowInvalidUtf8 (line 157) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::AllowNegativeNumbers (line 220) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::Hidden (line 650) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::AllowMissingPositional (line 324) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::AllowMissingPositional (line 305) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::DisableVersion (line 595) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::DisableHelpFlags (line 531) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::UnifiedHelpMessage (line 919) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::DisableVersion (line 583) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::DisableHelpSubcommand (line 561) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::PropagateGlobalValuesDown (line 732) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::SubcommandRequiredElseHelp (line 820) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::DisableHelpFlags (line 542) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::StrictUtf8 (line 843) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::NoBinaryName (line 700) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg (line 28) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::SubcommandRequired (line 871) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::PropagateGlobalValuesDown (line 748) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::WaitOnError (line 963) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::SubcommandsNegateReqs (line 775) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::allow_hyphen_values (line 845) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::TrailingVarArg (line 896) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::conflicts_with (line 1119) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::SubcommandsNegateReqs (line 792) ... ok [INFO] [stdout] test src/app/settings.rs - app::settings::AppSettings::VersionlessSubcommands (line 935) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::conflicts_with_all (line 1165) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::aliases (line 418) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::alias (line 388) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::allow_hyphen_values (line 869) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::allow_hyphen_values (line 852) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::case_insensitive (line 2484) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::case_insensitive (line 2502) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::conflicts_with (line 1128) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::conflicts_with_all (line 1175) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::default_value_if (line 3283) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::default_value (line 3224) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::default_value_if (line 3317) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::empty_values (line 2272) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::default_value (line 3207) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::default_value_ifs (line 3401) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::default_value_if (line 3300) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::default_value_if (line 3336) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::default_value_ifs (line 3445) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::default_value_ifs (line 3424) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::display_order (line 3685) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::from_usage (line 283) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::group (line 2534) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::global (line 2221) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::empty_values (line 2282) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::env (line 3512) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::groups (line 2573) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::env (line 3531) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::env (line 3551) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::help (line 516) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::env (line 3571) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::hidden (line 2315) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::hidden_long_help (line 3841) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::global (line 2233) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::group (line 2545) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::hidden_short_help (line 3764) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::groups (line 2584) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::hide_default_value (line 1883) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::hide_possible_values (line 1848) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::hide_default_value (line 1890) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::help (line 526) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::index (line 1930) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::hidden (line 2323) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::hide_possible_values (line 1855) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::hidden_long_help (line 3849) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::hidden_long_help (line 3876) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::last (line 650) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::hidden_short_help (line 3772) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::hidden_short_help (line 3799) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::long (line 356) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::min_values (line 2810) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::long_help (line 571) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::max_values (line 2747) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::index (line 1937) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::multiple (line 2017) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::last (line 679) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::long (line 365) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::long_help (line 585) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::last (line 660) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::max_values (line 2776) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::min_values (line 2839) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::max_values (line 2757) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::min_values (line 2820) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::number_of_values (line 2622) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::multiple (line 2026) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::multiple (line 2081) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::multiple (line 2106) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::multiple (line 2042) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::multiple (line 2060) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::multiple (line 2130) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::next_line_help (line 3627) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::overrides_with (line 1218) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::number_of_values (line 2632) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::possible_value (line 2422) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::overrides_with (line 1243) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::overrides_with (line 1265) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::overrides_with (line 1277) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::possible_values (line 2364) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::overrides_with (line 1292) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::overrides_with (line 1254) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::possible_values (line 2372) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required (line 718) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::possible_value (line 2432) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::require_equals (line 774) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::possible_values (line 2389) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::overrides_with_all (line 1321) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_if (line 1562) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::possible_value (line 2451) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::require_delimiter (line 2954) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::require_delimiter (line 2937) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required (line 727) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_ifs (line 1636) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_unless (line 900) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::require_delimiter (line 2977) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::require_equals (line 786) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_unless_all (line 965) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required (line 743) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::require_equals (line 803) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_unless (line 911) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_if (line 1573) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_unless_one (line 1040) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_unless (line 929) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_if (line 1593) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_ifs (line 1650) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::requires (line 1357) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_ifs (line 1676) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::requires_all (line 1725) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_unless_all (line 977) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::requires_if (line 1428) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_unless_all (line 999) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_unless_one (line 1052) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::required_unless_one (line 1074) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::requires_ifs (line 1497) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::requires (line 1368) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::requires (line 1386) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::requires_all (line 1736) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::short (line 315) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::takes_value (line 1809) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::requires_all (line 1757) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::requires_if (line 1439) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::requires_if (line 1457) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::requires_ifs (line 1511) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::short (line 324) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::value_name (line 3131) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::value_names (line 3062) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::takes_value (line 1816) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::value_terminator (line 2174) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches (line 19) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::use_delimiter (line 2889) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::use_delimiter (line 2871) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::validator_os (line 2702) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::validator (line 2669) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::value_delimiter (line 3013) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::with_name (line 70) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::value_name (line 3139) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::value_names (line 3070) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::value_terminator (line 2185) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::subcommand (line 706) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::visible_alias (line 448) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::index_of (line 397) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::subcommand_name (line 679) ... ok [INFO] [stdout] test src/args/arg.rs - args::arg::Arg::visible_aliases (line 477) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::usage (line 758) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::index_of (line 415) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::index_of (line 434) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::index_of (line 487) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::index_of (line 460) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::indices_of (line 568) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::indices_of (line 545) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::is_present (line 311) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::occurrences_of (line 340) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::indices_of (line 526) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::subcommand_matches (line 605) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::value_of_lossy (line 133) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::value_of (line 102) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::subcommand (line 726) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::occurrences_of (line 355) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::values_of (line 199) ... ok [INFO] [stdout] test src/args/group.rs - args::group::ArgGroup (line 58) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::value_of_os (line 168) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::values_of_lossy (line 233) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::ArgMatches::values_of_os (line 271) ... ok [INFO] [stdout] test src/args/group.rs - args::group::ArgGroup (line 39) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::OsValues (line 843) ... ok [INFO] [stdout] test src/args/group.rs - args::group::ArgGroup::conflicts_with (line 365) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::Values (line 783) ... ok [INFO] [stdout] test src/args/arg_matches.rs - args::arg_matches::Indices (line 901) ... ok [INFO] [stdout] test src/args/group.rs - args::group::ArgGroup::conflicts_with_all (line 401) ... ok [INFO] [stdout] test src/args/group.rs - args::group::ArgGroup::args (line 172) ... ok [INFO] [stdout] test src/args/group.rs - args::group::ArgGroup::arg (line 140) ... ok [INFO] [stdout] test src/args/group.rs - args::group::ArgGroup::multiple (line 202) ... ok [INFO] [stdout] test src/args/group.rs - args::group::ArgGroup::with_name (line 102) ... ok [INFO] [stdout] test src/args/subcommand.rs - args::subcommand::SubCommand (line 17) ... ok [INFO] [stdout] test src/args/subcommand.rs - args::subcommand::SubCommand::with_name (line 44) ... ok [INFO] [stdout] test src/args/group.rs - args::group::ArgGroup::requires_all (line 327) ... ok [INFO] [stdout] test src/args/group.rs - args::group::ArgGroup::multiple (line 219) ... ok [INFO] [stdout] test src/args/group.rs - args::group::ArgGroup::required (line 255) ... ok [INFO] [stdout] test src/args/group.rs - args::group::ArgGroup::requires (line 288) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::HelpDisplayed (line 331) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::InvalidSubcommand (line 62) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::InvalidUtf8 (line 304) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::InvalidValue (line 28) ... ok [INFO] [stdout] test src/lib.rs - (line 114) ... ok [INFO] [stdout] test src/lib.rs - (line 187) ... ignored [INFO] [stdout] test src/errors.rs - errors::ErrorKind::ArgumentConflict (line 209) ... ok [INFO] [stdout] test src/lib.rs - (line 208) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::EmptyValue (line 111) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::MissingArgumentOrSubcommand (line 263) ... ok [INFO] [stdout] test src/lib.rs - (line 288) ... ok [INFO] [stdout] test src/macros.rs - app_from_crate (line 564) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::MissingSubcommand (line 243) ... ok [INFO] [stdout] test src/lib.rs - (line 42) ... ok [INFO] [stdout] test src/macros.rs - crate_authors (line 454) ... ok [INFO] [stdout] test src/macros.rs - crate_description (line 509) ... ok [INFO] [stdout] test src/macros.rs - clap_app (line 595) ... ok [INFO] [stdout] test src/macros.rs - crate_version (line 425) ... ok [INFO] [stdout] test src/macros.rs - value_t (line 42) ... ok [INFO] [stdout] test src/macros.rs - crate_name (line 531) ... ok [INFO] [stdout] test src/macros.rs - value_t_or_exit (line 88) ... ok [INFO] [stdout] test src/macros.rs - values_t (line 133) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::MissingRequiredArgument (line 227) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::TooFewValues (line 169) ... ok [INFO] [stdout] test src/macros.rs - values_t_or_exit (line 195) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::ValueValidation (line 128) ... ok [INFO] [stdout] test src/macros.rs - _clap_count_exprs (line 256) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::UnexpectedMultipleUsage (line 283) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::VersionDisplayed (line 345) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::UnrecognizedSubcommand (line 89) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::WrongNumberOfValues (line 188) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::UnknownArgument (line 45) ... ok [INFO] [stdout] test src/errors.rs - errors::ErrorKind::TooManyValues (line 151) ... ok [INFO] [stdout] test src/macros.rs - arg_enum (line 284) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 302 passed; 0 failed; 5 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "b1c003620e49d9ab4cc96ecea96ab4feb1bba7f218fa3740ef2311bc8283a4d2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b1c003620e49d9ab4cc96ecea96ab4feb1bba7f218fa3740ef2311bc8283a4d2", kill_on_drop: false }` [INFO] [stdout] b1c003620e49d9ab4cc96ecea96ab4feb1bba7f218fa3740ef2311bc8283a4d2