[INFO] fetching crate ruqu-qarlp 0.1.32...
[INFO] testing ruqu-qarlp-0.1.32 against 1.95.0 for beta-1.96-2
[INFO] extracting crate ruqu-qarlp 0.1.32 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate ruqu-qarlp 0.1.32
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate ruqu-qarlp 0.1.32
[INFO] tweaked toml for crates.io crate ruqu-qarlp 0.1.32 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate ruqu-qarlp 0.1.32 on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ruqu-qarlp 0.1.32 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" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded clap_lex v0.7.7
[INFO] [stderr]   Downloaded rand_distr v0.4.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 73d11662cd921d41026410200bf9504a720e36d2f0c239f54c6da9b8339d820d
[INFO] running `Command { std: "docker" "start" "-a" "73d11662cd921d41026410200bf9504a720e36d2f0c239f54c6da9b8339d820d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "73d11662cd921d41026410200bf9504a720e36d2f0c239f54c6da9b8339d820d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "73d11662cd921d41026410200bf9504a720e36d2f0c239f54c6da9b8339d820d", kill_on_drop: false }`
[INFO] [stdout] 73d11662cd921d41026410200bf9504a720e36d2f0c239f54c6da9b8339d820d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a4c83c74cadf514eb3e10db382de68104a7412af6820a969a64cbd1baeedb177
[INFO] running `Command { std: "docker" "start" "-a" "a4c83c74cadf514eb3e10db382de68104a7412af6820a969a64cbd1baeedb177", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling libm v0.2.15
[INFO] [stderr]    Compiling zerocopy v0.8.33
[INFO] [stderr]    Compiling zmij v1.0.14
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling pin-project-lite v0.2.16
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling proc-macro2 v1.0.105
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling quote v1.0.43
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling ndarray v0.16.1
[INFO] [stderr]    Compiling ruqu-qarlp v0.1.32 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Rng`
[INFO] [stdout]   --> src/training.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | use rand::{Rng, SeedableRng};
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/policy.rs:226:24
[INFO] [stdout]     |
[INFO] [stdout] 226 |     fn apply_rx(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stdout]     |                        ----^^^^^^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/policy.rs:251:24
[INFO] [stdout]     |
[INFO] [stdout] 251 |     fn apply_ry(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stdout]     |                        ----^^^^^^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/policy.rs:276:24
[INFO] [stdout]     |
[INFO] [stdout] 276 |     fn apply_rz(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stdout]     |                        ----^^^^^^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sin_half`
[INFO] [stdout]    --> src/policy.rs:280:13
[INFO] [stdout]     |
[INFO] [stdout] 280 |         let sin_half = (angle / 2.0).sin();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sin_half`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/policy.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 300 |         mut amplitudes: Array1<f64>,
[INFO] [stdout]     |         ----^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buffer` is never read
[INFO] [stdout]    --> src/training.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct Trainer<E: Environment> {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 142 |     buffer: TrajectoryBuffer,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:46:25
[INFO] [stdout]    |
[INFO] [stdout] 46 |     InvalidQubitCount { min: usize, actual: usize },
[INFO] [stdout]    |                         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:87:9
[INFO] [stdout]    |
[INFO] [stdout] 87 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:46:37
[INFO] [stdout]    |
[INFO] [stdout] 46 |     InvalidQubitCount { min: usize, actual: usize },
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:50:25
[INFO] [stdout]    |
[INFO] [stdout] 50 |     InvalidLayerCount { min: usize, actual: usize },
[INFO] [stdout]    |                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:50:37
[INFO] [stdout]    |
[INFO] [stdout] 50 |     InvalidLayerCount { min: usize, actual: usize },
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:54:26
[INFO] [stdout]    |
[INFO] [stdout] 54 |     InvalidActionCount { min: usize, actual: usize },
[INFO] [stdout]    |                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:54:38
[INFO] [stdout]    |
[INFO] [stdout] 54 |     InvalidActionCount { min: usize, actual: usize },
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:58:30
[INFO] [stdout]    |
[INFO] [stdout] 58 |     StateDimensionMismatch { expected: usize, actual: usize },
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:58:47
[INFO] [stdout]    |
[INFO] [stdout] 58 |     StateDimensionMismatch { expected: usize, actual: usize },
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:62:30
[INFO] [stdout]    |
[INFO] [stdout] 62 |     ParameterCountMismatch { expected: usize, actual: usize },
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:62:47
[INFO] [stdout]    |
[INFO] [stdout] 62 |     ParameterCountMismatch { expected: usize, actual: usize },
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:66:38
[INFO] [stdout]    |
[INFO] [stdout] 66 |     InvalidProbabilityDistribution { sum: f64 },
[INFO] [stdout]    |                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 |     InvalidAction { action: usize, max_action: usize },
[INFO] [stdout]    |                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |     InvalidAction { action: usize, max_action: usize },
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/error.rs:142:27
[INFO] [stdout]     |
[INFO] [stdout] 142 |     InsufficientSamples { requested: usize, available: usize },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/error.rs:142:45
[INFO] [stdout]     |
[INFO] [stdout] 142 |     InsufficientSamples { requested: usize, available: usize },
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/error.rs:154:24
[INFO] [stdout]     |
[INFO] [stdout] 154 |     IndexOutOfBounds { index: usize, size: usize },
[INFO] [stdout]     |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/error.rs:154:38
[INFO] [stdout]     |
[INFO] [stdout] 154 |     IndexOutOfBounds { index: usize, size: usize },
[INFO] [stdout]     |                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 19.60s
[INFO] running `Command { std: "docker" "inspect" "a4c83c74cadf514eb3e10db382de68104a7412af6820a969a64cbd1baeedb177", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a4c83c74cadf514eb3e10db382de68104a7412af6820a969a64cbd1baeedb177", kill_on_drop: false }`
[INFO] [stdout] a4c83c74cadf514eb3e10db382de68104a7412af6820a969a64cbd1baeedb177
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2d64ba14e75060a30da1b65e906f4298b6bec81ba390d331da0b25038425b350
[INFO] running `Command { std: "docker" "start" "-a" "2d64ba14e75060a30da1b65e906f4298b6bec81ba390d331da0b25038425b350", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling zerocopy-derive v0.8.33
[INFO] [stderr]    Compiling clap_lex v0.7.7
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling clap_builder v4.5.54
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling zerocopy v0.8.33
[INFO] [stderr]    Compiling ndarray v0.16.1
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling tempfile v3.24.0
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling clap v4.5.54
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling proptest v1.9.0
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling ruqu-qarlp v0.1.32 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Rng`
[INFO] [stdout]   --> src/training.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | use rand::{Rng, SeedableRng};
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/policy.rs:226:24
[INFO] [stdout]     |
[INFO] [stdout] 226 |     fn apply_rx(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stdout]     |                        ----^^^^^^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/policy.rs:251:24
[INFO] [stdout]     |
[INFO] [stdout] 251 |     fn apply_ry(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stdout]     |                        ----^^^^^^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/policy.rs:276:24
[INFO] [stdout]     |
[INFO] [stdout] 276 |     fn apply_rz(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stdout]     |                        ----^^^^^^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sin_half`
[INFO] [stdout]    --> src/policy.rs:280:13
[INFO] [stdout]     |
[INFO] [stdout] 280 |         let sin_half = (angle / 2.0).sin();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sin_half`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/policy.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 300 |         mut amplitudes: Array1<f64>,
[INFO] [stdout]     |         ----^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buffer` is never read
[INFO] [stdout]    --> src/training.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct Trainer<E: Environment> {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 142 |     buffer: TrajectoryBuffer,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:46:25
[INFO] [stdout]    |
[INFO] [stdout] 46 |     InvalidQubitCount { min: usize, actual: usize },
[INFO] [stdout]    |                         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:87:9
[INFO] [stdout]    |
[INFO] [stdout] 87 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:46:37
[INFO] [stdout]    |
[INFO] [stdout] 46 |     InvalidQubitCount { min: usize, actual: usize },
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:50:25
[INFO] [stdout]    |
[INFO] [stdout] 50 |     InvalidLayerCount { min: usize, actual: usize },
[INFO] [stdout]    |                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:50:37
[INFO] [stdout]    |
[INFO] [stdout] 50 |     InvalidLayerCount { min: usize, actual: usize },
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:54:26
[INFO] [stdout]    |
[INFO] [stdout] 54 |     InvalidActionCount { min: usize, actual: usize },
[INFO] [stdout]    |                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:54:38
[INFO] [stdout]    |
[INFO] [stdout] 54 |     InvalidActionCount { min: usize, actual: usize },
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:58:30
[INFO] [stdout]    |
[INFO] [stdout] 58 |     StateDimensionMismatch { expected: usize, actual: usize },
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:58:47
[INFO] [stdout]    |
[INFO] [stdout] 58 |     StateDimensionMismatch { expected: usize, actual: usize },
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:62:30
[INFO] [stdout]    |
[INFO] [stdout] 62 |     ParameterCountMismatch { expected: usize, actual: usize },
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:62:47
[INFO] [stdout]    |
[INFO] [stdout] 62 |     ParameterCountMismatch { expected: usize, actual: usize },
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:66:38
[INFO] [stdout]    |
[INFO] [stdout] 66 |     InvalidProbabilityDistribution { sum: f64 },
[INFO] [stdout]    |                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 |     InvalidAction { action: usize, max_action: usize },
[INFO] [stdout]    |                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |     InvalidAction { action: usize, max_action: usize },
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/error.rs:142:27
[INFO] [stdout]     |
[INFO] [stdout] 142 |     InsufficientSamples { requested: usize, available: usize },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/error.rs:142:45
[INFO] [stdout]     |
[INFO] [stdout] 142 |     InsufficientSamples { requested: usize, available: usize },
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/error.rs:154:24
[INFO] [stdout]     |
[INFO] [stdout] 154 |     IndexOutOfBounds { index: usize, size: usize },
[INFO] [stdout]     |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/error.rs:154:38
[INFO] [stdout]     |
[INFO] [stdout] 154 |     IndexOutOfBounds { index: usize, size: usize },
[INFO] [stdout]     |                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wrong_action`
[INFO] [stdout]    --> tests/integration_tests.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 |     let wrong_action = 1 - correct_action;
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wrong_action`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rng`
[INFO] [stdout]   --> src/training.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | use rand::{Rng, SeedableRng};
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gradient.rs:570:13
[INFO] [stdout]     |
[INFO] [stdout] 570 |         let mut policy = create_test_policy();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/policy.rs:226:24
[INFO] [stdout]     |
[INFO] [stdout] 226 |     fn apply_rx(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stdout]     |                        ----^^^^^^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/policy.rs:251:24
[INFO] [stdout]     |
[INFO] [stdout] 251 |     fn apply_ry(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stdout]     |                        ----^^^^^^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/policy.rs:276:24
[INFO] [stdout]     |
[INFO] [stdout] 276 |     fn apply_rz(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stdout]     |                        ----^^^^^^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sin_half`
[INFO] [stdout]    --> src/policy.rs:280:13
[INFO] [stdout]     |
[INFO] [stdout] 280 |         let sin_half = (angle / 2.0).sin();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sin_half`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/policy.rs:300:9
[INFO] [stdout]     |
[INFO] [stdout] 300 |         mut amplitudes: Array1<f64>,
[INFO] [stdout]     |         ----^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buffer` is never read
[INFO] [stdout]    --> src/training.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct Trainer<E: Environment> {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 142 |     buffer: TrajectoryBuffer,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:46:25
[INFO] [stdout]    |
[INFO] [stdout] 46 |     InvalidQubitCount { min: usize, actual: usize },
[INFO] [stdout]    |                         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:87:9
[INFO] [stdout]    |
[INFO] [stdout] 87 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:46:37
[INFO] [stdout]    |
[INFO] [stdout] 46 |     InvalidQubitCount { min: usize, actual: usize },
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:50:25
[INFO] [stdout]    |
[INFO] [stdout] 50 |     InvalidLayerCount { min: usize, actual: usize },
[INFO] [stdout]    |                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:50:37
[INFO] [stdout]    |
[INFO] [stdout] 50 |     InvalidLayerCount { min: usize, actual: usize },
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:54:26
[INFO] [stdout]    |
[INFO] [stdout] 54 |     InvalidActionCount { min: usize, actual: usize },
[INFO] [stdout]    |                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:54:38
[INFO] [stdout]    |
[INFO] [stdout] 54 |     InvalidActionCount { min: usize, actual: usize },
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:58:30
[INFO] [stdout]    |
[INFO] [stdout] 58 |     StateDimensionMismatch { expected: usize, actual: usize },
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:58:47
[INFO] [stdout]    |
[INFO] [stdout] 58 |     StateDimensionMismatch { expected: usize, actual: usize },
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:62:30
[INFO] [stdout]    |
[INFO] [stdout] 62 |     ParameterCountMismatch { expected: usize, actual: usize },
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:62:47
[INFO] [stdout]    |
[INFO] [stdout] 62 |     ParameterCountMismatch { expected: usize, actual: usize },
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:66:38
[INFO] [stdout]    |
[INFO] [stdout] 66 |     InvalidProbabilityDistribution { sum: f64 },
[INFO] [stdout]    |                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 |     InvalidAction { action: usize, max_action: usize },
[INFO] [stdout]    |                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/error.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |     InvalidAction { action: usize, max_action: usize },
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/error.rs:142:27
[INFO] [stdout]     |
[INFO] [stdout] 142 |     InsufficientSamples { requested: usize, available: usize },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/error.rs:142:45
[INFO] [stdout]     |
[INFO] [stdout] 142 |     InsufficientSamples { requested: usize, available: usize },
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/error.rs:154:24
[INFO] [stdout]     |
[INFO] [stdout] 154 |     IndexOutOfBounds { index: usize, size: usize },
[INFO] [stdout]     |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/error.rs:154:38
[INFO] [stdout]     |
[INFO] [stdout] 154 |     IndexOutOfBounds { index: usize, size: usize },
[INFO] [stdout]     |                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 25.51s
[INFO] running `Command { std: "docker" "inspect" "2d64ba14e75060a30da1b65e906f4298b6bec81ba390d331da0b25038425b350", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2d64ba14e75060a30da1b65e906f4298b6bec81ba390d331da0b25038425b350", kill_on_drop: false }`
[INFO] [stdout] 2d64ba14e75060a30da1b65e906f4298b6bec81ba390d331da0b25038425b350
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 360fcfb7de5488e22a79762de45f8fdacce751177f8414274bb0c91e50828b09
[INFO] running `Command { std: "docker" "start" "-a" "360fcfb7de5488e22a79762de45f8fdacce751177f8414274bb0c91e50828b09", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `Rng`
[INFO] [stderr]   --> src/training.rs:39:12
[INFO] [stderr]    |
[INFO] [stderr] 39 | use rand::{Rng, SeedableRng};
[INFO] [stderr]    |            ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/policy.rs:226:24
[INFO] [stderr]     |
[INFO] [stderr] 226 |     fn apply_rx(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stderr]     |                        ----^^^^^^^^^^
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/policy.rs:251:24
[INFO] [stderr]     |
[INFO] [stderr] 251 |     fn apply_ry(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stderr]     |                        ----^^^^^^^^^^
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/policy.rs:276:24
[INFO] [stderr]     |
[INFO] [stderr] 276 |     fn apply_rz(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stderr]     |                        ----^^^^^^^^^^
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sin_half`
[INFO] [stderr]    --> src/policy.rs:280:13
[INFO] [stderr]     |
[INFO] [stderr] 280 |         let sin_half = (angle / 2.0).sin();
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sin_half`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/policy.rs:300:9
[INFO] [stderr]     |
[INFO] [stderr] 300 |         mut amplitudes: Array1<f64>,
[INFO] [stderr]     |         ----^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: field `buffer` is never read
[INFO] [stderr]    --> src/training.rs:142:5
[INFO] [stderr]     |
[INFO] [stderr] 132 | pub struct Trainer<E: Environment> {
[INFO] [stderr]     |            ------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 142 |     buffer: TrajectoryBuffer,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:46:25
[INFO] [stderr]    |
[INFO] [stderr] 46 |     InvalidQubitCount { min: usize, actual: usize },
[INFO] [stderr]    |                         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/lib.rs:87:9
[INFO] [stderr]    |
[INFO] [stderr] 87 | #![warn(missing_docs)]
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:46:37
[INFO] [stderr]    |
[INFO] [stderr] 46 |     InvalidQubitCount { min: usize, actual: usize },
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:50:25
[INFO] [stderr]    |
[INFO] [stderr] 50 |     InvalidLayerCount { min: usize, actual: usize },
[INFO] [stderr]    |                         ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:50:37
[INFO] [stderr]    |
[INFO] [stderr] 50 |     InvalidLayerCount { min: usize, actual: usize },
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:54:26
[INFO] [stderr]    |
[INFO] [stderr] 54 |     InvalidActionCount { min: usize, actual: usize },
[INFO] [stderr]    |                          ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:54:38
[INFO] [stderr]    |
[INFO] [stderr] 54 |     InvalidActionCount { min: usize, actual: usize },
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:58:30
[INFO] [stderr]    |
[INFO] [stderr] 58 |     StateDimensionMismatch { expected: usize, actual: usize },
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:58:47
[INFO] [stderr]    |
[INFO] [stderr] 58 |     StateDimensionMismatch { expected: usize, actual: usize },
[INFO] [stderr]    |                                               ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:62:30
[INFO] [stderr]    |
[INFO] [stderr] 62 |     ParameterCountMismatch { expected: usize, actual: usize },
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:62:47
[INFO] [stderr]    |
[INFO] [stderr] 62 |     ParameterCountMismatch { expected: usize, actual: usize },
[INFO] [stderr]    |                                               ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:66:38
[INFO] [stderr]    |
[INFO] [stderr] 66 |     InvalidProbabilityDistribution { sum: f64 },
[INFO] [stderr]    |                                      ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:82:21
[INFO] [stderr]    |
[INFO] [stderr] 82 |     InvalidAction { action: usize, max_action: usize },
[INFO] [stderr]    |                     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]   --> src/error.rs:82:36
[INFO] [stderr]    |
[INFO] [stderr] 82 |     InvalidAction { action: usize, max_action: usize },
[INFO] [stderr]    |                                    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/error.rs:142:27
[INFO] [stderr]     |
[INFO] [stderr] 142 |     InsufficientSamples { requested: usize, available: usize },
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/error.rs:142:45
[INFO] [stderr]     |
[INFO] [stderr] 142 |     InsufficientSamples { requested: usize, available: usize },
[INFO] [stderr]     |                                             ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/error.rs:154:24
[INFO] [stderr]     |
[INFO] [stderr] 154 |     IndexOutOfBounds { index: usize, size: usize },
[INFO] [stderr]     |                        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/error.rs:154:38
[INFO] [stderr]     |
[INFO] [stderr] 154 |     IndexOutOfBounds { index: usize, size: usize },
[INFO] [stderr]     |                                      ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/gradient.rs:570:13
[INFO] [stderr]     |
[INFO] [stderr] 570 |         let mut policy = create_test_policy();
[INFO] [stderr]     |             ----^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/policy.rs:226:24
[INFO] [stderr]     |
[INFO] [stderr] 226 |     fn apply_rx(&self, mut amplitudes: Array1<f64>, qubit: usize, angle: f64) -> Array1<f64> {
[INFO] [stderr]     |                        ----^^^^^^^^^^
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: `ruqu-qarlp` (lib) generated 24 warnings (run `cargo fix --lib -p ruqu-qarlp` to apply 6 suggestions)
[INFO] [stderr] warning: `ruqu-qarlp` (lib test) generated 25 warnings (23 duplicates) (run `cargo fix --lib -p ruqu-qarlp --tests` to apply 2 suggestions)
[INFO] [stderr] warning: unused variable: `wrong_action`
[INFO] [stderr]    --> tests/integration_tests.rs:228:9
[INFO] [stderr]     |
[INFO] [stderr] 228 |     let wrong_action = 1 - correct_action;
[INFO] [stderr]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wrong_action`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `ruqu-qarlp` (test "integration_tests") generated 1 warning (run `cargo fix --test "integration_tests" -p ruqu-qarlp` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ruqu_qarlp-1f72c00cd58afa5f)
[INFO] [stdout] 
[INFO] [stdout] running 115 tests
[INFO] [stdout] test buffer::tests::test_anneal_beta ... ok
[INFO] [stdout] test buffer::tests::test_beta_max ... ok
[INFO] [stdout] test buffer::tests::test_buffer_creation ... ok
[INFO] [stdout] test buffer::tests::test_get_all ... ok
[INFO] [stdout] test buffer::tests::test_push_and_len ... ok
[INFO] [stdout] test buffer::tests::test_sample_empty ... ok
[INFO] [stdout] test buffer::tests::test_clear ... ok
[INFO] [stdout] test buffer::tests::test_trajectory_buffer_creation ... ok
[INFO] [stdout] test buffer::tests::test_trajectory_buffer_drain ... ok
[INFO] [stdout] test buffer::tests::test_trajectory_buffer_max_capacity ... ok
[INFO] [stdout] test buffer::tests::test_trajectory_buffer_metrics ... ok
[INFO] [stdout] test buffer::tests::test_trajectory_buffer_push ... ok
[INFO] [stdout] test buffer::tests::test_update_priorities_out_of_bounds ... ok
[INFO] [stdout] test buffer::tests::test_update_priorities ... ok
[INFO] [stdout] test environment::tests::test_cartpole_creation ... ok
[INFO] [stdout] test buffer::tests::test_sample_insufficient ... ok
[INFO] [stdout] test buffer::tests::test_sample_uniform ... ok
[INFO] [stdout] test environment::tests::test_cartpole_reset ... ok
[INFO] [stdout] test buffer::tests::test_invalid_capacity ... ok
[INFO] [stdout] test environment::tests::test_gridworld_boundary ... ok
[INFO] [stdout] test environment::tests::test_gridworld_creation ... ok
[INFO] [stdout] test environment::tests::test_gridworld_goal_out_of_bounds ... ok
[INFO] [stdout] test environment::tests::test_gridworld_invalid_action ... ok
[INFO] [stdout] test environment::tests::test_gridworld_invalid_config ... ok
[INFO] [stdout] test environment::tests::test_gridworld_movement ... ok
[INFO] [stdout] test buffer::tests::test_average_priority ... ok
[INFO] [stdout] test environment::tests::test_binarychoice_creation ... ok
[INFO] [stdout] test environment::tests::test_binarychoice_correct_reward ... ok
[INFO] [stdout] test environment::tests::test_cartpole_termination ... ok
[INFO] [stdout] test environment::tests::test_cartpole_physics ... ok
[INFO] [stdout] test environment::tests::test_binarychoice_invalid_steps ... ok
[INFO] [stdout] test environment::tests::test_gridworld_reach_goal ... ok
[INFO] [stdout] test environment::tests::test_gridworld_render ... ok
[INFO] [stdout] test environment::tests::test_binarychoice_incorrect_reward ... ok
[INFO] [stdout] test buffer::tests::test_circular_buffer ... ok
[INFO] [stdout] test environment::tests::test_cartpole_invalid_mass ... ok
[INFO] [stdout] test environment::tests::test_cartpole_step ... ok
[INFO] [stdout] test environment::tests::test_binarychoice_reset ... ok
[INFO] [stdout] test environment::tests::test_gridworld_reset ... ok
[INFO] [stdout] test environment::tests::test_environment_trait_consistency ... ok
[INFO] [stdout] test buffer::tests::test_sample_batch ... ok
[INFO] [stdout] test environment::tests::test_gridworld_step_before_reset ... ok
[INFO] [stdout] test environment::tests::test_step_after_done ... ok
[INFO] [stdout] test error::tests::test_buffer_error_display ... ok
[INFO] [stdout] test error::tests::test_environment_error_display ... ok
[INFO] [stdout] test error::tests::test_error_equality ... ok
[INFO] [stdout] test error::tests::test_gradient_error_display ... ok
[INFO] [stdout] test error::tests::test_policy_error_display ... ok
[INFO] [stdout] test error::tests::test_qarlp_error_from_environment ... ok
[INFO] [stdout] test error::tests::test_qarlp_error_from_policy ... ok
[INFO] [stdout] test error::tests::test_training_error_display ... ok
[INFO] [stdout] test buffer::tests::test_invalid_alpha ... ok
[INFO] [stdout] test buffer::tests::test_trajectory_buffer_invalid_capacity ... ok
[INFO] [stdout] test gradient::tests::test_compute_gae ... ok
[INFO] [stdout] test gradient::tests::test_compute_returns ... ok
[INFO] [stdout] test gradient::tests::test_compute_gradient_empty_trajectory ... ok
[INFO] [stdout] test gradient::tests::test_gradient_config_default ... ok
[INFO] [stdout] test gradient::tests::test_invalid_clip_threshold ... ok
[INFO] [stdout] test gradient::tests::test_invalid_learning_rate ... ok
[INFO] [stdout] test gradient::tests::test_invalid_shift ... ok
[INFO] [stdout] test gradient::tests::test_normalize_advantages ... ok
[INFO] [stdout] test gradient::tests::test_policy_gradient_creation ... ok
[INFO] [stdout] test gradient::tests::test_normalize_empty ... ok
[INFO] [stdout] test gradient::tests::test_set_invalid_learning_rate ... ok
[INFO] [stdout] test gradient::tests::test_reset_baseline ... ok
[INFO] [stdout] test policy::tests::test_invalid_layer_count ... ok
[INFO] [stdout] test gradient::tests::test_set_learning_rate ... ok
[INFO] [stdout] test gradient::tests::test_trajectory_creation ... ok
[INFO] [stdout] test policy::tests::test_forward_state_mismatch ... ok
[INFO] [stdout] test policy::tests::test_no_entanglement ... ok
[INFO] [stdout] test policy::tests::test_policy_creation ... ok
[INFO] [stdout] test gradient::tests::test_baseline_update ... ok
[INFO] [stdout] test policy::tests::test_log_prob ... ok
[INFO] [stdout] test policy::tests::test_multiple_actions ... ok
[INFO] [stdout] test gradient::tests::test_gradient_clipping ... ok
[INFO] [stdout] test policy::tests::test_policy_creation_custom ... ok
[INFO] [stdout] test policy::tests::test_deterministic_with_seed ... ok
[INFO] [stdout] test policy::tests::test_entropy ... ok
[INFO] [stdout] test policy::tests::test_forward_pass ... ok
[INFO] [stdout] test policy::tests::test_invalid_action_count ... ok
[INFO] [stdout] test gradient::tests::test_trajectory_push ... ok
[INFO] [stdout] test policy::tests::test_invalid_qubit_count ... ok
[INFO] [stdout] test policy::tests::test_set_parameters ... ok
[INFO] [stdout] test tests::test_environment_interface ... ok
[INFO] [stdout] test tests::test_replay_buffer ... ok
[INFO] [stdout] test tests::test_policy_forward_pass ... ok
[INFO] [stdout] test policy::tests::test_sample_action ... ok
[INFO] [stdout] test policy::tests::test_set_parameters_wrong_count ... ok
[INFO] [stdout] test gradient::tests::test_batch_gradient ... ok
[INFO] [stdout] test policy::tests::test_temperature_effect ... ok
[INFO] [stdout] test gradient::tests::test_update_parameters ... ok
[INFO] [stdout] test gradient::tests::test_compute_gradient ... ok
[INFO] [stdout] test training::tests::test_checkpoint_serialization ... ok
[INFO] [stdout] test tests::test_gradient_computation ... ok
[INFO] [stdout] test training::tests::test_invalid_episode_count ... ok
[INFO] [stdout] test gradient::tests::test_update_count ... ok
[INFO] [stdout] test training::tests::test_logging_callback ... ok
[INFO] [stdout] test training::tests::test_invalid_max_steps ... ok
[INFO] [stdout] test training::tests::test_trainer_creation ... ok
[INFO] [stdout] test training::tests::test_collect_episode ... ok
[INFO] [stdout] test training::tests::test_evaluate ... ok
[INFO] [stdout] test training::tests::test_collect_episodes ... ok
[INFO] [stdout] test training::tests::test_evaluation_result_fields ... ok
[INFO] [stdout] test policy::tests::test_action_sampling_distribution ... ok
[INFO] [stdout] test training::tests::test_temperature_annealing ... ok
[INFO] [stdout] test training::tests::test_train_single_iteration ... ok
[INFO] [stdout] test tests::test_learning_signal ... ok
[INFO] [stdout] test training::tests::test_early_stopping ... ok
[INFO] [stdout] test tests::test_end_to_end_gridworld ... ok
[INFO] [stdout] test training::tests::test_iteration_metrics ... ok
[INFO] [stdout] test training::tests::test_training_result_fields ... ok
[INFO] [stdout] test tests::test_end_to_end_binary_choice ... ok
[INFO] [stdout] test training::tests::test_train_multiple_iterations ... ok
[INFO] [stdout] test tests::test_end_to_end_cartpole ... ok
[INFO] [stdout] test training::tests::test_binary_choice_learning ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 115 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.50s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration_tests.rs (/opt/rustwide/target/debug/deps/integration_tests-b518c633da6771cc)
[INFO] [stdout] 
[INFO] [stdout] running 34 tests
[INFO] [stdout] test test_binary_choice_reward_structure ... ok
[INFO] [stdout] test test_environment_state_consistency ... ok
[INFO] [stdout] test test_cartpole_physics ... ok
[INFO] [stdout] test test_concurrent_policy_usage ... ok
[INFO] [stdout] test test_environment_trait_polymorphism ... ok
[INFO] [stdout] test test_error_handling_chain ... ok
[INFO] [stdout] test test_advantage_normalization ... ok
[INFO] [stdout] test test_gae_computation ... ok
[INFO] [stdout] test test_gridworld_boundary_constraints ... ok
[INFO] [stdout] test test_policy_forward_produces_valid_probabilities ... ok
[INFO] [stdout] test test_gridworld_navigation ... ok
[INFO] [stdout] test test_policy_parameter_update ... ok
[INFO] [stdout] test test_replay_buffer_circular_behavior ... ok
[INFO] [stdout] test test_policy_log_prob_consistency ... ok
[INFO] [stdout] test test_returns_computation ... ok
[INFO] [stdout] test test_serialization_roundtrip ... ok
[INFO] [stdout] test test_policy_temperature_affects_entropy ... ok
[INFO] [stdout] test test_prioritized_replay_sampling ... ok
[INFO] [stdout] test test_policy_creation_custom_config ... ok
[INFO] [stdout] test test_policy_creation_with_defaults ... ok
[INFO] [stdout] test test_trajectory_buffer_operations ... ok
[INFO] [stdout] test test_gradient_clipping ... ok
[INFO] [stdout] test test_gradient_computation_shape ... ok
[INFO] [stdout] test test_evaluation_without_training ... ok
[INFO] [stdout] test test_batch_gradient_update ... ok
[INFO] [stdout] test test_early_stopping ... ok
[INFO] [stdout] test test_policy_sampling_is_stochastic ... ok
[INFO] [stdout] test test_training_metrics_recorded ... ok
[INFO] [stdout] test test_temperature_annealing_during_training ... ok
[INFO] [stdout] test test_training_produces_learning_signal ... ok
[INFO] [stdout] test test_training_reproducibility ... ok
[INFO] [stdout] test test_full_training_loop_cartpole ... ok
[INFO] [stdout] test test_full_training_loop_gridworld ... ok
[INFO] [stderr]    Doc-tests ruqu_qarlp
[INFO] [stdout] test test_full_training_loop_binary_choice ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 34 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 22.52s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test src/environment.rs - environment (line 17) ... ok
[INFO] [stdout] test src/policy.rs - policy (line 16) ... ok
[INFO] [stdout] test src/buffer.rs - buffer (line 14) ... ok
[INFO] [stdout] test src/lib.rs - (line 40) has been running for over 60 seconds
[INFO] [stdout] test src/training.rs - training (line 16) has been running for over 60 seconds
[INFO] [stdout] test src/lib.rs - (line 40) ... ok
[INFO] [stdout] test src/training.rs - training (line 16) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 232.48s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "360fcfb7de5488e22a79762de45f8fdacce751177f8414274bb0c91e50828b09", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "360fcfb7de5488e22a79762de45f8fdacce751177f8414274bb0c91e50828b09", kill_on_drop: false }`
[INFO] [stdout] 360fcfb7de5488e22a79762de45f8fdacce751177f8414274bb0c91e50828b09
