[INFO] fetching crate o2lsh 0.1.0... [INFO] checking o2lsh-0.1.0 against master#f609b7e0586f81fefb3523e3e17adf779ac416be for pr-129466-2 [INFO] extracting crate o2lsh 0.1.0 into /workspace/builds/worker-6-tc1/source [INFO] validating manifest of crates.io crate o2lsh 0.1.0 on toolchain f609b7e0586f81fefb3523e3e17adf779ac416be [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate o2lsh 0.1.0 [INFO] finished tweaking crates.io crate o2lsh 0.1.0 [INFO] tweaked toml for crates.io crate o2lsh 0.1.0 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 26 packages to latest compatible versions [INFO] [stderr] Adding itertools v0.6.5 (available: v0.13.0) [INFO] [stderr] Adding matrixmultiply v0.1.15 (available: v0.3.9) [INFO] [stderr] Adding ndarray v0.9.1 (available: v0.16.1) [INFO] [stderr] Adding num-complex v0.1.43 (available: v0.4.6) [INFO] [stderr] Adding num-traits v0.1.43 (available: v0.2.19) [INFO] [stderr] Adding rand v0.3.23 (available: v0.8.5) [INFO] [stderr] Adding rand v0.4.6 (available: v0.8.5) [INFO] [stderr] Adding rand_core v0.3.1 (available: v0.6.4) [INFO] [stderr] Adding rand_core v0.4.2 (available: v0.6.4) [INFO] [stderr] Adding rawpointer v0.1.0 (available: v0.2.1) [INFO] [stderr] Adding rayon v0.7.1 (available: v1.10.0) [INFO] [stderr] Adding rdrand v0.4.0 (available: v0.8.3) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded itertools v0.6.5 [INFO] [stderr] Downloaded revord v0.0.2 [INFO] [stderr] Downloaded rayon v0.7.1 [INFO] [stderr] Downloaded ndarray v0.9.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 166c60c86d4538d65f5c198512480a29a1061087321ec575b7365529e12f02a5 [INFO] running `Command { std: "docker" "start" "-a" "166c60c86d4538d65f5c198512480a29a1061087321ec575b7365529e12f02a5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "166c60c86d4538d65f5c198512480a29a1061087321ec575b7365529e12f02a5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "166c60c86d4538d65f5c198512480a29a1061087321ec575b7365529e12f02a5", kill_on_drop: false }` [INFO] [stdout] 166c60c86d4538d65f5c198512480a29a1061087321ec575b7365529e12f02a5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f5f83f66b729b9a173500cc64e08b498c537d0484b6d6e6ece2c881092be8bd6 [INFO] running `Command { std: "docker" "start" "-a" "f5f83f66b729b9a173500cc64e08b498c537d0484b6d6e6ece2c881092be8bd6", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling matrixmultiply v0.1.15 [INFO] [stderr] Checking rawpointer v0.1.0 [INFO] [stderr] Compiling ndarray v0.9.1 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Checking revord v0.0.2 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking itertools v0.6.5 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking rand v0.3.23 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking num-traits v0.1.43 [INFO] [stderr] Checking num-complex v0.1.43 [INFO] [stderr] Checking rayon v0.7.1 [INFO] [stderr] Checking o2lsh v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/util.rs:42:17 [INFO] [stdout] | [INFO] [stdout] 42 | let f = try!(File::open(path)); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/util.rs:49:31 [INFO] [stdout] | [INFO] [stdout] 49 | line_vec[j] = try!(br.read_f32::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/util.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | let f = try!(File::open(path)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/util.rs:64:31 [INFO] [stdout] | [INFO] [stdout] 64 | line_vec[j] = try!(br.read_i32::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/util.rs:42:17 [INFO] [stdout] | [INFO] [stdout] 42 | let f = try!(File::open(path)); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/multi.rs:23:48 [INFO] [stdout] | [INFO] [stdout] 23 | vec![((i, 1), bucket_distance(*fi, (*hi as f32), 1, W)), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 23 - vec![((i, 1), bucket_distance(*fi, (*hi as f32), 1, W)), [INFO] [stdout] 23 + vec![((i, 1), bucket_distance(*fi, *hi as f32, 1, W)), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/util.rs:49:31 [INFO] [stdout] | [INFO] [stdout] 49 | line_vec[j] = try!(br.read_f32::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/util.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | let f = try!(File::open(path)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/util.rs:64:31 [INFO] [stdout] | [INFO] [stdout] 64 | line_vec[j] = try!(br.read_i32::()); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/multi.rs:24:49 [INFO] [stdout] | [INFO] [stdout] 24 | ((i, -1), bucket_distance(*fi, (*hi as f32), -1, W))] [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 24 - ((i, -1), bucket_distance(*fi, (*hi as f32), -1, W))] [INFO] [stdout] 24 + ((i, -1), bucket_distance(*fi, *hi as f32, -1, W))] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/multi.rs:23:48 [INFO] [stdout] | [INFO] [stdout] 23 | vec![((i, 1), bucket_distance(*fi, (*hi as f32), 1, W)), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 23 - vec![((i, 1), bucket_distance(*fi, (*hi as f32), 1, W)), [INFO] [stdout] 23 + vec![((i, 1), bucket_distance(*fi, *hi as f32, 1, W)), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/multi.rs:24:49 [INFO] [stdout] | [INFO] [stdout] 24 | ((i, -1), bucket_distance(*fi, (*hi as f32), -1, W))] [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 24 - ((i, -1), bucket_distance(*fi, (*hi as f32), -1, W))] [INFO] [stdout] 24 + ((i, -1), bucket_distance(*fi, *hi as f32, -1, W))] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:65:29 [INFO] [stdout] | [INFO] [stdout] 65 | hash_functions: Vec O + Sync + Send>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 65 | hash_functions: Vec O + Sync + Send>>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:65:29 [INFO] [stdout] | [INFO] [stdout] 65 | hash_functions: Vec O + Sync + Send>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 65 | hash_functions: Vec O + Sync + Send>>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:104:47 [INFO] [stdout] | [INFO] [stdout] 104 | pub fn new(data: &'a [T], hashes: Vec f32 + Sync + Send>>, ms: &'a [Vec]) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 104 | pub fn new(data: &'a [T], hashes: Vec f32 + Sync + Send>>, ms: &'a [Vec]) -> Self { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:130:53 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn new_build(data: &'a [T], hashes: Vec f32 + Sync + Send>>, ms: &'a [Vec]) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn new_build(data: &'a [T], hashes: Vec f32 + Sync + Send>>, ms: &'a [Vec]) -> Self { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:104:47 [INFO] [stdout] | [INFO] [stdout] 104 | pub fn new(data: &'a [T], hashes: Vec f32 + Sync + Send>>, ms: &'a [Vec]) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 104 | pub fn new(data: &'a [T], hashes: Vec f32 + Sync + Send>>, ms: &'a [Vec]) -> Self { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:130:53 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn new_build(data: &'a [T], hashes: Vec f32 + Sync + Send>>, ms: &'a [Vec]) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 130 | pub fn new_build(data: &'a [T], hashes: Vec f32 + Sync + Send>>, ms: &'a [Vec]) -> Self { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hashes.rs:16:55 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn get_hash_closure(length: usize, w: f32) -> Box) -> f32 + Send + Sync> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 16 | pub fn get_hash_closure(length: usize, w: f32) -> Box) -> f32 + Send + Sync> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hashes.rs:16:55 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn get_hash_closure(length: usize, w: f32) -> Box) -> f32 + Send + Sync> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 16 | pub fn get_hash_closure(length: usize, w: f32) -> Box) -> f32 + Send + Sync> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:219:28 [INFO] [stdout] | [INFO] [stdout] 219 | let funcs: Vec) -> f32 + Send + Sync>> = vec![Box::new(val)]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 219 | let funcs: Vec) -> f32 + Send + Sync>> = vec![Box::new(val)]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:233:28 [INFO] [stdout] | [INFO] [stdout] 233 | let funcs: Vec) -> f32 + Send + Sync>> = vec![Box::new(val)]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 233 | let funcs: Vec) -> f32 + Send + Sync>> = vec![Box::new(val)]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:247:28 [INFO] [stdout] | [INFO] [stdout] 247 | let funcs: Vec) -> f32 + Send + Sync>> = vec![Box::new(val)]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 247 | let funcs: Vec) -> f32 + Send + Sync>> = vec![Box::new(val)]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:263:28 [INFO] [stdout] | [INFO] [stdout] 263 | ... let funcs: Vec) -> f32 + Send + Sync>> = (1..num_hashes).map(|_| hashes::get_hash_closure(vec_length, 10.0)).colle... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 263 | let funcs: Vec) -> f32 + Send + Sync>> = (1..num_hashes).map(|_| hashes::get_hash_closure(vec_length, 10.0)).collect(); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:289:28 [INFO] [stdout] | [INFO] [stdout] 289 | let funcs: Vec) -> f32 + Send + Sync>> = vec![Box::new(val)]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 289 | let funcs: Vec) -> f32 + Send + Sync>> = vec![Box::new(val)]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/table.rs:135:17 [INFO] [stdout] | [INFO] [stdout] 135 | let mut bucket_chain = &mut (x_to_build.buckets[bucket_ind]); [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lsh.rs:88:32 [INFO] [stdout] | [INFO] [stdout] 88 | let funcs: Vec) -> f32 + Send + Sync>> = vec![Box::new(val)]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | let funcs: Vec) -> f32 + Send + Sync>> = vec![Box::new(val)]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lsh.rs:112:32 [INFO] [stdout] | [INFO] [stdout] 112 | let funcs: Vec) -> f32 + Send + Sync>> = vec![Box::new(val)]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 112 | let funcs: Vec) -> f32 + Send + Sync>> = vec![Box::new(val)]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/table.rs:135:17 [INFO] [stdout] | [INFO] [stdout] 135 | let mut bucket_chain = &mut (x_to_build.buckets[bucket_ind]); [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: unused variable: `x` [INFO] [stdout] --> src/table.rs:222:13 [INFO] [stdout] | [INFO] [stdout] 222 | let x = StandardLSHTable::new(&test_data, funcs, &ms); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/table.rs:235:13 [INFO] [stdout] | [INFO] [stdout] 235 | let x = StandardLSHTable::new_build(&test_data, funcs, &ms); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 11 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `z` [INFO] [stdout] --> src/multi.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | let z: Vec<_> = ii.take(3).collect(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_z` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0603]: trait `LSHTable` is private [INFO] [stdout] --> benches/mnist_benchmark.rs:31:35 [INFO] [stdout] | [INFO] [stdout] 31 | let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &... [INFO] [stdout] | ^^^^^^^^ private trait [INFO] [stdout] | [INFO] [stdout] note: the trait `LSHTable` is defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/table.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::lshtable::LSHTable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: consider importing this trait instead [INFO] [stdout] | [INFO] [stdout] 31 | let hash_table: o2lsh::lshtable::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] help: import `LSHTable` directly [INFO] [stdout] | [INFO] [stdout] 31 | let hash_table: o2lsh::lshtable::LSHTable = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0603]: trait `LSHTable` is private [INFO] [stdout] --> benches/mnist_benchmark.rs:31:92 [INFO] [stdout] | [INFO] [stdout] 31 | let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &... [INFO] [stdout] | ^^^^^^^^ private trait [INFO] [stdout] | [INFO] [stdout] note: the trait `LSHTable` is defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/table.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::lshtable::LSHTable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: consider importing this trait instead [INFO] [stdout] | [INFO] [stdout] 31 | let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::lshtable::LSHTable::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] help: import `LSHTable` directly [INFO] [stdout] | [INFO] [stdout] 31 | let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::lshtable::LSHTable(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0603]: trait `LSHTable` is private [INFO] [stdout] --> benches/mnist_benchmark.rs:68:39 [INFO] [stdout] | [INFO] [stdout] 68 | ... let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes,... [INFO] [stdout] | ^^^^^^^^ private trait [INFO] [stdout] | [INFO] [stdout] note: the trait `LSHTable` is defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/table.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::lshtable::LSHTable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: consider importing this trait instead [INFO] [stdout] | [INFO] [stdout] 68 | let hash_table: o2lsh::lshtable::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] help: import `LSHTable` directly [INFO] [stdout] | [INFO] [stdout] 68 | let hash_table: o2lsh::lshtable::LSHTable = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0603]: trait `LSHTable` is private [INFO] [stdout] --> benches/mnist_benchmark.rs:68:96 [INFO] [stdout] | [INFO] [stdout] 68 | ... let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes,... [INFO] [stdout] | ^^^^^^^^ private trait [INFO] [stdout] | [INFO] [stdout] note: the trait `LSHTable` is defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/table.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::lshtable::LSHTable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: consider importing this trait instead [INFO] [stdout] | [INFO] [stdout] 68 | let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::lshtable::LSHTable::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] help: import `LSHTable` directly [INFO] [stdout] | [INFO] [stdout] 68 | let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::lshtable::LSHTable(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> benches/mnist_benchmark.rs:31:21 [INFO] [stdout] | [INFO] [stdout] 31 | let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 31 | let hash_table: dyn o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> benches/mnist_benchmark.rs:31:54 [INFO] [stdout] | [INFO] [stdout] 31 | let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 31 | let hash_table: o2lsh::table::LSHTable, dyn Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> benches/mnist_benchmark.rs:31:78 [INFO] [stdout] | [INFO] [stdout] 31 | let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 31 | let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = ::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `new_build` found for trait object `dyn LSHTable<'_, _, _>` in the current scope [INFO] [stdout] --> benches/mnist_benchmark.rs:31:102 [INFO] [stdout] | [INFO] [stdout] 31 | ...2> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | ^^^^^^^^^ function or associated item not found in `dyn LSHTable<'_, _, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> benches/mnist_benchmark.rs:68:25 [INFO] [stdout] | [INFO] [stdout] 68 | ... let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes,... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 68 | let hash_table: dyn o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> benches/mnist_benchmark.rs:68:58 [INFO] [stdout] | [INFO] [stdout] 68 | ... let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes,... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 68 | let hash_table: o2lsh::table::LSHTable, dyn Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> benches/mnist_benchmark.rs:68:82 [INFO] [stdout] | [INFO] [stdout] 68 | ... let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes,... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 68 | let hash_table: o2lsh::table::LSHTable, Fn(&Vec) -> f32> = ::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `new_build` found for trait object `dyn LSHTable<'_, _, _>` in the current scope [INFO] [stdout] --> benches/mnist_benchmark.rs:68:106 [INFO] [stdout] | [INFO] [stdout] 68 | ...2> = o2lsh::table::LSHTable::new_build(&mnist_data, hash_boxes, &ms); [INFO] [stdout] | ^^^^^^^^^ function or associated item not found in `dyn LSHTable<'_, _, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 6 previous errors; 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0599, E0603. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0599`. [INFO] [stdout] [INFO] [stderr] error: could not compile `o2lsh` (bench "mnist_benchmark") due to 7 previous errors; 6 warnings emitted [INFO] running `Command { std: "docker" "inspect" "f5f83f66b729b9a173500cc64e08b498c537d0484b6d6e6ece2c881092be8bd6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f5f83f66b729b9a173500cc64e08b498c537d0484b6d6e6ece2c881092be8bd6", kill_on_drop: false }` [INFO] [stdout] f5f83f66b729b9a173500cc64e08b498c537d0484b6d6e6ece2c881092be8bd6