[INFO] updating cached repository connanp/raytracer [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/connanp/raytracer [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/connanp/raytracer" "work/ex/clippy-test-run/sources/stable/gh/connanp/raytracer"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/connanp/raytracer'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/connanp/raytracer" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/connanp/raytracer"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/connanp/raytracer'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] d857717d05fe81623ad2864e31a6382dd911d51e [INFO] sha for GitHub repo connanp/raytracer: d857717d05fe81623ad2864e31a6382dd911d51e [INFO] validating manifest of connanp/raytracer 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 connanp/raytracer 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 connanp/raytracer [INFO] finished frobbing connanp/raytracer [INFO] frobbed toml for connanp/raytracer written to work/ex/clippy-test-run/sources/stable/gh/connanp/raytracer/Cargo.toml [INFO] started frobbing connanp/raytracer [INFO] finished frobbing connanp/raytracer [INFO] frobbed toml for connanp/raytracer written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/connanp/raytracer/Cargo.toml [INFO] crate connanp/raytracer has a lockfile. skipping [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 connanp/raytracer against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-2/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/connanp/raytracer:/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] 62d50a23e1e9219ac3405978017c556bc25a5ea967c5a76dc9b35ed2d839390e [INFO] running `"docker" "start" "-a" "62d50a23e1e9219ac3405978017c556bc25a5ea967c5a76dc9b35ed2d839390e"` [INFO] [stderr] Checking rayon-core v1.0.0 [INFO] [stderr] Checking rayon v0.7.0 [INFO] [stderr] Checking raytracer v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ray.rs:13:15 [INFO] [stderr] | [INFO] [stderr] 13 | Ray { a: a, b: b, time: 0.0 } [INFO] [stderr] | ^^^^ help: replace it with: `a` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ray.rs:13:21 [INFO] [stderr] | [INFO] [stderr] 13 | Ray { a: a, b: b, time: 0.0 } [INFO] [stderr] | ^^^^ help: replace it with: `b` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/camera.rs:43:13 [INFO] [stderr] | [INFO] [stderr] 43 | u: u, [INFO] [stderr] | ^^^^ help: replace it with: `u` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/camera.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | v: v, [INFO] [stderr] | ^^^^ help: replace it with: `v` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/camera.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | w: w, [INFO] [stderr] | ^^^^ help: replace it with: `w` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/camera.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | time: time, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `time` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/material.rs:75:41 [INFO] [stderr] | [INFO] [stderr] 75 | MaterialKind::Dielectric(Self { idx: idx }) [INFO] [stderr] | ^^^^^^^^ help: replace it with: `idx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/shape.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | time: time, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `time` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ray.rs:13:15 [INFO] [stderr] | [INFO] [stderr] 13 | Ray { a: a, b: b, time: 0.0 } [INFO] [stderr] | ^^^^ help: replace it with: `a` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ray.rs:13:21 [INFO] [stderr] | [INFO] [stderr] 13 | Ray { a: a, b: b, time: 0.0 } [INFO] [stderr] | ^^^^ help: replace it with: `b` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/camera.rs:43:13 [INFO] [stderr] | [INFO] [stderr] 43 | u: u, [INFO] [stderr] | ^^^^ help: replace it with: `u` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/camera.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | v: v, [INFO] [stderr] | ^^^^ help: replace it with: `v` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/camera.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | w: w, [INFO] [stderr] | ^^^^ help: replace it with: `w` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/camera.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | time: time, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `time` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/material.rs:75:41 [INFO] [stderr] | [INFO] [stderr] 75 | MaterialKind::Dielectric(Self { idx: idx }) [INFO] [stderr] | ^^^^^^^^ help: replace it with: `idx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/shape.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | time: time, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `time` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/vec.rs:20:35 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn unit_vector(&mut self) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_unit)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::range::Iter` [INFO] [stderr] --> src/main.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use rayon::range::Iter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/vec.rs:20:35 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn unit_vector(&mut self) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_unit)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::range::Iter` [INFO] [stderr] --> src/main.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use rayon::range::Iter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/main.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ti` [INFO] [stderr] --> src/ray.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | pub fn new(a: V3, b: V3, ti: f32) -> Self { [INFO] [stderr] | ^^ help: consider using `_ti` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/main.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `w` [INFO] [stderr] --> src/camera.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | w: V3, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/collision.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn new() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ti` [INFO] [stderr] --> src/ray.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | pub fn new(a: V3, b: V3, ti: f32) -> Self { [INFO] [stderr] | ^^ help: consider using `_ti` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> src/camera.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | / pub fn new(look_from: V3, [INFO] [stderr] 23 | | look_at: V3, [INFO] [stderr] 24 | | v_up: V3, [INFO] [stderr] 25 | | fov_deg: f32, [INFO] [stderr] ... | [INFO] [stderr] 48 | | } [INFO] [stderr] 49 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/material.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | / pub fn new(a: &V3) -> MaterialKind { [INFO] [stderr] 27 | | MaterialKind::Lambertian(Self { albedo: *a }) [INFO] [stderr] 28 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/material.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | / pub fn new(a: &V3, fuzz: f32) -> MaterialKind { [INFO] [stderr] 46 | | let f = if fuzz < 1.0 { fuzz } else { 1.0 }; [INFO] [stderr] 47 | | MaterialKind::Metal(Self { [INFO] [stderr] 48 | | albedo: *a, [INFO] [stderr] 49 | | fuzz: f, [INFO] [stderr] 50 | | }) [INFO] [stderr] 51 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/material.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | / pub fn new(idx: f32) -> MaterialKind { [INFO] [stderr] 75 | | MaterialKind::Dielectric(Self { idx: idx }) [INFO] [stderr] 76 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/collision.rs:43:13 [INFO] [stderr] | [INFO] [stderr] 43 | / match obj.hit(r, t_min, closest.unwrap() as f32) { [INFO] [stderr] 44 | | Some(o) => { [INFO] [stderr] 45 | | closest = Some(o.t); [INFO] [stderr] 46 | | rec = o; [INFO] [stderr] ... | [INFO] [stderr] 49 | | _ => (), [INFO] [stderr] 50 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 43 | if let Some(o) = obj.hit(r, t_min, closest.unwrap() as f32) { [INFO] [stderr] 44 | closest = Some(o.t); [INFO] [stderr] 45 | rec = o; [INFO] [stderr] 46 | hit_anything = true [INFO] [stderr] 47 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: field is never used: `w` [INFO] [stderr] --> src/camera.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | w: V3, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/collision.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn new() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> src/camera.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | / pub fn new(look_from: V3, [INFO] [stderr] 23 | | look_at: V3, [INFO] [stderr] 24 | | v_up: V3, [INFO] [stderr] 25 | | fov_deg: f32, [INFO] [stderr] ... | [INFO] [stderr] 48 | | } [INFO] [stderr] 49 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/material.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | / pub fn new(a: &V3) -> MaterialKind { [INFO] [stderr] 27 | | MaterialKind::Lambertian(Self { albedo: *a }) [INFO] [stderr] 28 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/material.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | / pub fn new(a: &V3, fuzz: f32) -> MaterialKind { [INFO] [stderr] 46 | | let f = if fuzz < 1.0 { fuzz } else { 1.0 }; [INFO] [stderr] 47 | | MaterialKind::Metal(Self { [INFO] [stderr] 48 | | albedo: *a, [INFO] [stderr] 49 | | fuzz: f, [INFO] [stderr] 50 | | }) [INFO] [stderr] 51 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/material.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | / pub fn new(idx: f32) -> MaterialKind { [INFO] [stderr] 75 | | MaterialKind::Dielectric(Self { idx: idx }) [INFO] [stderr] 76 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/collision.rs:43:13 [INFO] [stderr] | [INFO] [stderr] 43 | / match obj.hit(r, t_min, closest.unwrap() as f32) { [INFO] [stderr] 44 | | Some(o) => { [INFO] [stderr] 45 | | closest = Some(o.t); [INFO] [stderr] 46 | | rec = o; [INFO] [stderr] ... | [INFO] [stderr] 49 | | _ => (), [INFO] [stderr] 50 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 43 | if let Some(o) = obj.hit(r, t_min, closest.unwrap() as f32) { [INFO] [stderr] 44 | closest = Some(o.t); [INFO] [stderr] 45 | rec = o; [INFO] [stderr] 46 | hit_anything = true [INFO] [stderr] 47 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 5.42s [INFO] running `"docker" "inspect" "62d50a23e1e9219ac3405978017c556bc25a5ea967c5a76dc9b35ed2d839390e"` [INFO] running `"docker" "rm" "-f" "62d50a23e1e9219ac3405978017c556bc25a5ea967c5a76dc9b35ed2d839390e"` [INFO] [stdout] 62d50a23e1e9219ac3405978017c556bc25a5ea967c5a76dc9b35ed2d839390e