[INFO] cloning repository https://github.com/ogomezba/rs-algorithms [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ogomezba/rs-algorithms" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fogomezba%2Frs-algorithms", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fogomezba%2Frs-algorithms'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d33ad4cf838034673e15a7e9b3d0f1dc25507f93 [INFO] checking ogomezba/rs-algorithms against master#f9515fdd5aa132e27d9b580a35b27f4b453251c1 for pr-125923 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fogomezba%2Frs-algorithms" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ogomezba/rs-algorithms on toolchain f9515fdd5aa132e27d9b580a35b27f4b453251c1 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9515fdd5aa132e27d9b580a35b27f4b453251c1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ogomezba/rs-algorithms [INFO] finished tweaking git repo https://github.com/ogomezba/rs-algorithms [INFO] tweaked toml for git repo https://github.com/ogomezba/rs-algorithms written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/ogomezba/rs-algorithms 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" "+f9515fdd5aa132e27d9b580a35b27f4b453251c1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+f9515fdd5aa132e27d9b580a35b27f4b453251c1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6e16c19c44294c24092bf4c87bed521f6642d0d106331d9497a5fa7b4124a956 [INFO] running `Command { std: "docker" "start" "-a" "6e16c19c44294c24092bf4c87bed521f6642d0d106331d9497a5fa7b4124a956", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6e16c19c44294c24092bf4c87bed521f6642d0d106331d9497a5fa7b4124a956", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6e16c19c44294c24092bf4c87bed521f6642d0d106331d9497a5fa7b4124a956", kill_on_drop: false }` [INFO] [stdout] 6e16c19c44294c24092bf4c87bed521f6642d0d106331d9497a5fa7b4124a956 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+f9515fdd5aa132e27d9b580a35b27f4b453251c1" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 73cff2e127a2879d7fc4c8b6528ac18bebb1f9e0f0cd7708fcd522a5ad736229 [INFO] running `Command { std: "docker" "start" "-a" "73cff2e127a2879d7fc4c8b6528ac18bebb1f9e0f0cd7708fcd522a5ad736229", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.147 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Checking ppv-lite86 v0.2.17 [INFO] [stderr] Checking getrandom v0.2.10 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking algorithms-course v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::time::Instant` [INFO] [stdout] --> src/algorithms/quick_sort.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::time::Instant; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `insertion_sort as isort` [INFO] [stdout] --> src/algorithms/quick_sort.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use super::{insertion_sort as isort, knuth_shuffle::shuffle}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Instant` [INFO] [stdout] --> src/algorithms/quick_sort.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::time::Instant; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `insertion_sort as isort` [INFO] [stdout] --> src/algorithms/quick_sort.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use super::{insertion_sort as isort, knuth_shuffle::shuffle}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `line_segment_intersection` is never used [INFO] [stdout] --> src/algorithms/geometric_algorithms.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn line_segment_intersection(segments: &[LineSegment]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_horizontal` is never used [INFO] [stdout] --> src/algorithms/geometric_algorithms.rs:53:4 [INFO] [stdout] | [INFO] [stdout] 53 | fn is_horizontal(segment: &LineSegment) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `less_prio_event` is never used [INFO] [stdout] --> src/algorithms/geometric_algorithms.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn less_prio_event(e1: &Event, e2: &Event) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Event` is never used [INFO] [stdout] --> src/algorithms/geometric_algorithms.rs:77:6 [INFO] [stdout] | [INFO] [stdout] 77 | enum Event { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start` and `end` are never read [INFO] [stdout] --> src/algorithms/geometric_algorithms.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 83 | pub struct LineSegment { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 84 | pub start: Point, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 85 | pub end: Point, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort` is never used [INFO] [stdout] --> src/algorithms/heap_sort.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn sort(mut v: Vec) -> Vec { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort` is never used [INFO] [stdout] --> src/algorithms/insertion_sort.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn sort(v: &mut [T]) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort_section` is never used [INFO] [stdout] --> src/algorithms/insertion_sort.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn sort_section(v: &mut Vec, low: usize, high: usize) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shuffle` is never used [INFO] [stdout] --> src/algorithms/knuth_shuffle.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn shuffle(v: &mut [T]) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `kruskal_mst` is never used [INFO] [stdout] --> src/algorithms/kruskal_mst.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn kruskal_mst(g: WeightedGraph) -> (Vec, u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `CUTOFF` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | static CUTOFF: usize = 7; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn sort(v: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort_without_copy` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn sort_without_copy(mut v: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `basic_sort` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn basic_sort(v: &mut Vec, aux: &mut Vec, low: usize, high: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bottom_up_sort` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn bottom_up_sort(v: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `in_place_merge` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn in_place_merge( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `merge_without_copy` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:95:4 [INFO] [stdout] | [INFO] [stdout] 95 | fn merge_without_copy(v1: Vec, v2: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `CUTOFF` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | static CUTOFF: usize = 10; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn sort(v: &mut [T]) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `selection` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn selection(v: &mut [T], k: usize) -> &T { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `do_selection` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn do_selection(v: &mut [T], k: usize, lo: usize, hi: usize) -> &T { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `do_sort` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn do_sort(v: &mut [T]) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `partition_full` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn partition_full(v: &mut [T], lo: usize, hi: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `partition_slice` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:70:4 [INFO] [stdout] | [INFO] [stdout] 70 | fn partition_slice(v: &mut [T]) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort` is never used [INFO] [stdout] --> src/algorithms/selection_sort.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn sort(v: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shell_sort` is never used [INFO] [stdout] --> src/algorithms/shell_sort.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn shell_sort(v: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shell_sort_h` is never used [INFO] [stdout] --> src/algorithms/shell_sort.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn shell_sort_h(v: &mut [T], h: usize) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ShellSequenceGenerator` is never constructed [INFO] [stdout] --> src/algorithms/shell_sort.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | struct ShellSequenceGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/algorithms/shell_sort.rs:41:8 [INFO] [stdout] | [INFO] [stdout] 40 | impl ShellSequenceGenerator { [INFO] [stdout] | --------------------------- associated function in this implementation [INFO] [stdout] 41 | fn new(max: usize) -> ShellSequenceGenerator { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `max_priority_queue` is never used [INFO] [stdout] --> src/data_structures/binary_heap.rs:85:8 [INFO] [stdout] | [INFO] [stdout] 85 | pub fn max_priority_queue() -> BinaryHeap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `min_priority_queue` is never used [INFO] [stdout] --> src/data_structures/binary_heap.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn min_priority_queue() -> BinaryHeap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `brute_collinear_points` is never used [INFO] [stdout] --> src/exercises/collinear_points.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn brute_collinear_points(points: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `line_segment_intersection` is never used [INFO] [stdout] --> src/algorithms/geometric_algorithms.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn line_segment_intersection(segments: &[LineSegment]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fast_collinear_points` is never used [INFO] [stdout] --> src/exercises/collinear_points.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn fast_collinear_points(points: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Point` is never used [INFO] [stdout] --> src/exercises/collinear_points.rs:70:10 [INFO] [stdout] | [INFO] [stdout] 70 | pub type Point = (f32, f32); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_horizontal` is never used [INFO] [stdout] --> src/algorithms/geometric_algorithms.rs:53:4 [INFO] [stdout] | [INFO] [stdout] 53 | fn is_horizontal(segment: &LineSegment) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LineSegment` is never constructed [INFO] [stdout] --> src/exercises/collinear_points.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 73 | pub struct LineSegment { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/exercises/collinear_points.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 78 | impl LineSegment { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 79 | fn new(start: Point, end: Point) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compare_height` is never used [INFO] [stdout] --> src/exercises/collinear_points.rs:84:4 [INFO] [stdout] | [INFO] [stdout] 84 | fn compare_height((x1, y1): &Point, (x2, y2): &Point) -> Ordering { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `less_prio_event` is never used [INFO] [stdout] --> src/algorithms/geometric_algorithms.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn less_prio_event(e1: &Event, e2: &Event) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `slope` is never used [INFO] [stdout] --> src/exercises/collinear_points.rs:94:4 [INFO] [stdout] | [INFO] [stdout] 94 | fn slope((x1, y1): Point, (x2, y2): Point) -> f32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Event` is never used [INFO] [stdout] --> src/algorithms/geometric_algorithms.rs:77:6 [INFO] [stdout] | [INFO] [stdout] 77 | enum Event { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `evaluate` is never used [INFO] [stdout] --> src/exercises/dijkstra_arithmetics.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn evaluate(expression: &str) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_operator` is never used [INFO] [stdout] --> src/exercises/dijkstra_arithmetics.rs:31:4 [INFO] [stdout] | [INFO] [stdout] 31 | fn to_operator(c: char) -> Box f32> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start` and `end` are never read [INFO] [stdout] --> src/algorithms/geometric_algorithms.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 83 | pub struct LineSegment { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 84 | pub start: Point, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 85 | pub end: Point, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_operator` is never used [INFO] [stdout] --> src/exercises/dijkstra_arithmetics.rs:39:4 [INFO] [stdout] | [INFO] [stdout] 39 | fn is_operator(c: char) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mul` is never used [INFO] [stdout] --> src/exercises/dijkstra_arithmetics.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn mul(a: f32, b: f32) -> f32 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add` is never used [INFO] [stdout] --> src/exercises/dijkstra_arithmetics.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn add(a: f32, b: f32) -> f32 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `execute_percolation` is never used [INFO] [stdout] --> src/exercises/percolation.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn execute_percolation(n: usize, runs: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `number_of_open_sites` and `percolates` are never used [INFO] [stdout] --> src/exercises/percolation.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 42 | impl Percolation { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 121 | fn number_of_open_sites(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | fn percolates(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve_puzzle` is never used [INFO] [stdout] --> src/exercises/slider_puzzle.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn solve_puzzle(board: Board) -> SearchNode { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SearchNode` is never constructed [INFO] [stdout] --> src/exercises/slider_puzzle.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub struct SearchNode { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `priority` is never used [INFO] [stdout] --> src/exercises/slider_puzzle.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 45 | impl SearchNode { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 46 | fn priority(&self) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `N` should have a snake case name [INFO] [stdout] --> src/algorithms/merge_sort.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | let N = v.len(); [INFO] [stdout] | ^ help: convert the identifier to snake case: `n` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort` is never used [INFO] [stdout] --> src/algorithms/heap_sort.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn sort(mut v: Vec) -> Vec { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort` is never used [INFO] [stdout] --> src/algorithms/insertion_sort.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn sort(v: &mut [T]) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort_section` is never used [INFO] [stdout] --> src/algorithms/insertion_sort.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn sort_section(v: &mut Vec, low: usize, high: usize) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shuffle` is never used [INFO] [stdout] --> src/algorithms/knuth_shuffle.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn shuffle(v: &mut [T]) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `kruskal_mst` is never used [INFO] [stdout] --> src/algorithms/kruskal_mst.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn kruskal_mst(g: WeightedGraph) -> (Vec, u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `CUTOFF` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | static CUTOFF: usize = 7; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn sort(v: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort_without_copy` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn sort_without_copy(mut v: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `basic_sort` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn basic_sort(v: &mut Vec, aux: &mut Vec, low: usize, high: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bottom_up_sort` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn bottom_up_sort(v: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `in_place_merge` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn in_place_merge( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `merge_without_copy` is never used [INFO] [stdout] --> src/algorithms/merge_sort.rs:95:4 [INFO] [stdout] | [INFO] [stdout] 95 | fn merge_without_copy(v1: Vec, v2: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `CUTOFF` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | static CUTOFF: usize = 10; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn sort(v: &mut [T]) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `selection` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn selection(v: &mut [T], k: usize) -> &T { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `do_selection` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn do_selection(v: &mut [T], k: usize, lo: usize, hi: usize) -> &T { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `do_sort` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn do_sort(v: &mut [T]) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `partition_full` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn partition_full(v: &mut [T], lo: usize, hi: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `partition_slice` is never used [INFO] [stdout] --> src/algorithms/quick_sort.rs:70:4 [INFO] [stdout] | [INFO] [stdout] 70 | fn partition_slice(v: &mut [T]) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sort` is never used [INFO] [stdout] --> src/algorithms/selection_sort.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn sort(v: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shell_sort` is never used [INFO] [stdout] --> src/algorithms/shell_sort.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn shell_sort(v: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shell_sort_h` is never used [INFO] [stdout] --> src/algorithms/shell_sort.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn shell_sort_h(v: &mut [T], h: usize) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ShellSequenceGenerator` is never constructed [INFO] [stdout] --> src/algorithms/shell_sort.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | struct ShellSequenceGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/algorithms/shell_sort.rs:41:8 [INFO] [stdout] | [INFO] [stdout] 40 | impl ShellSequenceGenerator { [INFO] [stdout] | --------------------------- associated function in this implementation [INFO] [stdout] 41 | fn new(max: usize) -> ShellSequenceGenerator { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `max_priority_queue` is never used [INFO] [stdout] --> src/data_structures/binary_heap.rs:85:8 [INFO] [stdout] | [INFO] [stdout] 85 | pub fn max_priority_queue() -> BinaryHeap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `min_priority_queue` is never used [INFO] [stdout] --> src/data_structures/binary_heap.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn min_priority_queue() -> BinaryHeap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `brute_collinear_points` is never used [INFO] [stdout] --> src/exercises/collinear_points.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn brute_collinear_points(points: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fast_collinear_points` is never used [INFO] [stdout] --> src/exercises/collinear_points.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn fast_collinear_points(points: Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Point` is never used [INFO] [stdout] --> src/exercises/collinear_points.rs:70:10 [INFO] [stdout] | [INFO] [stdout] 70 | pub type Point = (f32, f32); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LineSegment` is never constructed [INFO] [stdout] --> src/exercises/collinear_points.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 73 | pub struct LineSegment { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/exercises/collinear_points.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 78 | impl LineSegment { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 79 | fn new(start: Point, end: Point) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compare_height` is never used [INFO] [stdout] --> src/exercises/collinear_points.rs:84:4 [INFO] [stdout] | [INFO] [stdout] 84 | fn compare_height((x1, y1): &Point, (x2, y2): &Point) -> Ordering { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `slope` is never used [INFO] [stdout] --> src/exercises/collinear_points.rs:94:4 [INFO] [stdout] | [INFO] [stdout] 94 | fn slope((x1, y1): Point, (x2, y2): Point) -> f32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `evaluate` is never used [INFO] [stdout] --> src/exercises/dijkstra_arithmetics.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn evaluate(expression: &str) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_operator` is never used [INFO] [stdout] --> src/exercises/dijkstra_arithmetics.rs:31:4 [INFO] [stdout] | [INFO] [stdout] 31 | fn to_operator(c: char) -> Box f32> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_operator` is never used [INFO] [stdout] --> src/exercises/dijkstra_arithmetics.rs:39:4 [INFO] [stdout] | [INFO] [stdout] 39 | fn is_operator(c: char) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mul` is never used [INFO] [stdout] --> src/exercises/dijkstra_arithmetics.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn mul(a: f32, b: f32) -> f32 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add` is never used [INFO] [stdout] --> src/exercises/dijkstra_arithmetics.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn add(a: f32, b: f32) -> f32 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `execute_percolation` is never used [INFO] [stdout] --> src/exercises/percolation.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn execute_percolation(n: usize, runs: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `number_of_open_sites` and `percolates` are never used [INFO] [stdout] --> src/exercises/percolation.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 42 | impl Percolation { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 121 | fn number_of_open_sites(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | fn percolates(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve_puzzle` is never used [INFO] [stdout] --> src/exercises/slider_puzzle.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn solve_puzzle(board: Board) -> SearchNode { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SearchNode` is never constructed [INFO] [stdout] --> src/exercises/slider_puzzle.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub struct SearchNode { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `priority` is never used [INFO] [stdout] --> src/exercises/slider_puzzle.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 45 | impl SearchNode { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 46 | fn priority(&self) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `N` should have a snake case name [INFO] [stdout] --> src/algorithms/merge_sort.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | let N = v.len(); [INFO] [stdout] | ^ help: convert the identifier to snake case: `n` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 51 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 51 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.17s [INFO] running `Command { std: "docker" "inspect" "73cff2e127a2879d7fc4c8b6528ac18bebb1f9e0f0cd7708fcd522a5ad736229", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "73cff2e127a2879d7fc4c8b6528ac18bebb1f9e0f0cd7708fcd522a5ad736229", kill_on_drop: false }` [INFO] [stdout] 73cff2e127a2879d7fc4c8b6528ac18bebb1f9e0f0cd7708fcd522a5ad736229