[INFO] cloning repository https://github.com/dragan717080/CryptographyPrograms
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dragan717080/CryptographyPrograms" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdragan717080%2FCryptographyPrograms", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdragan717080%2FCryptographyPrograms'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a20f9a1641f02dd07184a58eeaabf8aa5d59080c
[INFO] checking dragan717080/CryptographyPrograms against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdragan717080%2FCryptographyPrograms" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/dragan717080/CryptographyPrograms
[INFO] finished tweaking git repo https://github.com/dragan717080/CryptographyPrograms
[INFO] tweaked toml for git repo https://github.com/dragan717080/CryptographyPrograms written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/dragan717080/CryptographyPrograms on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/dragan717080/CryptographyPrograms already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rsa v0.4.1
[INFO] [stderr]   Downloaded thiserror-impl v1.0.47
[INFO] [stderr]   Downloaded thiserror v1.0.47
[INFO] [stderr]   Downloaded simple_asn1 v0.5.4
[INFO] [stderr]   Downloaded errno v0.3.2
[INFO] [stderr]   Downloaded pem v0.8.3
[INFO] [stderr]   Downloaded fastrand v2.0.0
[INFO] [stderr]   Downloaded openssl-sys v0.9.91
[INFO] [stderr]   Downloaded base64 v0.21.2
[INFO] [stderr]   Downloaded libm v0.2.7
[INFO] [stderr]   Downloaded num-bigint-dig v0.7.1
[INFO] [stderr]   Downloaded reqwest v0.11.19
[INFO] [stderr]   Downloaded syn v2.0.29
[INFO] [stderr]   Downloaded aho-corasick v1.0.4
[INFO] [stderr]   Downloaded regex v1.9.3
[INFO] [stderr]   Downloaded openssl v0.10.56
[INFO] [stderr]   Downloaded regex-syntax v0.7.4
[INFO] [stderr]   Downloaded rustix v0.38.8
[INFO] [stderr]   Downloaded regex-automata v0.3.6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d795372f361b40b4617f2aa7094e706968e465eda024e8f14035fd766f13baa2
[INFO] running `Command { std: "docker" "start" "-a" "d795372f361b40b4617f2aa7094e706968e465eda024e8f14035fd766f13baa2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d795372f361b40b4617f2aa7094e706968e465eda024e8f14035fd766f13baa2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d795372f361b40b4617f2aa7094e706968e465eda024e8f14035fd766f13baa2", kill_on_drop: false }`
[INFO] [stdout] d795372f361b40b4617f2aa7094e706968e465eda024e8f14035fd766f13baa2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c99c6c3fda76e6ee49216a776fb8b1bd1151e2950de925e9b3c7ffef175bee10
[INFO] running `Command { std: "docker" "start" "-a" "c99c6c3fda76e6ee49216a776fb8b1bd1151e2950de925e9b3c7ffef175bee10", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.66
[INFO] [stderr]    Compiling unicode-ident v1.0.11
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]     Checking once_cell v1.18.0
[INFO] [stderr]     Checking smallvec v1.11.0
[INFO] [stderr]    Compiling libm v0.2.7
[INFO] [stderr]     Checking pin-project-lite v0.2.12
[INFO] [stderr]    Compiling num-traits v0.2.16
[INFO] [stderr]    Compiling futures-core v0.3.28
[INFO] [stderr]     Checking itoa v1.0.9
[INFO] [stderr]    Compiling serde v1.0.185
[INFO] [stderr]     Checking lock_api v0.4.10
[INFO] [stderr]    Compiling futures-task v0.3.28
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling slab v0.4.8
[INFO] [stderr]     Checking socket2 v0.5.3
[INFO] [stderr]    Compiling openssl v0.10.56
[INFO] [stderr]    Compiling futures-util v0.3.28
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]     Checking http v0.2.9
[INFO] [stderr]     Checking tracing-core v0.1.31
[INFO] [stderr]     Checking futures-sink v0.3.28
[INFO] [stderr]    Compiling futures-channel v0.3.28
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking indexmap v1.9.3
[INFO] [stderr]    Compiling num-bigint v0.4.3
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]     Checking try-lock v0.2.4
[INFO] [stderr]     Checking parking_lot_core v0.9.8
[INFO] [stderr]     Checking percent-encoding v2.3.0
[INFO] [stderr]     Checking regex-syntax v0.7.4
[INFO] [stderr]     Checking tracing v0.1.37
[INFO] [stderr]    Compiling thiserror v1.0.47
[INFO] [stderr]     Checking form_urlencoded v1.2.0
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]     Checking unicode-normalization v0.1.22
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking unicode-bidi v0.3.13
[INFO] [stderr]     Checking iana-time-zone v0.1.57
[INFO] [stderr]    Compiling num-bigint-dig v0.7.1
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]    Compiling serde_json v1.0.105
[INFO] [stderr]     Checking ryu v1.0.15
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]     Checking encoding_rs v0.8.32
[INFO] [stderr]     Checking base64 v0.21.2
[INFO] [stderr]     Checking ipnet v2.8.0
[INFO] [stderr]     Checking unicode-segmentation v1.10.1
[INFO] [stderr]    Compiling syn v2.0.29
[INFO] [stderr]     Checking http-body v0.4.5
[INFO] [stderr]     Checking idna v0.4.0
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]     Checking digest v0.9.0
[INFO] [stderr]     Checking url v2.4.0
[INFO] [stderr]     Checking regex-automata v0.3.6
[INFO] [stderr]    Compiling openssl-sys v0.9.91
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]     Checking regex v1.9.3
[INFO] [stderr]     Checking pem v0.8.3
[INFO] [stderr]    Compiling serde_derive v1.0.185
[INFO] [stderr]    Compiling tokio-macros v2.1.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.47
[INFO] [stderr]     Checking tokio v1.32.0
[INFO] [stderr]     Checking zeroize v1.3.0
[INFO] [stderr]     Checking tokio-util v0.7.8
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking h2 v0.3.21
[INFO] [stderr]     Checking chrono v0.4.26
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking simple_asn1 v0.5.4
[INFO] [stderr]     Checking rsa v0.4.1
[INFO] [stderr]     Checking hyper v0.14.27
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.19
[INFO] [stderr]     Checking cryptography v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/string_utils.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_repeated_substrings` is never used
[INFO] [stdout]  --> src/string_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn find_repeated_substrings(input: &str, min_length: Option<usize>) -> Vec<String> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/crypto_utils.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn find_modular_inverse(mut n: i64, modulo: i64) -> i64 {
[INFO] [stdout]    |                             ----^
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crypto_utils::sieve_of_eratosthenes`
[INFO] [stdout]   --> src/euler_formulas.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crypto_utils::sieve_of_eratosthenes;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/euler_formulas.rs:38:16
[INFO] [stdout]    |
[INFO] [stdout] 38 |         phi *= (1.0 - 1.0/(prime_factor as f64));
[INFO] [stdout]    |                ^                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 38 -         phi *= (1.0 - 1.0/(prime_factor as f64));
[INFO] [stdout] 38 +         phi *= 1.0 - 1.0/(prime_factor as f64) ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/crypto_utils.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_factors` is never used
[INFO] [stdout]  --> src/crypto_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn find_factors(number: i32) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gcd_euclidean` is never used
[INFO] [stdout]   --> src/crypto_utils.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn gcd_euclidean(mut a: i32, mut b: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sieve_of_eratosthenes` is never used
[INFO] [stdout]   --> src/crypto_utils.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn sieve_of_eratosthenes(limit: usize) -> Vec<bool> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crypto_utils::sieve_of_eratosthenes`
[INFO] [stdout]   --> src/euler_formulas.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crypto_utils::sieve_of_eratosthenes;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/euler_formulas.rs:38:16
[INFO] [stdout]    |
[INFO] [stdout] 38 |         phi *= (1.0 - 1.0/(prime_factor as f64));
[INFO] [stdout]    |                ^                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 38 -         phi *= (1.0 - 1.0/(prime_factor as f64));
[INFO] [stdout] 38 +         phi *= 1.0 - 1.0/(prime_factor as f64) ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/string_utils.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Pow`
[INFO] [stdout]  --> src/euler_formulas.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use num_traits::Pow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_repeated_substrings` is never used
[INFO] [stdout]  --> src/string_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn find_repeated_substrings(input: &str, min_length: Option<usize>) -> Vec<String> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/crypto_utils.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn find_modular_inverse(mut n: i64, modulo: i64) -> i64 {
[INFO] [stdout]    |                             ----^
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/euler_formulas.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let mut n = n_int as f64;
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `result` is never read
[INFO] [stdout]   --> src/euler_formulas.rs:80:22
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let mut result = 0;
[INFO] [stdout]    |                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prime_generator` is never used
[INFO] [stdout]   --> src/euler_formulas.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn prime_generator() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/primality_tests.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/crypto_utils.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_factors` is never used
[INFO] [stdout]  --> src/crypto_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn find_factors(number: i32) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gcd_euclidean` is never used
[INFO] [stdout]   --> src/crypto_utils.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn gcd_euclidean(mut a: i32, mut b: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sieve_of_eratosthenes` is never used
[INFO] [stdout]   --> src/crypto_utils.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn sieve_of_eratosthenes(limit: usize) -> Vec<bool> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/crypto_utils.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn find_modular_inverse(mut n: i64, modulo: i64) -> i64 {
[INFO] [stdout]    |                             ----^
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Pow`
[INFO] [stdout]  --> src/euler_formulas.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use num_traits::Pow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/crypto_utils.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_factors` is never used
[INFO] [stdout]  --> src/crypto_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn find_factors(number: i32) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gcd_euclidean` is never used
[INFO] [stdout]   --> src/crypto_utils.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn gcd_euclidean(mut a: i32, mut b: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sieve_of_eratosthenes` is never used
[INFO] [stdout]   --> src/crypto_utils.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn sieve_of_eratosthenes(limit: usize) -> Vec<bool> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/crypto_utils.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn find_modular_inverse(mut n: i64, modulo: i64) -> i64 {
[INFO] [stdout]    |                             ----^
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/euler_formulas.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let mut n = n_int as f64;
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `result` is never read
[INFO] [stdout]   --> src/euler_formulas.rs:80:22
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let mut result = 0;
[INFO] [stdout]    |                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prime_generator` is never used
[INFO] [stdout]   --> src/euler_formulas.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn prime_generator() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/primality_tests.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/crypto_utils.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_factors` is never used
[INFO] [stdout]  --> src/crypto_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn find_factors(number: i32) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gcd_euclidean` is never used
[INFO] [stdout]   --> src/crypto_utils.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn gcd_euclidean(mut a: i32, mut b: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sieve_of_eratosthenes` is never used
[INFO] [stdout]   --> src/crypto_utils.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn sieve_of_eratosthenes(limit: usize) -> Vec<bool> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/crypto_utils.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn find_modular_inverse(mut n: i64, modulo: i64) -> i64 {
[INFO] [stdout]    |                             ----^
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/crypto_utils.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn find_modular_inverse(mut n: i64, modulo: i64) -> i64 {
[INFO] [stdout]    |                             ----^
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/string_utils.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_repeated_substrings` is never used
[INFO] [stdout]  --> src/string_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn find_repeated_substrings(input: &str, min_length: Option<usize>) -> Vec<String> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/crypto_utils.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_factors` is never used
[INFO] [stdout]  --> src/crypto_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn find_factors(number: i32) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gcd_euclidean` is never used
[INFO] [stdout]   --> src/crypto_utils.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn gcd_euclidean(mut a: i32, mut b: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_modular_inverse` is never used
[INFO] [stdout]   --> src/crypto_utils.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn find_modular_inverse(mut n: i64, modulo: i64) -> i64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/string_utils.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_repeated_substrings` is never used
[INFO] [stdout]  --> src/string_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn find_repeated_substrings(input: &str, min_length: Option<usize>) -> Vec<String> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]  --> src/crypto_utils.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn main() {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_factors` is never used
[INFO] [stdout]  --> src/crypto_utils.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn find_factors(number: i32) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gcd_euclidean` is never used
[INFO] [stdout]   --> src/crypto_utils.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn gcd_euclidean(mut a: i32, mut b: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_modular_inverse` is never used
[INFO] [stdout]   --> src/crypto_utils.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn find_modular_inverse(mut n: i64, modulo: i64) -> i64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 24.96s
[INFO] running `Command { std: "docker" "inspect" "c99c6c3fda76e6ee49216a776fb8b1bd1151e2950de925e9b3c7ffef175bee10", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c99c6c3fda76e6ee49216a776fb8b1bd1151e2950de925e9b3c7ffef175bee10", kill_on_drop: false }`
[INFO] [stdout] c99c6c3fda76e6ee49216a776fb8b1bd1151e2950de925e9b3c7ffef175bee10
