[INFO] updating cached repository HectorIX/Encryption [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/HectorIX/Encryption [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/HectorIX/Encryption" "work/ex/clippy-test-run/sources/stable/gh/HectorIX/Encryption"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/HectorIX/Encryption'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/HectorIX/Encryption" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/HectorIX/Encryption"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/HectorIX/Encryption'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 66a692cd2e2c73e577360f4d937f10c1ea11a8b2 [INFO] sha for GitHub repo HectorIX/Encryption: 66a692cd2e2c73e577360f4d937f10c1ea11a8b2 [INFO] validating manifest of HectorIX/Encryption 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 HectorIX/Encryption 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 HectorIX/Encryption [INFO] finished frobbing HectorIX/Encryption [INFO] frobbed toml for HectorIX/Encryption written to work/ex/clippy-test-run/sources/stable/gh/HectorIX/Encryption/Cargo.toml [INFO] started frobbing HectorIX/Encryption [INFO] finished frobbing HectorIX/Encryption [INFO] frobbed toml for HectorIX/Encryption written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/HectorIX/Encryption/Cargo.toml [INFO] crate HectorIX/Encryption 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 HectorIX/Encryption 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/HectorIX/Encryption:/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] faf8506a1a3ecadf63bff0cf61970752ea8eb64be82f9a4cef9d8ced852dc523 [INFO] running `"docker" "start" "-a" "faf8506a1a3ecadf63bff0cf61970752ea8eb64be82f9a4cef9d8ced852dc523"` [INFO] [stderr] Checking rust-crypto v0.2.36 [INFO] [stderr] Checking Encryption v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/sha256.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | sha256_value [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/sha256.rs:12:24 [INFO] [stderr] | [INFO] [stderr] 12 | let sha256_value = sha256.result_str(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: value assigned to `message` is never read [INFO] [stderr] --> src/menu.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | let mut message = String::new(); [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_assignments)] on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `encrypted_message` is never read [INFO] [stderr] --> src/menu.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | let mut encrypted_message = String::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: value assigned to `plaintext_message` is never read [INFO] [stderr] --> src/menu.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | let mut plaintext_message = String::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `initializedVector` [INFO] [stderr] --> src/menu.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | let initializedVector: String = "iv.txt".to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: consider using `_initializedVector` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: crate `Encryption` should have a snake case name such as `encryption` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/aes256.rs:33:29 [INFO] [stderr] | [INFO] [stderr] 33 | final_result.extend(write_buffer.take_read_buffer().take_remaining().iter().map(|&i| i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `write_buffer.take_read_buffer().take_remaining().iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/aes256.rs:61:29 [INFO] [stderr] | [INFO] [stderr] 61 | final_result.extend(write_buffer.take_read_buffer().take_remaining().iter().map(|&i| i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `write_buffer.take_read_buffer().take_remaining().iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: module `fileIO` should have a snake case name such as `file_io` [INFO] [stderr] --> src/main.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | mod fileIO; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `userChoice` should have a snake case name such as `user_choice` [INFO] [stderr] --> src/menu.rs:42:9 [INFO] [stderr] | [INFO] [stderr] 42 | let mut userChoice:i32 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `inputFile` should have a snake case name such as `input_file` [INFO] [stderr] --> src/menu.rs:46:9 [INFO] [stderr] | [INFO] [stderr] 46 | let inputFile: String = "input.txt".to_string(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `caesarInput` should have a snake case name such as `caesar_input` [INFO] [stderr] --> src/menu.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | let caesarInput: String = "caesarInput.txt".to_string(); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `caesarOutput` should have a snake case name such as `caesar_output` [INFO] [stderr] --> src/menu.rs:48:9 [INFO] [stderr] | [INFO] [stderr] 48 | let caesarOutput: String = "caesarOutput.txt".to_string(); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `aesInput` should have a snake case name such as `aes_input` [INFO] [stderr] --> src/menu.rs:49:9 [INFO] [stderr] | [INFO] [stderr] 49 | let aesInput: String = "aesInput.txt".to_string(); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `aesOutput` should have a snake case name such as `aes_output` [INFO] [stderr] --> src/menu.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | let aesOutput: String = "aesOutput.txt".to_string(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `initializedVector` should have a snake case name such as `initialized_vector` [INFO] [stderr] --> src/menu.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | let initializedVector: String = "iv.txt".to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `encrypted_AES_message` should have a snake case name such as `encrypted_aes_message` [INFO] [stderr] --> src/menu.rs:134:25 [INFO] [stderr] | [INFO] [stderr] 134 | let encrypted_AES_message = aes256::aes256_encrypt(&message.clone().into_bytes(), &key, &iv).ok().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/menu.rs:138:63 [INFO] [stderr] | [INFO] [stderr] 138 | encr_message.push(std::char::from_u32(byte as u32).unwrap()); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u32::from(byte)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/sha256.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | sha256_value [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/sha256.rs:12:24 [INFO] [stderr] | [INFO] [stderr] 12 | let sha256_value = sha256.result_str(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: value assigned to `message` is never read [INFO] [stderr] --> src/menu.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | let mut message = String::new(); [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_assignments)] on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `encrypted_message` is never read [INFO] [stderr] --> src/menu.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | let mut encrypted_message = String::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: value assigned to `plaintext_message` is never read [INFO] [stderr] --> src/menu.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | let mut plaintext_message = String::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `initializedVector` [INFO] [stderr] --> src/menu.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | let initializedVector: String = "iv.txt".to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: consider using `_initializedVector` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: crate `Encryption` should have a snake case name such as `encryption` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/aes256.rs:33:29 [INFO] [stderr] | [INFO] [stderr] 33 | final_result.extend(write_buffer.take_read_buffer().take_remaining().iter().map(|&i| i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `write_buffer.take_read_buffer().take_remaining().iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/aes256.rs:61:29 [INFO] [stderr] | [INFO] [stderr] 61 | final_result.extend(write_buffer.take_read_buffer().take_remaining().iter().map(|&i| i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `write_buffer.take_read_buffer().take_remaining().iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: module `fileIO` should have a snake case name such as `file_io` [INFO] [stderr] --> src/main.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | mod fileIO; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `userChoice` should have a snake case name such as `user_choice` [INFO] [stderr] --> src/menu.rs:42:9 [INFO] [stderr] | [INFO] [stderr] 42 | let mut userChoice:i32 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `inputFile` should have a snake case name such as `input_file` [INFO] [stderr] --> src/menu.rs:46:9 [INFO] [stderr] | [INFO] [stderr] 46 | let inputFile: String = "input.txt".to_string(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `caesarInput` should have a snake case name such as `caesar_input` [INFO] [stderr] --> src/menu.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | let caesarInput: String = "caesarInput.txt".to_string(); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `caesarOutput` should have a snake case name such as `caesar_output` [INFO] [stderr] --> src/menu.rs:48:9 [INFO] [stderr] | [INFO] [stderr] 48 | let caesarOutput: String = "caesarOutput.txt".to_string(); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `aesInput` should have a snake case name such as `aes_input` [INFO] [stderr] --> src/menu.rs:49:9 [INFO] [stderr] | [INFO] [stderr] 49 | let aesInput: String = "aesInput.txt".to_string(); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `aesOutput` should have a snake case name such as `aes_output` [INFO] [stderr] --> src/menu.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | let aesOutput: String = "aesOutput.txt".to_string(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `initializedVector` should have a snake case name such as `initialized_vector` [INFO] [stderr] --> src/menu.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | let initializedVector: String = "iv.txt".to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `encrypted_AES_message` should have a snake case name such as `encrypted_aes_message` [INFO] [stderr] --> src/menu.rs:134:25 [INFO] [stderr] | [INFO] [stderr] 134 | let encrypted_AES_message = aes256::aes256_encrypt(&message.clone().into_bytes(), &key, &iv).ok().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/menu.rs:138:63 [INFO] [stderr] | [INFO] [stderr] 138 | encr_message.push(std::char::from_u32(byte as u32).unwrap()); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u32::from(byte)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 7.65s [INFO] running `"docker" "inspect" "faf8506a1a3ecadf63bff0cf61970752ea8eb64be82f9a4cef9d8ced852dc523"` [INFO] running `"docker" "rm" "-f" "faf8506a1a3ecadf63bff0cf61970752ea8eb64be82f9a4cef9d8ced852dc523"` [INFO] [stdout] faf8506a1a3ecadf63bff0cf61970752ea8eb64be82f9a4cef9d8ced852dc523