[INFO] cloning repository https://github.com/saadou11/ppm_rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/saadou11/ppm_rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsaadou11%2Fppm_rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsaadou11%2Fppm_rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c5fefc2f77f39a461f9ac52d21a7a1697a593831
[INFO] checking saadou11/ppm_rust against try#63132bd615c9bf75e93af8405d00064212331708 for pr-153975
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsaadou11%2Fppm_rust" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/saadou11/ppm_rust
[INFO] finished tweaking git repo https://github.com/saadou11/ppm_rust
[INFO] tweaked toml for git repo https://github.com/saadou11/ppm_rust written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/saadou11/ppm_rust on toolchain 63132bd615c9bf75e93af8405d00064212331708
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+63132bd615c9bf75e93af8405d00064212331708" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/saadou11/ppm_rust already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+63132bd615c9bf75e93af8405d00064212331708" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: file `/workspace/builds/worker-5-tc2/source/src/main.rs` found to be present in multiple build targets:
[INFO] [stderr]   * `lib` target `src`
[INFO] [stderr]   * `bin` target `ppm`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded map_in_place v0.1.0
[INFO] [stderr]   Downloaded cty v0.2.1
[INFO] [stderr]   Downloaded scopeguard v0.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+63132bd615c9bf75e93af8405d00064212331708" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 05f04a62e00a98de86b929b90fd36899d478bf650a926a8c7905d184f9aa34ba
[INFO] running `Command { std: "docker" "start" "-a" "05f04a62e00a98de86b929b90fd36899d478bf650a926a8c7905d184f9aa34ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "05f04a62e00a98de86b929b90fd36899d478bf650a926a8c7905d184f9aa34ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "05f04a62e00a98de86b929b90fd36899d478bf650a926a8c7905d184f9aa34ba", kill_on_drop: false }`
[INFO] [stdout] 05f04a62e00a98de86b929b90fd36899d478bf650a926a8c7905d184f9aa34ba
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+63132bd615c9bf75e93af8405d00064212331708" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 56407c82b422365580a57d262e3b11a5c56f311da1dd016b9c99a5a5e0d3dddb
[INFO] running `Command { std: "docker" "start" "-a" "56407c82b422365580a57d262e3b11a5c56f311da1dd016b9c99a5a5e0d3dddb", kill_on_drop: false }`
[INFO] [stderr] warning: file `/opt/rustwide/workdir/src/main.rs` found to be present in multiple build targets:
[INFO] [stderr]   * `lib` target `src`
[INFO] [stderr]   * `bin` target `ppm`
[INFO] [stderr]     Checking scopeguard v0.2.0
[INFO] [stderr]    Compiling ppm v1.0.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking cty v0.2.1
[INFO] [stderr]     Checking map_in_place v0.1.0
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/main.rs:111:51
[INFO] [stdout]     |
[INFO] [stdout] 111 |             let mut buf = vec![Pixel::new(0,0,0); (self.heigth  * self.width )];
[INFO] [stdout]     |                                                   ^                         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 111 -             let mut buf = vec![Pixel::new(0,0,0); (self.heigth  * self.width )];
[INFO] [stdout] 111 +             let mut buf = vec![Pixel::new(0,0,0); self.heigth  * self.width ];
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/main.rs:223:2
[INFO] [stdout]     |
[INFO] [stdout] 223 |  extern fn dummy() -> usize {
[INFO] [stdout]     |  ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(missing_abi)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/main.rs:111:51
[INFO] [stdout]     |
[INFO] [stdout] 111 |             let mut buf = vec![Pixel::new(0,0,0); (self.heigth  * self.width )];
[INFO] [stdout]     |                                                   ^                         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 111 -             let mut buf = vec![Pixel::new(0,0,0); (self.heigth  * self.width )];
[INFO] [stdout] 111 +             let mut buf = vec![Pixel::new(0,0,0); self.heigth  * self.width ];
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/main.rs:223:2
[INFO] [stdout]     |
[INFO] [stdout] 223 |  extern fn dummy() -> usize {
[INFO] [stdout]     |  ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(missing_abi)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pixel` is never constructed
[INFO] [stdout]   --> src/main.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |  struct Pixel {
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_red`, `get_green`, `get_blue`, `invert`, and `grayscale` are never used
[INFO] [stdout]   --> src/main.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Pixel {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 19 |      fn new(red: u8, green: u8, blue: u8) -> Pixel {
[INFO] [stdout]    |         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn get_red (self) -> u8 {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn get_green (self) -> u8 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     fn get_blue (self) -> u8 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |      fn invert (&self) -> Pixel{
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn grayscale (&self) -> Pixel{
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Image` is never constructed
[INFO] [stdout]   --> src/main.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |  struct Image {
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/main.rs:74:13
[INFO] [stdout]     |
[INFO] [stdout]  72 | impl Image {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  73 |
[INFO] [stdout]  74 |          fn new(header:String, max_color: u8,width: usize, heigth: usize,pixel_vec:Vec<Pixel>) -> Image {
[INFO] [stdout]     |             ^^^
[INFO] [stdout] ...
[INFO] [stdout]  78 |          fn get_width(&self) -> usize{
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |          fn get_height(&self) -> usize {
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |          fn get_max_color(&self) -> u8 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |          fn invert(&self)-> Image {
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |          fn gray_scale(&self)-> Image {
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |          fn save (&self , path :&Path) -> io::Result<()>  {
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new_with_file` is never used
[INFO] [stdout]    --> src/main.rs:163:4
[INFO] [stdout]     |
[INFO] [stdout] 163 | fn new_with_file<'a>(path: &'a str) -> Image {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `filename_to_string` is never used
[INFO] [stdout]    --> src/main.rs:185:4
[INFO] [stdout]     |
[INFO] [stdout] 185 | fn filename_to_string(s: &str) -> io::Result<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `words_by_line` is never used
[INFO] [stdout]    --> src/main.rs:192:4
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn words_by_line<'a>(s: &'a str) -> Vec<Vec<&'a str>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_ppm` is never used
[INFO] [stdout]    --> src/main.rs:208:4
[INFO] [stdout]     |
[INFO] [stdout] 208 | fn read_ppm (a:&str){
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_ppm` is never used
[INFO] [stdout]    --> src/main.rs:214:4
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn write_ppm (a:&str){
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]    --> src/main.rs:228:4
[INFO] [stdout]     |
[INFO] [stdout] 228 | fn main() {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `square` is never used
[INFO] [stdout]    --> src/main.rs:202:8
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn square(val: i32) -> i32;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ppma_write_test` is never used
[INFO] [stdout]    --> src/main.rs:203:9
[INFO] [stdout]     |
[INFO] [stdout] 203 |      fn ppma_write_test ( file_out_name: *const u8);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ppma_read_test` is never used
[INFO] [stdout]    --> src/main.rs:204:8
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn ppma_read_test ( inputname: *const u8 );
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `gray_scale` is never used
[INFO] [stdout]    --> src/main.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout]  72 | impl Image {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |          fn gray_scale(&self)-> Image {
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_ppm` is never used
[INFO] [stdout]    --> src/main.rs:208:4
[INFO] [stdout]     |
[INFO] [stdout] 208 | fn read_ppm (a:&str){
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `square` is never used
[INFO] [stdout]    --> src/main.rs:202:8
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn square(val: i32) -> i32;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ppma_read_test` is never used
[INFO] [stdout]    --> src/main.rs:204:8
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn ppma_read_test ( inputname: *const u8 );
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pxl_INV` should have a snake case name
[INFO] [stdout]    --> src/main.rs:317:13
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let pxl_INV = Pixel::new(245,245,245);
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `pxl_inv`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pxl2_INV` should have a snake case name
[INFO] [stdout]    --> src/main.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 318 |         let pxl2_INV = Pixel::new(100,100,100);
[INFO] [stdout]     |             ^^^^^^^^ help: convert the identifier to snake case: `pxl2_inv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixel_vec_INV` should have a snake case name
[INFO] [stdout]    --> src/main.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let pixel_vec_INV = vec![pxl_INV,pxl2_INV,pxl_INV,pxl2_INV,pxl_INV,pxl2_INV];
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: convert the identifier to snake case: `pixel_vec_inv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `image_INV` should have a snake case name
[INFO] [stdout]    --> src/main.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |         let image_INV= image.invert();
[INFO] [stdout]     |             ^^^^^^^^^ help: convert the identifier to snake case: `image_inv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:384:9
[INFO] [stdout]     |
[INFO] [stdout] 384 |         image.save(&path);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 384 |         let _ = image.save(&path);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/main.rs:111:51
[INFO] [stdout]     |
[INFO] [stdout] 111 |             let mut buf = vec![Pixel::new(0,0,0); (self.heigth  * self.width )];
[INFO] [stdout]     |                                                   ^                         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 111 -             let mut buf = vec![Pixel::new(0,0,0); (self.heigth  * self.width )];
[INFO] [stdout] 111 +             let mut buf = vec![Pixel::new(0,0,0); self.heigth  * self.width ];
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/main.rs:223:2
[INFO] [stdout]     |
[INFO] [stdout] 223 |  extern fn dummy() -> usize {
[INFO] [stdout]     |  ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(missing_abi)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/main.rs:111:51
[INFO] [stdout]     |
[INFO] [stdout] 111 |             let mut buf = vec![Pixel::new(0,0,0); (self.heigth  * self.width )];
[INFO] [stdout]     |                                                   ^                         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 111 -             let mut buf = vec![Pixel::new(0,0,0); (self.heigth  * self.width )];
[INFO] [stdout] 111 +             let mut buf = vec![Pixel::new(0,0,0); self.heigth  * self.width ];
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated
[INFO] [stdout]    --> src/main.rs:223:2
[INFO] [stdout]     |
[INFO] [stdout] 223 |  extern fn dummy() -> usize {
[INFO] [stdout]     |  ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(missing_abi)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pixel` is never constructed
[INFO] [stdout]   --> src/main.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |  struct Pixel {
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_red`, `get_green`, `get_blue`, `invert`, and `grayscale` are never used
[INFO] [stdout]   --> src/main.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Pixel {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 19 |      fn new(red: u8, green: u8, blue: u8) -> Pixel {
[INFO] [stdout]    |         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn get_red (self) -> u8 {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn get_green (self) -> u8 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     fn get_blue (self) -> u8 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |      fn invert (&self) -> Pixel{
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn grayscale (&self) -> Pixel{
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Image` is never constructed
[INFO] [stdout]   --> src/main.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |  struct Image {
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/main.rs:74:13
[INFO] [stdout]     |
[INFO] [stdout]  72 | impl Image {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  73 |
[INFO] [stdout]  74 |          fn new(header:String, max_color: u8,width: usize, heigth: usize,pixel_vec:Vec<Pixel>) -> Image {
[INFO] [stdout]     |             ^^^
[INFO] [stdout] ...
[INFO] [stdout]  78 |          fn get_width(&self) -> usize{
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |          fn get_height(&self) -> usize {
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |          fn get_max_color(&self) -> u8 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |          fn invert(&self)-> Image {
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |          fn gray_scale(&self)-> Image {
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |          fn save (&self , path :&Path) -> io::Result<()>  {
[INFO] [stdout]     |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new_with_file` is never used
[INFO] [stdout]    --> src/main.rs:163:4
[INFO] [stdout]     |
[INFO] [stdout] 163 | fn new_with_file<'a>(path: &'a str) -> Image {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `filename_to_string` is never used
[INFO] [stdout]    --> src/main.rs:185:4
[INFO] [stdout]     |
[INFO] [stdout] 185 | fn filename_to_string(s: &str) -> io::Result<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `words_by_line` is never used
[INFO] [stdout]    --> src/main.rs:192:4
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn words_by_line<'a>(s: &'a str) -> Vec<Vec<&'a str>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_ppm` is never used
[INFO] [stdout]    --> src/main.rs:208:4
[INFO] [stdout]     |
[INFO] [stdout] 208 | fn read_ppm (a:&str){
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `square` is never used
[INFO] [stdout]    --> src/main.rs:202:8
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn square(val: i32) -> i32;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ppma_read_test` is never used
[INFO] [stdout]    --> src/main.rs:204:8
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn ppma_read_test ( inputname: *const u8 );
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `gray_scale` is never used
[INFO] [stdout]    --> src/main.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout]  72 | impl Image {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |          fn gray_scale(&self)-> Image {
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_ppm` is never used
[INFO] [stdout]    --> src/main.rs:208:4
[INFO] [stdout]     |
[INFO] [stdout] 208 | fn read_ppm (a:&str){
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `square` is never used
[INFO] [stdout]    --> src/main.rs:202:8
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn square(val: i32) -> i32;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ppma_read_test` is never used
[INFO] [stdout]    --> src/main.rs:204:8
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn ppma_read_test ( inputname: *const u8 );
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pxl_INV` should have a snake case name
[INFO] [stdout]    --> src/main.rs:317:13
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let pxl_INV = Pixel::new(245,245,245);
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `pxl_inv`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pxl2_INV` should have a snake case name
[INFO] [stdout]    --> src/main.rs:318:13
[INFO] [stdout]     |
[INFO] [stdout] 318 |         let pxl2_INV = Pixel::new(100,100,100);
[INFO] [stdout]     |             ^^^^^^^^ help: convert the identifier to snake case: `pxl2_inv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `pixel_vec_INV` should have a snake case name
[INFO] [stdout]    --> src/main.rs:319:13
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let pixel_vec_INV = vec![pxl_INV,pxl2_INV,pxl_INV,pxl2_INV,pxl_INV,pxl2_INV];
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: convert the identifier to snake case: `pixel_vec_inv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `image_INV` should have a snake case name
[INFO] [stdout]    --> src/main.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |         let image_INV= image.invert();
[INFO] [stdout]     |             ^^^^^^^^^ help: convert the identifier to snake case: `image_inv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:384:9
[INFO] [stdout]     |
[INFO] [stdout] 384 |         image.save(&path);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 384 |         let _ = image.save(&path);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.27s
[INFO] running `Command { std: "docker" "inspect" "56407c82b422365580a57d262e3b11a5c56f311da1dd016b9c99a5a5e0d3dddb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "56407c82b422365580a57d262e3b11a5c56f311da1dd016b9c99a5a5e0d3dddb", kill_on_drop: false }`
[INFO] [stdout] 56407c82b422365580a57d262e3b11a5c56f311da1dd016b9c99a5a5e0d3dddb
