[INFO] fetching crate lfa 0.15.0...
[INFO] testing lfa-0.15.0 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate lfa 0.15.0 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate lfa 0.15.0
[INFO] finished tweaking crates.io crate lfa 0.15.0
[INFO] tweaked toml for crates.io crate lfa 0.15.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate lfa 0.15.0 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 42 packages to latest compatible versions
[INFO] [stderr]       Adding blas-src v0.2.1 (available: v0.14.0)
[INFO] [stderr]       Adding itertools v0.9.0 (available: v0.14.0)
[INFO] [stderr]       Adding ndarray v0.13.1 (available: v0.17.1)
[INFO] [stderr]       Adding openblas-src v0.6.1 (available: v0.10.13)
[INFO] [stderr]       Adding quickcheck v0.9.2 (available: v1.0.3)
[INFO] [stderr]       Adding rand v0.7.3 (available: v0.9.2)
[INFO] [stderr]       Adding rand_distr v0.2.2 (available: v0.5.1)
[INFO] [stderr]       Adding spaces v5.0.0 (available: v6.0.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded blas-src v0.2.1
[INFO] [stderr]   Downloaded rand_distr v0.2.2
[INFO] [stderr]   Downloaded quickcheck v0.9.2
[INFO] [stderr]   Downloaded spaces v5.0.0
[INFO] [stderr]   Downloaded openblas-src v0.6.1
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2d053b1f7ada762ea2a8c329d81a799e739908433031b5ccdf745714dfcf8aff
[INFO] running `Command { std: "docker" "start" "-a" "2d053b1f7ada762ea2a8c329d81a799e739908433031b5ccdf745714dfcf8aff", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2d053b1f7ada762ea2a8c329d81a799e739908433031b5ccdf745714dfcf8aff", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2d053b1f7ada762ea2a8c329d81a799e739908433031b5ccdf745714dfcf8aff", kill_on_drop: false }`
[INFO] [stdout] 2d053b1f7ada762ea2a8c329d81a799e739908433031b5ccdf745714dfcf8aff
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a6fc66ef19138265312ef2c87e921af398112511178ce2f586fde89459ccdd01
[INFO] running `Command { std: "docker" "start" "-a" "a6fc66ef19138265312ef2c87e921af398112511178ce2f586fde89459ccdd01", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling ndarray v0.13.1
[INFO] [stderr]    Compiling itertools v0.8.2
[INFO] [stderr]    Compiling itertools v0.9.0
[INFO] [stderr]    Compiling matrixmultiply v0.2.4
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling spaces v5.0.0
[INFO] [stderr]    Compiling lfa v0.15.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `serialize`
[INFO] [stdout]   --> src/basis/tile_coding.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 |     #[cfg_attr(feature = "serialize", serde(default))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `blas`, `default`, `serde`, and `serde_crate`
[INFO] [stdout]    = help: consider adding `serialize` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/features.rs:103:17
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn iter(&self) -> ::std::collections::hash_map::Iter<IndexT, ActivationT> {
[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] 103 |     pub fn iter(&self) -> ::std::collections::hash_map::Iter<'_, IndexT, ActivationT> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/features.rs:372:9
[INFO] [stdout]     |
[INFO] [stdout] 372 |         mem::replace(self, old.map_into(f));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 372 |         let _ = mem::replace(self, old.map_into(f));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/features.rs:538:9
[INFO] [stdout]     |
[INFO] [stdout] 538 |         mem::replace(self, old.merge_into(other, f));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 538 |         let _ = mem::replace(self, old.merge_into(other, f));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.15s
[INFO] running `Command { std: "docker" "inspect" "a6fc66ef19138265312ef2c87e921af398112511178ce2f586fde89459ccdd01", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a6fc66ef19138265312ef2c87e921af398112511178ce2f586fde89459ccdd01", kill_on_drop: false }`
[INFO] [stdout] a6fc66ef19138265312ef2c87e921af398112511178ce2f586fde89459ccdd01
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 83bb3cf9eb9d2536b0322098564cb6faeda54ff269b90fc2740e3a0cb0552395
[INFO] running `Command { std: "docker" "start" "-a" "83bb3cf9eb9d2536b0322098564cb6faeda54ff269b90fc2740e3a0cb0552395", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling openblas-src v0.6.1
[INFO] [stderr]    Compiling env_logger v0.7.1
[INFO] [stderr]    Compiling seahash v4.1.0
[INFO] [stdout] warning: unexpected `cfg` condition value: `serialize`
[INFO] [stdout]   --> src/basis/tile_coding.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 |     #[cfg_attr(feature = "serialize", serde(default))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `blas`, `default`, `serde`, and `serde_crate`
[INFO] [stdout]    = help: consider adding `serialize` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/features.rs:103:17
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn iter(&self) -> ::std::collections::hash_map::Iter<IndexT, ActivationT> {
[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] 103 |     pub fn iter(&self) -> ::std::collections::hash_map::Iter<'_, IndexT, ActivationT> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/features.rs:372:9
[INFO] [stdout]     |
[INFO] [stdout] 372 |         mem::replace(self, old.map_into(f));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 372 |         let _ = mem::replace(self, old.map_into(f));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/features.rs:538:9
[INFO] [stdout]     |
[INFO] [stdout] 538 |         mem::replace(self, old.merge_into(other, f));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 538 |         let _ = mem::replace(self, old.merge_into(other, f));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling blas-src v0.2.1
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling rand_distr v0.2.2
[INFO] [stderr]    Compiling quickcheck v0.9.2
[INFO] [stderr]    Compiling lfa v0.15.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `serialize`
[INFO] [stdout]   --> src/basis/tile_coding.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 |     #[cfg_attr(feature = "serialize", serde(default))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `blas`, `default`, `serde`, and `serde_crate`
[INFO] [stdout]    = help: consider adding `serialize` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/features.rs:103:17
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn iter(&self) -> ::std::collections::hash_map::Iter<IndexT, ActivationT> {
[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] 103 |     pub fn iter(&self) -> ::std::collections::hash_map::Iter<'_, IndexT, ActivationT> {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/features.rs:372:9
[INFO] [stdout]     |
[INFO] [stdout] 372 |         mem::replace(self, old.map_into(f));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 372 |         let _ = mem::replace(self, old.map_into(f));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/features.rs:538:9
[INFO] [stdout]     |
[INFO] [stdout] 538 |         mem::replace(self, old.merge_into(other, f));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 538 |         let _ = mem::replace(self, old.merge_into(other, f));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 8.25s
[INFO] running `Command { std: "docker" "inspect" "83bb3cf9eb9d2536b0322098564cb6faeda54ff269b90fc2740e3a0cb0552395", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "83bb3cf9eb9d2536b0322098564cb6faeda54ff269b90fc2740e3a0cb0552395", kill_on_drop: false }`
[INFO] [stdout] 83bb3cf9eb9d2536b0322098564cb6faeda54ff269b90fc2740e3a0cb0552395
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 94e6c9724cd0e5042d84e6295668781d51be15cacb98d111b59fb6ba76cb0511
[INFO] running `Command { std: "docker" "start" "-a" "94e6c9724cd0e5042d84e6295668781d51be15cacb98d111b59fb6ba76cb0511", kill_on_drop: false }`
[INFO] [stderr] warning: unexpected `cfg` condition value: `serialize`
[INFO] [stderr]   --> src/basis/tile_coding.rs:46:16
[INFO] [stderr]    |
[INFO] [stderr] 46 |     #[cfg_attr(feature = "serialize", serde(default))]
[INFO] [stderr]    |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected values for `feature` are: `blas`, `default`, `serde`, and `serde_crate`
[INFO] [stderr]    = help: consider adding `serialize` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/features.rs:103:17
[INFO] [stderr]     |
[INFO] [stderr] 103 |     pub fn iter(&self) -> ::std::collections::hash_map::Iter<IndexT, ActivationT> {
[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] 103 |     pub fn iter(&self) -> ::std::collections::hash_map::Iter<'_, IndexT, ActivationT> {
[INFO] [stderr]     |                                                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stderr]    --> src/features.rs:372:9
[INFO] [stderr]     |
[INFO] [stderr] 372 |         mem::replace(self, old.map_into(f));
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 372 |         let _ = mem::replace(self, old.map_into(f));
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stderr]    --> src/features.rs:538:9
[INFO] [stderr]     |
[INFO] [stderr] 538 |         mem::replace(self, old.merge_into(other, f));
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 538 |         let _ = mem::replace(self, old.merge_into(other, f));
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `lfa` (lib) generated 4 warnings (run `cargo fix --lib -p lfa` to apply 1 suggestion)
[INFO] [stderr] warning: `lfa` (lib test) generated 4 warnings (4 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/lfa-01a987041d177025)
[INFO] [stdout] 
[INFO] [stdout] running 24 tests
[INFO] [stdout] test basis::fourier::tests::test_order2_1d ... ok
[INFO] [stdout] test basis::fourier::tests::test_n_features ... ok
[INFO] [stdout] test basis::fourier::tests::test_order1_1d ... ok
[INFO] [stdout] test basis::fourier::tests::test_order2_2d ... ok
[INFO] [stdout] test basis::fourier::tests::test_order1_2d ... ok
[INFO] [stdout] test basis::kernelised::tests::test_n_features ... ok
[INFO] [stdout] test basis::kernelised::tests::test_projection_1d ... ok
[INFO] [stdout] test basis::kernelised::tests::test_projection_2d ... ok
[INFO] [stdout] test basis::stack::tests::test_stack_constant ... ok
[INFO] [stdout] test basis::stack::tests::test_stack_indices ... ok
[INFO] [stdout] test basis::tile_coding::tests::test_bin_state_1d ... ok
[INFO] [stdout] test basis::uniform_grid::tests::test_1d ... ok
[INFO] [stdout] test basis::stack::tests::test_stack_mixed ... ok
[INFO] [stdout] test basis::uniform_grid::tests::test_2d ... ok
[INFO] [stdout] test features::tests::test_dense ... ok
[INFO] [stdout] test features::tests::test_map_inplace ... ok
[INFO] [stdout] test features::tests::test_sparse ... ok
[INFO] [stdout] test features::tests::test_merge_inplace ... ok
[INFO] [stdout] test basis::constant::tests::test_project_general ... ok
[INFO] [stdout] test basis::fourier::tests::test_bounds ... ok
[INFO] [stdout] test basis::tile_coding::tests::test_bin_state_2d ... ok
[INFO] [stdout] test basis::normalisation::tests::test_l2 ... ok
[INFO] [stdout] test basis::normalisation::tests::test_l1 ... ok
[INFO] [stdout] test basis::uniform_grid::tests::test_3d ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 24 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests lfa
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test src/features.rs - features::Features::dot (line 555) ... ok
[INFO] [stdout] test src/lib.rs - (line 11) - compile ... ok
[INFO] [stdout] test src/features.rs - features::Features::stack (line 273) ... ok
[INFO] [stdout] test src/features.rs - features::Features::into_dense (line 248) ... ok
[INFO] [stdout] test src/basis/mod.rs - basis::Basis::project (line 30) ... ok
[INFO] [stdout] test src/features.rs - features::Features::remove (line 208) ... ok
[INFO] [stdout] test src/basis/polynomial/mod.rs - basis::polynomial::Polynomial (line 27) ... ok
[INFO] [stdout] test src/features.rs - features::Features::matmul (line 591) ... ok
[INFO] [stdout] test src/basis/polynomial/mod.rs - basis::polynomial::Polynomial (line 14) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.06s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "94e6c9724cd0e5042d84e6295668781d51be15cacb98d111b59fb6ba76cb0511", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "94e6c9724cd0e5042d84e6295668781d51be15cacb98d111b59fb6ba76cb0511", kill_on_drop: false }`
[INFO] [stdout] 94e6c9724cd0e5042d84e6295668781d51be15cacb98d111b59fb6ba76cb0511
