[INFO] fetching crate cifra 0.9.2+post7... [INFO] testing cifra-0.9.2+post7 against master#62efba8a050c64249dab942951bb28f710208bc8 for pr-90799 [INFO] extracting crate cifra 0.9.2+post7 into /workspace/builds/worker-12/source [INFO] validating manifest of crates.io crate cifra 0.9.2+post7 on toolchain 62efba8a050c64249dab942951bb28f710208bc8 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+62efba8a050c64249dab942951bb28f710208bc8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate cifra 0.9.2+post7 [INFO] finished tweaking crates.io crate cifra 0.9.2+post7 [INFO] tweaked toml for crates.io crate cifra 0.9.2+post7 written to /workspace/builds/worker-12/source/Cargo.toml [INFO] crate crates.io crate cifra 0.9.2+post7 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+62efba8a050c64249dab942951bb28f710208bc8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+62efba8a050c64249dab942951bb28f710208bc8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9276534e33a3ada6fcf6a1fb35161f8cae2c3e9857a1f13a401a2cba787c5dbe [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "9276534e33a3ada6fcf6a1fb35161f8cae2c3e9857a1f13a401a2cba787c5dbe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9276534e33a3ada6fcf6a1fb35161f8cae2c3e9857a1f13a401a2cba787c5dbe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9276534e33a3ada6fcf6a1fb35161f8cae2c3e9857a1f13a401a2cba787c5dbe", kill_on_drop: false }` [INFO] [stdout] 9276534e33a3ada6fcf6a1fb35161f8cae2c3e9857a1f13a401a2cba787c5dbe [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+62efba8a050c64249dab942951bb28f710208bc8" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] b0b0d1e4e2bef47c1194cfc6904914a38d9956854199fa988bde3a49ea351679 [INFO] running `Command { std: "docker" "start" "-a" "b0b0d1e4e2bef47c1194cfc6904914a38d9956854199fa988bde3a49ea351679", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling proc-macro2 v1.0.32 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.5 [INFO] [stderr] Compiling crossbeam-epoch v0.9.5 [INFO] [stderr] Compiling rayon-core v1.9.1 [INFO] [stderr] Compiling scopeguard v1.1.0 [INFO] [stderr] Compiling unicode-segmentation v1.8.0 [INFO] [stderr] Compiling adler v1.0.2 [INFO] [stderr] Compiling rustc-demangle v0.1.21 [INFO] [stderr] Compiling hashbrown v0.11.2 [INFO] [stderr] Compiling unicode-width v0.1.9 [INFO] [stderr] Compiling strsim v0.10.0 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling regex-syntax v0.6.25 [INFO] [stderr] Compiling dotenv v0.15.0 [INFO] [stderr] Compiling libsqlite3-sys v0.22.2 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling unicase v2.6.0 [INFO] [stderr] Compiling error-chain v0.12.4 [INFO] [stderr] Compiling backtrace v0.3.63 [INFO] [stderr] Compiling textwrap v0.14.2 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling dirs-sys v0.3.6 [INFO] [stderr] Compiling object v0.27.1 [INFO] [stderr] Compiling os_str_bytes v4.2.0 [INFO] [stderr] Compiling heck v0.3.3 [INFO] [stderr] Compiling dirs v4.0.0 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling memoffset v0.6.4 [INFO] [stderr] Compiling miniz_oxide v0.4.4 [INFO] [stderr] Compiling indexmap v1.7.0 [INFO] [stderr] Compiling rayon v1.5.1 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling crossbeam-channel v0.5.1 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling quote v1.0.10 [INFO] [stderr] Compiling crossbeam-deque v0.8.1 [INFO] [stderr] Compiling syn v1.0.81 [INFO] [stderr] Compiling regex v1.5.4 [INFO] [stderr] Compiling diesel_derives v1.4.1 [INFO] [stderr] Compiling clap_derive v3.0.0-beta.5 [INFO] [stderr] Compiling strum_macros v0.21.1 [INFO] [stderr] Compiling clap v3.0.0-beta.5 [INFO] [stderr] Compiling diesel v1.4.8 [INFO] [stderr] Compiling migrations_internals v1.4.1 [INFO] [stderr] Compiling migrations_macros v1.4.2 [INFO] [stderr] Compiling diesel_migrations v1.4.0 [INFO] [stderr] Compiling cifra v0.9.2+post7 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `OsStr` [INFO] [stdout] --> src/attack/database.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ffi::{OsStr, OsString}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/attack/database.rs:11:43 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::{ErrorKind, Result, ResultExt, Error}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `DATABASE_STANDARD_PATH` should have an upper camel case name [INFO] [stdout] --> src/attack/database.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | struct DATABASE_STANDARD_PATH; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DatabaseStandardPath` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cipher` [INFO] [stdout] --> src/attack/frequency.rs:5:48 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::cipher::vigenere::{DEFAULT_CHARSET, cipher, decipher}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Error`, `ResultExt` [INFO] [stdout] --> src/cipher/substitution.rs:2:32 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::{ErrorKind, Result, ResultExt, Error}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `E` [INFO] [stdout] --> src/attack/simple_attacks.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | Err(E) => return None [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_E` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char` [INFO] [stdout] --> src/attack/frequency.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | for (i, char) in char_string.chars().enumerate() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/attack/frequency.rs:383:21 [INFO] [stdout] | [INFO] [stdout] 383 | .map(|(key, value)| key) [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/attack/frequency.rs:126:28 [INFO] [stdout] | [INFO] [stdout] 126 | .filter(|(&key, &_value)| _value == *value) [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/attack/frequency.rs:157:25 [INFO] [stdout] | [INFO] [stdout] 157 | .map(|(key, value)| key) [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/attack/frequency.rs:164:25 [INFO] [stdout] | [INFO] [stdout] 164 | .map(|(key, value)| key) [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ciphered_text` [INFO] [stdout] --> src/attack/vigenere.rs:36:26 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn brute_force(ciphered_text: T, charset: U, testing: bool)-> Result [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ciphered_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `charset` [INFO] [stdout] --> src/attack/vigenere.rs:36:44 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn brute_force(ciphered_text: T, charset: U, testing: bool)-> Result [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_charset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `testing` [INFO] [stdout] --> src/attack/vigenere.rs:36:56 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn brute_force(ciphered_text: T, charset: U, testing: bool)-> Result [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_testing` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ciphered_text` [INFO] [stdout] --> src/attack/vigenere.rs:47:23 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn brute_force_mp(ciphered_text: &str, charset: &str, testing: bool)-> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ciphered_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `charset` [INFO] [stdout] --> src/attack/vigenere.rs:47:44 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn brute_force_mp(ciphered_text: &str, charset: &str, testing: bool)-> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_charset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `testing` [INFO] [stdout] --> src/attack/vigenere.rs:47:59 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn brute_force_mp(ciphered_text: &str, charset: &str, testing: bool)-> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_testing` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `offset_char` is never read [INFO] [stdout] --> src/cipher/vigenere.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | let mut offset_char = String::new(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/frequency.rs:269:28 [INFO] [stdout] | [INFO] [stdout] 269 | let mut values = sequences.get_mut(sequence_to_find).unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_best_result` [INFO] [stdout] --> src/attack/caesar.rs:114:4 [INFO] [stdout] | [INFO] [stdout] 114 | fn get_best_result(identified_languages: &Vec<(usize, IdentifiedLanguage)>)-> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `database_path` [INFO] [stdout] --> src/attack/database.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | database_path: String [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `candidates` [INFO] [stdout] --> src/attack/dictionaries.rs:410:5 [INFO] [stdout] | [INFO] [stdout] 410 | candidates: HashMap [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `start` [INFO] [stdout] --> src/attack/simple_attacks.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | start: usize, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/attack/simple_attacks.rs:95:8 [INFO] [stdout] | [INFO] [stdout] 95 | fn new(start: usize, end: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/attack/simple_attacks.rs:129:12 [INFO] [stdout] | [INFO] [stdout] 129 | pub fn new() -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `create_new_single_entry` [INFO] [stdout] --> src/attack/substitution.rs:723:8 [INFO] [stdout] | [INFO] [stdout] 723 | fn create_new_single_entry(&mut self, key: char, value: char) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `LetterHistogram` [INFO] [stdout] --> src/attack/frequency.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | struct LetterHistogram { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `from_text` [INFO] [stdout] --> src/attack/frequency.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | fn from_text(text: T, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `from_dict` [INFO] [stdout] --> src/attack/frequency.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | fn from_dict(letters: HashMap, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `setup_for_matching` [INFO] [stdout] --> src/attack/frequency.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | fn setup_for_matching(self, letter_counter: Counter, width: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `create_ordered_dict` [INFO] [stdout] --> src/attack/frequency.rs:103:8 [INFO] [stdout] | [INFO] [stdout] 103 | fn create_ordered_dict(mut self, letter_counter: Counter) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set_matching_width` [INFO] [stdout] --> src/attack/frequency.rs:155:8 [INFO] [stdout] | [INFO] [stdout] 155 | fn set_matching_width(mut self, width: usize) -> Self{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `frequency` [INFO] [stdout] --> src/attack/frequency.rs:181:8 [INFO] [stdout] | [INFO] [stdout] 181 | fn frequency(&self, key: T) -> Result [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `letters` [INFO] [stdout] --> src/attack/frequency.rs:190:8 [INFO] [stdout] | [INFO] [stdout] 190 | fn letters(&self) -> linked_hash_map::Keys { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `match_score` [INFO] [stdout] --> src/attack/frequency.rs:208:8 [INFO] [stdout] | [INFO] [stdout] 208 | fn match_score(one: &LetterHistogram, other: &LetterHistogram) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `find_repeated_sequences` [INFO] [stdout] --> src/attack/frequency.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 230 | pub fn find_repeated_sequences(text: T, length: usize) -> HashMap> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `find_adjacent_separations` [INFO] [stdout] --> src/attack/frequency.rs:247:4 [INFO] [stdout] | [INFO] [stdout] 247 | fn find_adjacent_separations(text: T, length: usize) -> HashMap> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `find_not_adjacent_separations` [INFO] [stdout] --> src/attack/frequency.rs:292:4 [INFO] [stdout] | [INFO] [stdout] 292 | fn find_not_adjacent_separations(sequences: &mut HashMap>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_substrings` [INFO] [stdout] --> src/attack/frequency.rs:327:8 [INFO] [stdout] | [INFO] [stdout] 327 | pub fn get_substrings(ciphertext: T, step: usize) -> Vec [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `match_substring` [INFO] [stdout] --> src/attack/frequency.rs:353:4 [INFO] [stdout] | [INFO] [stdout] 353 | fn match_substring(substring: T, reference_histogram: &LetterHistogram) -> u8 [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `find_most_likely_subkeys` [INFO] [stdout] --> src/attack/frequency.rs:370:4 [INFO] [stdout] | [INFO] [stdout] 370 | fn find_most_likely_subkeys(substring: T, reference_histogram: &LetterHistogram) -> Result> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MultiplyingKeyBelowZero` [INFO] [stdout] --> src/cipher/affine.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | MultiplyingKeyBelowZero, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `AddingKeyBelowZero` [INFO] [stdout] --> src/cipher/affine.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | AddingKeyBelowZero, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait method `fromStr` should have a snake case name [INFO] [stdout] --> src/lib.rs:85:8 [INFO] [stdout] | [INFO] [stdout] 85 | fn fromStr(s: T) -> Self; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `from_str` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait method `findFromIndex` should have a snake case name [INFO] [stdout] --> src/lib.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 106 | fn findFromIndex(text: &T, text_to_find: U, index: usize) -> Option; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `find_from_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/database.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | create_folder_path(database_folder); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/attack/simple_attacks.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | Err(E) => return None [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `item_A` should have a snake case name [INFO] [stdout] --> src/attack/frequency.rs:122:34 [INFO] [stdout] | [INFO] [stdout] 122 | values_ordered.sort_by(|&item_A, &item_B| item_B.cmp(item_A)); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `item_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `item_B` should have a snake case name [INFO] [stdout] --> src/attack/frequency.rs:122:43 [INFO] [stdout] | [INFO] [stdout] 122 | values_ordered.sort_by(|&item_A, &item_B| item_B.cmp(item_A)); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `item_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/frequency.rs:162:9 [INFO] [stdout] | [INFO] [stdout] 162 | ordered_dict_iter.advance_by(self.ordered_dict.len()-width); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/frequency.rs:334:9 [INFO] [stdout] | [INFO] [stdout] 334 | ciphered_stream_iter.advance_by(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `item_A` should have a snake case name [INFO] [stdout] --> src/cipher/common.rs:186:25 [INFO] [stdout] | [INFO] [stdout] 186 | items.sort_by(|&item_A, &item_B| item_B.1.cmp(item_A.1)); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `item_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `item_B` should have a snake case name [INFO] [stdout] --> src/cipher/common.rs:186:34 [INFO] [stdout] | [INFO] [stdout] 186 | items.sort_by(|&item_A, &item_B| item_B.1.cmp(item_A.1)); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `item_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 53 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:633:9 [INFO] [stdout] | [INFO] [stdout] 633 | return bail!("You tried to use attack_file function with a configuration that is not for attack mode.") [INFO] [stdout] | ^^^^^^^------------------------------------------------------------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:645:14 [INFO] [stdout] | [INFO] [stdout] 645 | _ => return bail!("Given algorithm does not use integer key and charset.") [INFO] [stdout] | ^^^^^^^-------------------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:657:14 [INFO] [stdout] | [INFO] [stdout] 657 | _ => return bail!("Given algorithm does not use string key and charset.") [INFO] [stdout] | ^^^^^^^------------------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:668:14 [INFO] [stdout] | [INFO] [stdout] 668 | _ => return bail!("Given algorithm does not use integer key or includes a charset.") [INFO] [stdout] | ^^^^^^^------------------------------------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:680:14 [INFO] [stdout] | [INFO] [stdout] 680 | _ => return bail!("Given algorithm does not use integer key and charset.") [INFO] [stdout] | ^^^^^^^-------------------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:692:14 [INFO] [stdout] | [INFO] [stdout] 692 | _ => return bail!("Given algorithm does not use string key and charset.") [INFO] [stdout] | ^^^^^^^------------------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:703:14 [INFO] [stdout] | [INFO] [stdout] 703 | _ => return bail!("Given algorithm does not use integer key or includes a charset.") [INFO] [stdout] | ^^^^^^^------------------------------------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:715:14 [INFO] [stdout] | [INFO] [stdout] 715 | _ => return bail!("Given algorithm does not use charset.") [INFO] [stdout] | ^^^^^^^---------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:726:14 [INFO] [stdout] | [INFO] [stdout] 726 | _ => return bail!("Given algorithm do use string key and charset") [INFO] [stdout] | ^^^^^^^------------------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:737:14 [INFO] [stdout] | [INFO] [stdout] 737 | _ => return bail!("Given algorithm do use charset.") [INFO] [stdout] | ^^^^^^^---------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:748:14 [INFO] [stdout] | [INFO] [stdout] 748 | _ => return bail!("Given algorithm don't have testing mode.") [INFO] [stdout] | ^^^^^^^------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ciphered_file` [INFO] [stdout] --> src/bin/main.rs:427:13 [INFO] [stdout] | [INFO] [stdout] 427 | ciphered_file, charset } => { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try ignoring the field: `ciphered_file: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `deciphered_file` [INFO] [stdout] --> src/bin/main.rs:465:32 [INFO] [stdout] | [INFO] [stdout] 465 | file_to_decipher , deciphered_file, charset } => { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try ignoring the field: `deciphered_file: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `algorithm` [INFO] [stdout] --> src/bin/main.rs:520:25 [INFO] [stdout] | [INFO] [stdout] 520 | Modes::Cipher { algorithm, key, file_to_cipher, [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `algorithm: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/bin/main.rs:520:36 [INFO] [stdout] | [INFO] [stdout] 520 | Modes::Cipher { algorithm, key, file_to_cipher, [INFO] [stdout] | ^^^ help: try ignoring the field: `key: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_to_cipher` [INFO] [stdout] --> src/bin/main.rs:520:41 [INFO] [stdout] | [INFO] [stdout] 520 | Modes::Cipher { algorithm, key, file_to_cipher, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try ignoring the field: `file_to_cipher: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `charset` [INFO] [stdout] --> src/bin/main.rs:521:28 [INFO] [stdout] | [INFO] [stdout] 521 | ciphered_file, charset } => { [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `charset: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `algorithm` [INFO] [stdout] --> src/bin/main.rs:524:27 [INFO] [stdout] | [INFO] [stdout] 524 | Modes::Decipher { algorithm, key, file_to_decipher, [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `algorithm: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/bin/main.rs:524:38 [INFO] [stdout] | [INFO] [stdout] 524 | Modes::Decipher { algorithm, key, file_to_decipher, [INFO] [stdout] | ^^^ help: try ignoring the field: `key: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_to_decipher` [INFO] [stdout] --> src/bin/main.rs:524:43 [INFO] [stdout] | [INFO] [stdout] 524 | Modes::Decipher { algorithm, key, file_to_decipher, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try ignoring the field: `file_to_decipher: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `charset` [INFO] [stdout] --> src/bin/main.rs:525:30 [INFO] [stdout] | [INFO] [stdout] 525 | deciphered_file, charset }=> { [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `charset: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `algorithm` [INFO] [stdout] --> src/bin/main.rs:528:25 [INFO] [stdout] | [INFO] [stdout] 528 | Modes::Attack { algorithm, file_to_attack, [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `algorithm: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_to_attack` [INFO] [stdout] --> src/bin/main.rs:528:36 [INFO] [stdout] | [INFO] [stdout] 528 | Modes::Attack { algorithm, file_to_attack, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try ignoring the field: `file_to_attack: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `charset` [INFO] [stdout] --> src/bin/main.rs:529:30 [INFO] [stdout] | [INFO] [stdout] 529 | deciphered_file, charset, output_recovered_key [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `charset: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_recovered_key` [INFO] [stdout] --> src/bin/main.rs:562:26 [INFO] [stdout] | [INFO] [stdout] 562 | deciphered_file, output_recovered_key, charset [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `output_recovered_key: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_string_key_algorithms` [INFO] [stdout] --> src/bin/main.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn get_string_key_algorithms()-> HashSet { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_integer_key_algorithms` [INFO] [stdout] --> src/bin/main.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn get_integer_key_algorithms()-> HashSet { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_string_value` [INFO] [stdout] --> src/bin/main.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn get_string_value(&self)-> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Str` should have a snake case name [INFO] [stdout] --> src/bin/main.rs:69:19 [INFO] [stdout] | [INFO] [stdout] 69 | .map(|Str| Str.clone()) [INFO] [stdout] | ^^^ help: convert the identifier to snake case (notice the capitalization): `str` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:545:9 [INFO] [stdout] | [INFO] [stdout] 545 | write(output_file_path, output_string.as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:766:17 [INFO] [stdout] | [INFO] [stdout] 766 | new_dictionary.populate(pathname); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:780:13 [INFO] [stdout] | [INFO] [stdout] 780 | dictionary.populate(pathname); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Str` should have a snake case name [INFO] [stdout] --> src/bin/main.rs:812:48 [INFO] [stdout] | [INFO] [stdout] 812 | let args_str: Vec<&str> = args.iter().map(|Str| Str.as_str()).collect(); [INFO] [stdout] | ^^^ help: convert the identifier to snake case (notice the capitalization): `str` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 33 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2m 07s [INFO] running `Command { std: "docker" "inspect" "b0b0d1e4e2bef47c1194cfc6904914a38d9956854199fa988bde3a49ea351679", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b0b0d1e4e2bef47c1194cfc6904914a38d9956854199fa988bde3a49ea351679", kill_on_drop: false }` [INFO] [stdout] b0b0d1e4e2bef47c1194cfc6904914a38d9956854199fa988bde3a49ea351679 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+62efba8a050c64249dab942951bb28f710208bc8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] ff34b5bd42a8b696c9e36eb83057b09af04edad8c8492f67b5931b490301b882 [INFO] running `Command { std: "docker" "start" "-a" "ff34b5bd42a8b696c9e36eb83057b09af04edad8c8492f67b5931b490301b882", kill_on_drop: false }` [INFO] [stderr] Compiling untrusted v0.6.2 [INFO] [stderr] Compiling remove_dir_all v0.5.3 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling ring v0.14.6 [INFO] [stderr] Compiling getrandom v0.2.3 [INFO] [stderr] Compiling rstest v0.6.4 [INFO] [stdout] warning: unused import: `OsStr` [INFO] [stdout] --> src/attack/database.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ffi::{OsStr, OsString}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/attack/database.rs:11:43 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::{ErrorKind, Result, ResultExt, Error}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `DATABASE_STANDARD_PATH` should have an upper camel case name [INFO] [stdout] --> src/attack/database.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | struct DATABASE_STANDARD_PATH; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DatabaseStandardPath` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cipher` [INFO] [stdout] --> src/attack/frequency.rs:5:48 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::cipher::vigenere::{DEFAULT_CHARSET, cipher, decipher}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Error`, `ResultExt` [INFO] [stdout] --> src/cipher/substitution.rs:2:32 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::{ErrorKind, Result, ResultExt, Error}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `E` [INFO] [stdout] --> src/attack/simple_attacks.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | Err(E) => return None [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_E` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char` [INFO] [stdout] --> src/attack/frequency.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | for (i, char) in char_string.chars().enumerate() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/attack/frequency.rs:383:21 [INFO] [stdout] | [INFO] [stdout] 383 | .map(|(key, value)| key) [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/attack/frequency.rs:126:28 [INFO] [stdout] | [INFO] [stdout] 126 | .filter(|(&key, &_value)| _value == *value) [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/attack/frequency.rs:157:25 [INFO] [stdout] | [INFO] [stdout] 157 | .map(|(key, value)| key) [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/attack/frequency.rs:164:25 [INFO] [stdout] | [INFO] [stdout] 164 | .map(|(key, value)| key) [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ciphered_text` [INFO] [stdout] --> src/attack/vigenere.rs:36:26 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn brute_force(ciphered_text: T, charset: U, testing: bool)-> Result [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ciphered_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `charset` [INFO] [stdout] --> src/attack/vigenere.rs:36:44 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn brute_force(ciphered_text: T, charset: U, testing: bool)-> Result [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_charset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `testing` [INFO] [stdout] --> src/attack/vigenere.rs:36:56 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn brute_force(ciphered_text: T, charset: U, testing: bool)-> Result [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_testing` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ciphered_text` [INFO] [stdout] --> src/attack/vigenere.rs:47:23 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn brute_force_mp(ciphered_text: &str, charset: &str, testing: bool)-> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ciphered_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `charset` [INFO] [stdout] --> src/attack/vigenere.rs:47:44 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn brute_force_mp(ciphered_text: &str, charset: &str, testing: bool)-> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_charset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `testing` [INFO] [stdout] --> src/attack/vigenere.rs:47:59 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn brute_force_mp(ciphered_text: &str, charset: &str, testing: bool)-> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_testing` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `offset_char` is never read [INFO] [stdout] --> src/cipher/vigenere.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | let mut offset_char = String::new(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/frequency.rs:269:28 [INFO] [stdout] | [INFO] [stdout] 269 | let mut values = sequences.get_mut(sequence_to_find).unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_best_result` [INFO] [stdout] --> src/attack/caesar.rs:114:4 [INFO] [stdout] | [INFO] [stdout] 114 | fn get_best_result(identified_languages: &Vec<(usize, IdentifiedLanguage)>)-> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `database_path` [INFO] [stdout] --> src/attack/database.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | database_path: String [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `candidates` [INFO] [stdout] --> src/attack/dictionaries.rs:410:5 [INFO] [stdout] | [INFO] [stdout] 410 | candidates: HashMap [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `start` [INFO] [stdout] --> src/attack/simple_attacks.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | start: usize, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/attack/simple_attacks.rs:95:8 [INFO] [stdout] | [INFO] [stdout] 95 | fn new(start: usize, end: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/attack/simple_attacks.rs:129:12 [INFO] [stdout] | [INFO] [stdout] 129 | pub fn new() -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `create_new_single_entry` [INFO] [stdout] --> src/attack/substitution.rs:723:8 [INFO] [stdout] | [INFO] [stdout] 723 | fn create_new_single_entry(&mut self, key: char, value: char) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `LetterHistogram` [INFO] [stdout] --> src/attack/frequency.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | struct LetterHistogram { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `from_text` [INFO] [stdout] --> src/attack/frequency.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | fn from_text(text: T, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `from_dict` [INFO] [stdout] --> src/attack/frequency.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | fn from_dict(letters: HashMap, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `setup_for_matching` [INFO] [stdout] --> src/attack/frequency.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | fn setup_for_matching(self, letter_counter: Counter, width: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `create_ordered_dict` [INFO] [stdout] --> src/attack/frequency.rs:103:8 [INFO] [stdout] | [INFO] [stdout] 103 | fn create_ordered_dict(mut self, letter_counter: Counter) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set_matching_width` [INFO] [stdout] --> src/attack/frequency.rs:155:8 [INFO] [stdout] | [INFO] [stdout] 155 | fn set_matching_width(mut self, width: usize) -> Self{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `frequency` [INFO] [stdout] --> src/attack/frequency.rs:181:8 [INFO] [stdout] | [INFO] [stdout] 181 | fn frequency(&self, key: T) -> Result [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `letters` [INFO] [stdout] --> src/attack/frequency.rs:190:8 [INFO] [stdout] | [INFO] [stdout] 190 | fn letters(&self) -> linked_hash_map::Keys { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `match_score` [INFO] [stdout] --> src/attack/frequency.rs:208:8 [INFO] [stdout] | [INFO] [stdout] 208 | fn match_score(one: &LetterHistogram, other: &LetterHistogram) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `find_repeated_sequences` [INFO] [stdout] --> src/attack/frequency.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 230 | pub fn find_repeated_sequences(text: T, length: usize) -> HashMap> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `find_adjacent_separations` [INFO] [stdout] --> src/attack/frequency.rs:247:4 [INFO] [stdout] | [INFO] [stdout] 247 | fn find_adjacent_separations(text: T, length: usize) -> HashMap> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `find_not_adjacent_separations` [INFO] [stdout] --> src/attack/frequency.rs:292:4 [INFO] [stdout] | [INFO] [stdout] 292 | fn find_not_adjacent_separations(sequences: &mut HashMap>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_substrings` [INFO] [stdout] --> src/attack/frequency.rs:327:8 [INFO] [stdout] | [INFO] [stdout] 327 | pub fn get_substrings(ciphertext: T, step: usize) -> Vec [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `match_substring` [INFO] [stdout] --> src/attack/frequency.rs:353:4 [INFO] [stdout] | [INFO] [stdout] 353 | fn match_substring(substring: T, reference_histogram: &LetterHistogram) -> u8 [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `find_most_likely_subkeys` [INFO] [stdout] --> src/attack/frequency.rs:370:4 [INFO] [stdout] | [INFO] [stdout] 370 | fn find_most_likely_subkeys(substring: T, reference_histogram: &LetterHistogram) -> Result> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MultiplyingKeyBelowZero` [INFO] [stdout] --> src/cipher/affine.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | MultiplyingKeyBelowZero, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `AddingKeyBelowZero` [INFO] [stdout] --> src/cipher/affine.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | AddingKeyBelowZero, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait method `fromStr` should have a snake case name [INFO] [stdout] --> src/lib.rs:85:8 [INFO] [stdout] | [INFO] [stdout] 85 | fn fromStr(s: T) -> Self; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `from_str` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait method `findFromIndex` should have a snake case name [INFO] [stdout] --> src/lib.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 106 | fn findFromIndex(text: &T, text_to_find: U, index: usize) -> Option; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `find_from_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/database.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | create_folder_path(database_folder); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/attack/simple_attacks.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | Err(E) => return None [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `item_A` should have a snake case name [INFO] [stdout] --> src/attack/frequency.rs:122:34 [INFO] [stdout] | [INFO] [stdout] 122 | values_ordered.sort_by(|&item_A, &item_B| item_B.cmp(item_A)); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `item_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `item_B` should have a snake case name [INFO] [stdout] --> src/attack/frequency.rs:122:43 [INFO] [stdout] | [INFO] [stdout] 122 | values_ordered.sort_by(|&item_A, &item_B| item_B.cmp(item_A)); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `item_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/frequency.rs:162:9 [INFO] [stdout] | [INFO] [stdout] 162 | ordered_dict_iter.advance_by(self.ordered_dict.len()-width); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/frequency.rs:334:9 [INFO] [stdout] | [INFO] [stdout] 334 | ciphered_stream_iter.advance_by(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `item_A` should have a snake case name [INFO] [stdout] --> src/cipher/common.rs:186:25 [INFO] [stdout] | [INFO] [stdout] 186 | items.sort_by(|&item_A, &item_B| item_B.1.cmp(item_A.1)); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `item_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `item_B` should have a snake case name [INFO] [stdout] --> src/cipher/common.rs:186:34 [INFO] [stdout] | [INFO] [stdout] 186 | items.sort_by(|&item_A, &item_B| item_B.1.cmp(item_A.1)); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `item_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 53 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rand_core v0.6.3 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.4 [INFO] [stderr] Compiling float-cmp v0.8.0 [INFO] [stderr] Compiling tempfile v3.2.0 [INFO] [stderr] Compiling test_common v1.4.0 [INFO] [stderr] Compiling cifra v0.9.2+post7 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `diesel::result::Error::DatabaseError` [INFO] [stdout] --> src/attack/caesar.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 140 | use diesel::result::Error::DatabaseError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `OsStr` [INFO] [stdout] --> src/attack/database.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ffi::{OsStr, OsString}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/attack/database.rs:11:43 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::{ErrorKind, Result, ResultExt, Error}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `DATABASE_STANDARD_PATH` should have an upper camel case name [INFO] [stdout] --> src/attack/database.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | struct DATABASE_STANDARD_PATH; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DatabaseStandardPath` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi::OsStr` [INFO] [stdout] --> src/attack/database.rs:185:9 [INFO] [stdout] | [INFO] [stdout] 185 | use std::ffi::OsStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `read_to_string` [INFO] [stdout] --> src/attack/dictionaries.rs:542:50 [INFO] [stdout] | [INFO] [stdout] 542 | use std::fs::{create_dir, File, OpenOptions, read_to_string}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi::OsString` [INFO] [stdout] --> src/attack/dictionaries.rs:548:9 [INFO] [stdout] | [INFO] [stdout] 548 | use std::ffi::OsString; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `Read` [INFO] [stdout] --> src/attack/dictionaries.rs:550:26 [INFO] [stdout] | [INFO] [stdout] 550 | use std::io::{Write, BufReader, Read}; [INFO] [stdout] | ^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env::temp_dir` [INFO] [stdout] --> src/attack/dictionaries.rs:552:9 [INFO] [stdout] | [INFO] [stdout] 552 | use std::env::temp_dir; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cipher` [INFO] [stdout] --> src/attack/frequency.rs:5:48 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::cipher::vigenere::{DEFAULT_CHARSET, cipher, decipher}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::attack::dictionaries::tests::ENGLISH_TEXT_WITH_PUNCTUATIONS_MARKS` [INFO] [stdout] --> src/attack/frequency.rs:394:9 [INFO] [stdout] | [INFO] [stdout] 394 | use crate::attack::dictionaries::tests::ENGLISH_TEXT_WITH_PUNCTUATIONS_MARKS; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `F64Margin` [INFO] [stdout] --> src/attack/frequency.rs:399:31 [INFO] [stdout] | [INFO] [stdout] 399 | use float_cmp::{ApproxEq, F64Margin}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ResultExt` [INFO] [stdout] --> src/cipher/substitution.rs:2:32 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::{ErrorKind, Result, ResultExt, Error}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:633:9 [INFO] [stdout] | [INFO] [stdout] 633 | return bail!("You tried to use attack_file function with a configuration that is not for attack mode.") [INFO] [stdout] | ^^^^^^^------------------------------------------------------------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:645:14 [INFO] [stdout] | [INFO] [stdout] 645 | _ => return bail!("Given algorithm does not use integer key and charset.") [INFO] [stdout] | ^^^^^^^-------------------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:657:14 [INFO] [stdout] | [INFO] [stdout] 657 | _ => return bail!("Given algorithm does not use string key and charset.") [INFO] [stdout] | ^^^^^^^------------------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:668:14 [INFO] [stdout] | [INFO] [stdout] 668 | _ => return bail!("Given algorithm does not use integer key or includes a charset.") [INFO] [stdout] | ^^^^^^^------------------------------------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:680:14 [INFO] [stdout] | [INFO] [stdout] 680 | _ => return bail!("Given algorithm does not use integer key and charset.") [INFO] [stdout] | ^^^^^^^-------------------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:692:14 [INFO] [stdout] | [INFO] [stdout] 692 | _ => return bail!("Given algorithm does not use string key and charset.") [INFO] [stdout] | ^^^^^^^------------------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:703:14 [INFO] [stdout] | [INFO] [stdout] 703 | _ => return bail!("Given algorithm does not use integer key or includes a charset.") [INFO] [stdout] | ^^^^^^^------------------------------------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:715:14 [INFO] [stdout] | [INFO] [stdout] 715 | _ => return bail!("Given algorithm does not use charset.") [INFO] [stdout] | ^^^^^^^---------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:726:14 [INFO] [stdout] | [INFO] [stdout] 726 | _ => return bail!("Given algorithm do use string key and charset") [INFO] [stdout] | ^^^^^^^------------------------------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:737:14 [INFO] [stdout] | [INFO] [stdout] 737 | _ => return bail!("Given algorithm do use charset.") [INFO] [stdout] | ^^^^^^^---------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/bin/main.rs:748:14 [INFO] [stdout] | [INFO] [stdout] 748 | _ => return bail!("Given algorithm don't have testing mode.") [INFO] [stdout] | ^^^^^^^------------------------------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ciphered_file` [INFO] [stdout] --> src/bin/main.rs:427:13 [INFO] [stdout] | [INFO] [stdout] 427 | ciphered_file, charset } => { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try ignoring the field: `ciphered_file: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `deciphered_file` [INFO] [stdout] --> src/bin/main.rs:465:32 [INFO] [stdout] | [INFO] [stdout] 465 | file_to_decipher , deciphered_file, charset } => { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try ignoring the field: `deciphered_file: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `algorithm` [INFO] [stdout] --> src/bin/main.rs:520:25 [INFO] [stdout] | [INFO] [stdout] 520 | Modes::Cipher { algorithm, key, file_to_cipher, [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `algorithm: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/bin/main.rs:520:36 [INFO] [stdout] | [INFO] [stdout] 520 | Modes::Cipher { algorithm, key, file_to_cipher, [INFO] [stdout] | ^^^ help: try ignoring the field: `key: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_to_cipher` [INFO] [stdout] --> src/bin/main.rs:520:41 [INFO] [stdout] | [INFO] [stdout] 520 | Modes::Cipher { algorithm, key, file_to_cipher, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try ignoring the field: `file_to_cipher: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `charset` [INFO] [stdout] --> src/bin/main.rs:521:28 [INFO] [stdout] | [INFO] [stdout] 521 | ciphered_file, charset } => { [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `charset: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `algorithm` [INFO] [stdout] --> src/bin/main.rs:524:27 [INFO] [stdout] | [INFO] [stdout] 524 | Modes::Decipher { algorithm, key, file_to_decipher, [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `algorithm: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/bin/main.rs:524:38 [INFO] [stdout] | [INFO] [stdout] 524 | Modes::Decipher { algorithm, key, file_to_decipher, [INFO] [stdout] | ^^^ help: try ignoring the field: `key: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_to_decipher` [INFO] [stdout] --> src/bin/main.rs:524:43 [INFO] [stdout] | [INFO] [stdout] 524 | Modes::Decipher { algorithm, key, file_to_decipher, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try ignoring the field: `file_to_decipher: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `charset` [INFO] [stdout] --> src/bin/main.rs:525:30 [INFO] [stdout] | [INFO] [stdout] 525 | deciphered_file, charset }=> { [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `charset: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `algorithm` [INFO] [stdout] --> src/bin/main.rs:528:25 [INFO] [stdout] | [INFO] [stdout] 528 | Modes::Attack { algorithm, file_to_attack, [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `algorithm: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_to_attack` [INFO] [stdout] --> src/bin/main.rs:528:36 [INFO] [stdout] | [INFO] [stdout] 528 | Modes::Attack { algorithm, file_to_attack, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try ignoring the field: `file_to_attack: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `charset` [INFO] [stdout] --> src/bin/main.rs:529:30 [INFO] [stdout] | [INFO] [stdout] 529 | deciphered_file, charset, output_recovered_key [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `charset: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_recovered_key` [INFO] [stdout] --> src/bin/main.rs:562:26 [INFO] [stdout] | [INFO] [stdout] 562 | deciphered_file, output_recovered_key, charset [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `output_recovered_key: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stdout] --> src/bin/main.rs:1099:54 [INFO] [stdout] | [INFO] [stdout] 1099 | fn test_cipher_caesar(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stdout] --> src/bin/main.rs:1117:56 [INFO] [stdout] | [INFO] [stdout] 1117 | fn test_decipher_caesar(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stdout] --> src/bin/main.rs:1135:60 [INFO] [stdout] | [INFO] [stdout] 1135 | fn test_cipher_substitution(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stdout] --> src/bin/main.rs:1154:62 [INFO] [stdout] | [INFO] [stdout] 1154 | fn test_decipher_substitution(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stdout] --> src/bin/main.rs:1173:54 [INFO] [stdout] | [INFO] [stdout] 1173 | fn test_attack_caesar(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stdout] --> src/bin/main.rs:1190:73 [INFO] [stdout] | [INFO] [stdout] 1190 | fn test_attack_caesar_with_recovered_key(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stdout] --> src/bin/main.rs:1209:60 [INFO] [stdout] | [INFO] [stdout] 1209 | fn test_attack_substitution(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_string_key_algorithms` [INFO] [stdout] --> src/bin/main.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn get_string_key_algorithms()-> HashSet { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_integer_key_algorithms` [INFO] [stdout] --> src/bin/main.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn get_integer_key_algorithms()-> HashSet { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_string_value` [INFO] [stdout] --> src/bin/main.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn get_string_value(&self)-> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `temp_env` [INFO] [stdout] --> src/bin/main.rs:860:9 [INFO] [stdout] | [INFO] [stdout] 860 | temp_env: TestEnvironment, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `temp_env_var` [INFO] [stdout] --> src/bin/main.rs:861:9 [INFO] [stdout] | [INFO] [stdout] 861 | temp_env_var: TemporalEnvironmentVariable [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Str` should have a snake case name [INFO] [stdout] --> src/bin/main.rs:69:19 [INFO] [stdout] | [INFO] [stdout] 69 | .map(|Str| Str.clone()) [INFO] [stdout] | ^^^ help: convert the identifier to snake case (notice the capitalization): `str` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:545:9 [INFO] [stdout] | [INFO] [stdout] 545 | write(output_file_path, output_string.as_str()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:766:17 [INFO] [stdout] | [INFO] [stdout] 766 | new_dictionary.populate(pathname); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:780:13 [INFO] [stdout] | [INFO] [stdout] 780 | dictionary.populate(pathname); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Str` should have a snake case name [INFO] [stdout] --> src/bin/main.rs:812:48 [INFO] [stdout] | [INFO] [stdout] 812 | let args_str: Vec<&str> = args.iter().map(|Str| Str.as_str()).collect(); [INFO] [stdout] | ^^^ help: convert the identifier to snake case (notice the capitalization): `str` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:867:13 [INFO] [stdout] | [INFO] [stdout] 867 | database::create_database(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:871:13 [INFO] [stdout] | [INFO] [stdout] 871 | create_dir(&resources_path); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:886:17 [INFO] [stdout] | [INFO] [stdout] 886 | dictionary.populate(language_book); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `collect` that must be used [INFO] [stdout] --> src/bin/main.rs:889:13 [INFO] [stdout] | [INFO] [stdout] 889 | LANGUAGES.iter().map(|x| _languages.push(x.to_string())).collect::>(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:1101:9 [INFO] [stdout] | [INFO] [stdout] 1101 | write(message_file.path(), CAESAR_ORIGINAL_MESSAGE); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:1119:9 [INFO] [stdout] | [INFO] [stdout] 1119 | write(message_file.path(), CAESAR_CIPHERED_MESSAGE_KEY_13); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:1137:9 [INFO] [stdout] | [INFO] [stdout] 1137 | write(message_file.path(), SUBSTITUTION_ORIGINAL_MESSAGE); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:1156:9 [INFO] [stdout] | [INFO] [stdout] 1156 | write(message_file.path(), SUBSTITUTION_CIPHERED_MESSAGE); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:1175:9 [INFO] [stdout] | [INFO] [stdout] 1175 | write(message_file.path(), CAESAR_CIPHERED_MESSAGE_KEY_13); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:1192:9 [INFO] [stdout] | [INFO] [stdout] 1192 | write(message_file.path(), CAESAR_CIPHERED_MESSAGE_KEY_13); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/main.rs:1219:9 [INFO] [stdout] | [INFO] [stdout] 1219 | write(message_file.path(), ciphered_text); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `E` [INFO] [stdout] --> src/attack/simple_attacks.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | Err(E) => return None [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_E` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char` [INFO] [stdout] --> src/attack/frequency.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | for (i, char) in char_string.chars().enumerate() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/attack/frequency.rs:383:21 [INFO] [stdout] | [INFO] [stdout] 383 | .map(|(key, value)| key) [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/attack/frequency.rs:126:28 [INFO] [stdout] | [INFO] [stdout] 126 | .filter(|(&key, &_value)| _value == *value) [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/attack/frequency.rs:157:25 [INFO] [stdout] | [INFO] [stdout] 157 | .map(|(key, value)| key) [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/attack/frequency.rs:164:25 [INFO] [stdout] | [INFO] [stdout] 164 | .map(|(key, value)| key) [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ciphered_text` [INFO] [stdout] --> src/attack/vigenere.rs:36:26 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn brute_force(ciphered_text: T, charset: U, testing: bool)-> Result [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ciphered_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `charset` [INFO] [stdout] --> src/attack/vigenere.rs:36:44 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn brute_force(ciphered_text: T, charset: U, testing: bool)-> Result [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_charset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `testing` [INFO] [stdout] --> src/attack/vigenere.rs:36:56 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn brute_force(ciphered_text: T, charset: U, testing: bool)-> Result [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_testing` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ciphered_text` [INFO] [stdout] --> src/attack/vigenere.rs:47:23 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn brute_force_mp(ciphered_text: &str, charset: &str, testing: bool)-> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ciphered_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `charset` [INFO] [stdout] --> src/attack/vigenere.rs:47:44 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn brute_force_mp(ciphered_text: &str, charset: &str, testing: bool)-> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_charset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `testing` [INFO] [stdout] --> src/attack/vigenere.rs:47:59 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn brute_force_mp(ciphered_text: &str, charset: &str, testing: bool)-> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_testing` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `offset_char` is never read [INFO] [stdout] --> src/cipher/vigenere.rs:101:17 [INFO] [stdout] | [INFO] [stdout] 101 | let mut offset_char = String::new(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loaded_dictionaries` [INFO] [stdout] --> src/attack/affine.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loaded_dictionaries` [INFO] [stdout] --> src/attack/affine.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loaded_dictionaries` [INFO] [stdout] --> src/attack/caesar.rs:148:13 [INFO] [stdout] | [INFO] [stdout] 148 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loaded_dictionaries` [INFO] [stdout] --> src/attack/caesar.rs:157:13 [INFO] [stdout] | [INFO] [stdout] 157 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `test_env` [INFO] [stdout] --> src/attack/database.rs:201:13 [INFO] [stdout] | [INFO] [stdout] 201 | let test_env = TemporalEnvironmentVariable::new("DATABASE_URL", absolute_pathname_to_database); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_test_env` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_dir` [INFO] [stdout] --> src/attack/dictionaries.rs:809:14 [INFO] [stdout] | [INFO] [stdout] 809 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_env_database_path` [INFO] [stdout] --> src/attack/dictionaries.rs:809:24 [INFO] [stdout] | [INFO] [stdout] 809 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_dir` [INFO] [stdout] --> src/attack/dictionaries.rs:818:14 [INFO] [stdout] | [INFO] [stdout] 818 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_env_database_path` [INFO] [stdout] --> src/attack/dictionaries.rs:818:24 [INFO] [stdout] | [INFO] [stdout] 818 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_dir` [INFO] [stdout] --> src/attack/dictionaries.rs:835:14 [INFO] [stdout] | [INFO] [stdout] 835 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_env_database_path` [INFO] [stdout] --> src/attack/dictionaries.rs:835:24 [INFO] [stdout] | [INFO] [stdout] 835 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_dir` [INFO] [stdout] --> src/attack/dictionaries.rs:850:14 [INFO] [stdout] | [INFO] [stdout] 850 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_env_database_path` [INFO] [stdout] --> src/attack/dictionaries.rs:850:24 [INFO] [stdout] | [INFO] [stdout] 850 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_dir` [INFO] [stdout] --> src/attack/dictionaries.rs:865:14 [INFO] [stdout] | [INFO] [stdout] 865 | let (temp_dir, temp_env_database_path) = loaded_micro_dictionary_temp_dir(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_env_database_path` [INFO] [stdout] --> src/attack/dictionaries.rs:865:24 [INFO] [stdout] | [INFO] [stdout] 865 | let (temp_dir, temp_env_database_path) = loaded_micro_dictionary_temp_dir(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_env_database_path` [INFO] [stdout] --> src/attack/dictionaries.rs:902:24 [INFO] [stdout] | [INFO] [stdout] 902 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_dir` [INFO] [stdout] --> src/attack/dictionaries.rs:944:14 [INFO] [stdout] | [INFO] [stdout] 944 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_env_database_path` [INFO] [stdout] --> src/attack/dictionaries.rs:944:24 [INFO] [stdout] | [INFO] [stdout] 944 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loaded_dictionaries` [INFO] [stdout] --> src/attack/dictionaries.rs:959:13 [INFO] [stdout] | [INFO] [stdout] 959 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_dir` [INFO] [stdout] --> src/attack/dictionaries.rs:990:14 [INFO] [stdout] | [INFO] [stdout] 990 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_env_database_path` [INFO] [stdout] --> src/attack/dictionaries.rs:990:24 [INFO] [stdout] | [INFO] [stdout] 990 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loaded_micro_dictionary_temp_dir` [INFO] [stdout] --> src/attack/dictionaries.rs:1020:27 [INFO] [stdout] | [INFO] [stdout] 1020 | fn test_get_all_words(loaded_micro_dictionary_temp_dir: (TestEnvironment, TemporalEnvironmentVariable)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_micro_dictionary_temp_dir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loaded_micro_dictionary_temp_dir` [INFO] [stdout] --> src/attack/simple_attacks.rs:281:43 [INFO] [stdout] | [INFO] [stdout] 281 | fn test_dictionary_word_key_generator(loaded_micro_dictionary_temp_dir: (TestEnvironment, TemporalEnvironmentVariable)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_micro_dictionary_temp_dir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loaded_dictionaries` [INFO] [stdout] --> src/attack/substitution.rs:872:13 [INFO] [stdout] | [INFO] [stdout] 872 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loaded_dictionaries` [INFO] [stdout] --> src/attack/substitution.rs:894:13 [INFO] [stdout] | [INFO] [stdout] 894 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `missing` [INFO] [stdout] --> src/attack/substitution.rs:1125:13 [INFO] [stdout] | [INFO] [stdout] 1125 | let missing: Vec = expected_list.iter().cloned().filter(|_mapping| !recovered_mappings.contains(&_mapping)).collect(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_missing` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `extracted_candidates` [INFO] [stdout] --> src/attack/substitution.rs:1210:38 [INFO] [stdout] | [INFO] [stdout] 1210 | let (extracted_cipherletter, extracted_candidates) = mapping.pop_item() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extracted_candidates` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loaded_dictionaries` [INFO] [stdout] --> src/attack/transposition.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loaded_dictionaries` [INFO] [stdout] --> src/attack/transposition.rs:109:13 [INFO] [stdout] | [INFO] [stdout] 109 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/frequency.rs:269:28 [INFO] [stdout] | [INFO] [stdout] 269 | let mut values = sequences.get_mut(sequence_to_find).unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/dictionaries.rs:864:13 [INFO] [stdout] | [INFO] [stdout] 864 | let mut micro_dictionaries = get_micro_dictionaries_content(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/substitution.rs:1073:13 [INFO] [stdout] | [INFO] [stdout] 1073 | let mut expected_mapping_1 = mapping!(THIS_TEST_CHARSET, {"1": {"a"}, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/substitution.rs:1078:13 [INFO] [stdout] | [INFO] [stdout] 1078 | let mut expected_mapping_2 = mapping!(THIS_TEST_CHARSET, {"1": {"a"}, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/substitution.rs:1083:13 [INFO] [stdout] | [INFO] [stdout] 1083 | let mut expected_mapping_3 = mapping!(THIS_TEST_CHARSET, {"1": {"b"}, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/substitution.rs:1088:13 [INFO] [stdout] | [INFO] [stdout] 1088 | let mut expected_mapping_4 = mapping!(THIS_TEST_CHARSET, {"1": {"b"}, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/substitution.rs:1093:13 [INFO] [stdout] | [INFO] [stdout] 1093 | let mut expected_mapping_5 = mapping!(THIS_TEST_CHARSET, {"1": {"a"}, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/substitution.rs:1098:13 [INFO] [stdout] | [INFO] [stdout] 1098 | let mut expected_mapping_6 = mapping!(THIS_TEST_CHARSET, {"1": {"a"}, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/substitution.rs:1103:13 [INFO] [stdout] | [INFO] [stdout] 1103 | let mut expected_mapping_7 = mapping!(THIS_TEST_CHARSET, {"1": {"b"}, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/substitution.rs:1108:13 [INFO] [stdout] | [INFO] [stdout] 1108 | let mut expected_mapping_8 = mapping!(THIS_TEST_CHARSET, {"1": {"b"}, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/substitution.rs:1113:13 [INFO] [stdout] | [INFO] [stdout] 1113 | let mut expected_list = vec![ [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/attack/substitution.rs:1155:13 [INFO] [stdout] | [INFO] [stdout] 1155 | let mut mapping = mapping!(TEST_CHARSET, [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/cipher/transposition.rs:324:13 [INFO] [stdout] | [INFO] [stdout] 324 | let mut transposition_matrix = vec![ [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_best_result` [INFO] [stdout] --> src/attack/caesar.rs:114:4 [INFO] [stdout] | [INFO] [stdout] 114 | fn get_best_result(identified_languages: &Vec<(usize, IdentifiedLanguage)>)-> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `database_path` [INFO] [stdout] --> src/attack/database.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | database_path: String [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `candidates` [INFO] [stdout] --> src/attack/dictionaries.rs:410:5 [INFO] [stdout] | [INFO] [stdout] 410 | candidates: HashMap [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `temp_env` [INFO] [stdout] --> src/attack/dictionaries.rs:659:9 [INFO] [stdout] | [INFO] [stdout] 659 | temp_env: TestEnvironment, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `temp_env_var` [INFO] [stdout] --> src/attack/dictionaries.rs:660:9 [INFO] [stdout] | [INFO] [stdout] 660 | temp_env_var: TemporalEnvironmentVariable [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `text_file` [INFO] [stdout] --> src/attack/dictionaries.rs:752:9 [INFO] [stdout] | [INFO] [stdout] 752 | pub text_file: File, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `start` [INFO] [stdout] --> src/attack/simple_attacks.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | start: usize, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `create_new_single_entry` [INFO] [stdout] --> src/attack/substitution.rs:723:8 [INFO] [stdout] | [INFO] [stdout] 723 | fn create_new_single_entry(&mut self, key: char, value: char) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `language` [INFO] [stdout] --> src/attack/substitution.rs:817:9 [INFO] [stdout] | [INFO] [stdout] 817 | language: &'static str, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `from_dict` [INFO] [stdout] --> src/attack/frequency.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | fn from_dict(letters: HashMap, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MultiplyingKeyBelowZero` [INFO] [stdout] --> src/cipher/affine.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | MultiplyingKeyBelowZero, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `AddingKeyBelowZero` [INFO] [stdout] --> src/cipher/affine.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | AddingKeyBelowZero, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/attack/substitution.rs:877:43 [INFO] [stdout] | [INFO] [stdout] 877 | Err(E) => {assert!(false, E); String::new()} [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 877 | Err(E) => {assert!(false, "{}", E); String::new()} [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/attack/substitution.rs:899:43 [INFO] [stdout] | [INFO] [stdout] 899 | Err(E) => {assert!(false, E); String::new()} [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 899 | Err(E) => {assert!(false, "{}", E); String::new()} [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/attack/substitution.rs:913:39 [INFO] [stdout] | [INFO] [stdout] 913 | Err(E) => {assert!(false, E); PathBuf::new()} [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 913 | Err(E) => {assert!(false, "{}", E); PathBuf::new()} [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/attack/substitution.rs:918:39 [INFO] [stdout] | [INFO] [stdout] 918 | Err(E) => {assert!(false, E); File::create("/tmp").unwrap()} [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 918 | Err(E) => {assert!(false, "{}", E); File::create("/tmp").unwrap()} [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/attack/substitution.rs:923:39 [INFO] [stdout] | [INFO] [stdout] 923 | Err(E) => {assert!(false, E); ()} [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 923 | Err(E) => {assert!(false, "{}", E); ()} [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/attack/substitution.rs:939:39 [INFO] [stdout] | [INFO] [stdout] 939 | Err(E) => {assert!(false, E); String::new()} [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 939 | Err(E) => {assert!(false, "{}", E); String::new()} [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/attack/substitution.rs:1213:17 [INFO] [stdout] | [INFO] [stdout] 1213 | format!("Extracted key {} was not among original ones.", &extracted_cipherletter)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 1213 - format!("Extracted key {} was not among original ones.", &extracted_cipherletter)); [INFO] [stdout] 1213 + "Extracted key {} was not among original ones.", &extracted_cipherletter); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/attack/substitution.rs:1223:17 [INFO] [stdout] | [INFO] [stdout] 1223 | format!("Extracted cipherletter {} was not removed from mapping", &extracted_cipherletter)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 1223 - format!("Extracted cipherletter {} was not removed from mapping", &extracted_cipherletter)); [INFO] [stdout] 1223 + "Extracted cipherletter {} was not removed from mapping", &extracted_cipherletter); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/attack/substitution.rs:1232:41 [INFO] [stdout] | [INFO] [stdout] 1232 | error => assert!(false, format!("Raised error was not the one \ [INFO] [stdout] | _________________________________________^ [INFO] [stdout] 1233 | | we were expecting but {} instead", error)) [INFO] [stdout] | |___________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 1232 ~ error => assert!(false, "Raised error was not the one \ [INFO] [stdout] 1233 ~ we were expecting but {} instead", error) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/cipher/substitution.rs:171:32 [INFO] [stdout] | [INFO] [stdout] 171 | assert!(false, format!("Error happened: {}", E)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 171 - assert!(false, format!("Error happened: {}", E)) [INFO] [stdout] 171 + assert!(false, "Error happened: {}", E) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/cipher/substitution.rs:183:32 [INFO] [stdout] | [INFO] [stdout] 183 | assert!(false, format!("Error happened: {}", E)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 183 - assert!(false, format!("Error happened: {}", E)) [INFO] [stdout] 183 + assert!(false, "Error happened: {}", E) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/cipher/substitution.rs:195:41 [INFO] [stdout] | [INFO] [stdout] 195 | error => assert!(false, format!("Raised error was not the one \ [INFO] [stdout] | _________________________________________^ [INFO] [stdout] 196 | | we were expecting but {} instead", error)) [INFO] [stdout] | |___________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 195 ~ error => assert!(false, "Raised error was not the one \ [INFO] [stdout] 196 ~ we were expecting but {} instead", error) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/cipher/substitution.rs:208:41 [INFO] [stdout] | [INFO] [stdout] 208 | error => assert!(false, format!("Raised error was not the one \ [INFO] [stdout] | _________________________________________^ [INFO] [stdout] 209 | | we were expecting but {} instead", error)) [INFO] [stdout] | |___________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 208 ~ error => assert!(false, "Raised error was not the one \ [INFO] [stdout] 209 ~ we were expecting but {} instead", error) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait method `fromStr` should have a snake case name [INFO] [stdout] --> src/lib.rs:85:8 [INFO] [stdout] | [INFO] [stdout] 85 | fn fromStr(s: T) -> Self; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `from_str` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait method `findFromIndex` should have a snake case name [INFO] [stdout] --> src/lib.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 106 | fn findFromIndex(text: &T, text_to_find: U, index: usize) -> Option; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `find_from_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/database.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | create_folder_path(database_folder); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/attack/simple_attacks.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | Err(E) => return None [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `item_A` should have a snake case name [INFO] [stdout] --> src/attack/frequency.rs:122:34 [INFO] [stdout] | [INFO] [stdout] 122 | values_ordered.sort_by(|&item_A, &item_B| item_B.cmp(item_A)); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `item_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `item_B` should have a snake case name [INFO] [stdout] --> src/attack/frequency.rs:122:43 [INFO] [stdout] | [INFO] [stdout] 122 | values_ordered.sort_by(|&item_A, &item_B| item_B.cmp(item_A)); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `item_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/frequency.rs:162:9 [INFO] [stdout] | [INFO] [stdout] 162 | ordered_dict_iter.advance_by(self.ordered_dict.len()-width); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/frequency.rs:334:9 [INFO] [stdout] | [INFO] [stdout] 334 | ciphered_stream_iter.advance_by(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `item_A` should have a snake case name [INFO] [stdout] --> src/cipher/common.rs:186:25 [INFO] [stdout] | [INFO] [stdout] 186 | items.sort_by(|&item_A, &item_B| item_B.1.cmp(item_A.1)); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `item_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `item_B` should have a snake case name [INFO] [stdout] --> src/cipher/common.rs:186:34 [INFO] [stdout] | [INFO] [stdout] 186 | items.sort_by(|&item_A, &item_B| item_B.1.cmp(item_A.1)); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `item_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/database.rs:202:9 [INFO] [stdout] | [INFO] [stdout] 202 | create_database(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/database.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 213 | create_folder_path(database_folder); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:666:13 [INFO] [stdout] | [INFO] [stdout] 666 | database::create_database(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:670:13 [INFO] [stdout] | [INFO] [stdout] 670 | create_dir(&resources_path); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:685:17 [INFO] [stdout] | [INFO] [stdout] 685 | dictionary.populate(language_book); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::iter::Iterator::collect` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:688:13 [INFO] [stdout] | [INFO] [stdout] 688 | LANGUAGES.iter().map(|x| _languages.push(x.to_string())).collect::>(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:731:9 [INFO] [stdout] | [INFO] [stdout] 731 | database::create_database(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::iter::Iterator::collect` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:737:13 [INFO] [stdout] | [INFO] [stdout] 737 | _words.iter().map(|_word| language_dictionary.add_word(_word)).collect::>(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:772:13 [INFO] [stdout] | [INFO] [stdout] 772 | text_file.write_all(text.as_ref().as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:819:9 [INFO] [stdout] | [INFO] [stdout] 819 | database::create_database(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:822:13 [INFO] [stdout] | [INFO] [stdout] 822 | Dictionary::new("english", true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:836:9 [INFO] [stdout] | [INFO] [stdout] 836 | database::create_database(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:867:9 [INFO] [stdout] | [INFO] [stdout] 867 | Dictionary::remove_dictionary(language_to_remove); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::iter::Iterator::collect` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:889:13 [INFO] [stdout] | [INFO] [stdout] 889 | ... temporary_text.normalized_text.to_lowercase().split_ascii_whitespace().map(|_word| expected_set.insert(_word.to_string())).collect::>(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:903:9 [INFO] [stdout] | [INFO] [stdout] 903 | database::create_database(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::iter::Iterator::collect` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:911:9 [INFO] [stdout] | [INFO] [stdout] 911 | expected_lowercase_content.split_ascii_whitespace().map(|x| expected_set.insert(x)).collect::>(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:915:13 [INFO] [stdout] | [INFO] [stdout] 915 | dictionary.populate(temporary_text_file.temp_filename.as_path()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::iter::Iterator::collect` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:929:13 [INFO] [stdout] | [INFO] [stdout] 929 | test_tuple.2.to_lowercase().split_ascii_whitespace().map(|_word| expected_set.insert(_word.to_string())).collect::>(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:945:9 [INFO] [stdout] | [INFO] [stdout] 945 | database::create_database(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::iter::Iterator::collect` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:949:9 [INFO] [stdout] | [INFO] [stdout] 949 | micro_dictionaries[_language].iter().map(|_word| words_to_add.insert(_word.clone())).collect::>(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/attack/dictionaries.rs:991:9 [INFO] [stdout] | [INFO] [stdout] 991 | database::create_database(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/attack/substitution.rs:877:21 [INFO] [stdout] | [INFO] [stdout] 877 | Err(E) => {assert!(false, E); String::new()} [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/attack/substitution.rs:899:21 [INFO] [stdout] | [INFO] [stdout] 899 | Err(E) => {assert!(false, E); String::new()} [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/attack/substitution.rs:913:17 [INFO] [stdout] | [INFO] [stdout] 913 | Err(E) => {assert!(false, E); PathBuf::new()} [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/attack/substitution.rs:918:17 [INFO] [stdout] | [INFO] [stdout] 918 | Err(E) => {assert!(false, E); File::create("/tmp").unwrap()} [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/attack/substitution.rs:923:17 [INFO] [stdout] | [INFO] [stdout] 923 | Err(E) => {assert!(false, E); ()} [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/attack/substitution.rs:939:17 [INFO] [stdout] | [INFO] [stdout] 939 | Err(E) => {assert!(false, E); String::new()} [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `THIS_TEST_CHARSET` should have a snake case name [INFO] [stdout] --> src/attack/substitution.rs:1065:13 [INFO] [stdout] | [INFO] [stdout] 1065 | let THIS_TEST_CHARSET = "12345"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `this_test_charset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/attack/substitution.rs:1229:20 [INFO] [stdout] | [INFO] [stdout] 1229 | if let Err(E) = mapping.pop_item() { [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/cipher/substitution.rs:170:17 [INFO] [stdout] | [INFO] [stdout] 170 | Err(E) => { [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/cipher/substitution.rs:182:17 [INFO] [stdout] | [INFO] [stdout] 182 | Err(E) => { [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/cipher/substitution.rs:192:20 [INFO] [stdout] | [INFO] [stdout] 192 | if let Err(E) = cipher("", wrong_key, test_charset) { [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/cipher/substitution.rs:205:20 [INFO] [stdout] | [INFO] [stdout] 205 | if let Err(E) = cipher("", wrong_key, test_charset) { [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 53 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 136 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 26.82s [INFO] running `Command { std: "docker" "inspect" "ff34b5bd42a8b696c9e36eb83057b09af04edad8c8492f67b5931b490301b882", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ff34b5bd42a8b696c9e36eb83057b09af04edad8c8492f67b5931b490301b882", kill_on_drop: false }` [INFO] [stdout] ff34b5bd42a8b696c9e36eb83057b09af04edad8c8492f67b5931b490301b882 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5736fa189c1c60b01babf4b8b698fe57b6ecc41933a7ff2e0b8d7a221459412b" "/opt/rustwide/cargo-home/bin/cargo" "+62efba8a050c64249dab942951bb28f710208bc8" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] df7f52571c35ab10eaa8344dafe73561389d83d491a3b36335e3a9f057e629bc [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "df7f52571c35ab10eaa8344dafe73561389d83d491a3b36335e3a9f057e629bc", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: unused import: `OsStr` [INFO] [stderr] --> src/attack/database.rs:6:16 [INFO] [stderr] | [INFO] [stderr] 6 | use std::ffi::{OsStr, OsString}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Error` [INFO] [stderr] --> src/attack/database.rs:11:43 [INFO] [stderr] | [INFO] [stderr] 11 | use crate::{ErrorKind, Result, ResultExt, Error}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type `DATABASE_STANDARD_PATH` should have an upper camel case name [INFO] [stderr] --> src/attack/database.rs:31:8 [INFO] [stderr] | [INFO] [stderr] 31 | struct DATABASE_STANDARD_PATH; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DatabaseStandardPath` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `cipher` [INFO] [stderr] --> src/attack/frequency.rs:5:48 [INFO] [stderr] | [INFO] [stderr] 5 | use crate::cipher::vigenere::{DEFAULT_CHARSET, cipher, decipher}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Error`, `ResultExt` [INFO] [stderr] --> src/cipher/substitution.rs:2:32 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::{ErrorKind, Result, ResultExt, Error}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `E` [INFO] [stderr] --> src/attack/simple_attacks.rs:165:25 [INFO] [stderr] | [INFO] [stderr] 165 | Err(E) => return None [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_E` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `char` [INFO] [stderr] --> src/attack/frequency.rs:256:13 [INFO] [stderr] | [INFO] [stderr] 256 | for (i, char) in char_string.chars().enumerate() { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/attack/frequency.rs:383:21 [INFO] [stderr] | [INFO] [stderr] 383 | .map(|(key, value)| key) [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key` [INFO] [stderr] --> src/attack/frequency.rs:126:28 [INFO] [stderr] | [INFO] [stderr] 126 | .filter(|(&key, &_value)| _value == *value) [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/attack/frequency.rs:157:25 [INFO] [stderr] | [INFO] [stderr] 157 | .map(|(key, value)| key) [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/attack/frequency.rs:164:25 [INFO] [stderr] | [INFO] [stderr] 164 | .map(|(key, value)| key) [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ciphered_text` [INFO] [stderr] --> src/attack/vigenere.rs:36:26 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn brute_force(ciphered_text: T, charset: U, testing: bool)-> Result [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ciphered_text` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `charset` [INFO] [stderr] --> src/attack/vigenere.rs:36:44 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn brute_force(ciphered_text: T, charset: U, testing: bool)-> Result [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_charset` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `testing` [INFO] [stderr] --> src/attack/vigenere.rs:36:56 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn brute_force(ciphered_text: T, charset: U, testing: bool)-> Result [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_testing` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ciphered_text` [INFO] [stderr] --> src/attack/vigenere.rs:47:23 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn brute_force_mp(ciphered_text: &str, charset: &str, testing: bool)-> Result { [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ciphered_text` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `charset` [INFO] [stderr] --> src/attack/vigenere.rs:47:44 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn brute_force_mp(ciphered_text: &str, charset: &str, testing: bool)-> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_charset` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `testing` [INFO] [stderr] --> src/attack/vigenere.rs:47:59 [INFO] [stderr] | [INFO] [stdout] [INFO] [stderr] 47 | pub fn brute_force_mp(ciphered_text: &str, charset: &str, testing: bool)-> Result { [INFO] [stdout] running 78 tests [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_testing` [INFO] [stdout] test attack::database::tests::test_database_standard_path ... ok [INFO] [stderr] [INFO] [stderr] warning: value assigned to `offset_char` is never read [INFO] [stderr] --> src/cipher/vigenere.rs:101:17 [INFO] [stderr] | [INFO] [stderr] 101 | let mut offset_char = String::new(); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/attack/frequency.rs:269:28 [INFO] [stderr] | [INFO] [stderr] 269 | let mut values = sequences.get_mut(sequence_to_find).unwrap(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_best_result` [INFO] [stderr] --> src/attack/caesar.rs:114:4 [INFO] [stderr] | [INFO] [stderr] 114 | fn get_best_result(identified_languages: &Vec<(usize, IdentifiedLanguage)>)-> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never read: `database_path` [INFO] [stderr] --> src/attack/database.rs:98:5 [INFO] [stderr] | [INFO] [stderr] 98 | database_path: String [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `candidates` [INFO] [stderr] --> src/attack/dictionaries.rs:410:5 [INFO] [stderr] | [INFO] [stderr] 410 | candidates: HashMap [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `start` [INFO] [stderr] --> src/attack/simple_attacks.rs:89:5 [INFO] [stderr] | [INFO] [stderr] 89 | start: usize, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/attack/simple_attacks.rs:95:8 [INFO] [stderr] | [INFO] [stderr] 95 | fn new(start: usize, end: usize) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/attack/simple_attacks.rs:129:12 [INFO] [stderr] | [INFO] [stderr] 129 | pub fn new() -> Result { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `create_new_single_entry` [INFO] [stderr] --> src/attack/substitution.rs:723:8 [INFO] [stderr] | [INFO] [stderr] 723 | fn create_new_single_entry(&mut self, key: char, value: char) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `LetterHistogram` [INFO] [stderr] --> src/attack/frequency.rs:14:8 [INFO] [stderr] | [INFO] [stderr] 14 | struct LetterHistogram { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `from_text` [INFO] [stderr] --> src/attack/frequency.rs:37:8 [INFO] [stderr] | [INFO] [stderr] 37 | fn from_text(text: T, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `from_dict` [INFO] [stderr] --> src/attack/frequency.rs:67:8 [INFO] [stderr] | [INFO] [stderr] 67 | fn from_dict(letters: HashMap, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `setup_for_matching` [INFO] [stderr] --> src/attack/frequency.rs:89:8 [INFO] [stderr] | [INFO] [stderr] 89 | fn setup_for_matching(self, letter_counter: Counter, width: usize) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `create_ordered_dict` [INFO] [stderr] --> src/attack/frequency.rs:103:8 [INFO] [stderr] | [INFO] [stderr] 103 | fn create_ordered_dict(mut self, letter_counter: Counter) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `set_matching_width` [INFO] [stderr] --> src/attack/frequency.rs:155:8 [INFO] [stderr] | [INFO] [stderr] 155 | fn set_matching_width(mut self, width: usize) -> Self{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `frequency` [INFO] [stderr] --> src/attack/frequency.rs:181:8 [INFO] [stderr] | [INFO] [stderr] 181 | fn frequency(&self, key: T) -> Result [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `letters` [INFO] [stderr] --> src/attack/frequency.rs:190:8 [INFO] [stderr] | [INFO] [stderr] 190 | fn letters(&self) -> linked_hash_map::Keys { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `match_score` [INFO] [stderr] --> src/attack/frequency.rs:208:8 [INFO] [stderr] | [INFO] [stderr] 208 | fn match_score(one: &LetterHistogram, other: &LetterHistogram) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `find_repeated_sequences` [INFO] [stderr] --> src/attack/frequency.rs:230:8 [INFO] [stderr] | [INFO] [stderr] 230 | pub fn find_repeated_sequences(text: T, length: usize) -> HashMap> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `find_adjacent_separations` [INFO] [stderr] --> src/attack/frequency.rs:247:4 [INFO] [stderr] | [INFO] [stderr] 247 | fn find_adjacent_separations(text: T, length: usize) -> HashMap> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `find_not_adjacent_separations` [INFO] [stderr] --> src/attack/frequency.rs:292:4 [INFO] [stderr] | [INFO] [stderr] 292 | fn find_not_adjacent_separations(sequences: &mut HashMap>) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_substrings` [INFO] [stderr] --> src/attack/frequency.rs:327:8 [INFO] [stderr] | [INFO] [stderr] 327 | pub fn get_substrings(ciphertext: T, step: usize) -> Vec [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `match_substring` [INFO] [stderr] --> src/attack/frequency.rs:353:4 [INFO] [stderr] | [INFO] [stderr] 353 | fn match_substring(substring: T, reference_histogram: &LetterHistogram) -> u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `find_most_likely_subkeys` [INFO] [stderr] --> src/attack/frequency.rs:370:4 [INFO] [stderr] | [INFO] [stderr] 370 | fn find_most_likely_subkeys(substring: T, reference_histogram: &LetterHistogram) -> Result> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `MultiplyingKeyBelowZero` [INFO] [stderr] --> src/cipher/affine.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | MultiplyingKeyBelowZero, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `AddingKeyBelowZero` [INFO] [stderr] --> src/cipher/affine.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | AddingKeyBelowZero, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait method `fromStr` should have a snake case name [INFO] [stderr] --> src/lib.rs:85:8 [INFO] [stderr] | [INFO] [stderr] 85 | fn fromStr(s: T) -> Self; [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `from_str` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait method `findFromIndex` should have a snake case name [INFO] [stderr] --> src/lib.rs:106:8 [INFO] [stderr] | [INFO] [stderr] 106 | fn findFromIndex(text: &T, text_to_find: U, index: usize) -> Option; [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `find_from_index` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/database.rs:129:13 [INFO] [stderr] | [INFO] [stderr] 129 | create_folder_path(database_folder); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/attack/simple_attacks.rs:165:25 [INFO] [stderr] | [INFO] [stderr] 165 | Err(E) => return None [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: variable `item_A` should have a snake case name [INFO] [stderr] --> src/attack/frequency.rs:122:34 [INFO] [stderr] | [INFO] [stderr] 122 | values_ordered.sort_by(|&item_A, &item_B| item_B.cmp(item_A)); [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `item_a` [INFO] [stderr] [INFO] [stderr] warning: variable `item_B` should have a snake case name [INFO] [stderr] --> src/attack/frequency.rs:122:43 [INFO] [stderr] | [INFO] [stderr] 122 | values_ordered.sort_by(|&item_A, &item_B| item_B.cmp(item_A)); [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `item_b` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/frequency.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | ordered_dict_iter.advance_by(self.ordered_dict.len()-width); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/frequency.rs:334:9 [INFO] [stderr] | [INFO] [stderr] 334 | ciphered_stream_iter.advance_by(i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: variable `item_A` should have a snake case name [INFO] [stderr] --> src/cipher/common.rs:186:25 [INFO] [stderr] | [INFO] [stderr] 186 | items.sort_by(|&item_A, &item_B| item_B.1.cmp(item_A.1)); [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `item_a` [INFO] [stderr] [INFO] [stderr] warning: variable `item_B` should have a snake case name [INFO] [stderr] --> src/cipher/common.rs:186:34 [INFO] [stderr] | [INFO] [stderr] 186 | items.sort_by(|&item_A, &item_B| item_B.1.cmp(item_A.1)); [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `item_b` [INFO] [stderr] [INFO] [stderr] warning: unused import: `diesel::result::Error::DatabaseError` [INFO] [stderr] --> src/attack/caesar.rs:140:9 [INFO] [stderr] | [INFO] [stderr] 140 | use diesel::result::Error::DatabaseError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `OsStr` [INFO] [stderr] --> src/attack/database.rs:6:16 [INFO] [stderr] | [INFO] [stderr] 6 | use std::ffi::{OsStr, OsString}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ffi::OsStr` [INFO] [stderr] --> src/attack/database.rs:185:9 [INFO] [stderr] | [INFO] [stderr] 185 | use std::ffi::OsStr; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `read_to_string` [INFO] [stderr] --> src/attack/dictionaries.rs:542:50 [INFO] [stderr] | [INFO] [stderr] 542 | use std::fs::{create_dir, File, OpenOptions, read_to_string}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ffi::OsString` [INFO] [stderr] --> src/attack/dictionaries.rs:548:9 [INFO] [stderr] | [INFO] [stderr] 548 | use std::ffi::OsString; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BufReader`, `Read` [INFO] [stderr] --> src/attack/dictionaries.rs:550:26 [INFO] [stderr] | [INFO] [stderr] 550 | use std::io::{Write, BufReader, Read}; [INFO] [stderr] | ^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env::temp_dir` [INFO] [stderr] --> src/attack/dictionaries.rs:552:9 [INFO] [stderr] | [INFO] [stderr] 552 | use std::env::temp_dir; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::attack::dictionaries::tests::ENGLISH_TEXT_WITH_PUNCTUATIONS_MARKS` [INFO] [stderr] --> src/attack/frequency.rs:394:9 [INFO] [stderr] | [INFO] [stderr] 394 | use crate::attack::dictionaries::tests::ENGLISH_TEXT_WITH_PUNCTUATIONS_MARKS; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `F64Margin` [INFO] [stderr] --> src/attack/frequency.rs:399:31 [INFO] [stderr] | [INFO] [stderr] 399 | use float_cmp::{ApproxEq, F64Margin}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ResultExt` [INFO] [stderr] --> src/cipher/substitution.rs:2:32 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::{ErrorKind, Result, ResultExt, Error}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loaded_dictionaries` [INFO] [stderr] --> src/attack/affine.rs:144:13 [INFO] [stderr] | [INFO] [stderr] 144 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loaded_dictionaries` [INFO] [stderr] --> src/attack/affine.rs:153:13 [INFO] [stderr] | [INFO] [stderr] 153 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loaded_dictionaries` [INFO] [stderr] --> src/attack/caesar.rs:148:13 [INFO] [stderr] | [INFO] [stderr] 148 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loaded_dictionaries` [INFO] [stderr] --> src/attack/caesar.rs:157:13 [INFO] [stderr] | [INFO] [stderr] 157 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `test_env` [INFO] [stderr] --> src/attack/database.rs:201:13 [INFO] [stderr] | [INFO] [stderr] 201 | let test_env = TemporalEnvironmentVariable::new("DATABASE_URL", absolute_pathname_to_database); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_test_env` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_dir` [INFO] [stderr] --> src/attack/dictionaries.rs:809:14 [INFO] [stderr] | [INFO] [stderr] 809 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_env_database_path` [INFO] [stderr] --> src/attack/dictionaries.rs:809:24 [INFO] [stderr] | [INFO] [stderr] 809 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_dir` [INFO] [stderr] --> src/attack/dictionaries.rs:818:14 [INFO] [stderr] | [INFO] [stderr] 818 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_env_database_path` [INFO] [stderr] --> src/attack/dictionaries.rs:818:24 [INFO] [stderr] | [INFO] [stderr] 818 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_dir` [INFO] [stderr] --> src/attack/dictionaries.rs:835:14 [INFO] [stderr] | [INFO] [stderr] 835 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_env_database_path` [INFO] [stderr] --> src/attack/dictionaries.rs:835:24 [INFO] [stderr] | [INFO] [stderr] 835 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_dir` [INFO] [stderr] --> src/attack/dictionaries.rs:850:14 [INFO] [stderr] | [INFO] [stderr] 850 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_env_database_path` [INFO] [stderr] --> src/attack/dictionaries.rs:850:24 [INFO] [stderr] | [INFO] [stderr] 850 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_dir` [INFO] [stderr] --> src/attack/dictionaries.rs:865:14 [INFO] [stderr] | [INFO] [stderr] 865 | let (temp_dir, temp_env_database_path) = loaded_micro_dictionary_temp_dir(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_env_database_path` [INFO] [stderr] --> src/attack/dictionaries.rs:865:24 [INFO] [stderr] | [INFO] [stderr] 865 | let (temp_dir, temp_env_database_path) = loaded_micro_dictionary_temp_dir(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_env_database_path` [INFO] [stderr] --> src/attack/dictionaries.rs:902:24 [INFO] [stderr] | [INFO] [stderr] 902 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_dir` [INFO] [stderr] --> src/attack/dictionaries.rs:944:14 [INFO] [stderr] | [INFO] [stderr] 944 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_env_database_path` [INFO] [stderr] --> src/attack/dictionaries.rs:944:24 [INFO] [stderr] | [INFO] [stderr] 944 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loaded_dictionaries` [INFO] [stderr] --> src/attack/dictionaries.rs:959:13 [INFO] [stderr] | [INFO] [stderr] 959 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_dir` [INFO] [stderr] --> src/attack/dictionaries.rs:990:14 [INFO] [stderr] | [INFO] [stderr] 990 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `temp_env_database_path` [INFO] [stderr] --> src/attack/dictionaries.rs:990:24 [INFO] [stderr] | [INFO] [stderr] 990 | let (temp_dir, temp_env_database_path) = temporary_database_folder(None); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_env_database_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loaded_micro_dictionary_temp_dir` [INFO] [stderr] --> src/attack/dictionaries.rs:1020:27 [INFO] [stderr] | [INFO] [stderr] 1020 | fn test_get_all_words(loaded_micro_dictionary_temp_dir: (TestEnvironment, TemporalEnvironmentVariable)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_micro_dictionary_temp_dir` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loaded_micro_dictionary_temp_dir` [INFO] [stderr] --> src/attack/simple_attacks.rs:281:43 [INFO] [stderr] | [INFO] [stderr] 281 | fn test_dictionary_word_key_generator(loaded_micro_dictionary_temp_dir: (TestEnvironment, TemporalEnvironmentVariable)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_micro_dictionary_temp_dir` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loaded_dictionaries` [INFO] [stderr] --> src/attack/substitution.rs:872:13 [INFO] [stderr] | [INFO] [stderr] 872 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loaded_dictionaries` [INFO] [stderr] --> src/attack/substitution.rs:894:13 [INFO] [stderr] | [INFO] [stderr] 894 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `missing` [INFO] [stderr] --> src/attack/substitution.rs:1125:13 [INFO] [stderr] | [INFO] [stderr] 1125 | let missing: Vec = expected_list.iter().cloned().filter(|_mapping| !recovered_mappings.contains(&_mapping)).collect(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_missing` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `extracted_candidates` [INFO] [stderr] --> src/attack/substitution.rs:1210:38 [INFO] [stderr] | [INFO] [stderr] 1210 | let (extracted_cipherletter, extracted_candidates) = mapping.pop_item() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extracted_candidates` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loaded_dictionaries` [INFO] [stderr] --> src/attack/transposition.rs:100:13 [INFO] [stderr] | [INFO] [stderr] 100 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loaded_dictionaries` [INFO] [stderr] --> src/attack/transposition.rs:109:13 [INFO] [stderr] | [INFO] [stderr] 109 | let loaded_dictionaries = LoadedDictionaries::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loaded_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/attack/dictionaries.rs:864:13 [INFO] [stderr] | [INFO] [stderr] 864 | let mut micro_dictionaries = get_micro_dictionaries_content(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/attack/substitution.rs:1073:13 [INFO] [stderr] | [INFO] [stderr] 1073 | let mut expected_mapping_1 = mapping!(THIS_TEST_CHARSET, {"1": {"a"}, [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/attack/substitution.rs:1078:13 [INFO] [stderr] | [INFO] [stderr] 1078 | let mut expected_mapping_2 = mapping!(THIS_TEST_CHARSET, {"1": {"a"}, [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/attack/substitution.rs:1083:13 [INFO] [stderr] | [INFO] [stderr] 1083 | let mut expected_mapping_3 = mapping!(THIS_TEST_CHARSET, {"1": {"b"}, [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/attack/substitution.rs:1088:13 [INFO] [stderr] | [INFO] [stderr] 1088 | let mut expected_mapping_4 = mapping!(THIS_TEST_CHARSET, {"1": {"b"}, [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/attack/substitution.rs:1093:13 [INFO] [stderr] | [INFO] [stderr] 1093 | let mut expected_mapping_5 = mapping!(THIS_TEST_CHARSET, {"1": {"a"}, [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/attack/substitution.rs:1098:13 [INFO] [stderr] | [INFO] [stderr] 1098 | let mut expected_mapping_6 = mapping!(THIS_TEST_CHARSET, {"1": {"a"}, [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/attack/substitution.rs:1103:13 [INFO] [stderr] | [INFO] [stderr] 1103 | let mut expected_mapping_7 = mapping!(THIS_TEST_CHARSET, {"1": {"b"}, [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/attack/substitution.rs:1108:13 [INFO] [stderr] | [INFO] [stderr] 1108 | let mut expected_mapping_8 = mapping!(THIS_TEST_CHARSET, {"1": {"b"}, [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/attack/substitution.rs:1113:13 [INFO] [stderr] | [INFO] [stderr] 1113 | let mut expected_list = vec![ [INFO] [stderr] | ----^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/attack/substitution.rs:1155:13 [INFO] [stderr] | [INFO] [stderr] 1155 | let mut mapping = mapping!(TEST_CHARSET, [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/cipher/transposition.rs:324:13 [INFO] [stderr] | [INFO] [stderr] 324 | let mut transposition_matrix = vec![ [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: field is never read: `temp_env` [INFO] [stderr] --> src/attack/dictionaries.rs:659:9 [INFO] [stderr] | [INFO] [stderr] 659 | temp_env: TestEnvironment, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `temp_env_var` [INFO] [stderr] --> src/attack/dictionaries.rs:660:9 [INFO] [stderr] | [INFO] [stderr] 660 | temp_env_var: TemporalEnvironmentVariable [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `text_file` [INFO] [stderr] --> src/attack/dictionaries.rs:752:9 [INFO] [stderr] | [INFO] [stderr] 752 | pub text_file: File, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `language` [INFO] [stderr] --> src/attack/substitution.rs:817:9 [INFO] [stderr] | [INFO] [stderr] 817 | language: &'static str, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/attack/substitution.rs:877:43 [INFO] [stderr] | [INFO] [stderr] 877 | Err(E) => {assert!(false, E); String::new()} [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 877 | Err(E) => {assert!(false, "{}", E); String::new()} [INFO] [stderr] | +++++ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/attack/substitution.rs:899:43 [INFO] [stderr] | [INFO] [stderr] 899 | Err(E) => {assert!(false, E); String::new()} [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 899 | Err(E) => {assert!(false, "{}", E); String::new()} [INFO] [stderr] | +++++ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/attack/substitution.rs:913:39 [INFO] [stderr] | [INFO] [stderr] 913 | Err(E) => {assert!(false, E); PathBuf::new()} [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 913 | Err(E) => {assert!(false, "{}", E); PathBuf::new()} [INFO] [stderr] | +++++ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/attack/substitution.rs:918:39 [INFO] [stderr] | [INFO] [stderr] 918 | Err(E) => {assert!(false, E); File::create("/tmp").unwrap()} [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 918 | Err(E) => {assert!(false, "{}", E); File::create("/tmp").unwrap()} [INFO] [stderr] | +++++ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/attack/substitution.rs:923:39 [INFO] [stderr] | [INFO] [stderr] 923 | Err(E) => {assert!(false, E); ()} [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 923 | Err(E) => {assert!(false, "{}", E); ()} [INFO] [stderr] | +++++ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/attack/substitution.rs:939:39 [INFO] [stderr] | [INFO] [stderr] 939 | Err(E) => {assert!(false, E); String::new()} [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 939 | Err(E) => {assert!(false, "{}", E); String::new()} [INFO] [stderr] | +++++ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/attack/substitution.rs:1213:17 [INFO] [stderr] | [INFO] [stderr] 1213 | format!("Extracted key {} was not among original ones.", &extracted_cipherletter)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stderr] help: remove the `format!(..)` macro call [INFO] [stderr] | [INFO] [stderr] 1213 - format!("Extracted key {} was not among original ones.", &extracted_cipherletter)); [INFO] [stderr] 1213 + "Extracted key {} was not among original ones.", &extracted_cipherletter); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/attack/substitution.rs:1223:17 [INFO] [stderr] | [INFO] [stderr] 1223 | format!("Extracted cipherletter {} was not removed from mapping", &extracted_cipherletter)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stderr] help: remove the `format!(..)` macro call [INFO] [stderr] | [INFO] [stderr] 1223 - format!("Extracted cipherletter {} was not removed from mapping", &extracted_cipherletter)); [INFO] [stderr] 1223 + "Extracted cipherletter {} was not removed from mapping", &extracted_cipherletter); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/attack/substitution.rs:1232:41 [INFO] [stderr] | [INFO] [stderr] 1232 | error => assert!(false, format!("Raised error was not the one \ [INFO] [stderr] | _________________________________________^ [INFO] [stderr] 1233 | | we were expecting but {} instead", error)) [INFO] [stderr] | |___________________________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stderr] help: remove the `format!(..)` macro call [INFO] [stderr] | [INFO] [stderr] 1232 ~ error => assert!(false, "Raised error was not the one \ [INFO] [stderr] 1233 ~ we were expecting but {} instead", error) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/cipher/substitution.rs:171:32 [INFO] [stderr] | [INFO] [stderr] 171 | assert!(false, format!("Error happened: {}", E)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stderr] help: remove the `format!(..)` macro call [INFO] [stderr] | [INFO] [stderr] 171 - assert!(false, format!("Error happened: {}", E)) [INFO] [stderr] 171 + assert!(false, "Error happened: {}", E) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/cipher/substitution.rs:183:32 [INFO] [stderr] | [INFO] [stderr] 183 | assert!(false, format!("Error happened: {}", E)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stderr] help: remove the `format!(..)` macro call [INFO] [stderr] | [INFO] [stderr] 183 - assert!(false, format!("Error happened: {}", E)) [INFO] [stderr] 183 + assert!(false, "Error happened: {}", E) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/cipher/substitution.rs:195:41 [INFO] [stderr] | [INFO] [stderr] 195 | error => assert!(false, format!("Raised error was not the one \ [INFO] [stderr] | _________________________________________^ [INFO] [stderr] 196 | | we were expecting but {} instead", error)) [INFO] [stderr] | |___________________________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stderr] help: remove the `format!(..)` macro call [INFO] [stderr] | [INFO] [stderr] 195 ~ error => assert!(false, "Raised error was not the one \ [INFO] [stderr] 196 ~ we were expecting but {} instead", error) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/cipher/substitution.rs:208:41 [INFO] [stderr] | [INFO] [stderr] 208 | error => assert!(false, format!("Raised error was not the one \ [INFO] [stderr] | _________________________________________^ [INFO] [stderr] 209 | | we were expecting but {} instead", error)) [INFO] [stderr] | |___________________________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of assert!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: the assert!() macro supports formatting, so there's no need for the format!() macro here [INFO] [stderr] help: remove the `format!(..)` macro call [INFO] [stderr] | [INFO] [stderr] 208 ~ error => assert!(false, "Raised error was not the one \ [INFO] [stderr] 209 ~ we were expecting but {} instead", error) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/database.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | create_database(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/database.rs:213:9 [INFO] [stderr] | [INFO] [stderr] 213 | create_folder_path(database_folder); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:666:13 [INFO] [stderr] | [INFO] [stderr] 666 | database::create_database(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:670:13 [INFO] [stderr] | [INFO] [stderr] 670 | create_dir(&resources_path); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:685:17 [INFO] [stderr] | [INFO] [stderr] 685 | dictionary.populate(language_book); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::iter::Iterator::collect` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:688:13 [INFO] [stderr] | [INFO] [stderr] 688 | LANGUAGES.iter().map(|x| _languages.push(x.to_string())).collect::>(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:731:9 [INFO] [stderr] | [INFO] [stderr] 731 | database::create_database(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::iter::Iterator::collect` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:737:13 [INFO] [stderr] | [INFO] [stderr] 737 | _words.iter().map(|_word| language_dictionary.add_word(_word)).collect::>(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:772:13 [INFO] [stderr] | [INFO] [stderr] 772 | text_file.write_all(text.as_ref().as_bytes()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:819:9 [INFO] [stderr] | [INFO] [stderr] 819 | database::create_database(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:822:13 [INFO] [stderr] | [INFO] [stderr] 822 | Dictionary::new("english", true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:836:9 [INFO] [stderr] | [INFO] [stderr] 836 | database::create_database(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:867:9 [INFO] [stderr] | [INFO] [stderr] 867 | Dictionary::remove_dictionary(language_to_remove); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::iter::Iterator::collect` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:889:13 [INFO] [stderr] | [INFO] [stderr] 889 | ... temporary_text.normalized_text.to_lowercase().split_ascii_whitespace().map(|_word| expected_set.insert(_word.to_string())).collect::>(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:903:9 [INFO] [stderr] | [INFO] [stderr] 903 | database::create_database(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::iter::Iterator::collect` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:911:9 [INFO] [stderr] | [INFO] [stderr] 911 | expected_lowercase_content.split_ascii_whitespace().map(|x| expected_set.insert(x)).collect::>(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:915:13 [INFO] [stderr] | [INFO] [stderr] 915 | dictionary.populate(temporary_text_file.temp_filename.as_path()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::iter::Iterator::collect` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:929:13 [INFO] [stderr] | [INFO] [stderr] 929 | test_tuple.2.to_lowercase().split_ascii_whitespace().map(|_word| expected_set.insert(_word.to_string())).collect::>(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:945:9 [INFO] [stderr] | [INFO] [stderr] 945 | database::create_database(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused return value of `std::iter::Iterator::collect` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:949:9 [INFO] [stderr] | [INFO] [stderr] 949 | micro_dictionaries[_language].iter().map(|_word| words_to_add.insert(_word.clone())).collect::>(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/attack/dictionaries.rs:991:9 [INFO] [stderr] | [INFO] [stderr] 991 | database::create_database(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/attack/substitution.rs:877:21 [INFO] [stderr] | [INFO] [stderr] 877 | Err(E) => {assert!(false, E); String::new()} [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/attack/substitution.rs:899:21 [INFO] [stderr] | [INFO] [stderr] 899 | Err(E) => {assert!(false, E); String::new()} [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/attack/substitution.rs:913:17 [INFO] [stderr] | [INFO] [stderr] 913 | Err(E) => {assert!(false, E); PathBuf::new()} [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/attack/substitution.rs:918:17 [INFO] [stderr] | [INFO] [stderr] 918 | Err(E) => {assert!(false, E); File::create("/tmp").unwrap()} [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/attack/substitution.rs:923:17 [INFO] [stderr] | [INFO] [stderr] 923 | Err(E) => {assert!(false, E); ()} [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/attack/substitution.rs:939:17 [INFO] [stderr] | [INFO] [stderr] 939 | Err(E) => {assert!(false, E); String::new()} [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: variable `THIS_TEST_CHARSET` should have a snake case name [INFO] [stderr] --> src/attack/substitution.rs:1065:13 [INFO] [stderr] | [INFO] [stderr] 1065 | let THIS_TEST_CHARSET = "12345"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `this_test_charset` [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/attack/substitution.rs:1229:20 [INFO] [stderr] | [INFO] [stderr] 1229 | if let Err(E) = mapping.pop_item() { [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/cipher/substitution.rs:170:17 [INFO] [stderr] | [INFO] [stderr] 170 | Err(E) => { [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/cipher/substitution.rs:182:17 [INFO] [stderr] | [INFO] [stderr] 182 | Err(E) => { [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/cipher/substitution.rs:192:20 [INFO] [stderr] | [INFO] [stderr] 192 | if let Err(E) = cipher("", wrong_key, test_charset) { [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/cipher/substitution.rs:205:20 [INFO] [stderr] | [INFO] [stderr] 205 | if let Err(E) = cipher("", wrong_key, test_charset) { [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: `cifra` (lib) generated 53 warnings [INFO] [stderr] warning: `cifra` (lib test) generated 136 warnings (35 duplicates) [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/bin/main.rs:633:9 [INFO] [stderr] | [INFO] [stderr] 633 | return bail!("You tried to use attack_file function with a configuration that is not for attack mode.") [INFO] [stderr] | ^^^^^^^------------------------------------------------------------------------------------------------ [INFO] [stderr] | | | [INFO] [stderr] | | any code following this expression is unreachable [INFO] [stderr] | unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/bin/main.rs:645:14 [INFO] [stderr] | [INFO] [stderr] 645 | _ => return bail!("Given algorithm does not use integer key and charset.") [INFO] [stderr] | ^^^^^^^-------------------------------------------------------------- [INFO] [stderr] | | | [INFO] [stderr] | | any code following this expression is unreachable [INFO] [stderr] | unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/bin/main.rs:657:14 [INFO] [stderr] | [INFO] [stderr] 657 | _ => return bail!("Given algorithm does not use string key and charset.") [INFO] [stderr] | ^^^^^^^------------------------------------------------------------- [INFO] [stderr] | | | [INFO] [stderr] | | any code following this expression is unreachable [INFO] [stderr] | unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/bin/main.rs:668:14 [INFO] [stderr] | [INFO] [stderr] 668 | _ => return bail!("Given algorithm does not use integer key or includes a charset.") [INFO] [stderr] | ^^^^^^^------------------------------------------------------------------------ [INFO] [stderr] | | | [INFO] [stderr] | | any code following this expression is unreachable [INFO] [stderr] | unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/bin/main.rs:680:14 [INFO] [stderr] | [INFO] [stderr] 680 | _ => return bail!("Given algorithm does not use integer key and charset.") [INFO] [stderr] | ^^^^^^^-------------------------------------------------------------- [INFO] [stderr] | | | [INFO] [stderr] | | any code following this expression is unreachable [INFO] [stderr] | unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/bin/main.rs:692:14 [INFO] [stderr] | [INFO] [stderr] 692 | _ => return bail!("Given algorithm does not use string key and charset.") [INFO] [stderr] | ^^^^^^^------------------------------------------------------------- [INFO] [stderr] | | | [INFO] [stderr] | | any code following this expression is unreachable [INFO] [stderr] | unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/bin/main.rs:703:14 [INFO] [stderr] | [INFO] [stderr] 703 | _ => return bail!("Given algorithm does not use integer key or includes a charset.") [INFO] [stderr] | ^^^^^^^------------------------------------------------------------------------ [INFO] [stderr] | | | [INFO] [stderr] | | any code following this expression is unreachable [INFO] [stderr] | unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/bin/main.rs:715:14 [INFO] [stderr] | [INFO] [stderr] 715 | _ => return bail!("Given algorithm does not use charset.") [INFO] [stderr] | ^^^^^^^---------------------------------------------- [INFO] [stderr] | | | [INFO] [stderr] | | any code following this expression is unreachable [INFO] [stderr] | unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/bin/main.rs:726:14 [INFO] [stderr] | [INFO] [stderr] 726 | _ => return bail!("Given algorithm do use string key and charset") [INFO] [stderr] | ^^^^^^^------------------------------------------------------ [INFO] [stderr] | | | [INFO] [stderr] | | any code following this expression is unreachable [INFO] [stderr] | unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/bin/main.rs:737:14 [INFO] [stderr] | [INFO] [stderr] 737 | _ => return bail!("Given algorithm do use charset.") [INFO] [stderr] | ^^^^^^^---------------------------------------- [INFO] [stderr] | | | [INFO] [stderr] | | any code following this expression is unreachable [INFO] [stderr] | unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/bin/main.rs:748:14 [INFO] [stderr] | [INFO] [stderr] 748 | _ => return bail!("Given algorithm don't have testing mode.") [INFO] [stderr] | ^^^^^^^------------------------------------------------- [INFO] [stderr] | | | [INFO] [stderr] | | any code following this expression is unreachable [INFO] [stderr] | unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ciphered_file` [INFO] [stderr] --> src/bin/main.rs:427:13 [INFO] [stderr] | [INFO] [stderr] 427 | ciphered_file, charset } => { [INFO] [stderr] | ^^^^^^^^^^^^^ help: try ignoring the field: `ciphered_file: _` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `deciphered_file` [INFO] [stderr] --> src/bin/main.rs:465:32 [INFO] [stderr] | [INFO] [stderr] 465 | file_to_decipher , deciphered_file, charset } => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try ignoring the field: `deciphered_file: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `algorithm` [INFO] [stderr] --> src/bin/main.rs:520:25 [INFO] [stderr] | [INFO] [stderr] 520 | Modes::Cipher { algorithm, key, file_to_cipher, [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `algorithm: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key` [INFO] [stderr] --> src/bin/main.rs:520:36 [INFO] [stderr] | [INFO] [stderr] 520 | Modes::Cipher { algorithm, key, file_to_cipher, [INFO] [stderr] | ^^^ help: try ignoring the field: `key: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `file_to_cipher` [INFO] [stderr] --> src/bin/main.rs:520:41 [INFO] [stderr] | [INFO] [stderr] 520 | Modes::Cipher { algorithm, key, file_to_cipher, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try ignoring the field: `file_to_cipher: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `charset` [INFO] [stderr] --> src/bin/main.rs:521:28 [INFO] [stderr] | [INFO] [stderr] 521 | ciphered_file, charset } => { [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `charset: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `algorithm` [INFO] [stderr] --> src/bin/main.rs:524:27 [INFO] [stderr] | [INFO] [stderr] 524 | Modes::Decipher { algorithm, key, file_to_decipher, [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `algorithm: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key` [INFO] [stderr] --> src/bin/main.rs:524:38 [INFO] [stderr] | [INFO] [stderr] 524 | Modes::Decipher { algorithm, key, file_to_decipher, [INFO] [stderr] | ^^^ help: try ignoring the field: `key: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `file_to_decipher` [INFO] [stderr] --> src/bin/main.rs:524:43 [INFO] [stderr] | [INFO] [stderr] 524 | Modes::Decipher { algorithm, key, file_to_decipher, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try ignoring the field: `file_to_decipher: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `charset` [INFO] [stderr] --> src/bin/main.rs:525:30 [INFO] [stderr] | [INFO] [stderr] 525 | deciphered_file, charset }=> { [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `charset: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `algorithm` [INFO] [stderr] --> src/bin/main.rs:528:25 [INFO] [stderr] | [INFO] [stderr] 528 | Modes::Attack { algorithm, file_to_attack, [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `algorithm: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `file_to_attack` [INFO] [stderr] --> src/bin/main.rs:528:36 [INFO] [stderr] | [INFO] [stderr] 528 | Modes::Attack { algorithm, file_to_attack, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try ignoring the field: `file_to_attack: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `charset` [INFO] [stderr] --> src/bin/main.rs:529:30 [INFO] [stderr] | [INFO] [stderr] 529 | deciphered_file, charset, output_recovered_key [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `charset: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `output_recovered_key` [INFO] [stderr] --> src/bin/main.rs:562:26 [INFO] [stderr] | [INFO] [stderr] 562 | deciphered_file, output_recovered_key, charset [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `output_recovered_key: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stderr] --> src/bin/main.rs:1099:54 [INFO] [stderr] | [INFO] [stderr] 1099 | fn test_cipher_caesar(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stderr] --> src/bin/main.rs:1117:56 [INFO] [stderr] | [INFO] [stderr] 1117 | fn test_decipher_caesar(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stderr] --> src/bin/main.rs:1135:60 [INFO] [stderr] | [INFO] [stderr] 1135 | fn test_cipher_substitution(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stderr] --> src/bin/main.rs:1154:62 [INFO] [stderr] | [INFO] [stderr] 1154 | fn test_decipher_substitution(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stderr] --> src/bin/main.rs:1173:54 [INFO] [stderr] | [INFO] [stderr] 1173 | fn test_attack_caesar(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stderr] --> src/bin/main.rs:1190:73 [INFO] [stderr] | [INFO] [stderr] 1190 | fn test_attack_caesar_with_recovered_key(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `full_loaded_temp_dictionaries` [INFO] [stderr] --> src/bin/main.rs:1209:60 [INFO] [stderr] | [INFO] [stderr] 1209 | fn test_attack_substitution(temp_dir: TestEnvironment, full_loaded_temp_dictionaries: LoadedDictionaries){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_full_loaded_temp_dictionaries` [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `get_string_key_algorithms` [INFO] [stderr] --> src/bin/main.rs:56:12 [INFO] [stderr] | [INFO] [stderr] 56 | pub fn get_string_key_algorithms()-> HashSet { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `get_integer_key_algorithms` [INFO] [stderr] --> src/bin/main.rs:64:12 [INFO] [stderr] | [INFO] [stderr] 64 | pub fn get_integer_key_algorithms()-> HashSet { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `get_string_value` [INFO] [stderr] --> src/bin/main.rs:75:12 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn get_string_value(&self)-> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `temp_env` [INFO] [stderr] --> src/bin/main.rs:860:9 [INFO] [stderr] | [INFO] [stderr] 860 | temp_env: TestEnvironment, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `temp_env_var` [INFO] [stderr] --> src/bin/main.rs:861:9 [INFO] [stderr] | [INFO] [stderr] 861 | temp_env_var: TemporalEnvironmentVariable [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `Str` should have a snake case name [INFO] [stderr] --> src/bin/main.rs:69:19 [INFO] [stderr] | [INFO] [stderr] 69 | .map(|Str| Str.clone()) [INFO] [stderr] | ^^^ help: convert the identifier to snake case (notice the capitalization): `str` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:545:9 [INFO] [stderr] | [INFO] [stderr] 545 | write(output_file_path, output_string.as_str()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:766:17 [INFO] [stderr] | [INFO] [stderr] 766 | new_dictionary.populate(pathname); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:780:13 [INFO] [stderr] | [INFO] [stderr] 780 | dictionary.populate(pathname); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: variable `Str` should have a snake case name [INFO] [stderr] --> src/bin/main.rs:812:48 [INFO] [stderr] | [INFO] [stderr] 812 | let args_str: Vec<&str> = args.iter().map(|Str| Str.as_str()).collect(); [INFO] [stderr] | ^^^ help: convert the identifier to snake case (notice the capitalization): `str` [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:867:13 [INFO] [stderr] | [INFO] [stderr] 867 | database::create_database(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:871:13 [INFO] [stderr] | [INFO] [stderr] 871 | create_dir(&resources_path); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:886:17 [INFO] [stderr] | [INFO] [stderr] 886 | dictionary.populate(language_book); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused return value of `collect` that must be used [INFO] [stderr] --> src/bin/main.rs:889:13 [INFO] [stderr] | [INFO] [stderr] 889 | LANGUAGES.iter().map(|x| _languages.push(x.to_string())).collect::>(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:1101:9 [INFO] [stderr] | [INFO] [stderr] 1101 | write(message_file.path(), CAESAR_ORIGINAL_MESSAGE); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:1119:9 [INFO] [stderr] | [INFO] [stderr] 1119 | write(message_file.path(), CAESAR_CIPHERED_MESSAGE_KEY_13); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:1137:9 [INFO] [stderr] | [INFO] [stderr] 1137 | write(message_file.path(), SUBSTITUTION_ORIGINAL_MESSAGE); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:1156:9 [INFO] [stderr] | [INFO] [stderr] 1156 | write(message_file.path(), SUBSTITUTION_CIPHERED_MESSAGE); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:1175:9 [INFO] [stderr] | [INFO] [stderr] 1175 | write(message_file.path(), CAESAR_CIPHERED_MESSAGE_KEY_13); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:1192:9 [INFO] [stderr] | [INFO] [stderr] 1192 | write(message_file.path(), CAESAR_CIPHERED_MESSAGE_KEY_13); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/bin/main.rs:1219:9 [INFO] [stderr] | [INFO] [stderr] 1219 | write(message_file.path(), ciphered_text); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: `cifra` (bin "cifra" test) generated 53 warnings [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.22s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/cifra-b18cad93060997e6) [INFO] [stdout] test attack::database::tests::test_create_database_path ... ok [INFO] [stdout] test attack::dictionaries::tests::test_get_word_pattern ... ok [INFO] [stdout] test attack::dictionaries::tests::test_insertion_ordered_set ... ok [INFO] [stdout] test attack::dictionaries::tests::test_open_not_existing_dictionary ... ok [INFO] [stdout] test attack::database::tests::test_create_database ... ok [INFO] [stdout] test attack::dictionaries::tests::test_create_language ... ok [INFO] [stdout] test attack::frequency::tests::test_find_repeated_sequences ... ok [INFO] [stdout] test attack::caesar::tests::test_brute_force_caesar ... FAILED [INFO] [stdout] test attack::dictionaries::tests::test_get_all_words ... FAILED [INFO] [stdout] test attack::dictionaries::tests::test_identify_language ... FAILED [INFO] [stdout] test attack::dictionaries::tests::test_delete_language ... FAILED [INFO] [stdout] test attack::dictionaries::tests::test_cwd_word ... FAILED [INFO] [stdout] test attack::dictionaries::tests::test_add_multiple_words ... FAILED [INFO] [stdout] test attack::caesar::tests::test_brute_force_caesar_mp ... FAILED [INFO] [stdout] test attack::dictionaries::tests::test_get_dictionaries_names ... FAILED [INFO] [stdout] test attack::affine::tests::test_brute_force_affine ... FAILED [INFO] [stdout] test attack::simple_attacks::tests::test_integer_key_generator ... ok [INFO] [stdout] test attack::substitution::tests::test_clean_redundancies ... ok [INFO] [stdout] test attack::substitution::tests::test_generate_key_string ... ok [INFO] [stdout] test attack::dictionaries::tests::test_populate_words_from_text_files ... FAILED [INFO] [stdout] test attack::frequency::tests::test_find_repeated_sequences_many_repetitions ... ok [INFO] [stdout] test attack::dictionaries::tests::test_store_word_pattern ... FAILED [INFO] [stdout] test attack::substitution::tests::test_get_n_elements ... ok [INFO] [stdout] test attack::substitution::tests::test_get_first_element ... ok [INFO] [stdout] test attack::frequency::tests::test_get_substrings ... ok [INFO] [stdout] test attack::substitution::tests::test_mapping_add ... ok [INFO] [stdout] test attack::substitution::tests::test_mapping_get ... ok [INFO] [stdout] test attack::substitution::tests::test_mapping_set ... ok [INFO] [stdout] test attack::substitution::tests::test_hack_substitution_mp ... FAILED [INFO] [stdout] test attack::frequency::tests::test_get_letter_ocurrences ... ok [INFO] [stdout] test attack::substitution::tests::test_reduce_mapping ... ok [INFO] [stdout] test attack::frequency::tests::test_set_matching_width ... ok [INFO] [stdout] test cipher::affine::tests::test_cipher ... ok [INFO] [stdout] test cipher::affine::tests::test_decipher ... ok [INFO] [stdout] test cipher::affine::tests::test_get_random_key ... ok [INFO] [stdout] test attack::frequency::tests::test_get_letter_frequencies ... ok [INFO] [stdout] test cipher::caesar::tests::test_decipher ... ok [INFO] [stdout] test cipher::common::tests::test_counter_char ... ok [INFO] [stdout] test cipher::caesar::tests::test_cipher ... ok [INFO] [stdout] test cipher::common::tests::test_counter_char_from_hashmap ... ok [INFO] [stdout] test cipher::common::tests::test_counter_most_common ... ok [INFO] [stdout] test attack::transposition::tests::test_brute_force_transposition ... FAILED [INFO] [stdout] test cipher::cryptomath::tests::test_find_mod_inverse ... ok [INFO] [stdout] test cipher::cryptomath::tests::test_gcd ... ok [INFO] [stdout] test cipher::substitution::tests::test_decipher ... ok [INFO] [stdout] test cipher::substitution::tests::test_cipher ... ok [INFO] [stdout] test cipher::common::tests::test_normalize_text ... ok [INFO] [stdout] test cipher::transposition::tests::test_calculated_position ... ok [INFO] [stdout] test cipher::transposition::tests::test_cipher ... ok [INFO] [stdout] test cipher::transposition::tests::test_create_matrix ... ok [INFO] [stdout] test cipher::transposition::tests::test_create_transposition_matrix_ciphering ... ok [INFO] [stdout] test cipher::transposition::tests::test_create_transposition_matrix_deciphering ... ok [INFO] [stdout] test cipher::transposition::tests::test_decipher ... ok [INFO] [stdout] test cipher::transposition::tests::test_get_matrix_dimensions ... ok [INFO] [stdout] test cipher::transposition::tests::test_get_transposed_text ... ok [INFO] [stdout] test cipher::transposition::tests::test_populate_transposition_matrix ... ok [INFO] [stdout] test cipher::transposition::tests::test_set_remainder_cells ... ok [INFO] [stdout] test cipher::vigenere::tests::test_cipher ... ok [INFO] [stdout] test cipher::vigenere::tests::test_decipher ... ok [INFO] [stdout] test encoding::reverse::tests::test_reverse_decode ... ok [INFO] [stdout] test attack::dictionaries::tests::test_get_words_from_text ... ok [INFO] [stdout] test encoding::reverse::tests::test_reverse_encode ... ok [INFO] [stdout] test tests::test_find_from_index ... ok [INFO] [stdout] test attack::dictionaries::tests::test_get_words_from_text_file ... ok [INFO] [stdout] test cipher::substitution::tests::test_repeated_character_keys_are_detected ... ok [INFO] [stdout] test attack::substitution::tests::test_get_possible_mappings ... ok [INFO] [stdout] test attack::dictionaries::tests::test_open_existing_dictionary ... FAILED [INFO] [stdout] test attack::frequency::tests::test_match_substring ... ok [INFO] [stdout] test cipher::substitution::tests::test_wrong_length_key_are_detected ... ok [INFO] [stdout] test attack::substitution::tests::test_get_possible_mappings_with_empties ... ok [INFO] [stdout] test attack::substitution::tests::test_hack_substitution ... FAILED [INFO] [stdout] test attack::substitution::tests::test_popitem ... ok [INFO] [stdout] test attack::transposition::tests::test_brute_force_transposition_mp ... FAILED [INFO] [stdout] test attack::simple_attacks::tests::test_dictionary_word_key_generator ... FAILED [INFO] [stdout] test attack::frequency::tests::test_match_score ... ok [INFO] [stdout] test attack::affine::tests::test_brute_force_affine_mp ... FAILED [INFO] [stdout] test attack::frequency::tests::test_most_likely_subkey ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- attack::caesar::tests::test_brute_force_caesar stdout ---- [INFO] [stdout] thread 'attack::caesar::tests::test_brute_force_caesar' panicked at 'Error saving new language.: DatabaseError(__Unknown, "database is locked")', src/attack/dictionaries.rs:205:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86e98b - cifra::attack::dictionaries::Dictionary::create_dictionary::he2f628bb54aa11b8 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:202:9 [INFO] [stdout] 18: 0x5613ef86d6e2 - cifra::attack::dictionaries::Dictionary::new::hb51e440d574f4bdc [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:90:17 [INFO] [stdout] 19: 0x5613ef853eee - cifra::attack::dictionaries::tests::LoadedDictionaries::new::hae9d6bc8d8be72ed [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:681:38 [INFO] [stdout] 20: 0x5613ef8b1891 - cifra::attack::caesar::tests::test_brute_force_caesar::h8373fd05b42f409e [INFO] [stdout] at /opt/rustwide/workdir/src/attack/caesar.rs:148:35 [INFO] [stdout] 21: 0x5613ef8b186a - cifra::attack::caesar::tests::test_brute_force_caesar::{{closure}}::h389b17ada2c868e1 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/caesar.rs:147:5 [INFO] [stdout] 22: 0x5613ef8a22ce - core::ops::function::FnOnce::call_once::hdd2dd9789b003e57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 24: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 26: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 29: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 31: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 32: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 33: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 34: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 35: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 37: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 38: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 39: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 40: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 43: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 44: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 45: 0x7f11ade9c293 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::dictionaries::tests::test_get_all_words stdout ---- [INFO] [stdout] thread 'attack::dictionaries::tests::test_get_all_words' panicked at 'Error saving new language.: DatabaseError(__Unknown, "database is locked")', src/attack/dictionaries.rs:205:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86e98b - cifra::attack::dictionaries::Dictionary::create_dictionary::he2f628bb54aa11b8 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:202:9 [INFO] [stdout] 18: 0x5613ef86d6e2 - cifra::attack::dictionaries::Dictionary::new::hb51e440d574f4bdc [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:90:17 [INFO] [stdout] 19: 0x5613ef855b3d - cifra::attack::dictionaries::tests::loaded_micro_dictionary_temp_dir::ha8cf17ee35025c73 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:735:43 [INFO] [stdout] 20: 0x5613ef85587d - cifra::attack::dictionaries::tests::loaded_micro_dictionary_temp_dir::get::hf52960b4d40cfb7e [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:728:5 [INFO] [stdout] 21: 0x5613ef85589d - cifra::attack::dictionaries::tests::loaded_micro_dictionary_temp_dir::default::h90f7bb07b628993e [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:728:5 [INFO] [stdout] 22: 0x5613ef859ea1 - cifra::attack::dictionaries::tests::test_get_all_words::h01ea742eba79ad22 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:1019:5 [INFO] [stdout] 23: 0x5613ef859e6a - cifra::attack::dictionaries::tests::test_get_all_words::{{closure}}::h49def16cba6b666b [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:1019:5 [INFO] [stdout] 24: 0x5613ef8a188e - core::ops::function::FnOnce::call_once::h5f960aa3c1b79688 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 25: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 26: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 27: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 28: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 29: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 30: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 31: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 32: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 33: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 34: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 35: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 36: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 37: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 38: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 39: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 40: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 41: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 42: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 43: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 44: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 45: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 46: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 47: 0x7f11ade9c293 - clone [INFO] [stdout] 48: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::dictionaries::tests::test_identify_language stdout ---- [INFO] [stdout] thread 'attack::dictionaries::tests::test_identify_language' panicked at 'Error saving new language.: DatabaseError(__Unknown, "no such table: languages")', src/attack/dictionaries.rs:205:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86e98b - cifra::attack::dictionaries::Dictionary::create_dictionary::he2f628bb54aa11b8 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:202:9 [INFO] [stdout] 18: 0x5613ef86d6e2 - cifra::attack::dictionaries::Dictionary::new::hb51e440d574f4bdc [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:90:17 [INFO] [stdout] 19: 0x5613ef853eee - cifra::attack::dictionaries::tests::LoadedDictionaries::new::hae9d6bc8d8be72ed [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:681:38 [INFO] [stdout] 20: 0x5613ef858a89 - cifra::attack::dictionaries::tests::test_identify_language::he02bd3079b41f409 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:959:35 [INFO] [stdout] 21: 0x5613ef858a5a - cifra::attack::dictionaries::tests::test_identify_language::{{closure}}::hbc724e47c045fc4c [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:958:5 [INFO] [stdout] 22: 0x5613ef8a0fce - core::ops::function::FnOnce::call_once::h0ff54712f64b1cd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 24: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 26: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 29: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 31: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 32: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 33: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 34: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 35: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 37: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 38: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 39: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 40: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 43: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 44: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 45: 0x7f11ade9c293 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::dictionaries::tests::test_delete_language stdout ---- [INFO] [stdout] thread 'attack::dictionaries::tests::test_delete_language' panicked at 'Error saving new language.: DatabaseError(__Unknown, "no such table: languages")', src/attack/dictionaries.rs:205:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86e98b - cifra::attack::dictionaries::Dictionary::create_dictionary::he2f628bb54aa11b8 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:202:9 [INFO] [stdout] 18: 0x5613ef86d6e2 - cifra::attack::dictionaries::Dictionary::new::hb51e440d574f4bdc [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:90:17 [INFO] [stdout] 19: 0x5613ef855b3d - cifra::attack::dictionaries::tests::loaded_micro_dictionary_temp_dir::ha8cf17ee35025c73 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:735:43 [INFO] [stdout] 20: 0x5613ef856d2e - cifra::attack::dictionaries::tests::test_delete_language::h405c747004974d83 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:865:50 [INFO] [stdout] 21: 0x5613ef856cfa - cifra::attack::dictionaries::tests::test_delete_language::{{closure}}::he7aff4982a0edba9 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:863:5 [INFO] [stdout] 22: 0x5613ef8a0e6e - core::ops::function::FnOnce::call_once::h0899770ef27f4096 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 24: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 26: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 29: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 31: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 32: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 33: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 34: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 35: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 37: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 38: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 39: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 40: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 43: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 44: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 45: 0x7f11ade9c293 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::dictionaries::tests::test_cwd_word stdout ---- [INFO] [stdout] thread 'attack::dictionaries::tests::test_cwd_word' panicked at 'Error saving new language.: DatabaseError(__Unknown, "no such table: languages")', src/attack/dictionaries.rs:205:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86e98b - cifra::attack::dictionaries::Dictionary::create_dictionary::he2f628bb54aa11b8 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:202:9 [INFO] [stdout] 18: 0x5613ef86c2d7 - cifra::attack::dictionaries::Dictionary::new::h145d93c284a27b3a [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:90:17 [INFO] [stdout] 19: 0x5613ef856839 - cifra::attack::dictionaries::tests::test_cwd_word::h2b804ebd43dde3dd [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:838:38 [INFO] [stdout] 20: 0x5613ef85672a - cifra::attack::dictionaries::tests::test_cwd_word::{{closure}}::h6ea865df7ee12c8b [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:834:5 [INFO] [stdout] 21: 0x5613ef8a1ade - core::ops::function::FnOnce::call_once::h72bc08cf5932808a [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 22: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 24: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 26: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 29: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 31: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 32: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 33: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 34: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 35: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 37: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 38: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 39: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 40: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 43: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 44: 0x7f11ade9c293 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::dictionaries::tests::test_add_multiple_words stdout ---- [INFO] [stdout] thread 'attack::dictionaries::tests::test_add_multiple_words' panicked at 'Error saving new language.: DatabaseError(__Unknown, "database is locked")', src/attack/dictionaries.rs:205:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86e98b - cifra::attack::dictionaries::Dictionary::create_dictionary::he2f628bb54aa11b8 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:202:9 [INFO] [stdout] 18: 0x5613ef86c2d7 - cifra::attack::dictionaries::Dictionary::new::h145d93c284a27b3a [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:90:17 [INFO] [stdout] 19: 0x5613ef858709 - cifra::attack::dictionaries::tests::test_add_multiple_words::h642898f8a57fde89 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:950:30 [INFO] [stdout] 20: 0x5613ef8584aa - cifra::attack::dictionaries::tests::test_add_multiple_words::{{closure}}::h3bed244621cd74d0 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:943:5 [INFO] [stdout] 21: 0x5613ef8a207e - core::ops::function::FnOnce::call_once::hafe19cf6d9299920 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 22: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 24: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 26: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 29: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 31: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 32: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 33: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 34: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 35: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 37: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 38: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 39: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 40: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 43: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 44: 0x7f11ade9c293 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::caesar::tests::test_brute_force_caesar_mp stdout ---- [INFO] [stdout] thread 'attack::caesar::tests::test_brute_force_caesar_mp' panicked at 'Error saving new language.: DatabaseError(__Unknown, "database is locked")', src/attack/dictionaries.rs:205:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86e98b - cifra::attack::dictionaries::Dictionary::create_dictionary::he2f628bb54aa11b8 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:202:9 [INFO] [stdout] 18: 0x5613ef86d6e2 - cifra::attack::dictionaries::Dictionary::new::hb51e440d574f4bdc [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:90:17 [INFO] [stdout] 19: 0x5613ef853eee - cifra::attack::dictionaries::tests::LoadedDictionaries::new::hae9d6bc8d8be72ed [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:681:38 [INFO] [stdout] 20: 0x5613ef8b1bd1 - cifra::attack::caesar::tests::test_brute_force_caesar_mp::h01219f2e1c50bebe [INFO] [stdout] at /opt/rustwide/workdir/src/attack/caesar.rs:157:35 [INFO] [stdout] 21: 0x5613ef8b1baa - cifra::attack::caesar::tests::test_brute_force_caesar_mp::{{closure}}::h6c3a37e8380ff604 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/caesar.rs:156:5 [INFO] [stdout] 22: 0x5613ef8a23ce - core::ops::function::FnOnce::call_once::he92519fffe2b1c06 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 24: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 26: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 29: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 31: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 32: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 33: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 34: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 35: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 37: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 38: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 39: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 40: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 43: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 44: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 45: 0x7f11ade9c293 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::dictionaries::tests::test_get_dictionaries_names stdout ---- [INFO] [stdout] thread 'attack::dictionaries::tests::test_get_dictionaries_names' panicked at 'Error saving new language.: DatabaseError(__Unknown, "database is locked")', src/attack/dictionaries.rs:205:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86e98b - cifra::attack::dictionaries::Dictionary::create_dictionary::he2f628bb54aa11b8 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:202:9 [INFO] [stdout] 18: 0x5613ef86d6e2 - cifra::attack::dictionaries::Dictionary::new::hb51e440d574f4bdc [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:90:17 [INFO] [stdout] 19: 0x5613ef853eee - cifra::attack::dictionaries::tests::LoadedDictionaries::new::hae9d6bc8d8be72ed [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:681:38 [INFO] [stdout] 20: 0x5613ef858341 - cifra::attack::dictionaries::tests::test_get_dictionaries_names::h0a536216aafe0d2b [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:937:35 [INFO] [stdout] 21: 0x5613ef85831a - cifra::attack::dictionaries::tests::test_get_dictionaries_names::{{closure}}::he85ecbcaa9fcd440 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:936:5 [INFO] [stdout] 22: 0x5613ef8a194e - core::ops::function::FnOnce::call_once::h63271fd0edde86ec [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 24: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 26: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 29: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 31: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 32: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 33: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 34: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 35: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 37: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 38: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 39: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 40: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 43: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 44: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 45: 0x7f11ade9c293 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::affine::tests::test_brute_force_affine stdout ---- [INFO] [stdout] thread 'attack::affine::tests::test_brute_force_affine' panicked at 'Error saving new language.: DatabaseError(__Unknown, "database is locked")', src/attack/dictionaries.rs:205:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86e98b - cifra::attack::dictionaries::Dictionary::create_dictionary::he2f628bb54aa11b8 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:202:9 [INFO] [stdout] 18: 0x5613ef86d6e2 - cifra::attack::dictionaries::Dictionary::new::hb51e440d574f4bdc [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:90:17 [INFO] [stdout] 19: 0x5613ef853eee - cifra::attack::dictionaries::tests::LoadedDictionaries::new::hae9d6bc8d8be72ed [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:681:38 [INFO] [stdout] 20: 0x5613ef872fb1 - cifra::attack::affine::tests::test_brute_force_affine::h97713a631ea42d86 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/affine.rs:144:35 [INFO] [stdout] 21: 0x5613ef872f8a - cifra::attack::affine::tests::test_brute_force_affine::{{closure}}::h07920faacaf63cb6 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/affine.rs:143:5 [INFO] [stdout] 22: 0x5613ef8a240e - core::ops::function::FnOnce::call_once::hed3e9222a77f13c3 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 24: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 26: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 29: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 31: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 32: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 33: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 34: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 35: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 37: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 38: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 39: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 40: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 43: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 44: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 45: 0x7f11ade9c293 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::dictionaries::tests::test_populate_words_from_text_files stdout ---- [INFO] [stdout] thread 'attack::dictionaries::tests::test_populate_words_from_text_files' panicked at 'Error saving new word.: DatabaseError(__Unknown, "attempt to write a readonly database")', src/attack/dictionaries.rs:139:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86dc14 - cifra::attack::dictionaries::Dictionary::add_multiple_words::h8db2313c114944e9 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:136:9 [INFO] [stdout] 18: 0x5613ef86e4fd - cifra::attack::dictionaries::Dictionary::populate::h5296119b896118f0 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:181:9 [INFO] [stdout] 19: 0x5613ef857ba6 - cifra::attack::dictionaries::tests::test_populate_words_from_text_files::he8c7ffe3b85c9d7a [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:915:13 [INFO] [stdout] 20: 0x5613ef85787a - cifra::attack::dictionaries::tests::test_populate_words_from_text_files::{{closure}}::h3a409bcfabd6a8ca [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:901:5 [INFO] [stdout] 21: 0x5613ef8a1fbe - core::ops::function::FnOnce::call_once::habbfcbd05e9e8b5c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 22: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 24: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 26: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 29: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 31: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 32: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 33: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 34: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 35: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 37: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 38: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 39: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 40: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 43: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 44: 0x7f11ade9c293 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::dictionaries::tests::test_store_word_pattern stdout ---- [INFO] [stdout] thread 'attack::dictionaries::tests::test_store_word_pattern' panicked at 'Error saving new word.: DatabaseError(__Unknown, "disk I/O error")', src/attack/dictionaries.rs:119:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86d92f - cifra::attack::dictionaries::Dictionary::add_word::h30b06a1c75e893a6 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:116:9 [INFO] [stdout] 18: 0x5613ef859675 - cifra::attack::dictionaries::tests::test_store_word_pattern::h27d0f0f0069c7b7f [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:994:13 [INFO] [stdout] 19: 0x5613ef8593ea - cifra::attack::dictionaries::tests::test_store_word_pattern::{{closure}}::hb4500c4dbba8511a [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:988:5 [INFO] [stdout] 20: 0x5613ef8a0e2e - core::ops::function::FnOnce::call_once::h06ab56c3b94f1bc4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 21: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 22: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 23: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 24: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 25: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 26: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 28: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 29: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 30: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 31: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 32: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 33: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 34: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 35: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 36: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 37: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 38: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 39: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 40: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 41: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 42: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 43: 0x7f11ade9c293 - clone [INFO] [stdout] 44: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::substitution::tests::test_hack_substitution_mp stdout ---- [INFO] [stdout] thread 'attack::substitution::tests::test_hack_substitution_mp' panicked at 'Error saving new language.: DatabaseError(__Unknown, "database is locked")', src/attack/dictionaries.rs:205:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86e98b - cifra::attack::dictionaries::Dictionary::create_dictionary::he2f628bb54aa11b8 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:202:9 [INFO] [stdout] 18: 0x5613ef86d6e2 - cifra::attack::dictionaries::Dictionary::new::hb51e440d574f4bdc [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:90:17 [INFO] [stdout] 19: 0x5613ef853eee - cifra::attack::dictionaries::tests::LoadedDictionaries::new::hae9d6bc8d8be72ed [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:681:38 [INFO] [stdout] 20: 0x5613ef8bcc63 - cifra::attack::substitution::tests::test_hack_substitution_mp::hf236d10e871eb6e6 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/substitution.rs:894:35 [INFO] [stdout] 21: 0x5613ef8bcada - cifra::attack::substitution::tests::test_hack_substitution_mp::{{closure}}::h3589c19bb0f462b3 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/substitution.rs:889:5 [INFO] [stdout] 22: 0x5613ef8a14ae - core::ops::function::FnOnce::call_once::h3ca3e037b7140e1d [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 24: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 26: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 29: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 31: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 32: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 33: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 34: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 35: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 37: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 38: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 39: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 40: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 43: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 44: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 45: 0x7f11ade9c293 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::transposition::tests::test_brute_force_transposition stdout ---- [INFO] [stdout] thread 'attack::transposition::tests::test_brute_force_transposition' panicked at 'Error saving new language.: DatabaseError(__Unknown, "database is locked")', src/attack/dictionaries.rs:205:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86e98b - cifra::attack::dictionaries::Dictionary::create_dictionary::he2f628bb54aa11b8 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:202:9 [INFO] [stdout] 18: 0x5613ef86d6e2 - cifra::attack::dictionaries::Dictionary::new::hb51e440d574f4bdc [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:90:17 [INFO] [stdout] 19: 0x5613ef853eee - cifra::attack::dictionaries::tests::LoadedDictionaries::new::hae9d6bc8d8be72ed [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:681:38 [INFO] [stdout] 20: 0x5613ef8d1cf1 - cifra::attack::transposition::tests::test_brute_force_transposition::ha1c83bc0e3ac3468 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/transposition.rs:100:35 [INFO] [stdout] 21: 0x5613ef8d1cca - cifra::attack::transposition::tests::test_brute_force_transposition::{{closure}}::h47d59332db415c01 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/transposition.rs:99:5 [INFO] [stdout] 22: 0x5613ef8a190e - core::ops::function::FnOnce::call_once::h62b1832284e4a45f [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 24: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 26: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 29: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 31: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 32: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 33: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 34: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 35: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 37: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 38: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 39: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 40: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 43: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 44: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 45: 0x7f11ade9c293 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::dictionaries::tests::test_open_existing_dictionary stdout ---- [INFO] [stdout] thread 'attack::dictionaries::tests::test_open_existing_dictionary' panicked at 'Error opening dictionary.: Error(NotExistingLanguage("english"), State { next_error: None, backtrace: InternalBacktrace { backtrace: Some( 0: error_chain::backtrace::imp::InternalBacktrace::new [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/backtrace.rs:56:48 [INFO] [stdout] 1: ::default [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/lib.rs:687:24 [INFO] [stdout] 2: cifra::Error::from_kind [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/error_chain.rs:269:21 [INFO] [stdout] 3: >::from [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/error_chain.rs:370:17 [INFO] [stdout] 4: >::into [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/convert/mod.rs:542:9 [INFO] [stdout] 5: cifra::attack::dictionaries::Dictionary::new [INFO] [stdout] at src/attack/dictionaries.rs:92:18 [INFO] [stdout] 6: cifra::attack::dictionaries::tests::test_open_existing_dictionary [INFO] [stdout] at src/attack/dictionaries.rs:826:38 [INFO] [stdout] 7: cifra::attack::dictionaries::tests::test_open_existing_dictionary::{{closure}} [INFO] [stdout] at src/attack/dictionaries.rs:817:5 [INFO] [stdout] 8: core::ops::function::FnOnce::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 9: core::ops::function::FnOnce::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] test::__rust_begin_short_backtrace [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 10: as core::ops::function::FnOnce>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] as core::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] std::panicking::try::do_call [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] std::panicking::try [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] std::panic::catch_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] test::run_test_in_process [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] test::run_test::run_test_inner::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 11: test::run_test::run_test_inner::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] std::sys_common::backtrace::__rust_begin_short_backtrace [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 12: std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] as core::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] std::panicking::try::do_call [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] std::panicking::try [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] std::panic::catch_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] std::thread::Builder::spawn_unchecked::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] core::ops::function::FnOnce::call_once{{vtable.shim}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 13: as core::ops::function::FnOnce>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] as core::ops::function::FnOnce>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] std::sys::unix::thread::Thread::new::thread_start [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 14: start_thread [INFO] [stdout] 15: clone [INFO] [stdout] ) } })', src/attack/dictionaries.rs:827:18 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92bd9c - core::result::Result::expect::hdda0edcd9f59a9ff [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef85664a - cifra::attack::dictionaries::tests::test_open_existing_dictionary::h3618e18e80209e95 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:826:38 [INFO] [stdout] 18: 0x5613ef8564fa - cifra::attack::dictionaries::tests::test_open_existing_dictionary::{{closure}}::h4ec9ba64bd855209 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:817:5 [INFO] [stdout] 19: 0x5613ef8a180e - core::ops::function::FnOnce::call_once::h5e140e7499575f0c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 20: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 21: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 22: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 23: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 24: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 25: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 26: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 27: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 28: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 29: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 30: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 31: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 32: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 33: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 34: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 35: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 36: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 37: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 38: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 39: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 40: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 41: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 42: 0x7f11ade9c293 - clone [INFO] [stdout] 43: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::substitution::tests::test_hack_substitution stdout ---- [INFO] [stdout] thread 'attack::substitution::tests::test_hack_substitution' panicked at 'No dictionary found for english language.: Error(DatabaseError("Error connecting to DATABASE_URL: /tmp/.tmpKm1OzR/cifra_database.sqlite"), State { next_error: Some(BadConnection("Unable to open the database file")), backtrace: InternalBacktrace { backtrace: Some( 0: error_chain::backtrace::imp::InternalBacktrace::new [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/backtrace.rs:56:48 [INFO] [stdout] 1: core::ops::function::FnOnce::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 2: core::option::Option::unwrap_or_else [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/option.rs:787:21 [INFO] [stdout] 3: error_chain::State::new [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/lib.rs:696:25 [INFO] [stdout] 4: as cifra::ResultExt>::chain_err::{{closure}} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/error_chain.rs:434:33 [INFO] [stdout] 5: core::result::Result::map_err [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:853:27 [INFO] [stdout] 6: as cifra::ResultExt>::chain_err [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/error_chain.rs:433:17 [INFO] [stdout] 7: cifra::attack::database::Database::open_session [INFO] [stdout] at src/attack/database.rs:142:9 [INFO] [stdout] 8: cifra::attack::database::Database::new [INFO] [stdout] at src/attack/database.rs:119:26 [INFO] [stdout] 9: cifra::attack::dictionaries::Dictionary::new [INFO] [stdout] at src/attack/dictionaries.rs:77:32 [INFO] [stdout] 10: cifra::attack::dictionaries::tests::LoadedDictionaries::new [INFO] [stdout] at src/attack/dictionaries.rs:681:38 [INFO] [stdout] 11: cifra::attack::substitution::tests::test_hack_substitution [INFO] [stdout] at src/attack/substitution.rs:872:35 [INFO] [stdout] 12: cifra::attack::substitution::tests::test_hack_substitution::{{closure}} [INFO] [stdout] at src/attack/substitution.rs:867:5 [INFO] [stdout] 13: core::ops::function::FnOnce::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 14: core::ops::function::FnOnce::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] test::__rust_begin_short_backtrace [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 15: as core::ops::function::FnOnce>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] as core::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] std::panicking::try::do_call [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] std::panicking::try [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] std::panic::catch_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] test::run_test_in_process [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] test::run_test::run_test_inner::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 16: test::run_test::run_test_inner::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] std::sys_common::backtrace::__rust_begin_short_backtrace [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 17: std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] as core::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] std::panicking::try::do_call [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] std::panicking::try [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] std::panic::catch_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] std::thread::Builder::spawn_unchecked::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] core::ops::function::FnOnce::call_once{{vtable.shim}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 18: as core::ops::function::FnOnce>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] as core::ops::function::FnOnce>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] std::sys::unix::thread::Thread::new::thread_start [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 19: start_thread [INFO] [stdout] 20: clone [INFO] [stdout] ) } })', src/attack/dictionaries.rs:682:22 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92bd9c - core::result::Result::expect::hdda0edcd9f59a9ff [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef85401d - cifra::attack::dictionaries::tests::LoadedDictionaries::new::hae9d6bc8d8be72ed [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:681:38 [INFO] [stdout] 18: 0x5613ef8bc354 - cifra::attack::substitution::tests::test_hack_substitution::h8c10b7aad6a431ba [INFO] [stdout] at /opt/rustwide/workdir/src/attack/substitution.rs:872:35 [INFO] [stdout] 19: 0x5613ef8bc1da - cifra::attack::substitution::tests::test_hack_substitution::{{closure}}::hce86f7a24408bc46 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/substitution.rs:867:5 [INFO] [stdout] 20: 0x5613ef8a203e - core::ops::function::FnOnce::call_once::haea5b937548ce645 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 21: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 22: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 23: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 24: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 25: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 26: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 28: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 29: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 30: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 31: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 32: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 33: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 34: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 35: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 36: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 37: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 38: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 39: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 40: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 41: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 42: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 43: 0x7f11ade9c293 - clone [INFO] [stdout] 44: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::transposition::tests::test_brute_force_transposition_mp stdout ---- [INFO] [stdout] thread 'attack::transposition::tests::test_brute_force_transposition_mp' panicked at 'No dictionary found for english language.: Error(DatabaseError("Error connecting to DATABASE_URL: /tmp/.tmpKm1OzR/cifra_database.sqlite"), State { next_error: Some(BadConnection("Unable to open the database file")), backtrace: InternalBacktrace { backtrace: Some( 0: error_chain::backtrace::imp::InternalBacktrace::new [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/backtrace.rs:56:48 [INFO] [stdout] 1: core::ops::function::FnOnce::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 2: core::option::Option::unwrap_or_else [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/option.rs:787:21 [INFO] [stdout] 3: error_chain::State::new [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/lib.rs:696:25 [INFO] [stdout] 4: as cifra::ResultExt>::chain_err::{{closure}} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/error_chain.rs:434:33 [INFO] [stdout] 5: core::result::Result::map_err [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:853:27 [INFO] [stdout] 6: as cifra::ResultExt>::chain_err [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/error_chain.rs:433:17 [INFO] [stdout] 7: cifra::attack::database::Database::open_session [INFO] [stdout] at src/attack/database.rs:142:9 [INFO] [stdout] 8: cifra::attack::database::Database::new [INFO] [stdout] at src/attack/database.rs:119:26 [INFO] [stdout] 9: cifra::attack::dictionaries::Dictionary::new [INFO] [stdout] at src/attack/dictionaries.rs:77:32 [INFO] [stdout] 10: cifra::attack::dictionaries::tests::LoadedDictionaries::new [INFO] [stdout] at src/attack/dictionaries.rs:681:38 [INFO] [stdout] 11: cifra::attack::transposition::tests::test_brute_force_transposition_mp [INFO] [stdout] at src/attack/transposition.rs:109:35 [INFO] [stdout] 12: cifra::attack::transposition::tests::test_brute_force_transposition_mp::{{closure}} [INFO] [stdout] at src/attack/transposition.rs:108:5 [INFO] [stdout] 13: core::ops::function::FnOnce::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 14: core::ops::function::FnOnce::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] test::__rust_begin_short_backtrace [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 15: as core::ops::function::FnOnce>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] as core::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] std::panicking::try::do_call [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] std::panicking::try [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] std::panic::catch_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] test::run_test_in_process [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] test::run_test::run_test_inner::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 16: test::run_test::run_test_inner::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] std::sys_common::backtrace::__rust_begin_short_backtrace [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 17: std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] as core::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] std::panicking::try::do_call [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] std::panicking::try [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] std::panic::catch_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] std::thread::Builder::spawn_unchecked::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] core::ops::function::FnOnce::call_once{{vtable.shim}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 18: as core::ops::function::FnOnce>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] as core::ops::function::FnOnce>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] std::sys::unix::thread::Thread::new::thread_start [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 19: start_thread [INFO] [stdout] 20: clone [INFO] [stdout] ) } })', src/attack/dictionaries.rs:682:22 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92bd9c - core::result::Result::expect::hdda0edcd9f59a9ff [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef85401d - cifra::attack::dictionaries::tests::LoadedDictionaries::new::hae9d6bc8d8be72ed [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:681:38 [INFO] [stdout] 18: 0x5613ef8d2021 - cifra::attack::transposition::tests::test_brute_force_transposition_mp::ha8e5d6210e59dbf8 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/transposition.rs:109:35 [INFO] [stdout] 19: 0x5613ef8d1ffa - cifra::attack::transposition::tests::test_brute_force_transposition_mp::{{closure}}::h00713d9c9fe63a28 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/transposition.rs:108:5 [INFO] [stdout] 20: 0x5613ef8a13de - core::ops::function::FnOnce::call_once::h34385b06c12220da [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 21: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 22: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 23: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 24: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 25: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 26: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 28: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 29: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 30: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 31: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 32: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 33: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 34: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 35: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 36: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 37: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 38: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 39: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 40: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 41: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 42: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 43: 0x7f11ade9c293 - clone [INFO] [stdout] 44: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::simple_attacks::tests::test_dictionary_word_key_generator stdout ---- [INFO] [stdout] thread 'attack::simple_attacks::tests::test_dictionary_word_key_generator' panicked at 'Dictionary not found for spanish language: Error(DatabaseError("Error connecting to DATABASE_URL: /tmp/.tmpKm1OzR/cifra_database.sqlite"), State { next_error: Some(BadConnection("Unable to open the database file")), backtrace: InternalBacktrace { backtrace: Some( 0: error_chain::backtrace::imp::InternalBacktrace::new [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/backtrace.rs:56:48 [INFO] [stdout] 1: core::ops::function::FnOnce::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 2: core::option::Option::unwrap_or_else [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/option.rs:787:21 [INFO] [stdout] 3: error_chain::State::new [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/lib.rs:696:25 [INFO] [stdout] 4: as cifra::ResultExt>::chain_err::{{closure}} [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/error_chain.rs:434:33 [INFO] [stdout] 5: core::result::Result::map_err [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:853:27 [INFO] [stdout] 6: as cifra::ResultExt>::chain_err [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/error-chain-0.12.4/src/error_chain.rs:433:17 [INFO] [stdout] 7: cifra::attack::database::Database::open_session [INFO] [stdout] at src/attack/database.rs:142:9 [INFO] [stdout] 8: cifra::attack::database::Database::new [INFO] [stdout] at src/attack/database.rs:119:26 [INFO] [stdout] 9: cifra::attack::dictionaries::Dictionary::new [INFO] [stdout] at src/attack/dictionaries.rs:77:32 [INFO] [stdout] 10: cifra::attack::dictionaries::tests::loaded_micro_dictionary_temp_dir [INFO] [stdout] at src/attack/dictionaries.rs:735:43 [INFO] [stdout] 11: cifra::attack::dictionaries::tests::loaded_micro_dictionary_temp_dir::get [INFO] [stdout] at src/attack/dictionaries.rs:728:5 [INFO] [stdout] 12: cifra::attack::dictionaries::tests::loaded_micro_dictionary_temp_dir::default [INFO] [stdout] at src/attack/dictionaries.rs:728:5 [INFO] [stdout] 13: cifra::attack::simple_attacks::tests::test_dictionary_word_key_generator [INFO] [stdout] at src/attack/simple_attacks.rs:280:5 [INFO] [stdout] 14: cifra::attack::simple_attacks::tests::test_dictionary_word_key_generator::{{closure}} [INFO] [stdout] at src/attack/simple_attacks.rs:280:5 [INFO] [stdout] 15: core::ops::function::FnOnce::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 16: core::ops::function::FnOnce::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] test::__rust_begin_short_backtrace [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 17: as core::ops::function::FnOnce>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] as core::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] std::panicking::try::do_call [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] std::panicking::try [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] std::panic::catch_unwind [INFO] [stderr] error: test failed, to rerun pass '--lib' [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] test::run_test_in_process [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] test::run_test::run_test_inner::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 18: test::run_test::run_test_inner::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] std::sys_common::backtrace::__rust_begin_short_backtrace [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 19: std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] as core::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] std::panicking::try::do_call [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] std::panicking::try [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] std::panic::catch_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] std::thread::Builder::spawn_unchecked::{{closure}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] core::ops::function::FnOnce::call_once{{vtable.shim}} [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 20: as core::ops::function::FnOnce>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] as core::ops::function::FnOnce>::call_once [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] std::sys::unix::thread::Thread::new::thread_start [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 21: start_thread [INFO] [stdout] 22: clone [INFO] [stdout] ) } })', src/attack/dictionaries.rs:736:18 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92bd9c - core::result::Result::expect::hdda0edcd9f59a9ff [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef855c72 - cifra::attack::dictionaries::tests::loaded_micro_dictionary_temp_dir::ha8cf17ee35025c73 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:735:43 [INFO] [stdout] 18: 0x5613ef85587d - cifra::attack::dictionaries::tests::loaded_micro_dictionary_temp_dir::get::hf52960b4d40cfb7e [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:728:5 [INFO] [stdout] 19: 0x5613ef85589d - cifra::attack::dictionaries::tests::loaded_micro_dictionary_temp_dir::default::h90f7bb07b628993e [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:728:5 [INFO] [stdout] 20: 0x5613ef924661 - cifra::attack::simple_attacks::tests::test_dictionary_word_key_generator::h1475af9d0373017b [INFO] [stdout] at /opt/rustwide/workdir/src/attack/simple_attacks.rs:280:5 [INFO] [stdout] 21: 0x5613ef92462a - cifra::attack::simple_attacks::tests::test_dictionary_word_key_generator::{{closure}}::hff95a973ab85064b [INFO] [stdout] at /opt/rustwide/workdir/src/attack/simple_attacks.rs:280:5 [INFO] [stdout] 22: 0x5613ef8a184e - core::ops::function::FnOnce::call_once::h5eb5324b4f887519 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 24: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 26: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 29: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 31: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 32: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 33: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 34: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 35: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 37: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 38: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 39: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 40: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 43: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 44: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 45: 0x7f11ade9c293 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- attack::affine::tests::test_brute_force_affine_mp stdout ---- [INFO] [stdout] thread 'attack::affine::tests::test_brute_force_affine_mp' panicked at 'Error saving new word.: DatabaseError(__Unknown, "attempt to write a readonly database")', src/attack/dictionaries.rs:139:14 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613efd4b83c - std::backtrace_rs::backtrace::libunwind::trace::h793e05efd273d0f4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613efd4b83c - std::backtrace_rs::backtrace::trace_unsynchronized::h640b7b86ff610c77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613efd4b83c - std::sys_common::backtrace::_print_fmt::h362fa2a4f354f877 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5613efd4b83c - ::fmt::hf439e5ed84c74abd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x5613efd7122c - core::fmt::write::h72801a82c94e6ff1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/fmt/mod.rs:1149:17 [INFO] [stdout] 5: 0x5613efd47305 - std::io::Write::write_fmt::h54337adeb3504c03 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/io/mod.rs:1697:15 [INFO] [stdout] 6: 0x5613efd4d700 - std::sys_common::backtrace::_print::hb29ddd998d02631c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5613efd4d700 - std::sys_common::backtrace::print::h81965e3d7c90fbb6 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5613efd4d700 - std::panicking::default_hook::{{closure}}::h84db205ab6674b38 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x5613efd4d2e6 - std::panicking::default_hook::h1bf8bb4159936bca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x5613efd4ddb4 - std::panicking::rust_panic_with_hook::hf8e86850fbbd03b1 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x5613efd4d890 - std::panicking::begin_panic_handler::{{closure}}::h590a0d6060ff866e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:502:13 [INFO] [stdout] 12: 0x5613efd4bcf4 - std::sys_common::backtrace::__rust_end_short_backtrace::h260b8bd1c848a03c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x5613efd4d7f9 - rust_begin_unwind [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:498:5 [INFO] [stdout] 14: 0x5613ef7eee61 - core::panicking::panic_fmt::h7b8580d81fcbbacd [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panicking.rs:106:14 [INFO] [stdout] 15: 0x5613ef7eef53 - core::result::unwrap_failed::h885d3f7beb571353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1613:5 [INFO] [stdout] 16: 0x5613ef92b5a4 - core::result::Result::expect::h46d675514afea358 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/result.rs:1255:23 [INFO] [stdout] 17: 0x5613ef86dc14 - cifra::attack::dictionaries::Dictionary::add_multiple_words::h8db2313c114944e9 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:136:9 [INFO] [stdout] 18: 0x5613ef86e72d - cifra::attack::dictionaries::Dictionary::populate::hc208aadaddc6f20f [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:181:9 [INFO] [stdout] 19: 0x5613ef854200 - cifra::attack::dictionaries::tests::LoadedDictionaries::new::hae9d6bc8d8be72ed [INFO] [stdout] at /opt/rustwide/workdir/src/attack/dictionaries.rs:685:17 [INFO] [stdout] 20: 0x5613ef8732b1 - cifra::attack::affine::tests::test_brute_force_affine_mp::he66612eab63ad290 [INFO] [stdout] at /opt/rustwide/workdir/src/attack/affine.rs:153:35 [INFO] [stdout] 21: 0x5613ef87328a - cifra::attack::affine::tests::test_brute_force_affine_mp::{{closure}}::h72566d14c021a3ca [INFO] [stdout] at /opt/rustwide/workdir/src/attack/affine.rs:152:5 [INFO] [stdout] 22: 0x5613ef8a217e - core::ops::function::FnOnce::call_once::hbd77229e32107175 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5613ef97a1c3 - core::ops::function::FnOnce::call_once::h24a32b9da1a40fdb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 24: 0x5613ef97a1c3 - test::__rust_begin_short_backtrace::h3c3a0492fb4a12eb [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:585:5 [INFO] [stdout] 25: 0x5613ef978dd7 - as core::ops::function::FnOnce>::call_once::h9a8e38435f73d5e0 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 26: 0x5613ef978dd7 - as core::ops::function::FnOnce<()>>::call_once::hb23d7496a0e6d1b4 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 27: 0x5613ef978dd7 - std::panicking::try::do_call::ha2bb9825b32d2cc2 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 28: 0x5613ef978dd7 - std::panicking::try::hdc38a574bbebc53e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 29: 0x5613ef978dd7 - std::panic::catch_unwind::hc45ed246595c621c [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 30: 0x5613ef978dd7 - test::run_test_in_process::h4249138faaea8d54 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:608:18 [INFO] [stdout] 31: 0x5613ef978dd7 - test::run_test::run_test_inner::{{closure}}::h3c1b37669f6e9fd7 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:500:39 [INFO] [stdout] 32: 0x5613ef94607e - test::run_test::run_test_inner::{{closure}}::h388760469edd5c24 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/test/src/lib.rs:527:37 [INFO] [stdout] 33: 0x5613ef94607e - std::sys_common::backtrace::__rust_begin_short_backtrace::hbbaecdcfad18643e [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 34: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h09cd3ca65896da91 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:484:17 [INFO] [stdout] 35: 0x5613ef94add8 - as core::ops::function::FnOnce<()>>::call_once::hc52dbb4f9088d18b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 36: 0x5613ef94add8 - std::panicking::try::do_call::h4485cfee22b11c08 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:406:40 [INFO] [stdout] 37: 0x5613ef94add8 - std::panicking::try::hb62aa8549e20c08b [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panicking.rs:370:19 [INFO] [stdout] 38: 0x5613ef94add8 - std::panic::catch_unwind::ha322c7a5bc666762 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/panic.rs:133:14 [INFO] [stdout] 39: 0x5613ef94add8 - std::thread::Builder::spawn_unchecked::{{closure}}::h1076fc1398603b77 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/thread/mod.rs:483:30 [INFO] [stdout] 40: 0x5613ef94add8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h911e510344167353 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 41: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::h771719d52c343434 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 42: 0x5613efd53e73 - as core::ops::function::FnOnce>::call_once::hf441746dfa4b0f57 [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/alloc/src/boxed.rs:1694:9 [INFO] [stdout] 43: 0x5613efd53e73 - std::sys::unix::thread::Thread::new::thread_start::hfd168f9d312b29ca [INFO] [stdout] at /rustc/62efba8a050c64249dab942951bb28f710208bc8/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 44: 0x7f11ae0cc609 - start_thread [INFO] [stdout] 45: 0x7f11ade9c293 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] attack::affine::tests::test_brute_force_affine [INFO] [stdout] attack::affine::tests::test_brute_force_affine_mp [INFO] [stdout] attack::caesar::tests::test_brute_force_caesar [INFO] [stdout] attack::caesar::tests::test_brute_force_caesar_mp [INFO] [stdout] attack::dictionaries::tests::test_add_multiple_words [INFO] [stdout] attack::dictionaries::tests::test_cwd_word [INFO] [stdout] attack::dictionaries::tests::test_delete_language [INFO] [stdout] attack::dictionaries::tests::test_get_all_words [INFO] [stdout] attack::dictionaries::tests::test_get_dictionaries_names [INFO] [stdout] attack::dictionaries::tests::test_identify_language [INFO] [stdout] attack::dictionaries::tests::test_open_existing_dictionary [INFO] [stdout] attack::dictionaries::tests::test_populate_words_from_text_files [INFO] [stdout] attack::dictionaries::tests::test_store_word_pattern [INFO] [stdout] attack::simple_attacks::tests::test_dictionary_word_key_generator [INFO] [stdout] attack::substitution::tests::test_hack_substitution [INFO] [stdout] attack::substitution::tests::test_hack_substitution_mp [INFO] [stdout] attack::transposition::tests::test_brute_force_transposition [INFO] [stdout] attack::transposition::tests::test_brute_force_transposition_mp [INFO] [stdout] [INFO] [stdout] test result: FAILED. 60 passed; 18 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.97s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "df7f52571c35ab10eaa8344dafe73561389d83d491a3b36335e3a9f057e629bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "df7f52571c35ab10eaa8344dafe73561389d83d491a3b36335e3a9f057e629bc", kill_on_drop: false }` [INFO] [stdout] df7f52571c35ab10eaa8344dafe73561389d83d491a3b36335e3a9f057e629bc