[INFO] updating cached repository https://github.com/AustinMy/seamCarving [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 6a2be7379e27c85dd66531262808eb5831f42908 [INFO] testing AustinMy/seamCarving against beta-2020-06-03 for beta-1.45-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAustinMy%2FseamCarving" "/workspace/builds/worker-3/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/AustinMy/seamCarving on toolchain beta-2020-06-03 [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/AustinMy/seamCarving [INFO] finished tweaking git repo https://github.com/AustinMy/seamCarving [INFO] tweaked toml for git repo https://github.com/AustinMy/seamCarving written to /workspace/builds/worker-3/source/Cargo.toml [INFO] crate git repo https://github.com/AustinMy/seamCarving already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 64aacdd8f3d213c851836b2f0f46dfb986ae07c1ba22c0a18245ec79ff3c579a [INFO] running `"docker" "start" "-a" "64aacdd8f3d213c851836b2f0f46dfb986ae07c1ba22c0a18245ec79ff3c579a"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling scoped_threadpool v0.1.9 [INFO] [stderr] Compiling crossbeam-queue v0.2.1 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling deflate v0.7.20 [INFO] [stderr] Compiling rayon-core v1.7.0 [INFO] [stderr] Compiling png v0.15.3 [INFO] [stderr] Compiling rayon v1.3.0 [INFO] [stderr] Compiling num-derive v0.2.5 [INFO] [stderr] Compiling jpeg-decoder v0.1.18 [INFO] [stderr] Compiling tiff v0.3.1 [INFO] [stderr] Compiling image v0.22.5 [INFO] [stderr] Compiling seamCarving v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused imports: `DynamicImage`, `ImageBuffer`, `Pixel` [INFO] [stderr] --> src/main.rs:13:45 [INFO] [stderr] | [INFO] [stderr] 13 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, DynamicImage, Pixel}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:74:6 [INFO] [stderr] | [INFO] [stderr] 74 | if (values[h][w].wasProcessed) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:117:6 [INFO] [stderr] | [INFO] [stderr] 117 | if (bottom > 0) [INFO] [stderr] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/main.rs:123:31 [INFO] [stderr] | [INFO] [stderr] 123 | values[h][w].diff_total = (sumAboveDiffs + personalDiff); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:212:12 [INFO] [stderr] | [INFO] [stderr] 212 | if ((y as i32) > topW - (x as i32) && (y as i32) < topW + (x as i32)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused import: `GenericImage` [INFO] [stderr] --> src/main.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, DynamicImage, Pixel}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `GenericImageView` [INFO] [stderr] --> src/main.rs:13:27 [INFO] [stderr] | [INFO] [stderr] 13 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, DynamicImage, Pixel}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: value assigned to `personalDiff` is never read [INFO] [stderr] --> src/main.rs:66:7 [INFO] [stderr] | [INFO] [stderr] 66 | let mut personalDiff: u64 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `height` [INFO] [stderr] --> src/main.rs:142:7 [INFO] [stderr] | [INFO] [stderr] 142 | let height: i32 = h as i32; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:174:11 [INFO] [stderr] | [INFO] [stderr] 174 | let mut val: DPValue = DPValue { [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: crate `seamCarving` should have a snake case name [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] = help: convert the identifier to snake case: `seam_carving` [INFO] [stderr] [INFO] [stderr] warning: structure field `wasProcessed` should have a snake case name [INFO] [stderr] --> src/main.rs:18:3 [INFO] [stderr] | [INFO] [stderr] 18 | wasProcessed: bool [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `was_processed` [INFO] [stderr] [INFO] [stderr] warning: function `getImage` should have a snake case name [INFO] [stderr] --> src/main.rs:22:4 [INFO] [stderr] | [INFO] [stderr] 22 | fn getImage(image_name: &std::string::String) -> RgbImage { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `get_image` [INFO] [stderr] [INFO] [stderr] warning: function `SaveImage` should have a snake case name [INFO] [stderr] --> src/main.rs:33:4 [INFO] [stderr] | [INFO] [stderr] 33 | fn SaveImage<'x>(values: &mut Vec>>) { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `save_image` [INFO] [stderr] [INFO] [stderr] warning: variable `xLen` should have a snake case name [INFO] [stderr] --> src/main.rs:35:7 [INFO] [stderr] | [INFO] [stderr] 35 | let xLen: u32 = values.len() as u32; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `x_len` [INFO] [stderr] [INFO] [stderr] warning: variable `yLen` should have a snake case name [INFO] [stderr] --> src/main.rs:36:7 [INFO] [stderr] | [INFO] [stderr] 36 | let yLen: u32 = values[0].len() as u32; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_len` [INFO] [stderr] [INFO] [stderr] warning: variable `xVal` should have a snake case name [INFO] [stderr] --> src/main.rs:43:11 [INFO] [stderr] | [INFO] [stderr] 43 | let xVal = x as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `x_val` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:44:11 [INFO] [stderr] | [INFO] [stderr] 44 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: function `getTotalPixelDiff` should have a snake case name [INFO] [stderr] --> src/main.rs:56:4 [INFO] [stderr] | [INFO] [stderr] 56 | fn getTotalPixelDiff<'x>(h: usize, w: usize,values: &mut Vec>>) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `get_total_pixel_diff` [INFO] [stderr] [INFO] [stderr] warning: variable `personalDiff` should have a snake case name [INFO] [stderr] --> src/main.rs:66:11 [INFO] [stderr] | [INFO] [stderr] 66 | let mut personalDiff: u64 = 0; [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `personal_diff` [INFO] [stderr] [INFO] [stderr] warning: variable `sumAboveDiffs` should have a snake case name [INFO] [stderr] --> src/main.rs:72:11 [INFO] [stderr] | [INFO] [stderr] 72 | let mut sumAboveDiffs:u64 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `sum_above_diffs` [INFO] [stderr] [INFO] [stderr] warning: variable `selfR` should have a snake case name [INFO] [stderr] --> src/main.rs:79:7 [INFO] [stderr] | [INFO] [stderr] 79 | let selfR = values[h][w].pix[0] as i32; [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `self_r` [INFO] [stderr] [INFO] [stderr] warning: variable `selfG` should have a snake case name [INFO] [stderr] --> src/main.rs:80:7 [INFO] [stderr] | [INFO] [stderr] 80 | let selfG = values[h][w].pix[1] as i32; [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `self_g` [INFO] [stderr] [INFO] [stderr] warning: variable `selfB` should have a snake case name [INFO] [stderr] --> src/main.rs:81:7 [INFO] [stderr] | [INFO] [stderr] 81 | let selfB = values[h][w].pix[2] as i32; [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `self_b` [INFO] [stderr] [INFO] [stderr] warning: variable `xVal` should have a snake case name [INFO] [stderr] --> src/main.rs:86:11 [INFO] [stderr] | [INFO] [stderr] 86 | let xVal = x as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `x_val` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:87:11 [INFO] [stderr] | [INFO] [stderr] 87 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: variable `rgbSum` should have a snake case name [INFO] [stderr] --> src/main.rs:88:15 [INFO] [stderr] | [INFO] [stderr] 88 | let mut rgbSum: i32 = 0; [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `rgb_sum` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:112:9 [INFO] [stderr] | [INFO] [stderr] 112 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: function `removePixel` should have a snake case name [INFO] [stderr] --> src/main.rs:132:4 [INFO] [stderr] | [INFO] [stderr] 132 | fn removePixel<'x> (h: usize, w: usize,values: &mut Vec>>) -> usize{ [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `remove_pixel` [INFO] [stderr] [INFO] [stderr] warning: variable `minIndex` should have a snake case name [INFO] [stderr] --> src/main.rs:140:11 [INFO] [stderr] | [INFO] [stderr] 140 | let mut minIndex: usize = w; [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `min_index` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:145:9 [INFO] [stderr] | [INFO] [stderr] 145 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: variable `diffVec` should have a snake case name [INFO] [stderr] --> src/main.rs:168:11 [INFO] [stderr] | [INFO] [stderr] 168 | let mut diffVec = Vec::new(); [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `diff_vec` [INFO] [stderr] [INFO] [stderr] warning: variable `internalVec` should have a snake case name [INFO] [stderr] --> src/main.rs:172:13 [INFO] [stderr] | [INFO] [stderr] 172 | let mut internalVec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `internal_vec` [INFO] [stderr] [INFO] [stderr] warning: variable `minIndex` should have a snake case name [INFO] [stderr] --> src/main.rs:195:13 [INFO] [stderr] | [INFO] [stderr] 195 | let mut minIndex: usize = 0; [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `min_index` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:197:11 [INFO] [stderr] | [INFO] [stderr] 197 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: variable `topW` should have a snake case name [INFO] [stderr] --> src/main.rs:206:9 [INFO] [stderr] | [INFO] [stderr] 206 | let topW = removePixel(height-1,minIndex, &mut diffVec) as i32; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `top_w` [INFO] [stderr] [INFO] [stderr] warning: 36 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 26.44s [INFO] running `"docker" "inspect" "64aacdd8f3d213c851836b2f0f46dfb986ae07c1ba22c0a18245ec79ff3c579a"` [INFO] running `"docker" "rm" "-f" "64aacdd8f3d213c851836b2f0f46dfb986ae07c1ba22c0a18245ec79ff3c579a"` [INFO] [stdout] 64aacdd8f3d213c851836b2f0f46dfb986ae07c1ba22c0a18245ec79ff3c579a [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "test" "--frozen" "--no-run"` [INFO] [stdout] c45fa717aad46be2a658e1b06abbe7c207014b4c261fa2e53f70d0d3b831b89f [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "c45fa717aad46be2a658e1b06abbe7c207014b4c261fa2e53f70d0d3b831b89f"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling seamCarving v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused imports: `DynamicImage`, `ImageBuffer`, `Pixel` [INFO] [stderr] --> src/main.rs:13:45 [INFO] [stderr] | [INFO] [stderr] 13 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, DynamicImage, Pixel}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:74:6 [INFO] [stderr] | [INFO] [stderr] 74 | if (values[h][w].wasProcessed) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:117:6 [INFO] [stderr] | [INFO] [stderr] 117 | if (bottom > 0) [INFO] [stderr] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/main.rs:123:31 [INFO] [stderr] | [INFO] [stderr] 123 | values[h][w].diff_total = (sumAboveDiffs + personalDiff); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:212:12 [INFO] [stderr] | [INFO] [stderr] 212 | if ((y as i32) > topW - (x as i32) && (y as i32) < topW + (x as i32)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused import: `GenericImage` [INFO] [stderr] --> src/main.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, DynamicImage, Pixel}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `GenericImageView` [INFO] [stderr] --> src/main.rs:13:27 [INFO] [stderr] | [INFO] [stderr] 13 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, DynamicImage, Pixel}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: value assigned to `personalDiff` is never read [INFO] [stderr] --> src/main.rs:66:7 [INFO] [stderr] | [INFO] [stderr] 66 | let mut personalDiff: u64 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `height` [INFO] [stderr] --> src/main.rs:142:7 [INFO] [stderr] | [INFO] [stderr] 142 | let height: i32 = h as i32; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:174:11 [INFO] [stderr] | [INFO] [stderr] 174 | let mut val: DPValue = DPValue { [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: crate `seamCarving` should have a snake case name [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] = help: convert the identifier to snake case: `seam_carving` [INFO] [stderr] [INFO] [stderr] warning: structure field `wasProcessed` should have a snake case name [INFO] [stderr] --> src/main.rs:18:3 [INFO] [stderr] | [INFO] [stderr] 18 | wasProcessed: bool [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `was_processed` [INFO] [stderr] [INFO] [stderr] warning: function `getImage` should have a snake case name [INFO] [stderr] --> src/main.rs:22:4 [INFO] [stderr] | [INFO] [stderr] 22 | fn getImage(image_name: &std::string::String) -> RgbImage { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `get_image` [INFO] [stderr] [INFO] [stderr] warning: function `SaveImage` should have a snake case name [INFO] [stderr] --> src/main.rs:33:4 [INFO] [stderr] | [INFO] [stderr] 33 | fn SaveImage<'x>(values: &mut Vec>>) { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `save_image` [INFO] [stderr] [INFO] [stderr] warning: variable `xLen` should have a snake case name [INFO] [stderr] --> src/main.rs:35:7 [INFO] [stderr] | [INFO] [stderr] 35 | let xLen: u32 = values.len() as u32; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `x_len` [INFO] [stderr] [INFO] [stderr] warning: variable `yLen` should have a snake case name [INFO] [stderr] --> src/main.rs:36:7 [INFO] [stderr] | [INFO] [stderr] 36 | let yLen: u32 = values[0].len() as u32; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_len` [INFO] [stderr] [INFO] [stderr] warning: variable `xVal` should have a snake case name [INFO] [stderr] --> src/main.rs:43:11 [INFO] [stderr] | [INFO] [stderr] 43 | let xVal = x as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `x_val` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:44:11 [INFO] [stderr] | [INFO] [stderr] 44 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: function `getTotalPixelDiff` should have a snake case name [INFO] [stderr] --> src/main.rs:56:4 [INFO] [stderr] | [INFO] [stderr] 56 | fn getTotalPixelDiff<'x>(h: usize, w: usize,values: &mut Vec>>) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `get_total_pixel_diff` [INFO] [stderr] [INFO] [stderr] warning: variable `personalDiff` should have a snake case name [INFO] [stderr] --> src/main.rs:66:11 [INFO] [stderr] | [INFO] [stderr] 66 | let mut personalDiff: u64 = 0; [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `personal_diff` [INFO] [stderr] [INFO] [stderr] warning: variable `sumAboveDiffs` should have a snake case name [INFO] [stderr] --> src/main.rs:72:11 [INFO] [stderr] | [INFO] [stderr] 72 | let mut sumAboveDiffs:u64 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `sum_above_diffs` [INFO] [stderr] [INFO] [stderr] warning: variable `selfR` should have a snake case name [INFO] [stderr] --> src/main.rs:79:7 [INFO] [stderr] | [INFO] [stderr] 79 | let selfR = values[h][w].pix[0] as i32; [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `self_r` [INFO] [stderr] [INFO] [stderr] warning: variable `selfG` should have a snake case name [INFO] [stderr] --> src/main.rs:80:7 [INFO] [stderr] | [INFO] [stderr] 80 | let selfG = values[h][w].pix[1] as i32; [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `self_g` [INFO] [stderr] [INFO] [stderr] warning: variable `selfB` should have a snake case name [INFO] [stderr] --> src/main.rs:81:7 [INFO] [stderr] | [INFO] [stderr] 81 | let selfB = values[h][w].pix[2] as i32; [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `self_b` [INFO] [stderr] [INFO] [stderr] warning: variable `xVal` should have a snake case name [INFO] [stderr] --> src/main.rs:86:11 [INFO] [stderr] | [INFO] [stderr] 86 | let xVal = x as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `x_val` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:87:11 [INFO] [stderr] | [INFO] [stderr] 87 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: variable `rgbSum` should have a snake case name [INFO] [stderr] --> src/main.rs:88:15 [INFO] [stderr] | [INFO] [stderr] 88 | let mut rgbSum: i32 = 0; [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `rgb_sum` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:112:9 [INFO] [stderr] | [INFO] [stderr] 112 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: function `removePixel` should have a snake case name [INFO] [stderr] --> src/main.rs:132:4 [INFO] [stderr] | [INFO] [stderr] 132 | fn removePixel<'x> (h: usize, w: usize,values: &mut Vec>>) -> usize{ [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `remove_pixel` [INFO] [stderr] [INFO] [stderr] warning: variable `minIndex` should have a snake case name [INFO] [stderr] --> src/main.rs:140:11 [INFO] [stderr] | [INFO] [stderr] 140 | let mut minIndex: usize = w; [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `min_index` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:145:9 [INFO] [stderr] | [INFO] [stderr] 145 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: variable `diffVec` should have a snake case name [INFO] [stderr] --> src/main.rs:168:11 [INFO] [stderr] | [INFO] [stderr] 168 | let mut diffVec = Vec::new(); [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `diff_vec` [INFO] [stderr] [INFO] [stderr] warning: variable `internalVec` should have a snake case name [INFO] [stderr] --> src/main.rs:172:13 [INFO] [stderr] | [INFO] [stderr] 172 | let mut internalVec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `internal_vec` [INFO] [stderr] [INFO] [stderr] warning: variable `minIndex` should have a snake case name [INFO] [stderr] --> src/main.rs:195:13 [INFO] [stderr] | [INFO] [stderr] 195 | let mut minIndex: usize = 0; [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `min_index` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:197:11 [INFO] [stderr] | [INFO] [stderr] 197 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: variable `topW` should have a snake case name [INFO] [stderr] --> src/main.rs:206:9 [INFO] [stderr] | [INFO] [stderr] 206 | let topW = removePixel(height-1,minIndex, &mut diffVec) as i32; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `top_w` [INFO] [stderr] [INFO] [stderr] warning: 36 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.05s [INFO] running `"docker" "inspect" "c45fa717aad46be2a658e1b06abbe7c207014b4c261fa2e53f70d0d3b831b89f"` [INFO] running `"docker" "rm" "-f" "c45fa717aad46be2a658e1b06abbe7c207014b4c261fa2e53f70d0d3b831b89f"` [INFO] [stdout] c45fa717aad46be2a658e1b06abbe7c207014b4c261fa2e53f70d0d3b831b89f [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "test" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] e3454f3e8abaf68cdc717c5ba79ef6e51cebdc3fa0637a209aba126bfc1459e5 [INFO] running `"docker" "start" "-a" "e3454f3e8abaf68cdc717c5ba79ef6e51cebdc3fa0637a209aba126bfc1459e5"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] warning: unused imports: `DynamicImage`, `ImageBuffer`, `Pixel` [INFO] [stderr] --> src/main.rs:13:45 [INFO] [stderr] | [INFO] [stderr] 13 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, DynamicImage, Pixel}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:74:6 [INFO] [stderr] | [INFO] [stderr] 74 | if (values[h][w].wasProcessed) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:117:6 [INFO] [stderr] | [INFO] [stderr] 117 | if (bottom > 0) [INFO] [stderr] | ^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/main.rs:123:31 [INFO] [stderr] | [INFO] [stderr] 123 | values[h][w].diff_total = (sumAboveDiffs + personalDiff); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:212:12 [INFO] [stderr] | [INFO] [stderr] 212 | if ((y as i32) > topW - (x as i32) && (y as i32) < topW + (x as i32)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused import: `GenericImage` [INFO] [stderr] --> src/main.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, DynamicImage, Pixel}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `GenericImageView` [INFO] [stderr] --> src/main.rs:13:27 [INFO] [stderr] | [INFO] [stderr] 13 | use image::{GenericImage, GenericImageView, ImageBuffer, RgbImage, DynamicImage, Pixel}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: value assigned to `personalDiff` is never read [INFO] [stderr] --> src/main.rs:66:7 [INFO] [stderr] | [INFO] [stderr] 66 | let mut personalDiff: u64 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `height` [INFO] [stderr] --> src/main.rs:142:7 [INFO] [stderr] | [INFO] [stderr] 142 | let height: i32 = h as i32; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:174:11 [INFO] [stderr] | [INFO] [stderr] 174 | let mut val: DPValue = DPValue { [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: crate `seamCarving` should have a snake case name [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] = help: convert the identifier to snake case: `seam_carving` [INFO] [stderr] [INFO] [stderr] warning: structure field `wasProcessed` should have a snake case name [INFO] [stderr] --> src/main.rs:18:3 [INFO] [stderr] | [INFO] [stderr] 18 | wasProcessed: bool [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `was_processed` [INFO] [stderr] [INFO] [stderr] warning: function `getImage` should have a snake case name [INFO] [stderr] --> src/main.rs:22:4 [INFO] [stderr] | [INFO] [stderr] 22 | fn getImage(image_name: &std::string::String) -> RgbImage { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `get_image` [INFO] [stderr] [INFO] [stderr] warning: function `SaveImage` should have a snake case name [INFO] [stderr] --> src/main.rs:33:4 [INFO] [stderr] | [INFO] [stderr] 33 | fn SaveImage<'x>(values: &mut Vec>>) { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `save_image` [INFO] [stderr] [INFO] [stderr] warning: variable `xLen` should have a snake case name [INFO] [stderr] --> src/main.rs:35:7 [INFO] [stderr] | [INFO] [stderr] 35 | let xLen: u32 = values.len() as u32; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `x_len` [INFO] [stderr] [INFO] [stderr] warning: variable `yLen` should have a snake case name [INFO] [stderr] --> src/main.rs:36:7 [INFO] [stderr] | [INFO] [stderr] 36 | let yLen: u32 = values[0].len() as u32; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_len` [INFO] [stderr] [INFO] [stderr] warning: variable `xVal` should have a snake case name [INFO] [stderr] --> src/main.rs:43:11 [INFO] [stderr] | [INFO] [stderr] 43 | let xVal = x as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `x_val` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:44:11 [INFO] [stderr] | [INFO] [stderr] 44 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: function `getTotalPixelDiff` should have a snake case name [INFO] [stderr] --> src/main.rs:56:4 [INFO] [stderr] | [INFO] [stderr] 56 | fn getTotalPixelDiff<'x>(h: usize, w: usize,values: &mut Vec>>) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `get_total_pixel_diff` [INFO] [stderr] [INFO] [stderr] warning: variable `personalDiff` should have a snake case name [INFO] [stderr] --> src/main.rs:66:11 [INFO] [stderr] | [INFO] [stderr] 66 | let mut personalDiff: u64 = 0; [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `personal_diff` [INFO] [stderr] [INFO] [stderr] warning: variable `sumAboveDiffs` should have a snake case name [INFO] [stderr] --> src/main.rs:72:11 [INFO] [stderr] | [INFO] [stderr] 72 | let mut sumAboveDiffs:u64 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `sum_above_diffs` [INFO] [stderr] [INFO] [stderr] warning: variable `selfR` should have a snake case name [INFO] [stderr] --> src/main.rs:79:7 [INFO] [stderr] | [INFO] [stderr] 79 | let selfR = values[h][w].pix[0] as i32; [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `self_r` [INFO] [stderr] [INFO] [stderr] warning: variable `selfG` should have a snake case name [INFO] [stderr] --> src/main.rs:80:7 [INFO] [stderr] | [INFO] [stderr] 80 | let selfG = values[h][w].pix[1] as i32; [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `self_g` [INFO] [stderr] [INFO] [stderr] warning: variable `selfB` should have a snake case name [INFO] [stderr] --> src/main.rs:81:7 [INFO] [stderr] | [INFO] [stderr] 81 | let selfB = values[h][w].pix[2] as i32; [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `self_b` [INFO] [stderr] [INFO] [stderr] warning: variable `xVal` should have a snake case name [INFO] [stderr] --> src/main.rs:86:11 [INFO] [stderr] | [INFO] [stderr] 86 | let xVal = x as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `x_val` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:87:11 [INFO] [stderr] | [INFO] [stderr] 87 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: variable `rgbSum` should have a snake case name [INFO] [stderr] --> src/main.rs:88:15 [INFO] [stderr] | [INFO] [stderr] 88 | let mut rgbSum: i32 = 0; [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `rgb_sum` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:112:9 [INFO] [stderr] | [INFO] [stderr] 112 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: function `removePixel` should have a snake case name [INFO] [stderr] --> src/main.rs:132:4 [INFO] [stderr] | [INFO] [stderr] 132 | fn removePixel<'x> (h: usize, w: usize,values: &mut Vec>>) -> usize{ [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `remove_pixel` [INFO] [stderr] [INFO] [stderr] warning: variable `minIndex` should have a snake case name [INFO] [stderr] --> src/main.rs:140:11 [INFO] [stderr] | [INFO] [stderr] 140 | let mut minIndex: usize = w; [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `min_index` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:145:9 [INFO] [stderr] | [INFO] [stderr] 145 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: variable `diffVec` should have a snake case name [INFO] [stderr] --> src/main.rs:168:11 [INFO] [stderr] | [INFO] [stderr] 168 | let mut diffVec = Vec::new(); [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `diff_vec` [INFO] [stderr] [INFO] [stderr] warning: variable `internalVec` should have a snake case name [INFO] [stderr] --> src/main.rs:172:13 [INFO] [stderr] | [INFO] [stderr] 172 | let mut internalVec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `internal_vec` [INFO] [stderr] [INFO] [stderr] warning: variable `minIndex` should have a snake case name [INFO] [stderr] --> src/main.rs:195:13 [INFO] [stderr] | [INFO] [stderr] 195 | let mut minIndex: usize = 0; [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `min_index` [INFO] [stderr] [INFO] [stderr] warning: variable `yVal` should have a snake case name [INFO] [stderr] --> src/main.rs:197:11 [INFO] [stderr] | [INFO] [stderr] 197 | let yVal = y as usize; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `y_val` [INFO] [stderr] [INFO] [stderr] warning: variable `topW` should have a snake case name [INFO] [stderr] --> src/main.rs:206:9 [INFO] [stderr] | [INFO] [stderr] 206 | let topW = removePixel(height-1,minIndex, &mut diffVec) as i32; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `top_w` [INFO] [stderr] [INFO] [stderr] warning: 36 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.22s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/seamCarving-47e6a6fba01f7be5 [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "e3454f3e8abaf68cdc717c5ba79ef6e51cebdc3fa0637a209aba126bfc1459e5"` [INFO] running `"docker" "rm" "-f" "e3454f3e8abaf68cdc717c5ba79ef6e51cebdc3fa0637a209aba126bfc1459e5"` [INFO] [stdout] e3454f3e8abaf68cdc717c5ba79ef6e51cebdc3fa0637a209aba126bfc1459e5