Nov 07 02:53:10.002 INFO checking ShaunApps/cryptopals-challenges against master#24e66c28980442a48d9458f1a4f9b76cc722dc8a+rustflags=-Dduplicate_associated_type_bindings for pr-55687 Nov 07 02:53:10.002 INFO running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-55687/worker-4/master#24e66c28980442a48d9458f1a4f9b76cc722dc8a+rustflags=-Dduplicate_associated_type_bindings:/target:rw,Z" "-v" "/mnt/big/crater/work/local/test-source/worker-4/pr-55687/master#24e66c28980442a48d9458f1a4f9b76cc722dc8a+rustflags=-Dduplicate_associated_type_bindings:/source:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/source" "-e" "USER_ID=1000" "-e" "CMD=cargo +24e66c28980442a48d9458f1a4f9b76cc722dc8a-alt check --frozen --all --all-targets" "-e" "CARGO_TARGET_DIR=/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dduplicate_associated_type_bindings" "-e" "CARGO_HOME=/cargo-home" "-e" "RUSTUP_HOME=/rustup-home" "-m" "1536M" "--network" "none" "crater"` Nov 07 02:53:10.313 INFO blam! 2aee0db5c0637bda6c7a022938d8e7ced31b2911c853a0a2c11717f436aff572 Nov 07 02:53:10.322 INFO running `"docker" "start" "-a" "2aee0db5c0637bda6c7a022938d8e7ced31b2911c853a0a2c11717f436aff572"` Nov 07 02:53:10.996 INFO kablam! usermod: no changes Nov 07 02:53:11.064 INFO kablam! Checking cryptopals v0.1.0 (/source) Nov 07 02:53:11.967 INFO kablam! warning: unused import: `hex` Nov 07 02:53:11.968 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:4:5 Nov 07 02:53:11.968 INFO kablam! | Nov 07 02:53:11.968 INFO kablam! 4 | use hex; Nov 07 02:53:11.968 INFO kablam! | ^^^ Nov 07 02:53:11.969 INFO kablam! | Nov 07 02:53:11.969 INFO kablam! = note: #[warn(unused_imports)] on by default Nov 07 02:53:11.969 INFO kablam! Nov 07 02:53:11.969 INFO kablam! warning: unused import: `std::io` Nov 07 02:53:11.969 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:7:5 Nov 07 02:53:11.969 INFO kablam! | Nov 07 02:53:11.969 INFO kablam! 7 | use std::io; Nov 07 02:53:11.969 INFO kablam! | ^^^^^^^ Nov 07 02:53:11.970 INFO kablam! Nov 07 02:53:11.970 INFO kablam! warning: unused import: `std::io::BufRead` Nov 07 02:53:11.970 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:9:5 Nov 07 02:53:11.970 INFO kablam! | Nov 07 02:53:11.970 INFO kablam! 9 | use std::io::BufRead; Nov 07 02:53:11.970 INFO kablam! | ^^^^^^^^^^^^^^^^ Nov 07 02:53:11.970 INFO kablam! Nov 07 02:53:11.970 INFO kablam! warning: unused import: `std::io::BufReader` Nov 07 02:53:11.970 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:10:5 Nov 07 02:53:11.970 INFO kablam! | Nov 07 02:53:11.970 INFO kablam! 10 | use std::io::BufReader; Nov 07 02:53:11.970 INFO kablam! | ^^^^^^^^^^^^^^^^^^ Nov 07 02:53:11.970 INFO kablam! Nov 07 02:53:11.970 INFO kablam! warning: unused import: `std::path::Path` Nov 07 02:53:11.970 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:11:5 Nov 07 02:53:11.971 INFO kablam! | Nov 07 02:53:11.971 INFO kablam! 11 | use std::path::Path; Nov 07 02:53:11.971 INFO kablam! | ^^^^^^^^^^^^^^^ Nov 07 02:53:11.971 INFO kablam! Nov 07 02:53:11.971 INFO kablam! warning: unused import: `std::str` Nov 07 02:53:11.971 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:12:5 Nov 07 02:53:11.971 INFO kablam! | Nov 07 02:53:11.971 INFO kablam! 12 | use std::str; Nov 07 02:53:11.971 INFO kablam! | ^^^^^^^^ Nov 07 02:53:11.971 INFO kablam! Nov 07 02:53:11.971 INFO kablam! warning: unused import: `base64` Nov 07 02:53:11.972 INFO kablam! --> src/challenge_set_1/challenge_7.rs:1:5 Nov 07 02:53:11.972 INFO kablam! | Nov 07 02:53:11.972 INFO kablam! 1 | use base64; Nov 07 02:53:11.972 INFO kablam! | ^^^^^^ Nov 07 02:53:11.972 INFO kablam! Nov 07 02:53:11.972 INFO kablam! warning: unused import: `rand::prelude::*` Nov 07 02:53:11.972 INFO kablam! --> src/challenge_set_1/challenge_7.rs:4:5 Nov 07 02:53:11.972 INFO kablam! | Nov 07 02:53:11.972 INFO kablam! 4 | use rand::prelude::*; Nov 07 02:53:11.972 INFO kablam! | ^^^^^^^^^^^^^^^^ Nov 07 02:53:11.973 INFO kablam! Nov 07 02:53:11.973 INFO kablam! warning: unused imports: `OsRng`, `Rng` Nov 07 02:53:11.973 INFO kablam! --> src/challenge_set_1/challenge_7.rs:5:12 Nov 07 02:53:11.973 INFO kablam! | Nov 07 02:53:11.973 INFO kablam! 5 | use rand::{OsRng, Rng}; Nov 07 02:53:11.973 INFO kablam! | ^^^^^ ^^^ Nov 07 02:53:11.973 INFO kablam! Nov 07 02:53:11.973 INFO kablam! warning: unused import: `std::fs::File` Nov 07 02:53:11.973 INFO kablam! --> src/challenge_set_1/challenge_7.rs:6:5 Nov 07 02:53:11.973 INFO kablam! | Nov 07 02:53:11.973 INFO kablam! 6 | use std::fs::File; Nov 07 02:53:11.973 INFO kablam! | ^^^^^^^^^^^^^ Nov 07 02:53:11.973 INFO kablam! Nov 07 02:53:11.974 INFO kablam! warning: unused import: `std::io::prelude::*` Nov 07 02:53:11.974 INFO kablam! --> src/challenge_set_1/challenge_7.rs:7:5 Nov 07 02:53:11.974 INFO kablam! | Nov 07 02:53:11.974 INFO kablam! 7 | use std::io::prelude::*; Nov 07 02:53:11.974 INFO kablam! | ^^^^^^^^^^^^^^^^^^^ Nov 07 02:53:11.974 INFO kablam! Nov 07 02:53:11.974 INFO kablam! warning: unused import: `std::io::BufRead` Nov 07 02:53:11.974 INFO kablam! --> src/challenge_set_1/challenge_7.rs:8:5 Nov 07 02:53:11.974 INFO kablam! | Nov 07 02:53:11.974 INFO kablam! 8 | use std::io::BufRead; Nov 07 02:53:11.974 INFO kablam! | ^^^^^^^^^^^^^^^^ Nov 07 02:53:11.974 INFO kablam! Nov 07 02:53:11.974 INFO kablam! warning: unused import: `std::io::BufReader` Nov 07 02:53:11.974 INFO kablam! --> src/challenge_set_1/challenge_7.rs:9:5 Nov 07 02:53:11.974 INFO kablam! | Nov 07 02:53:11.974 INFO kablam! 9 | use std::io::BufReader; Nov 07 02:53:11.974 INFO kablam! | ^^^^^^^^^^^^^^^^^^ Nov 07 02:53:11.974 INFO kablam! Nov 07 02:53:11.975 INFO kablam! warning: unused import: `std::str` Nov 07 02:53:11.975 INFO kablam! --> src/challenge_set_1/challenge_7.rs:10:5 Nov 07 02:53:11.975 INFO kablam! | Nov 07 02:53:11.975 INFO kablam! 10 | use std::str; Nov 07 02:53:11.975 INFO kablam! | ^^^^^^^^ Nov 07 02:53:11.975 INFO kablam! Nov 07 02:53:11.975 INFO kablam! warning: unused import: `std::path::Path` Nov 07 02:53:11.975 INFO kablam! --> src/challenge_set_1/detect_single_char_xor.rs:5:5 Nov 07 02:53:11.975 INFO kablam! | Nov 07 02:53:11.975 INFO kablam! 5 | use std::path::Path; Nov 07 02:53:11.975 INFO kablam! | ^^^^^^^^^^^^^^^ Nov 07 02:53:11.975 INFO kablam! Nov 07 02:53:11.975 INFO kablam! warning: unused import: `base64` Nov 07 02:53:11.975 INFO kablam! --> src/challenge_set_1/fixed_XOR.rs:1:5 Nov 07 02:53:11.975 INFO kablam! | Nov 07 02:53:11.975 INFO kablam! 1 | use base64; Nov 07 02:53:11.975 INFO kablam! | ^^^^^^ Nov 07 02:53:11.975 INFO kablam! Nov 07 02:53:11.976 INFO kablam! warning: unused import: `std::str::from_utf8` Nov 07 02:53:11.976 INFO kablam! --> src/challenge_set_1/repeating_key_xor.rs:2:5 Nov 07 02:53:11.976 INFO kablam! | Nov 07 02:53:11.976 INFO kablam! 2 | use std::str::from_utf8; Nov 07 02:53:11.976 INFO kablam! | ^^^^^^^^^^^^^^^^^^^ Nov 07 02:53:11.976 INFO kablam! Nov 07 02:53:11.976 INFO kablam! warning: unnecessary parentheses around `if` condition Nov 07 02:53:11.976 INFO kablam! --> src/challenge_set_1/repeating_key_xor.rs:11:12 Nov 07 02:53:11.976 INFO kablam! | Nov 07 02:53:11.976 INFO kablam! 11 | if ((index + 1) == key.as_bytes().len()) { Nov 07 02:53:11.976 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses Nov 07 02:53:11.976 INFO kablam! | Nov 07 02:53:11.976 INFO kablam! = note: #[warn(unused_parens)] on by default Nov 07 02:53:11.976 INFO kablam! Nov 07 02:53:11.977 INFO kablam! warning: unused import: `base64` Nov 07 02:53:11.977 INFO kablam! --> src/challenge_set_1/single_byte_xor_cipher.rs:1:5 Nov 07 02:53:11.977 INFO kablam! | Nov 07 02:53:11.977 INFO kablam! 1 | use base64; Nov 07 02:53:11.977 INFO kablam! | ^^^^^^ Nov 07 02:53:11.977 INFO kablam! Nov 07 02:53:11.977 INFO kablam! warning: unused import: `challenge_set_1::detect_single_char_xor::detect_sing_char_xor` Nov 07 02:53:11.977 INFO kablam! --> src/main.rs:8:5 Nov 07 02:53:11.977 INFO kablam! | Nov 07 02:53:11.977 INFO kablam! 8 | use challenge_set_1::detect_single_char_xor::detect_sing_char_xor; Nov 07 02:53:11.977 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 07 02:53:11.977 INFO kablam! Nov 07 02:53:11.977 INFO kablam! warning: unused import: `challenge_set_1::single_byte_xor_cipher::single_byte_xor_cipher` Nov 07 02:53:11.977 INFO kablam! --> src/main.rs:10:5 Nov 07 02:53:11.977 INFO kablam! | Nov 07 02:53:11.977 INFO kablam! 10 | use challenge_set_1::single_byte_xor_cipher::single_byte_xor_cipher; Nov 07 02:53:11.977 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 07 02:53:11.978 INFO kablam! Nov 07 02:53:12.110 INFO kablam! warning: variable `phrase` is assigned to, but never used Nov 07 02:53:12.110 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:24:13 Nov 07 02:53:12.110 INFO kablam! | Nov 07 02:53:12.110 INFO kablam! 24 | let mut phrase: String = "".to_string(); Nov 07 02:53:12.110 INFO kablam! | ^^^^^^ Nov 07 02:53:12.110 INFO kablam! | Nov 07 02:53:12.110 INFO kablam! = note: #[warn(unused_variables)] on by default Nov 07 02:53:12.110 INFO kablam! = note: consider using `_phrase` instead Nov 07 02:53:12.110 INFO kablam! Nov 07 02:53:12.110 INFO kablam! warning: value assigned to `phrase` is never read Nov 07 02:53:12.110 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:33:13 Nov 07 02:53:12.110 INFO kablam! | Nov 07 02:53:12.110 INFO kablam! 33 | phrase = match thing { Nov 07 02:53:12.110 INFO kablam! | ^^^^^^ Nov 07 02:53:12.110 INFO kablam! | Nov 07 02:53:12.110 INFO kablam! = note: #[warn(unused_assignments)] on by default Nov 07 02:53:12.110 INFO kablam! Nov 07 02:53:12.111 INFO kablam! warning: unused variable: `error` Nov 07 02:53:12.111 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:35:21 Nov 07 02:53:12.112 INFO kablam! | Nov 07 02:53:12.112 INFO kablam! 35 | Err(error) => String::from(""), Nov 07 02:53:12.112 INFO kablam! | ^^^^^ help: consider using `_error` instead Nov 07 02:53:12.112 INFO kablam! Nov 07 02:53:12.112 INFO kablam! warning: unused variable: `value` Nov 07 02:53:12.112 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:84:15 Nov 07 02:53:12.112 INFO kablam! | Nov 07 02:53:12.112 INFO kablam! 84 | for (key, value) in key_map.iter() { Nov 07 02:53:12.112 INFO kablam! | ^^^^^ help: consider using `_value` instead Nov 07 02:53:12.112 INFO kablam! Nov 07 02:53:12.112 INFO kablam! warning: unused variable: `e` Nov 07 02:53:12.112 INFO kablam! --> src/challenge_set_1/single_byte_xor_cipher.rs:44:13 Nov 07 02:53:12.112 INFO kablam! | Nov 07 02:53:12.112 INFO kablam! 44 | Err(e) => String::from(""), Nov 07 02:53:12.112 INFO kablam! | ^ help: consider using `_e` instead Nov 07 02:53:12.112 INFO kablam! Nov 07 02:53:12.112 INFO kablam! warning: unused variable: `length` Nov 07 02:53:12.112 INFO kablam! --> src/challenge_set_1/single_byte_xor_cipher.rs:57:9 Nov 07 02:53:12.112 INFO kablam! | Nov 07 02:53:12.112 INFO kablam! 57 | let length = data_as_bytes.len(); Nov 07 02:53:12.112 INFO kablam! | ^^^^^^ help: consider using `_length` instead Nov 07 02:53:12.112 INFO kablam! Nov 07 02:53:12.116 INFO kablam! warning: unused variable: `error` Nov 07 02:53:12.116 INFO kablam! --> src/challenge_set_1/single_byte_xor_cipher.rs:78:21 Nov 07 02:53:12.116 INFO kablam! | Nov 07 02:53:12.116 INFO kablam! 78 | Err(error) => String::from(""), Nov 07 02:53:12.116 INFO kablam! | ^^^^^ help: consider using `_error` instead Nov 07 02:53:12.116 INFO kablam! Nov 07 02:53:12.160 INFO kablam! warning: function is never used: `solve_blocks` Nov 07 02:53:12.160 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:14:1 Nov 07 02:53:12.160 INFO kablam! | Nov 07 02:53:12.160 INFO kablam! 14 | fn solve_blocks(blocks: Vec>) -> Vec { Nov 07 02:53:12.160 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 07 02:53:12.160 INFO kablam! | Nov 07 02:53:12.160 INFO kablam! = note: #[warn(dead_code)] on by default Nov 07 02:53:12.160 INFO kablam! Nov 07 02:53:12.160 INFO kablam! warning: function is never used: `break_ciphertext_into_blocks` Nov 07 02:53:12.160 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:42:1 Nov 07 02:53:12.160 INFO kablam! | Nov 07 02:53:12.160 INFO kablam! 42 | fn break_ciphertext_into_blocks(keysize: u8) -> Vec> { Nov 07 02:53:12.160 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 07 02:53:12.160 INFO kablam! Nov 07 02:53:12.160 INFO kablam! warning: function is never used: `find_smallest_KEYSIZE` Nov 07 02:53:12.160 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:76:1 Nov 07 02:53:12.160 INFO kablam! | Nov 07 02:53:12.160 INFO kablam! 76 | fn find_smallest_KEYSIZE() -> Vec { Nov 07 02:53:12.160 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 07 02:53:12.160 INFO kablam! Nov 07 02:53:12.160 INFO kablam! warning: function is never used: `normalized_KEYSIZE` Nov 07 02:53:12.160 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:96:1 Nov 07 02:53:12.160 INFO kablam! | Nov 07 02:53:12.160 INFO kablam! 96 | fn normalized_KEYSIZE(key_guess: u8) -> f64 { Nov 07 02:53:12.160 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 07 02:53:12.160 INFO kablam! Nov 07 02:53:12.160 INFO kablam! warning: function is never used: `decrypt` Nov 07 02:53:12.160 INFO kablam! --> src/challenge_set_1/challenge_7.rs:13:1 Nov 07 02:53:12.160 INFO kablam! | Nov 07 02:53:12.160 INFO kablam! 13 | / fn decrypt( Nov 07 02:53:12.160 INFO kablam! 14 | | encrypted_data: &[u8], Nov 07 02:53:12.160 INFO kablam! 15 | | key: &[u8], Nov 07 02:53:12.160 INFO kablam! 16 | | ) -> Result, symmetriccipher::SymmetricCipherError> { Nov 07 02:53:12.160 INFO kablam! ... | Nov 07 02:53:12.160 INFO kablam! 39 | | Ok(final_result) Nov 07 02:53:12.160 INFO kablam! 40 | | } Nov 07 02:53:12.160 INFO kablam! | |_^ Nov 07 02:53:12.160 INFO kablam! Nov 07 02:53:12.160 INFO kablam! warning: function `find_smallest_KEYSIZE` should have a snake case name such as `find_smallest_keysize` Nov 07 02:53:12.160 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:76:1 Nov 07 02:53:12.160 INFO kablam! | Nov 07 02:53:12.160 INFO kablam! 76 | / fn find_smallest_KEYSIZE() -> Vec { Nov 07 02:53:12.160 INFO kablam! 77 | | let mut key_map: HashMap = HashMap::new(); Nov 07 02:53:12.160 INFO kablam! 78 | | Nov 07 02:53:12.161 INFO kablam! 79 | | for i in 1..=40 { Nov 07 02:53:12.161 INFO kablam! ... | Nov 07 02:53:12.161 INFO kablam! 92 | | vec![value1, value2, value3] Nov 07 02:53:12.161 INFO kablam! 93 | | } Nov 07 02:53:12.161 INFO kablam! | |_^ Nov 07 02:53:12.161 INFO kablam! | Nov 07 02:53:12.161 INFO kablam! = note: #[warn(non_snake_case)] on by default Nov 07 02:53:12.161 INFO kablam! Nov 07 02:53:12.161 INFO kablam! warning: function `normalized_KEYSIZE` should have a snake case name such as `normalized_keysize` Nov 07 02:53:12.161 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:96:1 Nov 07 02:53:12.161 INFO kablam! | Nov 07 02:53:12.161 INFO kablam! 96 | / fn normalized_KEYSIZE(key_guess: u8) -> f64 { Nov 07 02:53:12.161 INFO kablam! 97 | | let mut f = File::open("1_challenge_6.txt").unwrap(); Nov 07 02:53:12.161 INFO kablam! 98 | | Nov 07 02:53:12.161 INFO kablam! 99 | | let mut contents = String::new(); Nov 07 02:53:12.161 INFO kablam! ... | Nov 07 02:53:12.161 INFO kablam! 114 | | final_distance / pairs as f64 Nov 07 02:53:12.161 INFO kablam! 115 | | } Nov 07 02:53:12.161 INFO kablam! | |_^ Nov 07 02:53:12.161 INFO kablam! Nov 07 02:53:12.161 INFO kablam! warning: module `fixed_XOR` should have a snake case name such as `fixed_xor` Nov 07 02:53:12.161 INFO kablam! --> src/challenge_set_1/mod.rs:7:1 Nov 07 02:53:12.161 INFO kablam! | Nov 07 02:53:12.161 INFO kablam! 7 | pub mod fixed_XOR; Nov 07 02:53:12.161 INFO kablam! | ^^^^^^^^^^^^^^^^^^ Nov 07 02:53:12.161 INFO kablam! Nov 07 02:53:12.161 INFO kablam! warning: function `fixed_XOR` should have a snake case name such as `fixed_xor` Nov 07 02:53:12.161 INFO kablam! --> src/challenge_set_1/fixed_XOR.rs:19:1 Nov 07 02:53:12.161 INFO kablam! | Nov 07 02:53:12.161 INFO kablam! 19 | / pub fn fixed_XOR(data_1: &str, data_2: &str) -> String { Nov 07 02:53:12.161 INFO kablam! 20 | | let one = hex::decode(data_1).unwrap(); Nov 07 02:53:12.161 INFO kablam! 21 | | let two = hex::decode(data_2).unwrap(); Nov 07 02:53:12.161 INFO kablam! 22 | | let xor = BytesXOR(one) ^ BytesXOR(two); Nov 07 02:53:12.161 INFO kablam! 23 | | hex::encode(xor.0) Nov 07 02:53:12.161 INFO kablam! 24 | | } Nov 07 02:53:12.161 INFO kablam! | |_^ Nov 07 02:53:12.161 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused import: `hex` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:4:5 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 4 | use hex; Nov 07 02:53:12.389 INFO kablam! | ^^^ Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! = note: #[warn(unused_imports)] on by default Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused import: `std::io` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:7:5 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 7 | use std::io; Nov 07 02:53:12.389 INFO kablam! | ^^^^^^^ Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused import: `std::io::BufRead` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:9:5 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 9 | use std::io::BufRead; Nov 07 02:53:12.389 INFO kablam! | ^^^^^^^^^^^^^^^^ Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused import: `std::io::BufReader` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:10:5 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 10 | use std::io::BufReader; Nov 07 02:53:12.389 INFO kablam! | ^^^^^^^^^^^^^^^^^^ Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused import: `std::path::Path` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:11:5 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 11 | use std::path::Path; Nov 07 02:53:12.389 INFO kablam! | ^^^^^^^^^^^^^^^ Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused import: `rand::prelude::*` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/challenge_7.rs:4:5 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 4 | use rand::prelude::*; Nov 07 02:53:12.389 INFO kablam! | ^^^^^^^^^^^^^^^^ Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused imports: `OsRng`, `Rng` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/challenge_7.rs:5:12 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 5 | use rand::{OsRng, Rng}; Nov 07 02:53:12.389 INFO kablam! | ^^^^^ ^^^ Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused import: `std::io::prelude::*` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/challenge_7.rs:7:5 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 7 | use std::io::prelude::*; Nov 07 02:53:12.389 INFO kablam! | ^^^^^^^^^^^^^^^^^^^ Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused import: `std::io::BufRead` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/challenge_7.rs:8:5 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 8 | use std::io::BufRead; Nov 07 02:53:12.389 INFO kablam! | ^^^^^^^^^^^^^^^^ Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused import: `std::str` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/challenge_7.rs:10:5 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 10 | use std::str; Nov 07 02:53:12.389 INFO kablam! | ^^^^^^^^ Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused import: `std::path::Path` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/detect_single_char_xor.rs:5:5 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 5 | use std::path::Path; Nov 07 02:53:12.389 INFO kablam! | ^^^^^^^^^^^^^^^ Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused import: `base64` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/fixed_XOR.rs:1:5 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 1 | use base64; Nov 07 02:53:12.389 INFO kablam! | ^^^^^^ Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unused import: `std::str::from_utf8` Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/repeating_key_xor.rs:2:5 Nov 07 02:53:12.389 INFO kablam! | Nov 07 02:53:12.389 INFO kablam! 2 | use std::str::from_utf8; Nov 07 02:53:12.389 INFO kablam! | ^^^^^^^^^^^^^^^^^^^ Nov 07 02:53:12.389 INFO kablam! Nov 07 02:53:12.389 INFO kablam! warning: unnecessary parentheses around `if` condition Nov 07 02:53:12.389 INFO kablam! --> src/challenge_set_1/repeating_key_xor.rs:11:12 Nov 07 02:53:12.390 INFO kablam! | Nov 07 02:53:12.390 INFO kablam! 11 | if ((index + 1) == key.as_bytes().len()) { Nov 07 02:53:12.390 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses Nov 07 02:53:12.390 INFO kablam! | Nov 07 02:53:12.390 INFO kablam! = note: #[warn(unused_parens)] on by default Nov 07 02:53:12.390 INFO kablam! Nov 07 02:53:12.390 INFO kablam! warning: unused import: `base64` Nov 07 02:53:12.390 INFO kablam! --> src/challenge_set_1/single_byte_xor_cipher.rs:1:5 Nov 07 02:53:12.390 INFO kablam! | Nov 07 02:53:12.390 INFO kablam! 1 | use base64; Nov 07 02:53:12.390 INFO kablam! | ^^^^^^ Nov 07 02:53:12.390 INFO kablam! Nov 07 02:53:12.390 INFO kablam! warning: unused import: `super::*` Nov 07 02:53:12.390 INFO kablam! --> src/challenge_set_1/single_byte_xor_cipher.rs:88:9 Nov 07 02:53:12.390 INFO kablam! | Nov 07 02:53:12.390 INFO kablam! 88 | use super::*; Nov 07 02:53:12.390 INFO kablam! | ^^^^^^^^ Nov 07 02:53:12.390 INFO kablam! Nov 07 02:53:12.390 INFO kablam! warning: unused import: `challenge_set_1::detect_single_char_xor::detect_sing_char_xor` Nov 07 02:53:12.390 INFO kablam! --> src/main.rs:8:5 Nov 07 02:53:12.390 INFO kablam! | Nov 07 02:53:12.390 INFO kablam! 8 | use challenge_set_1::detect_single_char_xor::detect_sing_char_xor; Nov 07 02:53:12.390 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 07 02:53:12.390 INFO kablam! Nov 07 02:53:12.390 INFO kablam! warning: unused import: `challenge_set_1::single_byte_xor_cipher::single_byte_xor_cipher` Nov 07 02:53:12.390 INFO kablam! --> src/main.rs:10:5 Nov 07 02:53:12.390 INFO kablam! | Nov 07 02:53:12.390 INFO kablam! 10 | use challenge_set_1::single_byte_xor_cipher::single_byte_xor_cipher; Nov 07 02:53:12.390 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 07 02:53:12.390 INFO kablam! Nov 07 02:53:12.544 INFO kablam! warning: variable `phrase` is assigned to, but never used Nov 07 02:53:12.544 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:24:13 Nov 07 02:53:12.544 INFO kablam! | Nov 07 02:53:12.544 INFO kablam! 24 | let mut phrase: String = "".to_string(); Nov 07 02:53:12.544 INFO kablam! | ^^^^^^ Nov 07 02:53:12.544 INFO kablam! | Nov 07 02:53:12.544 INFO kablam! = note: #[warn(unused_variables)] on by default Nov 07 02:53:12.544 INFO kablam! = note: consider using `_phrase` instead Nov 07 02:53:12.544 INFO kablam! Nov 07 02:53:12.544 INFO kablam! warning: value assigned to `phrase` is never read Nov 07 02:53:12.544 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:33:13 Nov 07 02:53:12.544 INFO kablam! | Nov 07 02:53:12.544 INFO kablam! 33 | phrase = match thing { Nov 07 02:53:12.544 INFO kablam! | ^^^^^^ Nov 07 02:53:12.544 INFO kablam! | Nov 07 02:53:12.544 INFO kablam! = note: #[warn(unused_assignments)] on by default Nov 07 02:53:12.544 INFO kablam! Nov 07 02:53:12.544 INFO kablam! warning: unused variable: `error` Nov 07 02:53:12.544 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:35:21 Nov 07 02:53:12.544 INFO kablam! | Nov 07 02:53:12.544 INFO kablam! 35 | Err(error) => String::from(""), Nov 07 02:53:12.544 INFO kablam! | ^^^^^ help: consider using `_error` instead Nov 07 02:53:12.544 INFO kablam! Nov 07 02:53:12.544 INFO kablam! warning: unused variable: `value` Nov 07 02:53:12.544 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:84:15 Nov 07 02:53:12.544 INFO kablam! | Nov 07 02:53:12.545 INFO kablam! 84 | for (key, value) in key_map.iter() { Nov 07 02:53:12.545 INFO kablam! | ^^^^^ help: consider using `_value` instead Nov 07 02:53:12.545 INFO kablam! Nov 07 02:53:12.545 INFO kablam! warning: unused variable: `e` Nov 07 02:53:12.545 INFO kablam! --> src/challenge_set_1/single_byte_xor_cipher.rs:44:13 Nov 07 02:53:12.545 INFO kablam! | Nov 07 02:53:12.545 INFO kablam! 44 | Err(e) => String::from(""), Nov 07 02:53:12.545 INFO kablam! | ^ help: consider using `_e` instead Nov 07 02:53:12.545 INFO kablam! Nov 07 02:53:12.545 INFO kablam! warning: unused variable: `length` Nov 07 02:53:12.545 INFO kablam! --> src/challenge_set_1/single_byte_xor_cipher.rs:57:9 Nov 07 02:53:12.545 INFO kablam! | Nov 07 02:53:12.545 INFO kablam! 57 | let length = data_as_bytes.len(); Nov 07 02:53:12.545 INFO kablam! | ^^^^^^ help: consider using `_length` instead Nov 07 02:53:12.545 INFO kablam! Nov 07 02:53:12.545 INFO kablam! warning: unused variable: `error` Nov 07 02:53:12.545 INFO kablam! --> src/challenge_set_1/single_byte_xor_cipher.rs:78:21 Nov 07 02:53:12.545 INFO kablam! | Nov 07 02:53:12.545 INFO kablam! 78 | Err(error) => String::from(""), Nov 07 02:53:12.545 INFO kablam! | ^^^^^ help: consider using `_error` instead Nov 07 02:53:12.545 INFO kablam! Nov 07 02:53:12.576 INFO kablam! warning: variable does not need to be mutable Nov 07 02:53:12.576 INFO kablam! --> src/challenge_set_1/challenge_7.rs:48:13 Nov 07 02:53:12.576 INFO kablam! | Nov 07 02:53:12.576 INFO kablam! 48 | let mut f = File::open("1_challenge_7.txt").unwrap(); Nov 07 02:53:12.576 INFO kablam! | ----^ Nov 07 02:53:12.576 INFO kablam! | | Nov 07 02:53:12.576 INFO kablam! | help: remove this `mut` Nov 07 02:53:12.576 INFO kablam! | Nov 07 02:53:12.576 INFO kablam! = note: #[warn(unused_mut)] on by default Nov 07 02:53:12.576 INFO kablam! Nov 07 02:53:12.576 INFO kablam! warning: variable does not need to be mutable Nov 07 02:53:12.576 INFO kablam! --> src/challenge_set_1/challenge_7.rs:49:13 Nov 07 02:53:12.576 INFO kablam! | Nov 07 02:53:12.576 INFO kablam! 49 | let mut buf_reader = BufReader::new(f); Nov 07 02:53:12.576 INFO kablam! | ----^^^^^^^^^^ Nov 07 02:53:12.577 INFO kablam! | | Nov 07 02:53:12.577 INFO kablam! | help: remove this `mut` Nov 07 02:53:12.577 INFO kablam! Nov 07 02:53:12.596 INFO kablam! warning: function `find_smallest_KEYSIZE` should have a snake case name such as `find_smallest_keysize` Nov 07 02:53:12.596 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:76:1 Nov 07 02:53:12.596 INFO kablam! | Nov 07 02:53:12.596 INFO kablam! 76 | / fn find_smallest_KEYSIZE() -> Vec { Nov 07 02:53:12.596 INFO kablam! 77 | | let mut key_map: HashMap = HashMap::new(); Nov 07 02:53:12.596 INFO kablam! 78 | | Nov 07 02:53:12.596 INFO kablam! 79 | | for i in 1..=40 { Nov 07 02:53:12.596 INFO kablam! ... | Nov 07 02:53:12.596 INFO kablam! 92 | | vec![value1, value2, value3] Nov 07 02:53:12.596 INFO kablam! 93 | | } Nov 07 02:53:12.596 INFO kablam! | |_^ Nov 07 02:53:12.596 INFO kablam! | Nov 07 02:53:12.596 INFO kablam! = note: #[warn(non_snake_case)] on by default Nov 07 02:53:12.596 INFO kablam! Nov 07 02:53:12.597 INFO kablam! warning: function `normalized_KEYSIZE` should have a snake case name such as `normalized_keysize` Nov 07 02:53:12.597 INFO kablam! --> src/challenge_set_1/break_repeating_key_xor.rs:96:1 Nov 07 02:53:12.597 INFO kablam! | Nov 07 02:53:12.597 INFO kablam! 96 | / fn normalized_KEYSIZE(key_guess: u8) -> f64 { Nov 07 02:53:12.597 INFO kablam! 97 | | let mut f = File::open("1_challenge_6.txt").unwrap(); Nov 07 02:53:12.597 INFO kablam! 98 | | Nov 07 02:53:12.597 INFO kablam! 99 | | let mut contents = String::new(); Nov 07 02:53:12.597 INFO kablam! ... | Nov 07 02:53:12.597 INFO kablam! 114 | | final_distance / pairs as f64 Nov 07 02:53:12.597 INFO kablam! 115 | | } Nov 07 02:53:12.597 INFO kablam! | |_^ Nov 07 02:53:12.597 INFO kablam! Nov 07 02:53:12.597 INFO kablam! warning: module `fixed_XOR` should have a snake case name such as `fixed_xor` Nov 07 02:53:12.597 INFO kablam! --> src/challenge_set_1/mod.rs:7:1 Nov 07 02:53:12.597 INFO kablam! | Nov 07 02:53:12.597 INFO kablam! 7 | pub mod fixed_XOR; Nov 07 02:53:12.597 INFO kablam! | ^^^^^^^^^^^^^^^^^^ Nov 07 02:53:12.597 INFO kablam! Nov 07 02:53:12.599 INFO kablam! warning: function `fixed_XOR` should have a snake case name such as `fixed_xor` Nov 07 02:53:12.599 INFO kablam! --> src/challenge_set_1/fixed_XOR.rs:19:1 Nov 07 02:53:12.599 INFO kablam! | Nov 07 02:53:12.599 INFO kablam! 19 | / pub fn fixed_XOR(data_1: &str, data_2: &str) -> String { Nov 07 02:53:12.599 INFO kablam! 20 | | let one = hex::decode(data_1).unwrap(); Nov 07 02:53:12.599 INFO kablam! 21 | | let two = hex::decode(data_2).unwrap(); Nov 07 02:53:12.599 INFO kablam! 22 | | let xor = BytesXOR(one) ^ BytesXOR(two); Nov 07 02:53:12.599 INFO kablam! 23 | | hex::encode(xor.0) Nov 07 02:53:12.599 INFO kablam! 24 | | } Nov 07 02:53:12.599 INFO kablam! | |_^ Nov 07 02:53:12.599 INFO kablam! Nov 07 02:53:12.599 INFO kablam! warning: function `test_fixed_XOR` should have a snake case name such as `test_fixed_xor` Nov 07 02:53:12.599 INFO kablam! --> src/challenge_set_1/fixed_XOR.rs:31:5 Nov 07 02:53:12.599 INFO kablam! | Nov 07 02:53:12.599 INFO kablam! 31 | / fn test_fixed_XOR() { Nov 07 02:53:12.599 INFO kablam! 32 | | let data_1 = "1c0111001f010100061a024b53535009181c"; Nov 07 02:53:12.599 INFO kablam! 33 | | let data_2 = "686974207468652062756c6c277320657965"; Nov 07 02:53:12.599 INFO kablam! 34 | | assert_eq!( Nov 07 02:53:12.599 INFO kablam! ... | Nov 07 02:53:12.599 INFO kablam! 37 | | ); Nov 07 02:53:12.599 INFO kablam! 38 | | } Nov 07 02:53:12.599 INFO kablam! | |_____^ Nov 07 02:53:12.599 INFO kablam! Nov 07 02:53:12.632 INFO kablam! Finished dev [unoptimized + debuginfo] target(s) in 1.61s Nov 07 02:53:12.636 INFO kablam! su: No module specific data is present Nov 07 02:53:12.923 INFO running `"docker" "rm" "-f" "2aee0db5c0637bda6c7a022938d8e7ced31b2911c853a0a2c11717f436aff572"` Nov 07 02:53:13.068 INFO blam! 2aee0db5c0637bda6c7a022938d8e7ced31b2911c853a0a2c11717f436aff572