[INFO] cloning repository https://github.com/happybigmtn/robopoker [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/happybigmtn/robopoker" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhappybigmtn%2Frobopoker", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhappybigmtn%2Frobopoker'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ba24ad5de9f2ccdf0db5f8f7d77d1d019a864c1a [INFO] testing happybigmtn/robopoker against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhappybigmtn%2Frobopoker" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/happybigmtn/robopoker [INFO] finished tweaking git repo https://github.com/happybigmtn/robopoker [INFO] tweaked toml for git repo https://github.com/happybigmtn/robopoker written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/happybigmtn/robopoker on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/happybigmtn/robopoker 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" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b74ac584e728ee52ceebbad4e45de815f930cf0e5ebcaf925fcd2ea5d30253cd [INFO] running `Command { std: "docker" "start" "-a" "b74ac584e728ee52ceebbad4e45de815f930cf0e5ebcaf925fcd2ea5d30253cd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b74ac584e728ee52ceebbad4e45de815f930cf0e5ebcaf925fcd2ea5d30253cd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b74ac584e728ee52ceebbad4e45de815f930cf0e5ebcaf925fcd2ea5d30253cd", kill_on_drop: false }` [INFO] [stdout] b74ac584e728ee52ceebbad4e45de815f930cf0e5ebcaf925fcd2ea5d30253cd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 82bb5636c5b2e6c6e7a80cc3eba6a03c6c87f52e5cb77dea00b3c63c17a74c9e [INFO] running `Command { std: "docker" "start" "-a" "82bb5636c5b2e6c6e7a80cc3eba6a03c6c87f52e5cb77dea00b3c63c17a74c9e", kill_on_drop: false }` [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Compiling smallvec v1.15.0 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling zerocopy v0.8.25 [INFO] [stderr] Compiling jobserver v0.1.33 [INFO] [stderr] Compiling signal-hook-registry v1.4.5 [INFO] [stderr] Compiling mio v1.0.3 [INFO] [stderr] Compiling socket2 v0.5.9 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.100 [INFO] [stderr] Compiling icu_properties_data v2.0.0 [INFO] [stderr] Compiling bumpalo v3.17.0 [INFO] [stderr] Compiling rustversion v1.0.20 [INFO] [stderr] Compiling hashbrown v0.15.3 [INFO] [stderr] Compiling adler2 v2.0.0 [INFO] [stderr] Compiling tracing-core v0.1.33 [INFO] [stderr] Compiling wasm-bindgen v0.2.100 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling cc v1.2.22 [INFO] [stderr] Compiling miniz_oxide v0.8.8 [INFO] [stderr] Compiling time v0.3.41 [INFO] [stderr] Compiling rustix v1.0.7 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling stringprep v0.1.5 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling md-5 v0.10.6 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling actix-router v0.5.3 [INFO] [stderr] Compiling fallible-iterator v0.2.0 [INFO] [stderr] Compiling portable-atomic v1.11.0 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling phf_shared v0.11.3 [INFO] [stderr] Compiling indexmap v2.9.0 [INFO] [stderr] Compiling clap_builder v4.5.37 [INFO] [stderr] Compiling flate2 v1.1.1 [INFO] [stderr] Compiling phf v0.11.3 [INFO] [stderr] Compiling env_filter v0.1.3 [INFO] [stderr] Compiling number_prefix v0.4.0 [INFO] [stderr] Compiling jiff v0.2.13 [INFO] [stderr] Compiling whoami v1.6.0 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling colored v2.2.0 [INFO] [stderr] Compiling num_cpus v1.16.0 [INFO] [stderr] Compiling rayon v1.10.0 [INFO] [stderr] Compiling petgraph v0.6.5 [INFO] [stderr] Compiling zstd-sys v2.0.15+zstd.1.5.7 [INFO] [stderr] Compiling indicatif v0.17.11 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling cookie v0.16.2 [INFO] [stderr] Compiling tempfile v3.19.1 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling simplelog v0.12.2 [INFO] [stderr] Compiling rand v0.9.1 [INFO] [stderr] Compiling postgres-protocol v0.6.8 [INFO] [stderr] Compiling postgres-types v0.2.9 [INFO] [stderr] Compiling zstd-safe v7.2.4 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling wasm-bindgen-backend v0.2.100 [INFO] [stderr] Compiling env_logger v0.11.8 [INFO] [stderr] Compiling zstd v0.13.3 [INFO] [stderr] Compiling zerovec-derive v0.11.1 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling derive_more-impl v2.0.1 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling actix-web-codegen v4.3.0 [INFO] [stderr] Compiling actix-macros v0.2.4 [INFO] [stderr] Compiling async-trait v0.1.88 [INFO] [stderr] Compiling clap_derive v4.5.32 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.0 [INFO] [stderr] Compiling derive_more v0.99.20 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.100 [INFO] [stderr] Compiling tokio v1.45.0 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling dialoguer v0.11.0 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.100 [INFO] [stderr] Compiling yoke v0.8.0 [INFO] [stderr] Compiling clap v4.5.37 [INFO] [stderr] Compiling zerovec v0.11.2 [INFO] [stderr] Compiling zerotrie v0.2.2 [INFO] [stderr] Compiling derive_more v2.0.1 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling js-sys v0.3.77 [INFO] [stderr] Compiling console_error_panic_hook v0.1.7 [INFO] [stderr] Compiling tinystr v0.8.1 [INFO] [stderr] Compiling potential_utf v0.1.2 [INFO] [stderr] Compiling icu_collections v2.0.0 [INFO] [stderr] Compiling icu_locale_core v2.0.0 [INFO] [stderr] Compiling icu_provider v2.0.0 [INFO] [stderr] Compiling icu_normalizer v2.0.0 [INFO] [stderr] Compiling icu_properties v2.0.0 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling idna v1.0.3 [INFO] [stderr] Compiling url v2.5.4 [INFO] [stderr] Compiling tokio-util v0.7.15 [INFO] [stderr] Compiling actix-rt v2.10.0 [INFO] [stderr] Compiling actix-server v2.6.0 [INFO] [stderr] Compiling wasm-bindgen-futures v0.4.50 [INFO] [stderr] Compiling actix-codec v0.5.2 [INFO] [stderr] Compiling h2 v0.3.26 [INFO] [stderr] Compiling tokio-postgres v0.7.13 [INFO] [stderr] Compiling actix-http v3.11.0 [INFO] [stderr] Compiling actix-web v4.10.2 [INFO] [stderr] Compiling actix-cors v0.6.5 [INFO] [stderr] Compiling robopoker v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/clustering/emd.rs:18:21 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn sinkhorn(&self) -> Sinkhorn { [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] 18 | pub fn sinkhorn(&self) -> Sinkhorn<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/clustering/emd.rs:21:22 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn heuristic(&self) -> Heuristic { [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 heuristic(&self) -> Heuristic<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/infoset.rs:46:17 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn span(&self) -> Vec> { [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 span(&self) -> Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/infoset.rs:49:17 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn head(&self) -> Node { [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] 49 | pub fn head(&self) -> Node<'_, T, E, G, I> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/tree.rs:37:16 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn all(&self) -> impl Iterator> { [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] 37 | pub fn all(&self) -> impl Iterator> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/tree.rs:41:15 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn at(&self, index: petgraph::graph::NodeIndex) -> Node { [INFO] [stdout] | ^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^^^ 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] 41 | pub fn at(&self, index: petgraph::graph::NodeIndex) -> Node<'_, T, E, G, I> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/tree.rs:45:17 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn seed(&mut self, info: I, seed: G) -> Node { [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] 45 | pub fn seed(&mut self, info: I, seed: G) -> Node<'_, T, E, G, I> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/tree.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn grow(&mut self, info: I, leaf: Branch) -> Node { [INFO] [stdout] | ^^^^^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^^^ 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] 50 | pub fn grow(&mut self, info: I, leaf: Branch) -> Node<'_, T, E, G, I> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 33s [INFO] running `Command { std: "docker" "inspect" "82bb5636c5b2e6c6e7a80cc3eba6a03c6c87f52e5cb77dea00b3c63c17a74c9e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "82bb5636c5b2e6c6e7a80cc3eba6a03c6c87f52e5cb77dea00b3c63c17a74c9e", kill_on_drop: false }` [INFO] [stdout] 82bb5636c5b2e6c6e7a80cc3eba6a03c6c87f52e5cb77dea00b3c63c17a74c9e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 17ab7fb59c617edbbf5355f74fcdf23ba528be529b8d11519ba2c3891968a068 [INFO] running `Command { std: "docker" "start" "-a" "17ab7fb59c617edbbf5355f74fcdf23ba528be529b8d11519ba2c3891968a068", kill_on_drop: false }` [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling csv-core v0.1.12 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling half v1.8.3 [INFO] [stderr] Compiling clap v2.34.0 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling wasm-bindgen-test-macro v0.3.50 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling robopoker v0.1.1 (/opt/rustwide/workdir) [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling csv v1.3.1 [INFO] [stderr] Compiling serde_cbor v0.11.2 [INFO] [stderr] Compiling wasm-bindgen-test v0.3.50 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling criterion-plot v0.4.5 [INFO] [stderr] Compiling criterion v0.3.6 [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/clustering/emd.rs:18:21 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn sinkhorn(&self) -> Sinkhorn { [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] 18 | pub fn sinkhorn(&self) -> Sinkhorn<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/clustering/emd.rs:21:22 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn heuristic(&self) -> Heuristic { [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 heuristic(&self) -> Heuristic<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/infoset.rs:46:17 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn span(&self) -> Vec> { [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 span(&self) -> Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/infoset.rs:49:17 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn head(&self) -> Node { [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] 49 | pub fn head(&self) -> Node<'_, T, E, G, I> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/tree.rs:37:16 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn all(&self) -> impl Iterator> { [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] 37 | pub fn all(&self) -> impl Iterator> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/tree.rs:41:15 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn at(&self, index: petgraph::graph::NodeIndex) -> Node { [INFO] [stdout] | ^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^^^ 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] 41 | pub fn at(&self, index: petgraph::graph::NodeIndex) -> Node<'_, T, E, G, I> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/tree.rs:45:17 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn seed(&mut self, info: I, seed: G) -> Node { [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] 45 | pub fn seed(&mut self, info: I, seed: G) -> Node<'_, T, E, G, I> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/tree.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn grow(&mut self, info: I, leaf: Branch) -> Node { [INFO] [stdout] | ^^^^^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^^^ 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] 50 | pub fn grow(&mut self, info: I, leaf: Branch) -> Node<'_, T, E, G, I> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/clustering/emd.rs:18:21 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn sinkhorn(&self) -> Sinkhorn { [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] 18 | pub fn sinkhorn(&self) -> Sinkhorn<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/clustering/emd.rs:21:22 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn heuristic(&self) -> Heuristic { [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 heuristic(&self) -> Heuristic<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/infoset.rs:46:17 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn span(&self) -> Vec> { [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 span(&self) -> Vec> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/infoset.rs:49:17 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn head(&self) -> Node { [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] 49 | pub fn head(&self) -> Node<'_, T, E, G, I> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/tree.rs:37:16 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn all(&self) -> impl Iterator> { [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] 37 | pub fn all(&self) -> impl Iterator> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/tree.rs:41:15 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn at(&self, index: petgraph::graph::NodeIndex) -> Node { [INFO] [stdout] | ^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^^^ 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] 41 | pub fn at(&self, index: petgraph::graph::NodeIndex) -> Node<'_, T, E, G, I> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/tree.rs:45:17 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn seed(&mut self, info: I, seed: G) -> Node { [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] 45 | pub fn seed(&mut self, info: I, seed: G) -> Node<'_, T, E, G, I> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mccfr/structs/tree.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn grow(&mut self, info: I, leaf: Branch) -> Node { [INFO] [stdout] | ^^^^^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^^^ 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] 50 | pub fn grow(&mut self, info: I, leaf: Branch) -> Node<'_, T, E, G, I> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 26.38s [INFO] running `Command { std: "docker" "inspect" "17ab7fb59c617edbbf5355f74fcdf23ba528be529b8d11519ba2c3891968a068", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "17ab7fb59c617edbbf5355f74fcdf23ba528be529b8d11519ba2c3891968a068", kill_on_drop: false }` [INFO] [stdout] 17ab7fb59c617edbbf5355f74fcdf23ba528be529b8d11519ba2c3891968a068 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 7b0230d21e3e298a394816708c3b8b92fafe4d9e0574eb4b44dfa8f9209c2ccf [INFO] running `Command { std: "docker" "start" "-a" "7b0230d21e3e298a394816708c3b8b92fafe4d9e0574eb4b44dfa8f9209c2ccf", kill_on_drop: false }` [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/clustering/emd.rs:18:21 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn sinkhorn(&self) -> Sinkhorn { [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] 18 | pub fn sinkhorn(&self) -> Sinkhorn<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/clustering/emd.rs:21:22 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn heuristic(&self) -> Heuristic { [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 heuristic(&self) -> Heuristic<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/mccfr/structs/infoset.rs:46:17 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn span(&self) -> Vec> { [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 span(&self) -> Vec> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/mccfr/structs/infoset.rs:49:17 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn head(&self) -> Node { [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] 49 | pub fn head(&self) -> Node<'_, T, E, G, I> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/mccfr/structs/tree.rs:37:16 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn all(&self) -> impl Iterator> { [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] 37 | pub fn all(&self) -> impl Iterator> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/mccfr/structs/tree.rs:41:15 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn at(&self, index: petgraph::graph::NodeIndex) -> Node { [INFO] [stderr] | ^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^^^ 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] 41 | pub fn at(&self, index: petgraph::graph::NodeIndex) -> Node<'_, T, E, G, I> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/mccfr/structs/tree.rs:45:17 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn seed(&mut self, info: I, seed: G) -> Node { [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] 45 | pub fn seed(&mut self, info: I, seed: G) -> Node<'_, T, E, G, I> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/mccfr/structs/tree.rs:50:17 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn grow(&mut self, info: I, leaf: Branch) -> Node { [INFO] [stderr] | ^^^^^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^^^ 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] 50 | pub fn grow(&mut self, info: I, leaf: Branch) -> Node<'_, T, E, G, I> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: `robopoker` (lib) generated 8 warnings (run `cargo fix --lib -p robopoker` to apply 8 suggestions) [INFO] [stderr] warning: `robopoker` (lib test) generated 8 warnings (8 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.51s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/robopoker-a5dc135f41221e9e) [INFO] [stdout] [INFO] [stdout] running 105 tests [INFO] [stdout] test cards::card::tests::bijective_u32 ... ok [INFO] [stdout] test cards::card::tests::bijective_rank_suit ... ok [INFO] [stdout] test cards::evaluator::tests::flush_over_straight ... ok [INFO] [stdout] test cards::evaluator::tests::flush ... ok [INFO] [stdout] test cards::evaluator::tests::full_house ... ok [INFO] [stdout] test cards::evaluator::tests::four_oak ... ok [INFO] [stdout] test cards::card::tests::bijective_u8 ... ok [INFO] [stdout] test cards::evaluator::tests::four_oak_over_full_house ... ok [INFO] [stdout] test cards::evaluator::tests::full_house_over_flush ... ok [INFO] [stdout] test cards::evaluator::tests::high_card ... ok [INFO] [stdout] test cards::evaluator::tests::low_straight ... ok [INFO] [stdout] test cards::evaluator::tests::seven_card_hand ... ok [INFO] [stdout] test cards::evaluator::tests::straight_flush ... ok [INFO] [stdout] test cards::evaluator::tests::one_pair ... ok [INFO] [stdout] test cards::evaluator::tests::two_three_oak ... ok [INFO] [stdout] test cards::evaluator::tests::wheel_straight ... ok [INFO] [stdout] test cards::hands::tests::choose_3 ... ok [INFO] [stdout] test cards::evaluator::tests::two_pair ... ok [INFO] [stdout] test cards::hands::tests::n_choose_0_mask_4 ... ok [INFO] [stdout] test cards::evaluator::tests::wheel_straight_flush ... ok [INFO] [stdout] test cards::hands::tests::choose_3_from_5 ... ok [INFO] [stdout] test cards::hands::tests::n_choose_1_mask_4 ... ok [INFO] [stdout] test cards::evaluator::tests::three_pair ... ok [INFO] [stdout] test cards::hands::tests::n_choose_0 ... ok [INFO] [stdout] test cards::hands::tests::n_choose_2 ... ok [INFO] [stdout] test cards::hands::tests::n_choose_2_mask_4 ... ok [INFO] [stdout] test cards::hand::tests::ranks_in_suit ... ok [INFO] [stdout] test cards::isomorphism::tests::pocket_rank_symmetry ... ok [INFO] [stdout] test cards::isomorphism::tests::offsuit_backdoor ... ok [INFO] [stdout] test cards::isomorphism::tests::semichrome ... ok [INFO] [stdout] test cards::isomorphism::tests::polychrome ... ok [INFO] [stdout] test cards::isomorphism::tests::public_rank_symmetry ... ok [INFO] [stdout] test cards::isomorphism::tests::offsuit_draw ... ok [INFO] [stdout] test cards::isomorphisms::tests::n_flop ... ignored [INFO] [stdout] test cards::evaluator::tests::straight ... ok [INFO] [stdout] test cards::isomorphism::tests::super_symmetry ... ok [INFO] [stdout] test cards::isomorphism::tests::false_positives ... ok [INFO] [stdout] test cards::hand::tests::bijective_u64 ... ok [INFO] [stdout] test cards::isomorphism::tests::monochrome ... ok [INFO] [stdout] test cards::isomorphisms::tests::n_pref ... ignored [INFO] [stdout] test cards::isomorphisms::tests::n_rive ... ignored [INFO] [stdout] test cards::isomorphisms::tests::n_turn ... ignored [INFO] [stdout] test cards::isomorphism::tests::antichrome ... ok [INFO] [stdout] test cards::observations::tests::n_flop ... ignored [INFO] [stdout] test cards::observations::tests::n_pref ... ignored [INFO] [stdout] test cards::observations::tests::n_rive ... ignored [INFO] [stdout] test cards::observations::tests::n_turn ... ignored [INFO] [stdout] test cards::isomorphism::tests::false_negatives ... ok [INFO] [stdout] test cards::evaluator::tests::straight_flush_over_four_oak ... ok [INFO] [stdout] test cards::observation::tests::shuffle ... ok [INFO] [stdout] test cards::observation::tests::bijective_i64 ... ok [INFO] [stdout] test cards::permutation::tests::map_arbitrary ... ok [INFO] [stdout] test cards::permutation::tests::map_identity ... ok [INFO] [stdout] test cards::permutation::tests::permute_interior ... ok [INFO] [stdout] test cards::permutation::tests::permute_simple ... ok [INFO] [stdout] test cards::permutation::tests::permute_complex ... ok [INFO] [stdout] test cards::rank::tests::bijective_u8 ... ok [INFO] [stdout] test cards::rank::tests::bijective_u16 ... ok [INFO] [stdout] test cards::permutation::tests::permute_rotation ... ok [INFO] [stdout] test cards::permutation::tests::permute_unique ... ok [INFO] [stdout] test cards::rank::tests::injective_u64 ... ok [INFO] [stdout] test cards::suit::tests::bijective_u8 ... ok [INFO] [stdout] test cards::suit::tests::injective_u64 ... ok [INFO] [stdout] test cards::permutation::tests::permute_identity ... ok [INFO] [stdout] test cards::hand::tests::card_iteration ... ok [INFO] [stdout] test cards::hands::tests::n_choose_1 ... ok [INFO] [stdout] test clustering::emd::tests::is_heuristic_emd_triangle ... ok [INFO] [stdout] test clustering::emd::tests::is_heuristic_emd_positive ... ok [INFO] [stdout] test clustering::lookup::tests::persistence ... ignored [INFO] [stdout] test cards::evaluator::tests::three_oak ... ok [INFO] [stdout] test clustering::metric::tests::persistence ... ignored [INFO] [stdout] test gameplay::action::tests::bijective_u32 ... ok [INFO] [stdout] test gameplay::abstraction::tests::bijective_u64_random ... ok [INFO] [stdout] test gameplay::abstraction::tests::is_quantize_inverse_floatize ... ok [INFO] [stdout] test gameplay::game::tests::everyone_folds_pref ... ok [INFO] [stdout] test gameplay::edge::bijection_tests::bijective_usize ... ok [INFO] [stdout] test gameplay::game::tests::history_of_checks ... ok [INFO] [stdout] test gameplay::game::tests::everyone_folds_flop ... ok [INFO] [stdout] test gameplay::game::tests::test_root ... ok [INFO] [stdout] test gameplay::abstraction::tests::bijective_str ... ok [INFO] [stdout] test gameplay::path::tests::double_ended_iterator ... ok [INFO] [stdout] test gameplay::abstraction::tests::is_floatize_inverse_quantize ... ok [INFO] [stdout] test gameplay::path::tests::length ... ok [INFO] [stdout] test gameplay::path::tests::subgame_raises ... ok [INFO] [stdout] test gameplay::showdown::tests::heads_up_showdown ... ok [INFO] [stdout] test gameplay::showdown::tests::last_man_standing ... ok [INFO] [stdout] test gameplay::showdown::tests::multiway_all_in_with_side_pot ... ok [INFO] [stdout] test gameplay::path::tests::bijective_path_empty ... ok [INFO] [stdout] test gameplay::abstraction::tests::bijective_u64_equity ... ok [INFO] [stdout] test clustering::emd::tests::is_heuristic_emd_zero ... ok [INFO] [stdout] test gameplay::path::tests::bijective_path_edges ... ok [INFO] [stdout] test gameplay::showdown::tests::multiway_all_in_with_uneven_stacks ... ok [INFO] [stdout] test gameplay::path::tests::bijective_path_collect ... ok [INFO] [stdout] test gameplay::showdown::tests::singular_all_in_with_side_pot_split ... ok [INFO] [stdout] test gameplay::showdown::tests::winners_folded ... ok [INFO] [stdout] test gameplay::showdown::tests::multiway_pot_split ... ok [INFO] [stdout] test gameplay::showdown::tests::singular_all_in_with_side_pot ... ok [INFO] [stdout] test gameplay::showdown::tests::multiway_winner_takes_all ... ok [INFO] [stdout] test gameplay::edge::bijection_tests::bijective_u64 ... ok [INFO] [stdout] test clustering::emd::tests::is_equity_emd_zero ... ok [INFO] [stdout] test clustering::emd::tests::is_sinkhorn_emd_zero ... ok [INFO] [stdout] test clustering::emd::tests::is_sinkhorn_emd_triangle ... ok [INFO] [stdout] test clustering::emd::tests::is_sinkhorn_emd_positive ... ok [INFO] [stdout] test clustering::emd::tests::is_equity_emd_symmetric ... ok [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/robopoker-eba036650af6174d) [INFO] [stdout] test clustering::emd::tests::is_equity_emd_positive ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 95 passed; 0 failed; 10 ignored; 0 measured; 0 filtered out; finished in 0.68s [INFO] [stdout] [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] [stderr] Doc-tests robopoker [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" "7b0230d21e3e298a394816708c3b8b92fafe4d9e0574eb4b44dfa8f9209c2ccf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7b0230d21e3e298a394816708c3b8b92fafe4d9e0574eb4b44dfa8f9209c2ccf", kill_on_drop: false }` [INFO] [stdout] 7b0230d21e3e298a394816708c3b8b92fafe4d9e0574eb4b44dfa8f9209c2ccf