[INFO] crate standard_paths 0.4.6 is already in cache [INFO] extracting crate standard_paths 0.4.6 into work/ex/clippy-test-run/sources/stable/reg/standard_paths/0.4.6 [INFO] extracting crate standard_paths 0.4.6 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/standard_paths/0.4.6 [INFO] validating manifest of standard_paths-0.4.6 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of standard_paths-0.4.6 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing standard_paths-0.4.6 [INFO] finished frobbing standard_paths-0.4.6 [INFO] frobbed toml for standard_paths-0.4.6 written to work/ex/clippy-test-run/sources/stable/reg/standard_paths/0.4.6/Cargo.toml [INFO] started frobbing standard_paths-0.4.6 [INFO] finished frobbing standard_paths-0.4.6 [INFO] frobbed toml for standard_paths-0.4.6 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/standard_paths/0.4.6/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting standard_paths-0.4.6 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-1/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/standard_paths/0.4.6:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 38efdf05267f6dc43eeb2d959ca9f09a0823770996aa7dbffab90e99766a7943 [INFO] running `"docker" "start" "-a" "38efdf05267f6dc43eeb2d959ca9f09a0823770996aa7dbffab90e99766a7943"` [INFO] [stderr] Checking argparse v0.2.2 [INFO] [stderr] Checking users v0.5.3 [INFO] [stderr] Checking standard_paths v0.4.6 (/opt/crater/workdir) [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/linux.rs:289:21 [INFO] [stderr] | [INFO] [stderr] 289 | const EXTENSIONS: [&'static str; 3] = ["bin", "run", "sh"]; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:80:43 [INFO] [stderr] | [INFO] [stderr] 80 | LocationType::HomeLocation => env::home_dir().ok_or(StandardPaths::home_dir_err()), [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:24:24 [INFO] [stderr] | [INFO] [stderr] 24 | _ => match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 84 | let mut path = get_var_or_home!("XDG_CACHE_HOME", ".cache"); [INFO] [stderr] | -------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:24:24 [INFO] [stderr] | [INFO] [stderr] 24 | _ => match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 94 | let mut path = get_var_or_home!("XDG_DATA_HOME", ".local", "share"); [INFO] [stderr] | ---------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:24:24 [INFO] [stderr] | [INFO] [stderr] 24 | _ => match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 106 | let mut path = get_var_or_home!("XDG_CONFIG_HOME", ".config"); [INFO] [stderr] | ---------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:24:24 [INFO] [stderr] | [INFO] [stderr] 24 | _ => match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 166 | let mut config = get_var_or_home!("XDG_CONFIG_HOME", ".config"); [INFO] [stderr] | ---------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:198:46 [INFO] [stderr] | [INFO] [stderr] 198 | let mut path = match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:218:38 [INFO] [stderr] | [INFO] [stderr] 218 | let mut path = match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:262:50 [INFO] [stderr] | [INFO] [stderr] 262 | LocationType::FontsLocation => match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/linux.rs:80:59 [INFO] [stderr] | [INFO] [stderr] 80 | LocationType::HomeLocation => env::home_dir().ok_or(StandardPaths::home_dir_err()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(StandardPaths::home_dir_err)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/linux.rs:134:26 [INFO] [stderr] | [INFO] [stderr] 134 | (PathBuf::from(path), md) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `path` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `StandardPaths` [INFO] [stderr] --> src/lib.rs:155:5 [INFO] [stderr] | [INFO] [stderr] 155 | / pub fn new() -> StandardPaths { [INFO] [stderr] 156 | | StandardPaths { [INFO] [stderr] 157 | | app_name: match env::var("CARGO_PKG_NAME") { [INFO] [stderr] 158 | | Ok(name) => name, [INFO] [stderr] ... | [INFO] [stderr] 162 | | } [INFO] [stderr] 163 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 144 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/lib.rs:282:13 [INFO] [stderr] | [INFO] [stderr] 282 | / match &option { [INFO] [stderr] 283 | | &LocateOption::LocateBoth => if path.exists() { return Ok(Some(path)) }, [INFO] [stderr] 284 | | &LocateOption::LocateFile => if path.is_file() { return Ok(Some(path)) }, [INFO] [stderr] 285 | | &LocateOption::LocateDirectory => if path.is_dir() { return Ok(Some(path)) } [INFO] [stderr] 286 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 282 | match option { [INFO] [stderr] 283 | LocateOption::LocateBoth => if path.exists() { return Ok(Some(path)) }, [INFO] [stderr] 284 | LocateOption::LocateFile => if path.is_file() { return Ok(Some(path)) }, [INFO] [stderr] 285 | LocateOption::LocateDirectory => if path.is_dir() { return Ok(Some(path)) } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/lib.rs:310:13 [INFO] [stderr] | [INFO] [stderr] 310 | / match &option { [INFO] [stderr] 311 | | &LocateOption::LocateBoth => if path.exists() { res.push(path); }, [INFO] [stderr] 312 | | &LocateOption::LocateFile => if path.is_file() { res.push(path); }, [INFO] [stderr] 313 | | &LocateOption::LocateDirectory => if path.is_dir() { res.push(path); } [INFO] [stderr] 314 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 310 | match option { [INFO] [stderr] 311 | LocateOption::LocateBoth => if path.exists() { res.push(path); }, [INFO] [stderr] 312 | LocateOption::LocateFile => if path.is_file() { res.push(path); }, [INFO] [stderr] 313 | LocateOption::LocateDirectory => if path.is_dir() { res.push(path); } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/linux.rs:289:21 [INFO] [stderr] | [INFO] [stderr] 289 | const EXTENSIONS: [&'static str; 3] = ["bin", "run", "sh"]; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:80:43 [INFO] [stderr] | [INFO] [stderr] 80 | LocationType::HomeLocation => env::home_dir().ok_or(StandardPaths::home_dir_err()), [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:24:24 [INFO] [stderr] | [INFO] [stderr] 24 | _ => match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 84 | let mut path = get_var_or_home!("XDG_CACHE_HOME", ".cache"); [INFO] [stderr] | -------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:24:24 [INFO] [stderr] | [INFO] [stderr] 24 | _ => match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 94 | let mut path = get_var_or_home!("XDG_DATA_HOME", ".local", "share"); [INFO] [stderr] | ---------------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:24:24 [INFO] [stderr] | [INFO] [stderr] 24 | _ => match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 106 | let mut path = get_var_or_home!("XDG_CONFIG_HOME", ".config"); [INFO] [stderr] | ---------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:24:24 [INFO] [stderr] | [INFO] [stderr] 24 | _ => match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 166 | let mut config = get_var_or_home!("XDG_CONFIG_HOME", ".config"); [INFO] [stderr] | ---------------------------------------------- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:198:46 [INFO] [stderr] | [INFO] [stderr] 198 | let mut path = match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:218:38 [INFO] [stderr] | [INFO] [stderr] 218 | let mut path = match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/linux.rs:262:50 [INFO] [stderr] | [INFO] [stderr] 262 | LocationType::FontsLocation => match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/linux.rs:80:59 [INFO] [stderr] | [INFO] [stderr] 80 | LocationType::HomeLocation => env::home_dir().ok_or(StandardPaths::home_dir_err()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(StandardPaths::home_dir_err)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/linux.rs:134:26 [INFO] [stderr] | [INFO] [stderr] 134 | (PathBuf::from(path), md) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `path` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `StandardPaths` [INFO] [stderr] --> src/lib.rs:155:5 [INFO] [stderr] | [INFO] [stderr] 155 | / pub fn new() -> StandardPaths { [INFO] [stderr] 156 | | StandardPaths { [INFO] [stderr] 157 | | app_name: match env::var("CARGO_PKG_NAME") { [INFO] [stderr] 158 | | Ok(name) => name, [INFO] [stderr] ... | [INFO] [stderr] 162 | | } [INFO] [stderr] 163 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 144 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/lib.rs:282:13 [INFO] [stderr] | [INFO] [stderr] 282 | / match &option { [INFO] [stderr] 283 | | &LocateOption::LocateBoth => if path.exists() { return Ok(Some(path)) }, [INFO] [stderr] 284 | | &LocateOption::LocateFile => if path.is_file() { return Ok(Some(path)) }, [INFO] [stderr] 285 | | &LocateOption::LocateDirectory => if path.is_dir() { return Ok(Some(path)) } [INFO] [stderr] 286 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 282 | match option { [INFO] [stderr] 283 | LocateOption::LocateBoth => if path.exists() { return Ok(Some(path)) }, [INFO] [stderr] 284 | LocateOption::LocateFile => if path.is_file() { return Ok(Some(path)) }, [INFO] [stderr] 285 | LocateOption::LocateDirectory => if path.is_dir() { return Ok(Some(path)) } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/lib.rs:310:13 [INFO] [stderr] | [INFO] [stderr] 310 | / match &option { [INFO] [stderr] 311 | | &LocateOption::LocateBoth => if path.exists() { res.push(path); }, [INFO] [stderr] 312 | | &LocateOption::LocateFile => if path.is_file() { res.push(path); }, [INFO] [stderr] 313 | | &LocateOption::LocateDirectory => if path.is_dir() { res.push(path); } [INFO] [stderr] 314 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 310 | match option { [INFO] [stderr] 311 | LocateOption::LocateBoth => if path.exists() { res.push(path); }, [INFO] [stderr] 312 | LocateOption::LocateFile => if path.is_file() { res.push(path); }, [INFO] [stderr] 313 | LocateOption::LocateDirectory => if path.is_dir() { res.push(path); } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> examples/find_executables.rs:9:8 [INFO] [stderr] | [INFO] [stderr] 9 | if args.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `args.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 4.56s [INFO] running `"docker" "inspect" "38efdf05267f6dc43eeb2d959ca9f09a0823770996aa7dbffab90e99766a7943"` [INFO] running `"docker" "rm" "-f" "38efdf05267f6dc43eeb2d959ca9f09a0823770996aa7dbffab90e99766a7943"` [INFO] [stdout] 38efdf05267f6dc43eeb2d959ca9f09a0823770996aa7dbffab90e99766a7943