[INFO] cloning repository https://github.com/lochuhsin/aether-vec
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lochuhsin/aether-vec" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flochuhsin%2Faether-vec", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flochuhsin%2Faether-vec'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4847e328f53f866c0a3cbfb09c31b3768d3d2ecc
[INFO] checking lochuhsin/aether-vec against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flochuhsin%2Faether-vec" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-3-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/lochuhsin/aether-vec
[INFO] finished tweaking git repo https://github.com/lochuhsin/aether-vec
[INFO] tweaked toml for git repo https://github.com/lochuhsin/aether-vec written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/lochuhsin/aether-vec on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/lochuhsin/aether-vec 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" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 41ae2ae434379b37860e21e9c8f40ae17c99b1b9e829e03e4a8d39bb1c2969d1
[INFO] running `Command { std: "docker" "start" "41ae2ae434379b37860e21e9c8f40ae17c99b1b9e829e03e4a8d39bb1c2969d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "41ae2ae434379b37860e21e9c8f40ae17c99b1b9e829e03e4a8d39bb1c2969d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "41ae2ae434379b37860e21e9c8f40ae17c99b1b9e829e03e4a8d39bb1c2969d1" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "41ae2ae434379b37860e21e9c8f40ae17c99b1b9e829e03e4a8d39bb1c2969d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "41ae2ae434379b37860e21e9c8f40ae17c99b1b9e829e03e4a8d39bb1c2969d1" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.33
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]     Checking bytemuck v1.24.0
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]    Compiling find-msvc-tools v0.1.7
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling camino v1.2.2
[INFO] [stderr]    Compiling portable-atomic v1.13.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]    Compiling toml_edit v0.23.10+spec-1.0.0
[INFO] [stderr]     Checking num-format v0.4.4
[INFO] [stderr]     Checking console v0.16.2
[INFO] [stderr]     Checking cargo-platform v0.3.2
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking dashmap v6.1.0
[INFO] [stderr]    Compiling cc v1.2.52
[INFO] [stderr]     Checking semver v1.0.27
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking md-5 v0.10.6
[INFO] [stderr]     Checking quick-xml v0.38.4
[INFO] [stderr]     Checking str_stack v0.1.0
[INFO] [stderr]     Checking rgb v0.8.52
[INFO] [stderr]     Checking atomic v0.6.1
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking uuid v1.19.0
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]     Checking page_size v0.6.0
[INFO] [stderr]     Checking shlex v1.3.0
[INFO] [stderr]     Checking rustc-demangle v0.1.26
[INFO] [stderr]     Checking fs2 v0.4.3
[INFO] [stderr]     Checking tempfile v3.24.0
[INFO] [stderr]     Checking server v0.1.0 (/opt/rustwide/workdir/server)
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]     Checking indicatif v0.18.3
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling alloca v0.4.0
[INFO] [stderr]     Checking criterion-plot v0.8.1
[INFO] [stderr]     Checking bstr v1.12.1
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking opener v0.8.3
[INFO] [stderr]    Compiling zerocopy-derive v0.8.33
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling rstest_macros v0.26.1
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking thiserror v2.0.17
[INFO] [stderr]     Checking clap v4.5.54
[INFO] [stderr]     Checking clap_complete v4.5.65
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking inferno v0.12.4
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rstest v0.26.1
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking fake v4.4.0
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking cargo_metadata v0.23.1
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking criterion v0.8.1
[INFO] [stderr]     Checking flamegraph v0.6.10
[INFO] [stderr]     Checking core v0.1.0 (/opt/rustwide/workdir/core)
[INFO] [stdout] warning: unused import: `Sender`
[INFO] [stdout]   --> core/src/database.rs:10:35
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crossbeam_channel::{Receiver, Sender, unbounded};
[INFO] [stdout]    |                                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sender`
[INFO] [stdout]   --> core/src/database.rs:10:35
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crossbeam_channel::{Receiver, Sender, unbounded};
[INFO] [stdout]    |                                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]    --> core/src/database.rs:106:37
[INFO] [stdout]     |
[INFO] [stdout] 106 |     pub fn delete_collection(&self, name: &str) -> Result<(), CollectionError> {
[INFO] [stdout]     |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vector`
[INFO] [stdout]   --> core/src/memtable.rs:58:22
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn search(&self, vector: &Vec<f32>, top_k: i32) -> Vec<Arc<Document>> {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_vector`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `top_k`
[INFO] [stdout]   --> core/src/memtable.rs:58:41
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn search(&self, vector: &Vec<f32>, top_k: i32) -> Vec<Arc<Document>> {
[INFO] [stdout]    |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_top_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query`
[INFO] [stdout]   --> core/src/search.rs:19:26
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn search(&self, query: &Vec<f32>, top_k: i32) -> Vec<Arc<Document>> {
[INFO] [stdout]    |                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `top_k`
[INFO] [stdout]   --> core/src/search.rs:19:44
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn search(&self, query: &Vec<f32>, top_k: i32) -> Vec<Arc<Document>> {
[INFO] [stdout]    |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_top_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> core/src/search.rs:23:25
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn fetch(&self, id: &u128) -> Option<Arc<Document>> {
[INFO] [stdout]    |                         ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `distance` is never read
[INFO] [stdout]    --> core/src/collection.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub struct Collection {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 123 |     distance: DistanceType,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `delete_collection` is never used
[INFO] [stdout]    --> core/src/collection.rs:252:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | impl CollectionManager {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 252 |     pub fn delete_collection(&mut self, name: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_worker_count` is never read
[INFO] [stdout]    --> core/src/compact.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub struct CompactionManager {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 102 |     max_worker_count: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `compact_manager` is never read
[INFO] [stdout]   --> core/src/database.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct AetherDB {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     compact_manager: CompactionManager,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `index_manager` and `distance` are never read
[INFO] [stdout]  --> core/src/search.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct SearchManager {
[INFO] [stdout]   |            ------------- fields in this struct
[INFO] [stdout] 7 |     index_manager: Arc<IndexManager>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 8 |     distance: DistanceType,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `std::io::Error`
[INFO] [stdout]   --> core/src/utils.rs:11:22
[INFO] [stdout]    |
[INFO] [stdout] 11 |         .map_err(|e| e.into())
[INFO] [stdout]    |                      ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 11 -         .map_err(|e| e.into())
[INFO] [stdout] 11 +         .map_err(|e| e)
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 11 -         .map_err(|e| e.into())
[INFO] [stdout] 11 +         .map_err(|e| <std::io::Error as Into<_>>::into(e))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `std::io::Error`
[INFO] [stdout]   --> core/src/utils.rs:18:36
[INFO] [stdout]    |
[INFO] [stdout] 18 |     options.open(path).map_err(|e| e.into())
[INFO] [stdout]    |                                    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 18 -     options.open(path).map_err(|e| e.into())
[INFO] [stdout] 18 +     options.open(path).map_err(|e| e)
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 18 -     options.open(path).map_err(|e| e.into())
[INFO] [stdout] 18 +     options.open(path).map_err(|e| <std::io::Error as Into<_>>::into(e))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `core` (lib test) due to 2 previous errors; 12 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]    --> core/src/database.rs:106:37
[INFO] [stdout]     |
[INFO] [stdout] 106 |     pub fn delete_collection(&self, name: &str) -> Result<(), CollectionError> {
[INFO] [stdout]     |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vector`
[INFO] [stdout]   --> core/src/memtable.rs:58:22
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn search(&self, vector: &Vec<f32>, top_k: i32) -> Vec<Arc<Document>> {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_vector`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `top_k`
[INFO] [stdout]   --> core/src/memtable.rs:58:41
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn search(&self, vector: &Vec<f32>, top_k: i32) -> Vec<Arc<Document>> {
[INFO] [stdout]    |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_top_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query`
[INFO] [stdout]   --> core/src/search.rs:19:26
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn search(&self, query: &Vec<f32>, top_k: i32) -> Vec<Arc<Document>> {
[INFO] [stdout]    |                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `top_k`
[INFO] [stdout]   --> core/src/search.rs:19:44
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn search(&self, query: &Vec<f32>, top_k: i32) -> Vec<Arc<Document>> {
[INFO] [stdout]    |                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_top_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> core/src/search.rs:23:25
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn fetch(&self, id: &u128) -> Option<Arc<Document>> {
[INFO] [stdout]    |                         ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `distance` is never read
[INFO] [stdout]    --> core/src/collection.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub struct Collection {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 123 |     distance: DistanceType,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `delete_collection` is never used
[INFO] [stdout]    --> core/src/collection.rs:252:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | impl CollectionManager {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 252 |     pub fn delete_collection(&mut self, name: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_worker_count` is never read
[INFO] [stdout]    --> core/src/compact.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub struct CompactionManager {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 102 |     max_worker_count: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `compact_manager` is never read
[INFO] [stdout]   --> core/src/database.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct AetherDB {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     compact_manager: CompactionManager,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `index_manager` and `distance` are never read
[INFO] [stdout]  --> core/src/search.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct SearchManager {
[INFO] [stdout]   |            ------------- fields in this struct
[INFO] [stdout] 7 |     index_manager: Arc<IndexManager>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 8 |     distance: DistanceType,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `std::io::Error`
[INFO] [stdout]   --> core/src/utils.rs:11:22
[INFO] [stdout]    |
[INFO] [stdout] 11 |         .map_err(|e| e.into())
[INFO] [stdout]    |                      ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 11 -         .map_err(|e| e.into())
[INFO] [stdout] 11 +         .map_err(|e| e)
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 11 -         .map_err(|e| e.into())
[INFO] [stdout] 11 +         .map_err(|e| <std::io::Error as Into<_>>::into(e))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `std::io::Error`
[INFO] [stdout]   --> core/src/utils.rs:18:36
[INFO] [stdout]    |
[INFO] [stdout] 18 |     options.open(path).map_err(|e| e.into())
[INFO] [stdout]    |                                    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 18 -     options.open(path).map_err(|e| e.into())
[INFO] [stdout] 18 +     options.open(path).map_err(|e| e)
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 18 -     options.open(path).map_err(|e| e.into())
[INFO] [stdout] 18 +     options.open(path).map_err(|e| <std::io::Error as Into<_>>::into(e))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `core` (lib) due to 2 previous errors; 12 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "41ae2ae434379b37860e21e9c8f40ae17c99b1b9e829e03e4a8d39bb1c2969d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "41ae2ae434379b37860e21e9c8f40ae17c99b1b9e829e03e4a8d39bb1c2969d1", kill_on_drop: false }`
[INFO] [stdout] 41ae2ae434379b37860e21e9c8f40ae17c99b1b9e829e03e4a8d39bb1c2969d1
