[INFO] fetching crate similari 0.26.2...
[INFO] testing similari-0.26.2 against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065-1
[INFO] extracting crate similari 0.26.2 into /workspace/builds/worker-3-tc2/source
[INFO] removed /workspace/builds/worker-3-tc2/source/.cargo/config
[INFO] started tweaking crates.io crate similari 0.26.2
[INFO] finished tweaking crates.io crate similari 0.26.2
[INFO] tweaked toml for crates.io crate similari 0.26.2 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate similari 0.26.2 on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate similari 0.26.2 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" "+0abe69e6c16114311cc2700e972492e64d69c28f" "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/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fbf2aba2e893b7010432dcf8ce9045959f075d0b4c5415cb03a58980006bb6f9
[INFO] running `Command { std: "docker" "start" "-a" "fbf2aba2e893b7010432dcf8ce9045959f075d0b4c5415cb03a58980006bb6f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fbf2aba2e893b7010432dcf8ce9045959f075d0b4c5415cb03a58980006bb6f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fbf2aba2e893b7010432dcf8ce9045959f075d0b4c5415cb03a58980006bb6f9", kill_on_drop: false }`
[INFO] [stdout] fbf2aba2e893b7010432dcf8ce9045959f075d0b4c5415cb03a58980006bb6f9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ba62035e82f301c55bf8a4d6800f248975bc149bc49e0c79e0362ea786e6d951
[INFO] running `Command { std: "docker" "start" "-a" "ba62035e82f301c55bf8a4d6800f248975bc149bc49e0c79e0362ea786e6d951", kill_on_drop: false }`
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling libc v0.2.139
[INFO] [stderr]    Compiling libm v0.2.2
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling target-lexicon v0.12.4
[INFO] [stderr]    Compiling scopeguard v1.1.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.40
[INFO] [stderr]    Compiling unicode-ident v1.0.1
[INFO] [stderr]    Compiling quote v1.0.20
[INFO] [stderr]    Compiling syn v1.0.98
[INFO] [stderr]    Compiling lock_api v0.4.7
[INFO] [stderr]    Compiling semver v1.0.12
[INFO] [stderr]    Compiling once_cell v1.17.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.10
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.9
[INFO] [stderr]    Compiling smallvec v1.9.0
[INFO] [stderr]    Compiling io-lifetimes v1.0.6
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling bytemuck v1.10.0
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling parking_lot_core v0.9.3
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling rustix v0.36.9
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling hash32 v0.2.1
[INFO] [stderr]    Compiling memoffset v0.8.0
[INFO] [stderr]    Compiling indexmap v1.9.2
[INFO] [stderr]    Compiling spin v0.9.4
[INFO] [stderr]    Compiling safe_arch v0.6.0
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling linux-raw-sys v0.1.4
[INFO] [stderr]    Compiling typenum v1.15.0
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling crossbeam-queue v0.3.5
[INFO] [stderr]    Compiling rayon-core v1.11.0
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling thiserror v1.0.39
[INFO] [stderr]    Compiling pyo3-build-config v0.18.1
[INFO] [stderr]    Compiling heapless v0.7.15
[INFO] [stderr]    Compiling wide v0.7.4
[INFO] [stderr]    Compiling crossbeam-channel v0.5.5
[INFO] [stderr]    Compiling aho-corasick v0.7.18
[INFO] [stderr]    Compiling crossbeam-deque v0.8.1
[INFO] [stderr]    Compiling getrandom v0.2.7
[INFO] [stderr]    Compiling num_cpus v1.15.0
[INFO] [stderr]    Compiling rand_core v0.6.3
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling num-complex v0.4.2
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]    Compiling paste v1.0.7
[INFO] [stderr]    Compiling anyhow v1.0.58
[INFO] [stderr]    Compiling ppv-lite86 v0.2.16
[INFO] [stderr]    Compiling rstar v0.9.3
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling regex-syntax v0.6.27
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling geo-types v0.7.8
[INFO] [stderr]    Compiling geographiclib-rs v0.2.1
[INFO] [stderr]    Compiling matrixmultiply v0.3.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling float_next_after v0.1.5
[INFO] [stderr]    Compiling integer-sqrt v0.1.5
[INFO] [stderr]    Compiling simba v0.8.0
[INFO] [stderr]    Compiling pyo3-ffi v0.18.1
[INFO] [stderr]    Compiling pyo3 v0.18.1
[INFO] [stderr]    Compiling similari v0.26.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling is-terminal v0.4.4
[INFO] [stderr]    Compiling unindent v0.1.10
[INFO] [stderr]    Compiling indoc v1.0.7
[INFO] [stderr]    Compiling humantime v2.1.0
[INFO] [stderr]    Compiling robust v0.2.3
[INFO] [stderr]    Compiling termcolor v1.2.0
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling crossbeam v0.8.1
[INFO] [stderr]    Compiling regex v1.6.0
[INFO] [stderr]    Compiling rayon v1.7.0
[INFO] [stderr]    Compiling geo v0.23.0
[INFO] [stderr]    Compiling ultraviolet v0.9.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling pyo3-macros-backend v0.18.1
[INFO] [stderr]    Compiling env_logger v0.10.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.39
[INFO] [stderr]    Compiling nalgebra-macros v0.2.0
[INFO] [stderr]    Compiling pyo3-macros v0.18.1
[INFO] [stderr]    Compiling pathfinding v4.2.1
[INFO] [stderr]    Compiling nalgebra v0.32.2
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/trackers/tracker_api.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let mut obj = self.get_auto_waste_obj_mut();
[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: field `0` is never read
[INFO] [stdout]   --> src/track/store.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 |     MergeResult(Result<()>),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Results` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 66 -     MergeResult(Result<()>),
[INFO] [stdout] 66 +     MergeResult(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]  --> src/utils/point.rs:1:20
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Point2D(f32, f32);
[INFO] [stdout]   |            ------- ^^^  ^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            fields in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing these fields
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/simple_api.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |         &mut self,
[INFO] [stdout]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 230 |     ) -> RwLockWriteGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 230 |     ) -> RwLockWriteGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/simple_api.rs:236:9
[INFO] [stdout]     |
[INFO] [stdout] 236 |         &mut self,
[INFO] [stdout]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 237 |     ) -> RwLockWriteGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 237 |     ) -> RwLockWriteGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/simple_api.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 244 |     ) -> RwLockReadGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 244 |     ) -> RwLockReadGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/simple_api.rs:249:9
[INFO] [stdout]     |
[INFO] [stdout] 249 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 250 |     ) -> RwLockReadGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 250 |     ) -> RwLockReadGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/batch_api.rs:320:27
[INFO] [stdout]     |
[INFO] [stdout] 320 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareSortTrackStore> {
[INFO] [stdout]     |                           ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 320 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/batch_api.rs:324:29
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareSortTrackStore> {
[INFO] [stdout]     |                             ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/batch_api.rs:328:23
[INFO] [stdout]     |
[INFO] [stdout] 328 |     fn get_main_store(&self) -> RwLockReadGuard<MiddlewareSortTrackStore> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 328 |     fn get_main_store(&self) -> RwLockReadGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/batch_api.rs:332:25
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn get_wasted_store(&self) -> RwLockReadGuard<MiddlewareSortTrackStore> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn get_wasted_store(&self) -> RwLockReadGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/simple_api.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |           &mut self,
[INFO] [stdout]     |           ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 273 |       ) -> RwLockWriteGuard<
[INFO] [stdout]     |  __________^
[INFO] [stdout] 274 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stdout] 275 | |     > {
[INFO] [stdout]     | |_____^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 273 |     ) -> RwLockWriteGuard<'_, 
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/simple_api.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |           &mut self,
[INFO] [stdout]     |           ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 281 |       ) -> RwLockWriteGuard<
[INFO] [stdout]     |  __________^
[INFO] [stdout] 282 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stdout] 283 | |     > {
[INFO] [stdout]     | |_____^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 281 |     ) -> RwLockWriteGuard<'_, 
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/simple_api.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 |           &self,
[INFO] [stdout]     |           ^^^^^ the lifetime is elided here
[INFO] [stdout] 289 |       ) -> RwLockReadGuard<
[INFO] [stdout]     |  __________^
[INFO] [stdout] 290 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stdout] 291 | |     > {
[INFO] [stdout]     | |_____^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 289 |     ) -> RwLockReadGuard<'_, 
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/simple_api.rs:296:9
[INFO] [stdout]     |
[INFO] [stdout] 296 |           &self,
[INFO] [stdout]     |           ^^^^^ the lifetime is elided here
[INFO] [stdout] 297 |       ) -> RwLockReadGuard<
[INFO] [stdout]     |  __________^
[INFO] [stdout] 298 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stdout] 299 | |     > {
[INFO] [stdout]     | |_____^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 297 |     ) -> RwLockReadGuard<'_, 
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/batch_api.rs:359:27
[INFO] [stdout]     |
[INFO] [stdout] 359 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                           ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 359 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/batch_api.rs:363:29
[INFO] [stdout]     |
[INFO] [stdout] 363 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                             ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 363 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/batch_api.rs:367:23
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn get_main_store(&self) -> RwLockReadGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn get_main_store(&self) -> RwLockReadGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/batch_api.rs:371:25
[INFO] [stdout]     |
[INFO] [stdout] 371 |     fn get_wasted_store(&self) -> RwLockReadGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 371 |     fn get_wasted_store(&self) -> RwLockReadGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trackers/tracker_api.rs:19:27
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                           ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trackers/tracker_api.rs:20:29
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                             ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trackers/tracker_api.rs:22:23
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn get_main_store(&self) -> RwLockReadGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn get_main_store(&self) -> RwLockReadGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trackers/tracker_api.rs:23:25
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn get_wasted_store(&self) -> RwLockReadGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn get_wasted_store(&self) -> RwLockReadGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [optimized + debuginfo] target(s) in 57.99s
[INFO] running `Command { std: "docker" "inspect" "ba62035e82f301c55bf8a4d6800f248975bc149bc49e0c79e0362ea786e6d951", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ba62035e82f301c55bf8a4d6800f248975bc149bc49e0c79e0362ea786e6d951", kill_on_drop: false }`
[INFO] [stdout] ba62035e82f301c55bf8a4d6800f248975bc149bc49e0c79e0362ea786e6d951
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e35e012cc1c87547a03b0a989340afb29404c373f3c3dfe2f3cd8564e780fd8c
[INFO] running `Command { std: "docker" "start" "-a" "e35e012cc1c87547a03b0a989340afb29404c373f3c3dfe2f3cd8564e780fd8c", kill_on_drop: false }`
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/trackers/tracker_api.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let mut obj = self.get_auto_waste_obj_mut();
[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: field `0` is never read
[INFO] [stdout]   --> src/track/store.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 |     MergeResult(Result<()>),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Results` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 66 -     MergeResult(Result<()>),
[INFO] [stdout] 66 +     MergeResult(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]  --> src/utils/point.rs:1:20
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Point2D(f32, f32);
[INFO] [stdout]   |            ------- ^^^  ^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            fields in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing these fields
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/simple_api.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |         &mut self,
[INFO] [stdout]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 230 |     ) -> RwLockWriteGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 230 |     ) -> RwLockWriteGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/simple_api.rs:236:9
[INFO] [stdout]     |
[INFO] [stdout] 236 |         &mut self,
[INFO] [stdout]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 237 |     ) -> RwLockWriteGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 237 |     ) -> RwLockWriteGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/simple_api.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 244 |     ) -> RwLockReadGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 244 |     ) -> RwLockReadGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/simple_api.rs:249:9
[INFO] [stdout]     |
[INFO] [stdout] 249 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 250 |     ) -> RwLockReadGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 250 |     ) -> RwLockReadGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/batch_api.rs:320:27
[INFO] [stdout]     |
[INFO] [stdout] 320 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareSortTrackStore> {
[INFO] [stdout]     |                           ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 320 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/batch_api.rs:324:29
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareSortTrackStore> {
[INFO] [stdout]     |                             ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/batch_api.rs:328:23
[INFO] [stdout]     |
[INFO] [stdout] 328 |     fn get_main_store(&self) -> RwLockReadGuard<MiddlewareSortTrackStore> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 328 |     fn get_main_store(&self) -> RwLockReadGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/batch_api.rs:332:25
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn get_wasted_store(&self) -> RwLockReadGuard<MiddlewareSortTrackStore> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn get_wasted_store(&self) -> RwLockReadGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/simple_api.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |           &mut self,
[INFO] [stdout]     |           ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 273 |       ) -> RwLockWriteGuard<
[INFO] [stdout]     |  __________^
[INFO] [stdout] 274 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stdout] 275 | |     > {
[INFO] [stdout]     | |_____^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 273 |     ) -> RwLockWriteGuard<'_, 
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/simple_api.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |           &mut self,
[INFO] [stdout]     |           ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 281 |       ) -> RwLockWriteGuard<
[INFO] [stdout]     |  __________^
[INFO] [stdout] 282 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stdout] 283 | |     > {
[INFO] [stdout]     | |_____^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 281 |     ) -> RwLockWriteGuard<'_, 
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/simple_api.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 |           &self,
[INFO] [stdout]     |           ^^^^^ the lifetime is elided here
[INFO] [stdout] 289 |       ) -> RwLockReadGuard<
[INFO] [stdout]     |  __________^
[INFO] [stdout] 290 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stdout] 291 | |     > {
[INFO] [stdout]     | |_____^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 289 |     ) -> RwLockReadGuard<'_, 
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/simple_api.rs:296:9
[INFO] [stdout]     |
[INFO] [stdout] 296 |           &self,
[INFO] [stdout]     |           ^^^^^ the lifetime is elided here
[INFO] [stdout] 297 |       ) -> RwLockReadGuard<
[INFO] [stdout]     |  __________^
[INFO] [stdout] 298 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stdout] 299 | |     > {
[INFO] [stdout]     | |_____^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 297 |     ) -> RwLockReadGuard<'_, 
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/batch_api.rs:359:27
[INFO] [stdout]     |
[INFO] [stdout] 359 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                           ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 359 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/batch_api.rs:363:29
[INFO] [stdout]     |
[INFO] [stdout] 363 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                             ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 363 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/batch_api.rs:367:23
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn get_main_store(&self) -> RwLockReadGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn get_main_store(&self) -> RwLockReadGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/batch_api.rs:371:25
[INFO] [stdout]     |
[INFO] [stdout] 371 |     fn get_wasted_store(&self) -> RwLockReadGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 371 |     fn get_wasted_store(&self) -> RwLockReadGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trackers/tracker_api.rs:19:27
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                           ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trackers/tracker_api.rs:20:29
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                             ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trackers/tracker_api.rs:22:23
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn get_main_store(&self) -> RwLockReadGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn get_main_store(&self) -> RwLockReadGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trackers/tracker_api.rs:23:25
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn get_wasted_store(&self) -> RwLockReadGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn get_wasted_store(&self) -> RwLockReadGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling similari v0.26.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/trackers/tracker_api.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let mut obj = self.get_auto_waste_obj_mut();
[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: field `0` is never read
[INFO] [stdout]   --> src/track/store.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 |     MergeResult(Result<()>),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Results` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 66 -     MergeResult(Result<()>),
[INFO] [stdout] 66 +     MergeResult(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]  --> src/utils/point.rs:1:20
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Point2D(f32, f32);
[INFO] [stdout]   |            ------- ^^^  ^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            fields in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing these fields
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/simple_api.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |         &mut self,
[INFO] [stdout]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 230 |     ) -> RwLockWriteGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 230 |     ) -> RwLockWriteGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/simple_api.rs:236:9
[INFO] [stdout]     |
[INFO] [stdout] 236 |         &mut self,
[INFO] [stdout]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 237 |     ) -> RwLockWriteGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 237 |     ) -> RwLockWriteGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/simple_api.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 244 |     ) -> RwLockReadGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 244 |     ) -> RwLockReadGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/simple_api.rs:249:9
[INFO] [stdout]     |
[INFO] [stdout] 249 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 250 |     ) -> RwLockReadGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 250 |     ) -> RwLockReadGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/batch_api.rs:320:27
[INFO] [stdout]     |
[INFO] [stdout] 320 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareSortTrackStore> {
[INFO] [stdout]     |                           ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 320 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/batch_api.rs:324:29
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareSortTrackStore> {
[INFO] [stdout]     |                             ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 324 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/batch_api.rs:328:23
[INFO] [stdout]     |
[INFO] [stdout] 328 |     fn get_main_store(&self) -> RwLockReadGuard<MiddlewareSortTrackStore> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 328 |     fn get_main_store(&self) -> RwLockReadGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/sort/batch_api.rs:332:25
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn get_wasted_store(&self) -> RwLockReadGuard<MiddlewareSortTrackStore> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn get_wasted_store(&self) -> RwLockReadGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/simple_api.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |           &mut self,
[INFO] [stdout]     |           ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 273 |       ) -> RwLockWriteGuard<
[INFO] [stdout]     |  __________^
[INFO] [stdout] 274 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stdout] 275 | |     > {
[INFO] [stdout]     | |_____^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 273 |     ) -> RwLockWriteGuard<'_, 
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/simple_api.rs:280:9
[INFO] [stdout]     |
[INFO] [stdout] 280 |           &mut self,
[INFO] [stdout]     |           ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 281 |       ) -> RwLockWriteGuard<
[INFO] [stdout]     |  __________^
[INFO] [stdout] 282 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stdout] 283 | |     > {
[INFO] [stdout]     | |_____^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 281 |     ) -> RwLockWriteGuard<'_, 
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/simple_api.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 |           &self,
[INFO] [stdout]     |           ^^^^^ the lifetime is elided here
[INFO] [stdout] 289 |       ) -> RwLockReadGuard<
[INFO] [stdout]     |  __________^
[INFO] [stdout] 290 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stdout] 291 | |     > {
[INFO] [stdout]     | |_____^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 289 |     ) -> RwLockReadGuard<'_, 
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/simple_api.rs:296:9
[INFO] [stdout]     |
[INFO] [stdout] 296 |           &self,
[INFO] [stdout]     |           ^^^^^ the lifetime is elided here
[INFO] [stdout] 297 |       ) -> RwLockReadGuard<
[INFO] [stdout]     |  __________^
[INFO] [stdout] 298 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stdout] 299 | |     > {
[INFO] [stdout]     | |_____^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 297 |     ) -> RwLockReadGuard<'_, 
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/batch_api.rs:359:27
[INFO] [stdout]     |
[INFO] [stdout] 359 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                           ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 359 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/batch_api.rs:363:29
[INFO] [stdout]     |
[INFO] [stdout] 363 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                             ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 363 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/batch_api.rs:367:23
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn get_main_store(&self) -> RwLockReadGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn get_main_store(&self) -> RwLockReadGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trackers/visual_sort/batch_api.rs:371:25
[INFO] [stdout]     |
[INFO] [stdout] 371 |     fn get_wasted_store(&self) -> RwLockReadGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 371 |     fn get_wasted_store(&self) -> RwLockReadGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> src/trackers/batch.rs:116:9
[INFO] [stdout]     |
[INFO] [stdout] 116 |         drop(batch);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&HashMap<u64, Vec<Universal2DBox>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dropping_references)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 116 -         drop(batch);
[INFO] [stdout] 116 +         let _ = batch;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trackers/tracker_api.rs:19:27
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                           ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trackers/tracker_api.rs:20:29
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                             ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trackers/tracker_api.rs:22:23
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn get_main_store(&self) -> RwLockReadGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn get_main_store(&self) -> RwLockReadGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trackers/tracker_api.rs:23:25
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn get_wasted_store(&self) -> RwLockReadGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn get_wasted_store(&self) -> RwLockReadGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [optimized + debuginfo] target(s) in 37.46s
[INFO] running `Command { std: "docker" "inspect" "e35e012cc1c87547a03b0a989340afb29404c373f3c3dfe2f3cd8564e780fd8c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e35e012cc1c87547a03b0a989340afb29404c373f3c3dfe2f3cd8564e780fd8c", kill_on_drop: false }`
[INFO] [stdout] e35e012cc1c87547a03b0a989340afb29404c373f3c3dfe2f3cd8564e780fd8c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 8b89e219dff6be8c2097da7715a801dc0558847074a679ee038a6d85df7ddb0f
[INFO] running `Command { std: "docker" "start" "-a" "8b89e219dff6be8c2097da7715a801dc0558847074a679ee038a6d85df7ddb0f", kill_on_drop: false }`
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/trackers/tracker_api.rs:28:13
[INFO] [stderr]    |
[INFO] [stderr] 28 |         let mut obj = self.get_auto_waste_obj_mut();
[INFO] [stderr]    |             ----^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/track/store.rs:66:17
[INFO] [stderr]    |
[INFO] [stderr] 66 |     MergeResult(Result<()>),
[INFO] [stderr]    |     ----------- ^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Results` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 66 -     MergeResult(Result<()>),
[INFO] [stderr] 66 +     MergeResult(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: fields `0` and `1` are never read
[INFO] [stderr]  --> src/utils/point.rs:1:20
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub struct Point2D(f32, f32);
[INFO] [stderr]   |            ------- ^^^  ^^^
[INFO] [stderr]   |            |
[INFO] [stderr]   |            fields in this struct
[INFO] [stderr]   |
[INFO] [stderr]   = help: consider removing these fields
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/sort/simple_api.rs:229:9
[INFO] [stderr]     |
[INFO] [stderr] 229 |         &mut self,
[INFO] [stderr]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] 230 |     ) -> RwLockWriteGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 230 |     ) -> RwLockWriteGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stderr]     |                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/sort/simple_api.rs:236:9
[INFO] [stderr]     |
[INFO] [stderr] 236 |         &mut self,
[INFO] [stderr]     |         ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] 237 |     ) -> RwLockWriteGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 237 |     ) -> RwLockWriteGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>>
[INFO] [stderr]     |                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/sort/simple_api.rs:243:9
[INFO] [stderr]     |
[INFO] [stderr] 243 |         &self,
[INFO] [stderr]     |         ^^^^^ the lifetime is elided here
[INFO] [stderr] 244 |     ) -> RwLockReadGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 244 |     ) -> RwLockReadGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stderr]     |                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/sort/simple_api.rs:249:9
[INFO] [stderr]     |
[INFO] [stderr] 249 |         &self,
[INFO] [stderr]     |         ^^^^^ the lifetime is elided here
[INFO] [stderr] 250 |     ) -> RwLockReadGuard<TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 250 |     ) -> RwLockReadGuard<'_, TrackStore<SortAttributes, SortMetric, Universal2DBox, NoopNotifier>> {
[INFO] [stderr]     |                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/sort/batch_api.rs:320:27
[INFO] [stderr]     |
[INFO] [stderr] 320 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareSortTrackStore> {
[INFO] [stderr]     |                           ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                           |
[INFO] [stderr]     |                           the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 320 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stderr]     |                                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/sort/batch_api.rs:324:29
[INFO] [stderr]     |
[INFO] [stderr] 324 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareSortTrackStore> {
[INFO] [stderr]     |                             ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                             |
[INFO] [stderr]     |                             the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 324 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stderr]     |                                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/sort/batch_api.rs:328:23
[INFO] [stderr]     |
[INFO] [stderr] 328 |     fn get_main_store(&self) -> RwLockReadGuard<MiddlewareSortTrackStore> {
[INFO] [stderr]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 328 |     fn get_main_store(&self) -> RwLockReadGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stderr]     |                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/sort/batch_api.rs:332:25
[INFO] [stderr]     |
[INFO] [stderr] 332 |     fn get_wasted_store(&self) -> RwLockReadGuard<MiddlewareSortTrackStore> {
[INFO] [stderr]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 332 |     fn get_wasted_store(&self) -> RwLockReadGuard<'_, MiddlewareSortTrackStore> {
[INFO] [stderr]     |                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/visual_sort/simple_api.rs:272:9
[INFO] [stderr]     |
[INFO] [stderr] 272 |           &mut self,
[INFO] [stderr]     |           ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] 273 |       ) -> RwLockWriteGuard<
[INFO] [stderr]     |  __________^
[INFO] [stderr] 274 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stderr] 275 | |     > {
[INFO] [stderr]     | |_____^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 273 |     ) -> RwLockWriteGuard<'_, 
[INFO] [stderr]     |                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/visual_sort/simple_api.rs:280:9
[INFO] [stderr]     |
[INFO] [stderr] 280 |           &mut self,
[INFO] [stderr]     |           ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] 281 |       ) -> RwLockWriteGuard<
[INFO] [stderr]     |  __________^
[INFO] [stderr] 282 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stderr] 283 | |     > {
[INFO] [stderr]     | |_____^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 281 |     ) -> RwLockWriteGuard<'_, 
[INFO] [stderr]     |                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/visual_sort/simple_api.rs:288:9
[INFO] [stderr]     |
[INFO] [stderr] 288 |           &self,
[INFO] [stderr]     |           ^^^^^ the lifetime is elided here
[INFO] [stderr] 289 |       ) -> RwLockReadGuard<
[INFO] [stderr]     |  __________^
[INFO] [stderr] 290 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stderr] 291 | |     > {
[INFO] [stderr]     | |_____^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 289 |     ) -> RwLockReadGuard<'_, 
[INFO] [stderr]     |                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/visual_sort/simple_api.rs:296:9
[INFO] [stderr]     |
[INFO] [stderr] 296 |           &self,
[INFO] [stderr]     |           ^^^^^ the lifetime is elided here
[INFO] [stderr] 297 |       ) -> RwLockReadGuard<
[INFO] [stderr]     |  __________^
[INFO] [stderr] 298 | |         TrackStore<VisualAttributes, VisualMetric, VisualObservationAttributes, NoopNotifier>,
[INFO] [stderr] 299 | |     > {
[INFO] [stderr]     | |_____^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 297 |     ) -> RwLockReadGuard<'_, 
[INFO] [stderr]     |                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/visual_sort/batch_api.rs:359:27
[INFO] [stderr]     |
[INFO] [stderr] 359 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stderr]     |                           ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                           |
[INFO] [stderr]     |                           the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 359 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stderr]     |                                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/visual_sort/batch_api.rs:363:29
[INFO] [stderr]     |
[INFO] [stderr] 363 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stderr]     |                             ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                             |
[INFO] [stderr]     |                             the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 363 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stderr]     |                                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/visual_sort/batch_api.rs:367:23
[INFO] [stderr]     |
[INFO] [stderr] 367 |     fn get_main_store(&self) -> RwLockReadGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stderr]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 367 |     fn get_main_store(&self) -> RwLockReadGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stderr]     |                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trackers/visual_sort/batch_api.rs:371:25
[INFO] [stderr]     |
[INFO] [stderr] 371 |     fn get_wasted_store(&self) -> RwLockReadGuard<MiddlewareVisualSortTrackStore> {
[INFO] [stderr]     |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 371 |     fn get_wasted_store(&self) -> RwLockReadGuard<'_, MiddlewareVisualSortTrackStore> {
[INFO] [stderr]     |                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/trackers/tracker_api.rs:19:27
[INFO] [stderr]    |
[INFO] [stderr] 19 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stderr]    |                           ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                           |
[INFO] [stderr]    |                           the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 19 |     fn get_main_store_mut(&mut self) -> RwLockWriteGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stderr]    |                                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/trackers/tracker_api.rs:20:29
[INFO] [stderr]    |
[INFO] [stderr] 20 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stderr]    |                             ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                             |
[INFO] [stderr]    |                             the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 20 |     fn get_wasted_store_mut(&mut self) -> RwLockWriteGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stderr]    |                                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/trackers/tracker_api.rs:22:23
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn get_main_store(&self) -> RwLockReadGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stderr]    |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                       |
[INFO] [stderr]    |                       the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn get_main_store(&self) -> RwLockReadGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stderr]    |                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/trackers/tracker_api.rs:23:25
[INFO] [stderr]    |
[INFO] [stderr] 23 |     fn get_wasted_store(&self) -> RwLockReadGuard<TrackStore<TA, M, OA, N>>;
[INFO] [stderr]    |                         ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                         |
[INFO] [stderr]    |                         the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 23 |     fn get_wasted_store(&self) -> RwLockReadGuard<'_, TrackStore<TA, M, OA, N>>;
[INFO] [stderr]    |                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stderr]    --> src/trackers/batch.rs:116:9
[INFO] [stderr]     |
[INFO] [stderr] 116 |         drop(batch);
[INFO] [stderr]     |         ^^^^^-----^
[INFO] [stderr]     |              |
[INFO] [stderr]     |              argument has type `&HashMap<u64, Vec<Universal2DBox>>`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dropping_references)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the expression or result
[INFO] [stderr]     |
[INFO] [stderr] 116 -         drop(batch);
[INFO] [stderr] 116 +         let _ = batch;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `similari` (lib) generated 23 warnings (run `cargo fix --lib -p similari` to apply 21 suggestions)
[INFO] [stderr] warning: `similari` (lib test) generated 24 warnings (23 duplicates)
[INFO] [stderr]     Finished `test` profile [optimized + debuginfo] target(s) in 0.21s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/similari-6e0029a4c21fe886)
[INFO] [stdout] 
[INFO] [stdout] running 81 tests
[INFO] [stdout] test distance::tests::cosine_distances ... ok
[INFO] [stdout] test track::builder::tests::builder_noid ... ok
[INFO] [stdout] test distance::tests::euclidean_distances ... ok
[INFO] [stdout] test track::store::store_tests::tests::add_track_dup_id ... ok
[INFO] [stdout] test track::builder::tests::builder_id ... ok
[INFO] [stdout] test track::tests::get_classes ... ok
[INFO] [stdout] test track::tests::attr_metric_update_recover ... ok
[INFO] [stdout] test track::tests::init ... ok
[INFO] [stdout] test track::tests::merge_history ... ok
[INFO] [stdout] test track::tests::merge_other_feature_class ... ok
[INFO] [stdout] test track::store::store_tests::tests::add_track_ok ... ok
[INFO] [stdout] test track::store::store_tests::tests::merge_own_tracks ... ok
[INFO] [stdout] test track::tests::lookup ... ok
[INFO] [stdout] test track::tests::unit_track ... ok
[INFO] [stdout] test track::voting::topn::tests::default_voting ... ok
[INFO] [stdout] test track::voting::topn::tests::two_query_vecs ... ok
[INFO] [stdout] test track::tests::merge_same ... ok
[INFO] [stdout] test track::store::store_tests::tests::merge_ext_tracks ... ok
[INFO] [stdout] test track::utils::tests::conv_tests ... ok
[INFO] [stdout] test track::tests::track_distances ... ok
[INFO] [stdout] test track::store::store_tests::tests::all_similarity ... ok
[INFO] [stdout] test trackers::sort::metric::tests::confidence_used_in_distance_calculation ... ok
[INFO] [stdout] test track::store::store_tests::tests::sharding_n_fetch ... ok
[INFO] [stdout] test trackers::batch::tests::test ... ok
[INFO] [stdout] test trackers::sort::voting::voting_tests::test_voting ... ok
[INFO] [stdout] test trackers::sort::track_tests::construct ... ok
[INFO] [stdout] test trackers::epoch_db::tests::test_epoch_db ... ok
[INFO] [stdout] test trackers::sort::simple_api::tests::clear_wasted_tracks ... ok
[INFO] [stdout] test trackers::sort::simple_api::tests::sort_with_scenes ... ok
[INFO] [stdout] test trackers::spatio_temporal_constraints::tests::test ... ok
[INFO] [stdout] test trackers::sort::simple_api::tests::idle_tracks ... ok
[INFO] [stdout] test trackers::sort::metric::tests::confidence_preserved_during_optimization ... ok
[INFO] [stdout] test track::store::store_tests::tests::baked_similarity ... ok
[INFO] [stdout] test trackers::sort::simple_api::tests::sort ... ok
[INFO] [stdout] test trackers::visual_sort::batch_api::tests::test ... ok
[INFO] [stdout] test trackers::visual_sort::metric::optimize::optimization_regular ... ok
[INFO] [stdout] test track::store::store_tests::tests::new_store_10_shards ... ok
[INFO] [stdout] test trackers::sort::batch_api::tests::new_drop ... ok
[INFO] [stdout] test trackers::visual_sort::metric::optimize::optimize_low_quality ... ok
[INFO] [stdout] test trackers::visual_sort::metric::optimize::optimize_small_box ... ok
[INFO] [stdout] test trackers::visual_sort::metric::optimize::optimize_overlap ... ok
[INFO] [stdout] test trackers::visual_sort::observation_attributes::tests::operations ... ok
[INFO] [stdout] test trackers::visual_sort::track_attributes::tests::attribute_operations ... ok
[INFO] [stdout] test trackers::visual_sort::options::tests::visual_sort_options_builder ... ok
[INFO] [stdout] test trackers::visual_sort::voting::voting_tests::test_positional_match ... ok
[INFO] [stdout] test trackers::visual_sort::voting::voting_tests::test_visual_competitive_match ... ok
[INFO] [stdout] test trackers::visual_sort::voting::voting_tests::test_visual_competitive_match_2 ... ok
[INFO] [stdout] test trackers::visual_sort::voting::voting_tests::test_visual_positional_competitive_match_2 ... ok
[INFO] [stdout] test trackers::visual_sort::voting::voting_tests::test_visual_positional_competitive_match_no_pos_metric ... ok
[INFO] [stdout] test trackers::visual_sort::metric::metric_tests::metric_iou ... ok
[INFO] [stdout] test utils::bbox::polygons::corner_case_f32 ... ok
[INFO] [stdout] test utils::bbox::polygons::transform ... ok
[INFO] [stdout] test utils::bbox::tests::dist_is_1 ... ok
[INFO] [stdout] test utils::bbox::tests::dist_less_1 ... ok
[INFO] [stdout] test track::store::store_tests::tests::lookup ... ok
[INFO] [stdout] test utils::bbox::tests::dist_same ... ok
[INFO] [stdout] test utils::bbox::tests::test_iou ... ok
[INFO] [stdout] test utils::bbox::tests::test_not_too_far ... ok
[INFO] [stdout] test utils::bbox::tests::test_radius ... ok
[INFO] [stdout] test utils::bbox::tests::test_same ... ok
[INFO] [stdout] test utils::bbox::tests_normalize_angle::normalize ... ok
[INFO] [stdout] test trackers::visual_sort::simple_api::tests::visual_sort ... ok
[INFO] [stdout] test utils::bbox::tests::test_too_far ... ok
[INFO] [stdout] test track::store::store_tests::tests::new_default_store ... ok
[INFO] [stdout] test utils::kalman::kalman_2d_box::tests::constructor ... ok
[INFO] [stdout] test utils::kalman::kalman_2d_box::tests::gating_distance ... ok
[INFO] [stdout] test trackers::visual_sort::voting::voting_tests::test_visual_match ... ok
[INFO] [stdout] test utils::clipping::bbox_own_areas::tests::test ... ok
[INFO] [stdout] test trackers::visual_sort::metric::metric_tests::pos_metric_far ... ok
[INFO] [stdout] test utils::kalman::kalman_2d_box::tests::step ... ok
[INFO] [stdout] test utils::kalman::kalman_2d_point::tests::test ... ok
[INFO] [stdout] test utils::clipping::tests::clip ... ok
[INFO] [stdout] test trackers::visual_sort::metric::metric_tests::visual_quality_low ... ok
[INFO] [stdout] test trackers::visual_sort::metric::metric_tests::visual_own_area_percentage_low ... ok
[INFO] [stdout] test trackers::visual_sort::metric::metric_tests::visual_track_too_short ... ok
[INFO] [stdout] test trackers::visual_sort::metric::metric_tests::visual_track_long_enough ... ok
[INFO] [stdout] test trackers::visual_sort::metric::metric_tests::metric_maha ... ok
[INFO] [stdout] test trackers::visual_sort::metric::metric_tests::visual_track_small_bbox ... ok
[INFO] [stdout] test track::tests::attribute_compatible_match ... ok
[INFO] [stdout] test track::store::store_tests::tests::general_ops ... ok
[INFO] [stdout] test track::store::track_distance::tests::result_iterators ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 81 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests similari
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "8b89e219dff6be8c2097da7715a801dc0558847074a679ee038a6d85df7ddb0f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8b89e219dff6be8c2097da7715a801dc0558847074a679ee038a6d85df7ddb0f", kill_on_drop: false }`
[INFO] [stdout] 8b89e219dff6be8c2097da7715a801dc0558847074a679ee038a6d85df7ddb0f
