[INFO] fetching crate visioncortex 0.8.10...
[INFO] testing visioncortex-0.8.10 against try#33835004928d3bf65db4d4712e1330766263b0bd for pr-155739-1
[INFO] extracting crate visioncortex 0.8.10 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate visioncortex 0.8.10
[INFO] finished tweaking crates.io crate visioncortex 0.8.10
[INFO] tweaked toml for crates.io crate visioncortex 0.8.10 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate visioncortex 0.8.10 on toolchain 33835004928d3bf65db4d4712e1330766263b0bd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate visioncortex 0.8.10 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" "+33835004928d3bf65db4d4712e1330766263b0bd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] feca4f12cd1a16de1152926c26e369012e2472ad5ba7b4e3a631a11eb35c04d9
[INFO] running `Command { std: "docker" "start" "-a" "feca4f12cd1a16de1152926c26e369012e2472ad5ba7b4e3a631a11eb35c04d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "feca4f12cd1a16de1152926c26e369012e2472ad5ba7b4e3a631a11eb35c04d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "feca4f12cd1a16de1152926c26e369012e2472ad5ba7b4e3a631a11eb35c04d9", kill_on_drop: false }`
[INFO] [stdout] feca4f12cd1a16de1152926c26e369012e2472ad5ba7b4e3a631a11eb35c04d9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+33835004928d3bf65db4d4712e1330766263b0bd" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 12bdb3e7e3f7a4a26117170b761aff4278a12c8ae588d7cf5fe3db4cb4dab9e3
[INFO] running `Command { std: "docker" "start" "-a" "12bdb3e7e3f7a4a26117170b761aff4278a12c8ae588d7cf5fe3db4cb4dab9e3", kill_on_drop: false }`
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling roots v0.0.6
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling itertools v0.8.2
[INFO] [stderr]    Compiling flo_curves v0.3.1
[INFO] [stderr]    Compiling visioncortex v0.8.10 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/color_clusters/builder.rs:123:17
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn view(&self) -> ClustersView {
[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]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn view(&self) -> ClustersView<'_> {
[INFO] [stdout]     |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/color_clusters/builder.rs:248:17
[INFO] [stdout]     |
[INFO] [stdout] 248 |     pub fn view(&self) -> ClustersView {
[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] 248 |     pub fn view(&self) -> ClustersView<'_> {
[INFO] [stdout]     |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/color_clusters/container.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn view(&self) -> ClustersView {
[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 |     pub fn view(&self) -> ClustersView<'_> {
[INFO] [stdout]    |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/compound.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub fn iter(&self) -> std::slice::Iter<CompoundPathElement> {
[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] 31 |     pub fn iter(&self) -> std::slice::Iter<'_, CompoundPathElement> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/compound.rs:35:21
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<CompoundPathElement> {
[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] 35 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<'_, CompoundPathElement> {
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/paths.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn iter(&self) -> std::slice::Iter<T> {
[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] 46 |     pub fn iter(&self) -> std::slice::Iter<'_, T> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/spline.rs:30:17
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn iter(&self) -> std::slice::Iter<PointF64> {
[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] 30 |     pub fn iter(&self) -> std::slice::Iter<'_, PointF64> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/clusters.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub fn iter(&self) -> std::slice::Iter<PointI32> {
[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] 21 |     pub fn iter(&self) -> std::slice::Iter<'_, PointI32> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/clusters.rs:239:17
[INFO] [stdout]     |
[INFO] [stdout] 239 |     pub fn iter(&self) -> std::slice::Iter<Cluster> {
[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] 239 |     pub fn iter(&self) -> std::slice::Iter<'_, Cluster> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/image/format.rs:281:17
[INFO] [stdout]     |
[INFO] [stdout] 281 |     pub fn iter(&self) -> ColorImageIter {
[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] 281 |     pub fn iter(&self) -> ColorImageIter<'_> {
[INFO] [stdout]     |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.44s
[INFO] running `Command { std: "docker" "inspect" "12bdb3e7e3f7a4a26117170b761aff4278a12c8ae588d7cf5fe3db4cb4dab9e3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "12bdb3e7e3f7a4a26117170b761aff4278a12c8ae588d7cf5fe3db4cb4dab9e3", kill_on_drop: false }`
[INFO] [stdout] 12bdb3e7e3f7a4a26117170b761aff4278a12c8ae588d7cf5fe3db4cb4dab9e3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4712c422201778e3f830e5dc636ff327d5cc4fd38de1aa6c5daa5c1bac32b0f3
[INFO] running `Command { std: "docker" "start" "-a" "4712c422201778e3f830e5dc636ff327d5cc4fd38de1aa6c5daa5c1bac32b0f3", kill_on_drop: false }`
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/color_clusters/builder.rs:123:17
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn view(&self) -> ClustersView {
[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]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn view(&self) -> ClustersView<'_> {
[INFO] [stdout]     |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/color_clusters/builder.rs:248:17
[INFO] [stdout]     |
[INFO] [stdout] 248 |     pub fn view(&self) -> ClustersView {
[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] 248 |     pub fn view(&self) -> ClustersView<'_> {
[INFO] [stdout]     |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/color_clusters/container.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn view(&self) -> ClustersView {
[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 |     pub fn view(&self) -> ClustersView<'_> {
[INFO] [stdout]    |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/compound.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub fn iter(&self) -> std::slice::Iter<CompoundPathElement> {
[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] 31 |     pub fn iter(&self) -> std::slice::Iter<'_, CompoundPathElement> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/compound.rs:35:21
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<CompoundPathElement> {
[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] 35 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<'_, CompoundPathElement> {
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/paths.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn iter(&self) -> std::slice::Iter<T> {
[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] 46 |     pub fn iter(&self) -> std::slice::Iter<'_, T> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/spline.rs:30:17
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn iter(&self) -> std::slice::Iter<PointF64> {
[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] 30 |     pub fn iter(&self) -> std::slice::Iter<'_, PointF64> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/clusters.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub fn iter(&self) -> std::slice::Iter<PointI32> {
[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] 21 |     pub fn iter(&self) -> std::slice::Iter<'_, PointI32> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/clusters.rs:239:17
[INFO] [stdout]     |
[INFO] [stdout] 239 |     pub fn iter(&self) -> std::slice::Iter<Cluster> {
[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] 239 |     pub fn iter(&self) -> std::slice::Iter<'_, Cluster> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/image/format.rs:281:17
[INFO] [stdout]     |
[INFO] [stdout] 281 |     pub fn iter(&self) -> ColorImageIter {
[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] 281 |     pub fn iter(&self) -> ColorImageIter<'_> {
[INFO] [stdout]     |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling visioncortex v0.8.10 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/color_clusters/builder.rs:123:17
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn view(&self) -> ClustersView {
[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]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn view(&self) -> ClustersView<'_> {
[INFO] [stdout]     |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/color_clusters/builder.rs:248:17
[INFO] [stdout]     |
[INFO] [stdout] 248 |     pub fn view(&self) -> ClustersView {
[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] 248 |     pub fn view(&self) -> ClustersView<'_> {
[INFO] [stdout]     |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/color_clusters/container.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn view(&self) -> ClustersView {
[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 |     pub fn view(&self) -> ClustersView<'_> {
[INFO] [stdout]    |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/compound.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub fn iter(&self) -> std::slice::Iter<CompoundPathElement> {
[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] 31 |     pub fn iter(&self) -> std::slice::Iter<'_, CompoundPathElement> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/compound.rs:35:21
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<CompoundPathElement> {
[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] 35 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<'_, CompoundPathElement> {
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/paths.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn iter(&self) -> std::slice::Iter<T> {
[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] 46 |     pub fn iter(&self) -> std::slice::Iter<'_, T> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/path/spline.rs:30:17
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn iter(&self) -> std::slice::Iter<PointF64> {
[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] 30 |     pub fn iter(&self) -> std::slice::Iter<'_, PointF64> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/clusters.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub fn iter(&self) -> std::slice::Iter<PointI32> {
[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] 21 |     pub fn iter(&self) -> std::slice::Iter<'_, PointI32> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/clusters.rs:239:17
[INFO] [stdout]     |
[INFO] [stdout] 239 |     pub fn iter(&self) -> std::slice::Iter<Cluster> {
[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] 239 |     pub fn iter(&self) -> std::slice::Iter<'_, Cluster> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/image/format.rs:281:17
[INFO] [stdout]     |
[INFO] [stdout] 281 |     pub fn iter(&self) -> ColorImageIter {
[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] 281 |     pub fn iter(&self) -> ColorImageIter<'_> {
[INFO] [stdout]     |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.40s
[INFO] running `Command { std: "docker" "inspect" "4712c422201778e3f830e5dc636ff327d5cc4fd38de1aa6c5daa5c1bac32b0f3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4712c422201778e3f830e5dc636ff327d5cc4fd38de1aa6c5daa5c1bac32b0f3", kill_on_drop: false }`
[INFO] [stdout] 4712c422201778e3f830e5dc636ff327d5cc4fd38de1aa6c5daa5c1bac32b0f3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] cead573cedff4e2586abae24f12ac22fd60198a2f393fadf211a8b6614d920f6
[INFO] running `Command { std: "docker" "start" "-a" "cead573cedff4e2586abae24f12ac22fd60198a2f393fadf211a8b6614d920f6", kill_on_drop: false }`
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/color_clusters/builder.rs:123:17
[INFO] [stderr]     |
[INFO] [stderr] 123 |     pub fn view(&self) -> ClustersView {
[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]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 123 |     pub fn view(&self) -> ClustersView<'_> {
[INFO] [stderr]     |                                       ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/color_clusters/builder.rs:248:17
[INFO] [stderr]     |
[INFO] [stderr] 248 |     pub fn view(&self) -> ClustersView {
[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] 248 |     pub fn view(&self) -> ClustersView<'_> {
[INFO] [stderr]     |                                       ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/color_clusters/container.rs:23:17
[INFO] [stderr]    |
[INFO] [stderr] 23 |     pub fn view(&self) -> ClustersView {
[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 |     pub fn view(&self) -> ClustersView<'_> {
[INFO] [stderr]    |                                       ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/path/compound.rs:31:17
[INFO] [stderr]    |
[INFO] [stderr] 31 |     pub fn iter(&self) -> std::slice::Iter<CompoundPathElement> {
[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] 31 |     pub fn iter(&self) -> std::slice::Iter<'_, CompoundPathElement> {
[INFO] [stderr]    |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/path/compound.rs:35:21
[INFO] [stderr]    |
[INFO] [stderr] 35 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<CompoundPathElement> {
[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] 35 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<'_, CompoundPathElement> {
[INFO] [stderr]    |                                                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/path/paths.rs:46:17
[INFO] [stderr]    |
[INFO] [stderr] 46 |     pub fn iter(&self) -> std::slice::Iter<T> {
[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] 46 |     pub fn iter(&self) -> std::slice::Iter<'_, T> {
[INFO] [stderr]    |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/path/spline.rs:30:17
[INFO] [stderr]    |
[INFO] [stderr] 30 |     pub fn iter(&self) -> std::slice::Iter<PointF64> {
[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] 30 |     pub fn iter(&self) -> std::slice::Iter<'_, PointF64> {
[INFO] [stderr]    |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/clusters.rs:21:17
[INFO] [stderr]    |
[INFO] [stderr] 21 |     pub fn iter(&self) -> std::slice::Iter<PointI32> {
[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] 21 |     pub fn iter(&self) -> std::slice::Iter<'_, PointI32> {
[INFO] [stderr]    |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/clusters.rs:239:17
[INFO] [stderr]     |
[INFO] [stderr] 239 |     pub fn iter(&self) -> std::slice::Iter<Cluster> {
[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] 239 |     pub fn iter(&self) -> std::slice::Iter<'_, Cluster> {
[INFO] [stderr]     |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/image/format.rs:281:17
[INFO] [stderr]     |
[INFO] [stderr] 281 |     pub fn iter(&self) -> ColorImageIter {
[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] 281 |     pub fn iter(&self) -> ColorImageIter<'_> {
[INFO] [stderr]     |                                         ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `visioncortex` (lib) generated 10 warnings (run `cargo fix --lib -p visioncortex` to apply 10 suggestions)
[INFO] [stderr] warning: `visioncortex` (lib test) generated 10 warnings (10 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/visioncortex-06fc3682061ea2d3)
[INFO] [stdout] 
[INFO] [stdout] running 123 tests
[INFO] [stdout] test bound::tests::bounding_rect_1x1 ... ok
[INFO] [stdout] test bound::tests::bounding_rect_aspect_ratio_doubled ... ok
[INFO] [stdout] test bound::tests::enclosing_bound_test ... ok
[INFO] [stdout] test bound::tests::get_vec_of_boundary_points ... ok
[INFO] [stdout] test bound::tests::bounding_rect_2x2 ... ok
[INFO] [stdout] test bound::tests::merge_expand_noop ... ok
[INFO] [stdout] test bound::tests::merge_expand_merged ... ok
[INFO] [stdout] test bound::tests::merge_vertical_noop ... ok
[INFO] [stdout] test bound::tests::bounding_rect_clip ... ok
[INFO] [stdout] test bound::tests::point_on_boundary ... ok
[INFO] [stdout] test bound::tests::point_near_boundary ... ok
[INFO] [stdout] test clusters::tests::break_cluster ... ok
[INFO] [stdout] test clusters::tests::break_cluster_alt ... ok
[INFO] [stdout] test clusters::tests::break_cluster_cant_break ... ok
[INFO] [stdout] test clusters::tests::break_cluster_big ... ok
[INFO] [stdout] test clusters::tests::break_cluster_cant_break_2 ... ok
[INFO] [stdout] test clusters::tests::break_cluster_noop ... ok
[INFO] [stdout] test clusters::tests::clusters_3x3_diagonal ... ok
[INFO] [stdout] test image::format::tests::binary_image_crop ... ok
[INFO] [stdout] test disjoint_sets::tests::union_find ... ok
[INFO] [stdout] test clusters::tests::clusters_4x4 ... ok
[INFO] [stdout] test disjoint_sets::tests::group_cached ... ok
[INFO] [stdout] test image::sat::tests::sat_region_sum ... ok
[INFO] [stdout] test clusters::tests::clusters_3x3 ... ok
[INFO] [stdout] test image::format::tests::image_as_string ... ok
[INFO] [stdout] test disjoint_sets::tests::group_items ... ok
[INFO] [stdout] test image::sat::tests::sat_construct ... ok
[INFO] [stdout] test image::format::tests::rotate_test ... ok
[INFO] [stdout] test field::tests::empty ... ok
[INFO] [stdout] test bound::tests::merge_horizontal_noop ... ok
[INFO] [stdout] test field::tests::two_by_three ... ok
[INFO] [stdout] test bound::tests::merge_vertical ... ok
[INFO] [stdout] test path::paths::tests::test_path_to_svg_precision_f64 ... ok
[INFO] [stdout] test bound::tests::merge_horizontal ... ok
[INFO] [stdout] test numeric::matrix::test::test_matrix_display ... ok
[INFO] [stdout] test path::paths::tests::test_path_to_svg_precision_i32 ... ok
[INFO] [stdout] test numeric::matrix::test::test_matrix_inverse ... ok
[INFO] [stdout] test path::paths::tests::test_reduce ... ok
[INFO] [stdout] test path::paths::tests::test_reduce_diamond ... ok
[INFO] [stdout] test path::paths::tests::test_reduce_empty ... ok
[INFO] [stdout] test path::paths::tests::test_reduce_diamond_noop ... ok
[INFO] [stdout] test path::compound::tests::test_to_svg_string ... ok
[INFO] [stdout] test path::paths::tests::test_reduce_triangle_degenerate ... ok
[INFO] [stdout] test path::paths::tests::test_reduce_triangle_noop ... ok
[INFO] [stdout] test path::paths::tests::test_to_svg_string_offset ... ok
[INFO] [stdout] test path::paths::tests::test_reduce_shuffle ... ok
[INFO] [stdout] test path::paths::tests::test_to_svg_string_closed ... ok
[INFO] [stdout] test path::compound::tests::test_to_svg_string_compound ... ok
[INFO] [stdout] test image::sat::tests::sat_region_mean ... ok
[INFO] [stdout] test path::paths::tests::test_reduce_noop ... ok
[INFO] [stdout] test path::paths::tests::test_reduce_noop_2 ... ok
[INFO] [stdout] test path::paths::tests::test_to_svg_string ... ok
[INFO] [stdout] test image::embedding::test::test_embedding_1 ... ok
[INFO] [stdout] test path::reduce::tests::simplify_f64 ... ok
[INFO] [stdout] test path::spline::tests::test_spline_to_svg ... ok
[INFO] [stdout] test path::util::test::test_find_intersection_1 ... ok
[INFO] [stdout] test path::reduce::tests::simplify_one ... ok
[INFO] [stdout] test path::util::test::test_find_intersection_3 ... ok
[INFO] [stdout] test path::reduce::tests::simplify_i32 ... ok
[INFO] [stdout] test path::util::test::test_find_intersection_5 ... ok
[INFO] [stdout] test point::tests::pointf64_rotate ... ok
[INFO] [stdout] test point::tests::pointi32_rotate ... ok
[INFO] [stdout] test point::tests::test_round_f64 ... ok
[INFO] [stdout] test point::tests::test_round_i32 ... ok
[INFO] [stdout] test path::reduce::tests::simplify_zero ... ok
[INFO] [stdout] test path::util::test::test_find_intersection_4 ... ok
[INFO] [stdout] test path::util::test::test_find_intersection_2 ... ok
[INFO] [stdout] test path::walker::tests::spiral_walker ... ok
[INFO] [stdout] test sampler::tests::resample_image_3x3_to_2x2 ... ok
[INFO] [stdout] test sampler::tests::resample_image_2x2_to_4x2 ... ok
[INFO] [stdout] test sampler::tests::sampler_4 ... ok
[INFO] [stdout] test sampler::tests::sampler_crop_upsize ... ok
[INFO] [stdout] test sampler::tests::resample_image_2x2_to_3x2 ... ok
[INFO] [stdout] test sampler::tests::sampler_upsize ... ok
[INFO] [stdout] test sampler::tests::resample_image_2x2_to_4x2_crop ... ok
[INFO] [stdout] test sampler::tests::sampler_2 ... ok
[INFO] [stdout] test sampler::tests::sampler_crop ... ok
[INFO] [stdout] test shape::encoding::tests::bitstring_2x2 ... ok
[INFO] [stdout] test shape::encoding::tests::bitstring_4x4 ... ok
[INFO] [stdout] test shape::encoding::tests::bitstring_to_bits ... ok
[INFO] [stdout] test shape::encoding::tests::area_and_length ... ok
[INFO] [stdout] test shape::encoding::tests::binary_image_crop ... ok
[INFO] [stdout] test shape::encoding::tests::encode_2x2_4 ... ok
[INFO] [stdout] test shape::encoding::tests::bitstring_upscale ... ok
[INFO] [stdout] test shape::encoding::tests::encoding_1x1 ... ok
[INFO] [stdout] test shape::encoding::tests::hexstring_to_bits ... ok
[INFO] [stdout] test shape::encoding::tests::length_from_area ... ok
[INFO] [stdout] test shape::encoding::tests::encode_4x4 ... ok
[INFO] [stdout] test shape::encoding::tests::next_pow_of_four ... ok
[INFO] [stdout] test shape::encoding::tests::pow_of_four ... ok
[INFO] [stdout] test sampler::tests::sampler_upsize_non_exact ... ok
[INFO] [stdout] test shape::encoding::tests::encode_2x2 ... ok
[INFO] [stdout] test shape::geometry::tests::is_quadrilateral_test_1 ... ok
[INFO] [stdout] test shape::geometry::tests::is_quadrilateral_test_2 ... ok
[INFO] [stdout] test shape::encoding::tests::encode_decode ... ok
[INFO] [stdout] test shape::encoding::tests::encoding_diff ... ok
[INFO] [stdout] test shape::encoding::tests::popcount ... ok
[INFO] [stdout] test shape::geometry::tests::shape_is_not_circle_1 ... ok
[INFO] [stdout] test shape::geometry::tests::shape_is_not_circle_2 ... ok
[INFO] [stdout] test shape::geometry::tests::shape_circle_7 ... ok
[INFO] [stdout] test shape::operations::tests::image_diff ... ok
[INFO] [stdout] test shape::geometry::tests::shape_is_not_circle_0 ... ok
[INFO] [stdout] test shape::geometry::tests::shape_ellipse_7_5 ... ok
[INFO] [stdout] test shape::geometry::tests::shape_is_isosceles_triangle ... ok
[INFO] [stdout] test shape::geometry::tests::shape_circle_5 ... ok
[INFO] [stdout] test shape::geometry::tests::shape_is_circle ... ok
[INFO] [stdout] test shape::encoding::tests::encode_2x2_3 ... ok
[INFO] [stdout] test shape::encoding::tests::pow_of_two ... ok
[INFO] [stdout] test shape::geometry::tests::shape_circle_3 ... ok
[INFO] [stdout] test shape::geometry::tests::shape_ellipse_5_5 ... ok
[INFO] [stdout] test shape::rasterizer::tests::rasterize_triangle_1 ... ok
[INFO] [stdout] test shape::geometry::tests::is_quadrilateral_test_3 ... ok
[INFO] [stdout] test shape::processor::tests::average_shape ... ok
[INFO] [stdout] test shape::rasterizer::tests::rasterize_triangle_2 ... ok
[INFO] [stdout] test shape::geometry::tests::shape_is_circle_2 ... ok
[INFO] [stdout] test shape::rasterizer::tests::rasterize_triangle_3 ... ok
[INFO] [stdout] test shape::rasterizer::tests::test_triangle_1 ... ok
[INFO] [stdout] test shape::operations::tests::negative_image ... ok
[INFO] [stdout] test shape::rasterizer::tests::test_triangle_2 ... ok
[INFO] [stdout] test statistic::tests::test_stat_builder_1 ... ok
[INFO] [stdout] test statistic::tests::test_stat_builder_2 ... ok
[INFO] [stdout] test statistic::tests::test_stat_builder_3 ... ok
[INFO] [stdout] test transform::tests::rectangular_transform ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 123 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests visioncortex
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test src/disjoint_sets.rs - disjoint_sets::group_by (line 67) ... ok
[INFO] [stdout] test src/disjoint_sets.rs - disjoint_sets::group_by_cached_key (line 15) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.74s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "cead573cedff4e2586abae24f12ac22fd60198a2f393fadf211a8b6614d920f6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cead573cedff4e2586abae24f12ac22fd60198a2f393fadf211a8b6614d920f6", kill_on_drop: false }`
[INFO] [stdout] cead573cedff4e2586abae24f12ac22fd60198a2f393fadf211a8b6614d920f6
