[INFO] updating cached repository ralphrecto/cryptopals [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/ralphrecto/cryptopals [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/ralphrecto/cryptopals" "work/ex/clippy-test-run/sources/stable/gh/ralphrecto/cryptopals"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/ralphrecto/cryptopals'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/ralphrecto/cryptopals" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/ralphrecto/cryptopals"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/ralphrecto/cryptopals'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] d7cbc0047cb21347cf2782df798aa72494d5ee01 [INFO] sha for GitHub repo ralphrecto/cryptopals: d7cbc0047cb21347cf2782df798aa72494d5ee01 [INFO] validating manifest of ralphrecto/cryptopals 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 ralphrecto/cryptopals 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 ralphrecto/cryptopals [INFO] finished frobbing ralphrecto/cryptopals [INFO] frobbed toml for ralphrecto/cryptopals written to work/ex/clippy-test-run/sources/stable/gh/ralphrecto/cryptopals/Cargo.toml [INFO] started frobbing ralphrecto/cryptopals [INFO] finished frobbing ralphrecto/cryptopals [INFO] frobbed toml for ralphrecto/cryptopals written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/ralphrecto/cryptopals/Cargo.toml [INFO] crate ralphrecto/cryptopals 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 ralphrecto/cryptopals against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-1/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/ralphrecto/cryptopals:/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] 2de0dcf5ae1e7c6964f1a0cfd6565de0542584c784de434290ed7a7b73ea35bf [INFO] running `"docker" "start" "-a" "2de0dcf5ae1e7c6964f1a0cfd6565de0542584c784de434290ed7a7b73ea35bf"` [INFO] [stderr] Checking cryptopals v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `cryptopals::strutils` [INFO] [stderr] --> src/cryptopals/set1.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use cryptopals::strutils; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:8:21 [INFO] [stderr] | [INFO] [stderr] 8 | pub fn challenge1() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_unit)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:13:21 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn challenge2() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:28:73 [INFO] [stderr] | [INFO] [stderr] 28 | fn chi_square_printer(word: &str, keyword_and_keys: &Vec<(String, u8)>) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:39:21 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn challenge3() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:45:21 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn challenge4() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:55:21 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn challenge5() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:64:21 [INFO] [stderr] | [INFO] [stderr] 64 | pub fn challenge6() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/cryptopals/hexutils.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | return acc_string; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `acc_string` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/hexutils.rs:63:22 [INFO] [stderr] | [INFO] [stderr] 63 | let tester: u8 = 0b00000001; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_0001` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `for` head expression [INFO] [stderr] --> src/cryptopals/hexutils.rs:65:14 [INFO] [stderr] | [INFO] [stderr] 65 | for i in (0..8) { [INFO] [stderr] | ^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ascii::AsciiExt` [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:6:21 [INFO] [stderr] | [INFO] [stderr] 6 | ' ' => Some(0.18288462654132653), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.182_884_626_541_326_53` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:7:27 [INFO] [stderr] | [INFO] [stderr] 7 | 'E' | 'e' => Some(0.10266650371711405), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.102_666_503_717_114_05` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:8:27 [INFO] [stderr] | [INFO] [stderr] 8 | 'T' | 't' => Some(0.07516998273511516), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.075_169_982_735_115_16` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:9:27 [INFO] [stderr] | [INFO] [stderr] 9 | 'A' | 'a' => Some(0.06532167023346977), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.065_321_670_233_469_77` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:10:27 [INFO] [stderr] | [INFO] [stderr] 10 | 'O' | 'o' => Some(0.06159577254159049), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.061_595_772_541_590_49` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:11:27 [INFO] [stderr] | [INFO] [stderr] 11 | 'N' | 'n' => Some(0.05712011128985469), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.057_120_111_289_854_69` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:12:27 [INFO] [stderr] | [INFO] [stderr] 12 | 'I' | 'i' => Some(0.05668443260048856), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.056_684_432_600_488_56` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:13:27 [INFO] [stderr] | [INFO] [stderr] 13 | 'S' | 's' => Some(0.05317005343812784), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.053_170_053_438_127_84` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:14:27 [INFO] [stderr] | [INFO] [stderr] 14 | 'R' | 'r' => Some(0.04987908553231180), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.049_879_085_532_311_80` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:15:27 [INFO] [stderr] | [INFO] [stderr] 15 | 'H' | 'h' => Some(0.04978563962655234), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.049_785_639_626_552_34` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:16:27 [INFO] [stderr] | [INFO] [stderr] 16 | 'L' | 'l' => Some(0.03317547959533063), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.033_175_479_595_330_63` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:17:27 [INFO] [stderr] | [INFO] [stderr] 17 | 'D' | 'd' => Some(0.03282923097335889), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.032_829_230_973_358_89` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:18:27 [INFO] [stderr] | [INFO] [stderr] 18 | 'U' | 'u' => Some(0.02275795359120720), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.022_757_953_591_207_20` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:19:27 [INFO] [stderr] | [INFO] [stderr] 19 | 'C' | 'c' => Some(0.02233675963832357), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.022_336_759_638_323_57` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:20:27 [INFO] [stderr] | [INFO] [stderr] 20 | 'M' | 'm' => Some(0.02026567834113036), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.020_265_678_341_130_36` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:21:27 [INFO] [stderr] | [INFO] [stderr] 21 | 'F' | 'f' => Some(0.01983067155219636), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.019_830_671_552_196_36` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:22:27 [INFO] [stderr] | [INFO] [stderr] 22 | 'W' | 'w' => Some(0.01703893766467868), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.017_038_937_664_678_68` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:23:27 [INFO] [stderr] | [INFO] [stderr] 23 | 'G' | 'g' => Some(0.01624904409178952), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.016_249_044_091_789_52` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:24:27 [INFO] [stderr] | [INFO] [stderr] 24 | 'P' | 'p' => Some(0.01504324284647170), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.015_043_242_846_471_70` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:25:27 [INFO] [stderr] | [INFO] [stderr] 25 | 'Y' | 'y' => Some(0.01427666624127353), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.014_276_666_241_273_53` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:26:27 [INFO] [stderr] | [INFO] [stderr] 26 | 'B' | 'b' => Some(0.01258880743014620), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.012_588_807_430_146_20` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:27:27 [INFO] [stderr] | [INFO] [stderr] 27 | 'V' | 'v' => Some(0.00796116438442061), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.007_961_164_384_420_61` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:28:27 [INFO] [stderr] | [INFO] [stderr] 28 | 'K' | 'k' => Some(0.00560962722644426), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.005_609_627_226_444_26` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:29:27 [INFO] [stderr] | [INFO] [stderr] 29 | 'X' | 'x' => Some(0.00140920161949961), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.001_409_201_619_499_61` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:30:27 [INFO] [stderr] | [INFO] [stderr] 30 | 'J' | 'j' => Some(0.00097521808184139), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.000_975_218_081_841_39` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:31:27 [INFO] [stderr] | [INFO] [stderr] 31 | 'Q' | 'q' => Some(0.00083675498119895), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.000_836_754_981_198_95` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:32:27 [INFO] [stderr] | [INFO] [stderr] 32 | 'Z' | 'z' => Some(0.00051284690692656), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.000_512_846_906_926_56` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/main.rs:12:17 [INFO] [stderr] | [INFO] [stderr] 12 | fn cryptomain() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/main.rs:22:11 [INFO] [stderr] | [INFO] [stderr] 22 | fn main() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `cryptopals::strutils` [INFO] [stderr] --> src/cryptopals/set1.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use cryptopals::strutils; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:8:21 [INFO] [stderr] | [INFO] [stderr] 8 | pub fn challenge1() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_unit)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:13:21 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn challenge2() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:28:73 [INFO] [stderr] | [INFO] [stderr] 28 | fn chi_square_printer(word: &str, keyword_and_keys: &Vec<(String, u8)>) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:39:21 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn challenge3() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:45:21 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn challenge4() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:55:21 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn challenge5() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/cryptopals/set1.rs:64:21 [INFO] [stderr] | [INFO] [stderr] 64 | pub fn challenge6() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/cryptopals/hexutils.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | return acc_string; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `acc_string` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/hexutils.rs:63:22 [INFO] [stderr] | [INFO] [stderr] 63 | let tester: u8 = 0b00000001; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_0001` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `for` head expression [INFO] [stderr] --> src/cryptopals/hexutils.rs:65:14 [INFO] [stderr] | [INFO] [stderr] 65 | for i in (0..8) { [INFO] [stderr] | ^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ascii::AsciiExt` [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:6:21 [INFO] [stderr] | [INFO] [stderr] 6 | ' ' => Some(0.18288462654132653), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.182_884_626_541_326_53` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:7:27 [INFO] [stderr] | [INFO] [stderr] 7 | 'E' | 'e' => Some(0.10266650371711405), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.102_666_503_717_114_05` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:8:27 [INFO] [stderr] | [INFO] [stderr] 8 | 'T' | 't' => Some(0.07516998273511516), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.075_169_982_735_115_16` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:9:27 [INFO] [stderr] | [INFO] [stderr] 9 | 'A' | 'a' => Some(0.06532167023346977), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.065_321_670_233_469_77` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:10:27 [INFO] [stderr] | [INFO] [stderr] 10 | 'O' | 'o' => Some(0.06159577254159049), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.061_595_772_541_590_49` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:11:27 [INFO] [stderr] | [INFO] [stderr] 11 | 'N' | 'n' => Some(0.05712011128985469), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.057_120_111_289_854_69` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:12:27 [INFO] [stderr] | [INFO] [stderr] 12 | 'I' | 'i' => Some(0.05668443260048856), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.056_684_432_600_488_56` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:13:27 [INFO] [stderr] | [INFO] [stderr] 13 | 'S' | 's' => Some(0.05317005343812784), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.053_170_053_438_127_84` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:14:27 [INFO] [stderr] | [INFO] [stderr] 14 | 'R' | 'r' => Some(0.04987908553231180), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.049_879_085_532_311_80` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:15:27 [INFO] [stderr] | [INFO] [stderr] 15 | 'H' | 'h' => Some(0.04978563962655234), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.049_785_639_626_552_34` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:16:27 [INFO] [stderr] | [INFO] [stderr] 16 | 'L' | 'l' => Some(0.03317547959533063), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.033_175_479_595_330_63` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:17:27 [INFO] [stderr] | [INFO] [stderr] 17 | 'D' | 'd' => Some(0.03282923097335889), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.032_829_230_973_358_89` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:18:27 [INFO] [stderr] | [INFO] [stderr] 18 | 'U' | 'u' => Some(0.02275795359120720), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.022_757_953_591_207_20` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:19:27 [INFO] [stderr] | [INFO] [stderr] 19 | 'C' | 'c' => Some(0.02233675963832357), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.022_336_759_638_323_57` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:20:27 [INFO] [stderr] | [INFO] [stderr] 20 | 'M' | 'm' => Some(0.02026567834113036), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.020_265_678_341_130_36` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:21:27 [INFO] [stderr] | [INFO] [stderr] 21 | 'F' | 'f' => Some(0.01983067155219636), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.019_830_671_552_196_36` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:22:27 [INFO] [stderr] | [INFO] [stderr] 22 | 'W' | 'w' => Some(0.01703893766467868), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.017_038_937_664_678_68` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:23:27 [INFO] [stderr] | [INFO] [stderr] 23 | 'G' | 'g' => Some(0.01624904409178952), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.016_249_044_091_789_52` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:24:27 [INFO] [stderr] | [INFO] [stderr] 24 | 'P' | 'p' => Some(0.01504324284647170), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.015_043_242_846_471_70` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:25:27 [INFO] [stderr] | [INFO] [stderr] 25 | 'Y' | 'y' => Some(0.01427666624127353), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.014_276_666_241_273_53` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:26:27 [INFO] [stderr] | [INFO] [stderr] 26 | 'B' | 'b' => Some(0.01258880743014620), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.012_588_807_430_146_20` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:27:27 [INFO] [stderr] | [INFO] [stderr] 27 | 'V' | 'v' => Some(0.00796116438442061), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.007_961_164_384_420_61` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:28:27 [INFO] [stderr] | [INFO] [stderr] 28 | 'K' | 'k' => Some(0.00560962722644426), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.005_609_627_226_444_26` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:29:27 [INFO] [stderr] | [INFO] [stderr] 29 | 'X' | 'x' => Some(0.00140920161949961), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.001_409_201_619_499_61` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:30:27 [INFO] [stderr] | [INFO] [stderr] 30 | 'J' | 'j' => Some(0.00097521808184139), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.000_975_218_081_841_39` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:31:27 [INFO] [stderr] | [INFO] [stderr] 31 | 'Q' | 'q' => Some(0.00083675498119895), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.000_836_754_981_198_95` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:32:27 [INFO] [stderr] | [INFO] [stderr] 32 | 'Z' | 'z' => Some(0.00051284690692656), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider: `0.000_512_846_906_926_56` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/main.rs:12:17 [INFO] [stderr] | [INFO] [stderr] 12 | fn cryptomain() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/main.rs:22:11 [INFO] [stderr] | [INFO] [stderr] 22 | fn main() -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v1` [INFO] [stderr] --> src/cryptopals/set1.rs:65:9 [INFO] [stderr] | [INFO] [stderr] 65 | let v1: Vec = hexutils::str_to_bytevec("this is a test"); [INFO] [stderr] | ^^ help: consider using `_v1` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v2` [INFO] [stderr] --> src/cryptopals/set1.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 66 | let v2: Vec = hexutils::str_to_bytevec("wokka wokka!!!"); [INFO] [stderr] | ^^ help: consider using `_v2` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v1` [INFO] [stderr] --> src/cryptopals/set1.rs:65:9 [INFO] [stderr] | [INFO] [stderr] 65 | let v1: Vec = hexutils::str_to_bytevec("this is a test"); [INFO] [stderr] | ^^ help: consider using `_v1` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v2` [INFO] [stderr] --> src/cryptopals/set1.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 66 | let v2: Vec = hexutils::str_to_bytevec("wokka wokka!!!"); [INFO] [stderr] | ^^ help: consider using `_v2` instead [INFO] [stderr] [INFO] [stderr] warning: function is never used: `challenge1` [INFO] [stderr] --> src/cryptopals/set1.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | pub fn challenge1() -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `challenge2` [INFO] [stderr] --> src/cryptopals/set1.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn challenge2() -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `chi_square_printer` [INFO] [stderr] --> src/cryptopals/set1.rs:28:1 [INFO] [stderr] | [INFO] [stderr] 28 | fn chi_square_printer(word: &str, keyword_and_keys: &Vec<(String, u8)>) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `challenge3` [INFO] [stderr] --> src/cryptopals/set1.rs:39:1 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn challenge3() -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `challenge4` [INFO] [stderr] --> src/cryptopals/set1.rs:45:1 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn challenge4() -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `challenge5` [INFO] [stderr] --> src/cryptopals/set1.rs:55:1 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn challenge5() -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `hex_to_nibble` [INFO] [stderr] --> src/cryptopals/hexutils.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | pub fn hex_to_nibble(s: char) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `nibble_to_hex` [INFO] [stderr] --> src/cryptopals/hexutils.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn nibble_to_hex(b: u8) -> char { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `hexstr_to_bytevec` [INFO] [stderr] --> src/cryptopals/hexutils.rs:36:1 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn hexstr_to_bytevec(s: &str) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bytevec_to_hexstr` [INFO] [stderr] --> src/cryptopals/hexutils.rs:52:1 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn bytevec_to_hexstr(v: &Vec) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `count_set_bits` [INFO] [stderr] --> src/cryptopals/hexutils.rs:62:1 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn count_set_bits(v: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `letter_freq` [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | fn letter_freq(c: char) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `chi_square` [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:46:1 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn chi_square(text: &str) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `read_file` [INFO] [stderr] --> src/cryptopals/fileutils.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn read_file(pathstr: &str) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `read_lines` [INFO] [stderr] --> src/cryptopals/fileutils.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn read_lines(pathstr: &str) -> io::Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bytexor_keygen` [INFO] [stderr] --> src/cryptopals/xorutils.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn bytexor_keygen(s: &str) -> Vec<(String, u8)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `rolling_xor` [INFO] [stderr] --> src/cryptopals/xorutils.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn rolling_xor(v: &Vec, key: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `hamming_dist` [INFO] [stderr] --> src/cryptopals/strutils.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn hamming_dist(v1: &Vec, v2: &Vec) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/cryptopals/set1.rs:28:53 [INFO] [stderr] | [INFO] [stderr] 28 | fn chi_square_printer(word: &str, keyword_and_keys: &Vec<(String, u8)>) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: change this to: `&[(String, u8)]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/cryptopals/set1.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | / match freq_analysis::chi_square(keyword) { [INFO] [stderr] 31 | | Some(score) => { [INFO] [stderr] 32 | | println!("word: {}, keyword: {}, key: {:#x}, score: {}", word, keyword, key, score) [INFO] [stderr] 33 | | }, [INFO] [stderr] 34 | | None => { } [INFO] [stderr] 35 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 30 | if let Some(score) = freq_analysis::chi_square(keyword) { [INFO] [stderr] 31 | println!("word: {}, keyword: {}, key: {:#x}, score: {}", word, keyword, key, score) [INFO] [stderr] 32 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/cryptopals/hexutils.rs:52:29 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn bytevec_to_hexstr(v: &Vec) -> String { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:14:27 [INFO] [stderr] | [INFO] [stderr] 14 | 'R' | 'r' => Some(0.04987908553231180), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `0.049_879_085_532_311_8` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::excessive_precision)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:18:27 [INFO] [stderr] | [INFO] [stderr] 18 | 'U' | 'u' => Some(0.02275795359120720), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `0.022_757_953_591_207_2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:24:27 [INFO] [stderr] | [INFO] [stderr] 24 | 'P' | 'p' => Some(0.01504324284647170), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `0.015_043_242_846_471_7` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:26:27 [INFO] [stderr] | [INFO] [stderr] 26 | 'B' | 'b' => Some(0.01258880743014620), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `0.012_588_807_430_146_2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:62:28 [INFO] [stderr] | [INFO] [stderr] 62 | Some(f) => (length as f64) * f, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(length)` [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: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:65:14 [INFO] [stderr] | [INFO] [stderr] 65 | (count as f64 - expectation_c).powf(2.0) / expectation_c [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(count)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/cryptopals/fileutils.rs:15:17 [INFO] [stderr] | [INFO] [stderr] 15 | s.split("\n") [INFO] [stderr] | ^^^^ help: try using a char instead: `'\n'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/cryptopals/xorutils.rs:19:23 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn rolling_xor(v: &Vec, key: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/cryptopals/xorutils.rs:19:38 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn rolling_xor(v: &Vec, key: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/cryptopals/strutils.rs:6:25 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn hamming_dist(v1: &Vec, v2: &Vec) -> u32 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/cryptopals/strutils.rs:6:39 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn hamming_dist(v1: &Vec, v2: &Vec) -> u32 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/cryptopals/strutils.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | hexutils::count_set_bits(b1 ^ b2) as u32 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(hexutils::count_set_bits(b1 ^ b2))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: function is never used: `challenge1` [INFO] [stderr] --> src/cryptopals/set1.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | pub fn challenge1() -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `challenge2` [INFO] [stderr] --> src/cryptopals/set1.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn challenge2() -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `chi_square_printer` [INFO] [stderr] --> src/cryptopals/set1.rs:28:1 [INFO] [stderr] | [INFO] [stderr] 28 | fn chi_square_printer(word: &str, keyword_and_keys: &Vec<(String, u8)>) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `challenge3` [INFO] [stderr] --> src/cryptopals/set1.rs:39:1 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn challenge3() -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `challenge4` [INFO] [stderr] --> src/cryptopals/set1.rs:45:1 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn challenge4() -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `challenge5` [INFO] [stderr] --> src/cryptopals/set1.rs:55:1 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn challenge5() -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `hex_to_nibble` [INFO] [stderr] --> src/cryptopals/hexutils.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | pub fn hex_to_nibble(s: char) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `nibble_to_hex` [INFO] [stderr] --> src/cryptopals/hexutils.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn nibble_to_hex(b: u8) -> char { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `hexstr_to_bytevec` [INFO] [stderr] --> src/cryptopals/hexutils.rs:36:1 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn hexstr_to_bytevec(s: &str) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bytevec_to_hexstr` [INFO] [stderr] --> src/cryptopals/hexutils.rs:52:1 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn bytevec_to_hexstr(v: &Vec) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `count_set_bits` [INFO] [stderr] --> src/cryptopals/hexutils.rs:62:1 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn count_set_bits(v: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `letter_freq` [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | fn letter_freq(c: char) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `chi_square` [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:46:1 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn chi_square(text: &str) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `read_file` [INFO] [stderr] --> src/cryptopals/fileutils.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn read_file(pathstr: &str) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `read_lines` [INFO] [stderr] --> src/cryptopals/fileutils.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn read_lines(pathstr: &str) -> io::Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bytexor_keygen` [INFO] [stderr] --> src/cryptopals/xorutils.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn bytexor_keygen(s: &str) -> Vec<(String, u8)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `rolling_xor` [INFO] [stderr] --> src/cryptopals/xorutils.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn rolling_xor(v: &Vec, key: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `hamming_dist` [INFO] [stderr] --> src/cryptopals/strutils.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn hamming_dist(v1: &Vec, v2: &Vec) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/cryptopals/set1.rs:28:53 [INFO] [stderr] | [INFO] [stderr] 28 | fn chi_square_printer(word: &str, keyword_and_keys: &Vec<(String, u8)>) -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: change this to: `&[(String, u8)]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/cryptopals/set1.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | / match freq_analysis::chi_square(keyword) { [INFO] [stderr] 31 | | Some(score) => { [INFO] [stderr] 32 | | println!("word: {}, keyword: {}, key: {:#x}, score: {}", word, keyword, key, score) [INFO] [stderr] 33 | | }, [INFO] [stderr] 34 | | None => { } [INFO] [stderr] 35 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 30 | if let Some(score) = freq_analysis::chi_square(keyword) { [INFO] [stderr] 31 | println!("word: {}, keyword: {}, key: {:#x}, score: {}", word, keyword, key, score) [INFO] [stderr] 32 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/cryptopals/hexutils.rs:52:29 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn bytevec_to_hexstr(v: &Vec) -> String { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:14:27 [INFO] [stderr] | [INFO] [stderr] 14 | 'R' | 'r' => Some(0.04987908553231180), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `0.049_879_085_532_311_8` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::excessive_precision)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:18:27 [INFO] [stderr] | [INFO] [stderr] 18 | 'U' | 'u' => Some(0.02275795359120720), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `0.022_757_953_591_207_2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:24:27 [INFO] [stderr] | [INFO] [stderr] 24 | 'P' | 'p' => Some(0.01504324284647170), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `0.015_043_242_846_471_7` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:26:27 [INFO] [stderr] | [INFO] [stderr] 26 | 'B' | 'b' => Some(0.01258880743014620), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `0.012_588_807_430_146_2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:62:28 [INFO] [stderr] | [INFO] [stderr] 62 | Some(f) => (length as f64) * f, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(length)` [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: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/cryptopals/freq_analysis.rs:65:14 [INFO] [stderr] | [INFO] [stderr] 65 | (count as f64 - expectation_c).powf(2.0) / expectation_c [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(count)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/cryptopals/fileutils.rs:15:17 [INFO] [stderr] | [INFO] [stderr] 15 | s.split("\n") [INFO] [stderr] | ^^^^ help: try using a char instead: `'\n'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/cryptopals/xorutils.rs:19:23 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn rolling_xor(v: &Vec, key: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/cryptopals/xorutils.rs:19:38 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn rolling_xor(v: &Vec, key: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/cryptopals/strutils.rs:6:25 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn hamming_dist(v1: &Vec, v2: &Vec) -> u32 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/cryptopals/strutils.rs:6:39 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn hamming_dist(v1: &Vec, v2: &Vec) -> u32 { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/cryptopals/strutils.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | hexutils::count_set_bits(b1 ^ b2) as u32 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(hexutils::count_set_bits(b1 ^ b2))` [INFO] [stderr] | [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 0.76s [INFO] running `"docker" "inspect" "2de0dcf5ae1e7c6964f1a0cfd6565de0542584c784de434290ed7a7b73ea35bf"` [INFO] running `"docker" "rm" "-f" "2de0dcf5ae1e7c6964f1a0cfd6565de0542584c784de434290ed7a7b73ea35bf"` [INFO] [stdout] 2de0dcf5ae1e7c6964f1a0cfd6565de0542584c784de434290ed7a7b73ea35bf