[INFO] fetching crate algotrading 0.1.0-alpha.2... [INFO] testing algotrading-0.1.0-alpha.2 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7 [INFO] extracting crate algotrading 0.1.0-alpha.2 into /workspace/builds/worker-3-tc1/source [INFO] started tweaking crates.io crate algotrading 0.1.0-alpha.2 [INFO] removed 0 missing examples [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate algotrading 0.1.0-alpha.2 [INFO] tweaked toml for crates.io crate algotrading 0.1.0-alpha.2 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate algotrading 0.1.0-alpha.2 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] crate crates.io crate algotrading 0.1.0-alpha.2 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded clap v4.5.50 [INFO] [stderr] Downloaded clap_builder v4.5.50 [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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5a755bdf4335a96fdefca0e5d6546177b839b2e822301e65ad654028e2ebbd8f [INFO] running `Command { std: "docker" "start" "-a" "5a755bdf4335a96fdefca0e5d6546177b839b2e822301e65ad654028e2ebbd8f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5a755bdf4335a96fdefca0e5d6546177b839b2e822301e65ad654028e2ebbd8f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5a755bdf4335a96fdefca0e5d6546177b839b2e822301e65ad654028e2ebbd8f", kill_on_drop: false }` [INFO] [stdout] 5a755bdf4335a96fdefca0e5d6546177b839b2e822301e65ad654028e2ebbd8f [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=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] 5f7b8970e345bedf782bf90e7bb27cff4c34f61f16534d6672020a8c779f2d20 [INFO] running `Command { std: "docker" "start" "-a" "5f7b8970e345bedf782bf90e7bb27cff4c34f61f16534d6672020a8c779f2d20", kill_on_drop: false }` [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling algotrading v0.1.0-alpha.2 (/opt/rustwide/workdir) [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:74:23 [INFO] [stdout] | [INFO] [stdout] 74 | let new_vec = _mm256_loadu_pd(new_values.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/stats/batch.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | unsafe fn update_avx2(&mut self, new_values: [f64; 4]) -> [(f64, f64); 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:78:27 [INFO] [stdout] | [INFO] [stdout] 78 | let old_vec = _mm256_loadu_pd(self.values[self.head].as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:79:28 [INFO] [stdout] | [INFO] [stdout] 79 | let sums_vec = _mm256_loadu_pd(self.sums.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:80:31 [INFO] [stdout] | [INFO] [stdout] 80 | let sums_sq_vec = _mm256_loadu_pd(self.sums_sq.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | _mm256_storeu_pd(self.sums.as_mut_ptr(), new_sums); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | _mm256_storeu_pd(self.sums_sq.as_mut_ptr(), new_sums_sq); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 95 | _mm256_storeu_pd(self.values[self.head].as_mut_ptr(), new_vec); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:98:24 [INFO] [stdout] | [INFO] [stdout] 98 | let sums_vec = _mm256_loadu_pd(self.sums.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | _mm256_storeu_pd(self.sums.as_mut_ptr(), new_sums); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:103:27 [INFO] [stdout] | [INFO] [stdout] 103 | let sums_sq_vec = _mm256_loadu_pd(self.sums_sq.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 105 | _mm256_storeu_pd(self.sums_sq.as_mut_ptr(), new_sums_sq); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | _mm256_storeu_pd(means_arr.as_mut_ptr(), means); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:127:9 [INFO] [stdout] | [INFO] [stdout] 127 | _mm256_storeu_pd(stds_arr.as_mut_ptr(), std_devs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/matrix/kernels.rs:77:27 [INFO] [stdout] | [INFO] [stdout] 77 | let mat_vec = _mm256_loadu_pd(&matrix[i][j]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/matrix/kernels.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | unsafe fn matvec_avx2(matrix: &[[f64; N]; N], vector: &[f64; N]) -> [f64; N] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/matrix/kernels.rs:78:27 [INFO] [stdout] | [INFO] [stdout] 78 | let vec_vec = _mm256_loadu_pd(&vector[j]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/matrix/kernels.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | _mm256_storeu_pd(sum_array.as_mut_ptr(), sum_vec); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.88s [INFO] running `Command { std: "docker" "inspect" "5f7b8970e345bedf782bf90e7bb27cff4c34f61f16534d6672020a8c779f2d20", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5f7b8970e345bedf782bf90e7bb27cff4c34f61f16534d6672020a8c779f2d20", kill_on_drop: false }` [INFO] [stdout] 5f7b8970e345bedf782bf90e7bb27cff4c34f61f16534d6672020a8c779f2d20 [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=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] 50a7e900133891ca8388dbca8b7fc113b47cded7886b0e3b5e0627f2580ebceb [INFO] running `Command { std: "docker" "start" "-a" "50a7e900133891ca8388dbca8b7fc113b47cded7886b0e3b5e0627f2580ebceb", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-ident v1.0.20 [INFO] [stderr] Compiling zerocopy v0.8.27 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling clap_lex v0.7.6 [INFO] [stderr] Compiling ciborium-io v0.2.2 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling proc-macro2 v1.0.103 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling clap_builder v4.5.50 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling anes v0.1.6 [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:74:23 [INFO] [stdout] | [INFO] [stdout] 74 | let new_vec = _mm256_loadu_pd(new_values.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/stats/batch.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | unsafe fn update_avx2(&mut self, new_values: [f64; 4]) -> [(f64, f64); 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:78:27 [INFO] [stdout] | [INFO] [stdout] 78 | let old_vec = _mm256_loadu_pd(self.values[self.head].as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:79:28 [INFO] [stdout] | [INFO] [stdout] 79 | let sums_vec = _mm256_loadu_pd(self.sums.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:80:31 [INFO] [stdout] | [INFO] [stdout] 80 | let sums_sq_vec = _mm256_loadu_pd(self.sums_sq.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | _mm256_storeu_pd(self.sums.as_mut_ptr(), new_sums); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | _mm256_storeu_pd(self.sums_sq.as_mut_ptr(), new_sums_sq); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 95 | _mm256_storeu_pd(self.values[self.head].as_mut_ptr(), new_vec); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:98:24 [INFO] [stdout] | [INFO] [stdout] 98 | let sums_vec = _mm256_loadu_pd(self.sums.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | _mm256_storeu_pd(self.sums.as_mut_ptr(), new_sums); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:103:27 [INFO] [stdout] | [INFO] [stdout] 103 | let sums_sq_vec = _mm256_loadu_pd(self.sums_sq.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 105 | _mm256_storeu_pd(self.sums_sq.as_mut_ptr(), new_sums_sq); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | _mm256_storeu_pd(means_arr.as_mut_ptr(), means); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:127:9 [INFO] [stdout] | [INFO] [stdout] 127 | _mm256_storeu_pd(stds_arr.as_mut_ptr(), std_devs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/matrix/kernels.rs:77:27 [INFO] [stdout] | [INFO] [stdout] 77 | let mat_vec = _mm256_loadu_pd(&matrix[i][j]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/matrix/kernels.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | unsafe fn matvec_avx2(matrix: &[[f64; N]; N], vector: &[f64; N]) -> [f64; N] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/matrix/kernels.rs:78:27 [INFO] [stdout] | [INFO] [stdout] 78 | let vec_vec = _mm256_loadu_pd(&vector[j]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/matrix/kernels.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | _mm256_storeu_pd(sum_array.as_mut_ptr(), sum_vec); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Compiling quote v1.0.41 [INFO] [stderr] Compiling syn v2.0.108 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling criterion-plot v0.5.0 [INFO] [stderr] Compiling clap v4.5.50 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling zerocopy-derive v0.8.27 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling criterion v0.5.1 [INFO] [stderr] Compiling algotrading v0.1.0-alpha.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `delta_put` [INFO] [stdout] --> examples/options_hedging.rs:13:37 [INFO] [stdout] | [INFO] [stdout] 13 | black_scholes_call, delta_call, delta_put, gamma, vega, theta_call [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> examples/options_hedging.rs:147:29 [INFO] [stdout] | [INFO] [stdout] 147 | let theta_pnl = (-portfolio_theta); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 147 - let theta_pnl = (-portfolio_theta); [INFO] [stdout] 147 + let theta_pnl = -portfolio_theta; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `new_gamma` [INFO] [stdout] --> examples/options_hedging.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 103 | let new_gamma = gamma(spot, strike, rate, div_yield, vol, time_remaining); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_gamma` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current_dd` [INFO] [stdout] --> tests/another.rs:64:22 [INFO] [stdout] | [INFO] [stdout] 64 | let (max_dd, current_dd) = drawdown.update(account_value * (1.0 + daily_return)); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_dd` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `stats::generic::tests::test_generic_function`: Use RollingStats with default type parameters instead [INFO] [stdout] --> src/stats/generic.rs:207:5 [INFO] [stdout] | [INFO] [stdout] 207 | / fn test_generic_function() { [INFO] [stdout] 208 | | fn process(data: &[f64]) -> (f64, f64) { [INFO] [stdout] 209 | | let mut stats = RollingStatsGeneric::::new(); [INFO] [stdout] 210 | | let mut final_mean = T::zero(); [INFO] [stdout] ... | [INFO] [stdout] 236 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `stats::generic::tests::test_scalar_rolling_stats`: Use RollingStats with default type parameters instead [INFO] [stdout] --> src/stats/generic.rs:171:5 [INFO] [stdout] | [INFO] [stdout] 171 | / fn test_scalar_rolling_stats() { [INFO] [stdout] 172 | | let mut stats = RollingStatsGeneric::::new(); [INFO] [stdout] 173 | | [INFO] [stdout] 174 | | let (mean, std) = stats.update(1.0); [INFO] [stdout] ... | [INFO] [stdout] 185 | | assert_eq!(mean, 3.0); // (2+3+4)/3 [INFO] [stdout] 186 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `std_dev` [INFO] [stdout] --> src/stats/rolling.rs:198:20 [INFO] [stdout] | [INFO] [stdout] 198 | let (mean, std_dev) = stats.update(4.0); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_std_dev` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `std` [INFO] [stdout] --> src/stats/generic.rs:174:20 [INFO] [stdout] | [INFO] [stdout] 174 | let (mean, std) = stats.update(1.0); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_std` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `std` [INFO] [stdout] --> src/stats/generic.rs:177:20 [INFO] [stdout] | [INFO] [stdout] 177 | let (mean, std) = stats.update(2.0); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_std` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `std` [INFO] [stdout] --> src/stats/generic.rs:180:20 [INFO] [stdout] | [INFO] [stdout] 180 | let (mean, std) = stats.update(3.0); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_std` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `std` [INFO] [stdout] --> src/stats/generic.rs:184:20 [INFO] [stdout] | [INFO] [stdout] 184 | let (mean, std) = stats.update(4.0); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_std` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:74:23 [INFO] [stdout] | [INFO] [stdout] 74 | let new_vec = _mm256_loadu_pd(new_values.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/stats/batch.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | unsafe fn update_avx2(&mut self, new_values: [f64; 4]) -> [(f64, f64); 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:78:27 [INFO] [stdout] | [INFO] [stdout] 78 | let old_vec = _mm256_loadu_pd(self.values[self.head].as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:79:28 [INFO] [stdout] | [INFO] [stdout] 79 | let sums_vec = _mm256_loadu_pd(self.sums.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:80:31 [INFO] [stdout] | [INFO] [stdout] 80 | let sums_sq_vec = _mm256_loadu_pd(self.sums_sq.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | _mm256_storeu_pd(self.sums.as_mut_ptr(), new_sums); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | _mm256_storeu_pd(self.sums_sq.as_mut_ptr(), new_sums_sq); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 95 | _mm256_storeu_pd(self.values[self.head].as_mut_ptr(), new_vec); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:98:24 [INFO] [stdout] | [INFO] [stdout] 98 | let sums_vec = _mm256_loadu_pd(self.sums.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | _mm256_storeu_pd(self.sums.as_mut_ptr(), new_sums); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:103:27 [INFO] [stdout] | [INFO] [stdout] 103 | let sums_sq_vec = _mm256_loadu_pd(self.sums_sq.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 105 | _mm256_storeu_pd(self.sums_sq.as_mut_ptr(), new_sums_sq); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | _mm256_storeu_pd(means_arr.as_mut_ptr(), means); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/stats/batch.rs:127:9 [INFO] [stdout] | [INFO] [stdout] 127 | _mm256_storeu_pd(stds_arr.as_mut_ptr(), std_devs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/matrix/kernels.rs:77:27 [INFO] [stdout] | [INFO] [stdout] 77 | let mat_vec = _mm256_loadu_pd(&matrix[i][j]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/matrix/kernels.rs:67:1 [INFO] [stdout] | [INFO] [stdout] 67 | unsafe fn matvec_avx2(matrix: &[[f64; N]; N], vector: &[f64; N]) -> [f64; N] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/matrix/kernels.rs:78:27 [INFO] [stdout] | [INFO] [stdout] 78 | let vec_vec = _mm256_loadu_pd(&vector[j]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stdout] --> src/matrix/kernels.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | _mm256_storeu_pd(sum_array.as_mut_ptr(), sum_vec); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `value` and `count` are never read [INFO] [stdout] --> src/numeric/helpers.rs:130:13 [INFO] [stdout] | [INFO] [stdout] 129 | pub struct TestStruct { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 130 | value: T, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 131 | count: usize, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] = note: this warning originates in the macro `numeric_struct` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 28.45s [INFO] running `Command { std: "docker" "inspect" "50a7e900133891ca8388dbca8b7fc113b47cded7886b0e3b5e0627f2580ebceb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "50a7e900133891ca8388dbca8b7fc113b47cded7886b0e3b5e0627f2580ebceb", kill_on_drop: false }` [INFO] [stdout] 50a7e900133891ca8388dbca8b7fc113b47cded7886b0e3b5e0627f2580ebceb [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=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] 79016ee04677421067e067dd83f5789711a1cf8b06cfce8af4c5eebbbd5f55d4 [INFO] running `Command { std: "docker" "start" "-a" "79016ee04677421067e067dd83f5789711a1cf8b06cfce8af4c5eebbbd5f55d4", kill_on_drop: false }` [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:74:23 [INFO] [stderr] | [INFO] [stderr] 74 | let new_vec = _mm256_loadu_pd(new_values.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/stats/batch.rs:72:5 [INFO] [stderr] | [INFO] [stderr] 72 | unsafe fn update_avx2(&mut self, new_values: [f64; 4]) -> [(f64, f64); 4] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:78:27 [INFO] [stderr] | [INFO] [stderr] 78 | let old_vec = _mm256_loadu_pd(self.values[self.head].as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:79:28 [INFO] [stderr] | [INFO] [stderr] 79 | let sums_vec = _mm256_loadu_pd(self.sums.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:80:31 [INFO] [stderr] | [INFO] [stderr] 80 | let sums_sq_vec = _mm256_loadu_pd(self.sums_sq.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:84:13 [INFO] [stderr] | [INFO] [stderr] 84 | _mm256_storeu_pd(self.sums.as_mut_ptr(), new_sums); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:89:13 [INFO] [stderr] | [INFO] [stderr] 89 | _mm256_storeu_pd(self.sums_sq.as_mut_ptr(), new_sums_sq); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:95:9 [INFO] [stderr] | [INFO] [stderr] 95 | _mm256_storeu_pd(self.values[self.head].as_mut_ptr(), new_vec); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:98:24 [INFO] [stderr] | [INFO] [stderr] 98 | let sums_vec = _mm256_loadu_pd(self.sums.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:100:9 [INFO] [stderr] | [INFO] [stderr] 100 | _mm256_storeu_pd(self.sums.as_mut_ptr(), new_sums); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:103:27 [INFO] [stderr] | [INFO] [stderr] 103 | let sums_sq_vec = _mm256_loadu_pd(self.sums_sq.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:105:9 [INFO] [stderr] | [INFO] [stderr] 105 | _mm256_storeu_pd(self.sums_sq.as_mut_ptr(), new_sums_sq); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:126:9 [INFO] [stderr] | [INFO] [stderr] 126 | _mm256_storeu_pd(means_arr.as_mut_ptr(), means); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/stats/batch.rs:127:9 [INFO] [stderr] | [INFO] [stderr] 127 | _mm256_storeu_pd(stds_arr.as_mut_ptr(), std_devs); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/matrix/kernels.rs:77:27 [INFO] [stderr] | [INFO] [stderr] 77 | let mat_vec = _mm256_loadu_pd(&matrix[i][j]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/matrix/kernels.rs:67:1 [INFO] [stderr] | [INFO] [stderr] 67 | unsafe fn matvec_avx2(matrix: &[[f64; N]; N], vector: &[f64; N]) -> [f64; N] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/matrix/kernels.rs:78:27 [INFO] [stderr] | [INFO] [stderr] 78 | let vec_vec = _mm256_loadu_pd(&vector[j]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_pd` is unsafe and requires unsafe block [INFO] [stderr] --> src/matrix/kernels.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 85 | _mm256_storeu_pd(sum_array.as_mut_ptr(), sum_vec); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0133`. [INFO] [stderr] warning: `algotrading` (lib) generated 16 warnings (run `cargo fix --lib -p algotrading` to apply 2 suggestions) [INFO] [stderr] warning: unused variable: `current_dd` [INFO] [stderr] --> tests/another.rs:64:22 [INFO] [stderr] | [INFO] [stderr] 64 | let (max_dd, current_dd) = drawdown.update(account_value * (1.0 + daily_return)); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_dd` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `stats::generic::tests::test_generic_function`: Use RollingStats with default type parameters instead [INFO] [stderr] --> src/stats/generic.rs:207:5 [INFO] [stderr] | [INFO] [stderr] 207 | / fn test_generic_function() { [INFO] [stderr] 208 | | fn process(data: &[f64]) -> (f64, f64) { [INFO] [stderr] 209 | | let mut stats = RollingStatsGeneric::::new(); [INFO] [stderr] 210 | | let mut final_mean = T::zero(); [INFO] [stderr] ... | [INFO] [stderr] 236 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `stats::generic::tests::test_scalar_rolling_stats`: Use RollingStats with default type parameters instead [INFO] [stderr] --> src/stats/generic.rs:171:5 [INFO] [stderr] | [INFO] [stderr] 171 | / fn test_scalar_rolling_stats() { [INFO] [stderr] 172 | | let mut stats = RollingStatsGeneric::::new(); [INFO] [stderr] 173 | | [INFO] [stderr] 174 | | let (mean, std) = stats.update(1.0); [INFO] [stderr] ... | [INFO] [stderr] 185 | | assert_eq!(mean, 3.0); // (2+3+4)/3 [INFO] [stderr] 186 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `std_dev` [INFO] [stderr] --> src/stats/rolling.rs:198:20 [INFO] [stderr] | [INFO] [stderr] 198 | let (mean, std_dev) = stats.update(4.0); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_std_dev` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `std` [INFO] [stderr] --> src/stats/generic.rs:174:20 [INFO] [stderr] | [INFO] [stderr] 174 | let (mean, std) = stats.update(1.0); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_std` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `std` [INFO] [stderr] --> src/stats/generic.rs:177:20 [INFO] [stderr] | [INFO] [stderr] 177 | let (mean, std) = stats.update(2.0); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_std` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `std` [INFO] [stderr] --> src/stats/generic.rs:180:20 [INFO] [stderr] | [INFO] [stderr] 180 | let (mean, std) = stats.update(3.0); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_std` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `std` [INFO] [stderr] --> src/stats/generic.rs:184:20 [INFO] [stderr] | [INFO] [stderr] 184 | let (mean, std) = stats.update(4.0); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_std` [INFO] [stderr] [INFO] [stderr] warning: fields `value` and `count` are never read [INFO] [stderr] --> src/numeric/helpers.rs:130:13 [INFO] [stderr] | [INFO] [stderr] 129 | pub struct TestStruct { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 130 | value: T, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 131 | count: usize, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] = note: this warning originates in the macro `numeric_struct` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused import: `delta_put` [INFO] [stderr] --> examples/options_hedging.rs:13:37 [INFO] [stderr] | [INFO] [stderr] 13 | black_scholes_call, delta_call, delta_put, gamma, vega, theta_call [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> examples/options_hedging.rs:147:29 [INFO] [stderr] | [INFO] [stderr] 147 | let theta_pnl = (-portfolio_theta); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 147 - let theta_pnl = (-portfolio_theta); [INFO] [stderr] 147 + let theta_pnl = -portfolio_theta; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_gamma` [INFO] [stderr] --> examples/options_hedging.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | let new_gamma = gamma(spot, strike, rate, div_yield, vol, time_remaining); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_gamma` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `algotrading` (test "another") generated 1 warning (run `cargo fix --test "another" -p algotrading` to apply 1 suggestion) [INFO] [stderr] warning: `algotrading` (lib test) generated 24 warnings (16 duplicates) (run `cargo fix --lib -p algotrading --tests` to apply 5 suggestions) [INFO] [stderr] warning: `algotrading` (example "options_hedging") generated 3 warnings (run `cargo fix --example "options_hedging" -p algotrading` to apply 3 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/algotrading-454fac85a704d960) [INFO] [stdout] [INFO] [stdout] running 71 tests [INFO] [stdout] test core::rolling::tests::test_alignment ... ok [INFO] [stdout] test core::rolling::tests::test_basic_operations ... ok [INFO] [stdout] test core::rolling::tests::test_newest_oldest ... ok [INFO] [stdout] test core::rolling::tests::test_get ... ok [INFO] [stdout] test core::rolling::tests::test_iteration ... ok [INFO] [stdout] test core::rolling::tests::test_reset ... ok [INFO] [stdout] test core::rolling::tests::test_stack_allocation ... ok [INFO] [stdout] test data::quality::tests::test_crossed_market ... ok [INFO] [stdout] test data::quality::tests::test_feed_comparison ... ok [INFO] [stdout] test data::quality::tests::test_mad_outlier ... ok [INFO] [stdout] test data::quality::tests::test_staleness_detector ... ok [INFO] [stdout] test filters::kalman::tests::test_kalman_1d ... ok [INFO] [stdout] test matrix::estimation::tests::test_dominant_eigenvalue ... ok [INFO] [stdout] test matrix::estimation::tests::test_ewma_covariance ... ok [INFO] [stdout] test matrix::estimation::tests::test_ledoit_wolf ... ok [INFO] [stdout] test matrix::kernels::tests::test_lu_decomposition ... ok [INFO] [stdout] test matrix::kernels::tests::test_qr_decomposition ... ok [INFO] [stdout] test matrix::kernels::tests::test_svd_identity ... ok [INFO] [stdout] test matrix::kernels::tests::test_trace ... ok [INFO] [stdout] test matrix::ops::tests::test_cholesky ... ok [INFO] [stdout] test matrix::ops::tests::test_eigen_identity ... ok [INFO] [stdout] test matrix::ops::tests::test_portfolio_variance ... ok [INFO] [stdout] test matrix::ops::tests::test_quadratic_form ... ok [INFO] [stdout] test numeric::helpers::tests::test_numeric_struct_creation ... ok [INFO] [stdout] test numeric::tests::test_generic_function ... ok [INFO] [stdout] test numeric::tests::test_scalar_operations ... ok [INFO] [stdout] test options::volatility::tests::test_forward_volatility ... ok [INFO] [stdout] test probability::pdf::tests::test_histogram ... ok [INFO] [stdout] test probability::bayes::tests::test_bayesian_filter ... ok [INFO] [stdout] test options::pricing::tests::test_delta_bounds ... ok [INFO] [stdout] test options::volatility::tests::test_barrier_probability ... ok [INFO] [stdout] test options::pricing::tests::test_black_scholes_call ... ok [INFO] [stdout] test probability::mahalanobis::tests::test_mahalanobis ... ok [INFO] [stdout] test options::volatility::tests::test_digital_bounds ... ok [INFO] [stdout] test probability::utils::tests::test_chi_squared_quantile ... ok [INFO] [stdout] test options::pricing::tests::test_put_call_parity ... ok [INFO] [stdout] test options::pricing::tests::test_gamma_positive ... ok [INFO] [stdout] test probability::utils::tests::test_erf ... ok [INFO] [stdout] test probability::bayes::tests::test_entropy ... ok [INFO] [stdout] test options::volatility::tests::test_vanna_symmetry ... ok [INFO] [stdout] test options::pricing::tests::test_implied_vol_recovery ... ok [INFO] [stdout] test probability::pdf::tests::test_kde ... ok [INFO] [stdout] test probability::utils::tests::test_normal_quantile ... ok [INFO] [stdout] test probability::utils::tests::test_standard_normal_cdf ... ok [INFO] [stdout] test probability::utils::tests::test_standard_normal_pdf ... ok [INFO] [stdout] test probability::utils::tests::test_variance_from_sums ... ok [INFO] [stdout] test risk::metrics::tests::test_kelly ... ok [INFO] [stdout] test regime::markov::tests::test_hmm_3state ... ok [INFO] [stdout] test risk::metrics::tests::test_max_drawdown ... ok [INFO] [stdout] test risk::metrics::tests::test_sharpe ... ok [INFO] [stdout] test regime::markov::tests::test_markov_switching ... ok [INFO] [stdout] test stats::batch::tests::test_batch_simd ... ok [INFO] [stdout] test risk::metrics::tests::test_rolling_var ... ok [INFO] [stdout] test stats::rolling::tests::test_stack_allocation ... ok [INFO] [stdout] test stats::generic::tests::test_generic_function ... ok [INFO] [stdout] test stats::generic::tests::test_scalar_rolling_stats ... ok [INFO] [stdout] test regime::markov::tests::test_reset ... ok [INFO] [stdout] test stats::rolling::tests::test_rolling_stats ... ok [INFO] [stdout] test ta::clean::tests::test_bollinger_defaults ... ok [INFO] [stdout] test ta::clean::tests::test_ewma_defaults_to_f64 ... ok [INFO] [stdout] test ta::clean::tests::test_ewma_explicit_f64 ... ok [INFO] [stdout] test stats::rolling::tests::test_default_params ... ok [INFO] [stdout] test ta::clean::tests::test_generic_function ... ok [INFO] [stdout] test ta::clean::tests::test_macd_defaults ... ok [INFO] [stdout] test ta::indicators::tests::test_bollinger ... ok [INFO] [stdout] test ta::indicators::tests::test_correlation ... ok [INFO] [stdout] test ta::indicators::tests::test_ewma ... ok [INFO] [stdout] test ta::indicators::tests::test_macd ... ok [INFO] [stdout] test ta::indicators::tests::test_rsi ... ok [INFO] [stdout] test probability::utils::tests::test_gaussian_pdf ... ok [INFO] [stdout] test probability::pdf::tests::test_empirical_cdf ... ok [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/algotrading-f2d3580060d1a7a2) [INFO] [stdout] [INFO] [stderr] Running tests/another.rs (/opt/rustwide/target/debug/deps/another-1b799e2f6adc73b9) [INFO] [stdout] test result: ok. 71 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.31s [INFO] [stderr] Running tests/end_to_end.rs (/opt/rustwide/target/debug/deps/end_to_end-62af2172212c901a) [INFO] [stdout] [INFO] [stderr] Running tests/end_to_end_strategy.rs (/opt/rustwide/target/debug/deps/end_to_end_strategy-905e6682260f320f) [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] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test test_full_portfolio_strategy ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test test_realistic_example ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test test_strategy_components_individually ... ok [INFO] [stdout] test test_complete_strategy_backtest ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/example.rs (/opt/rustwide/target/debug/deps/example-bc8e64d5b702f0b4) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test test_portfolio_simulation_full ... ok [INFO] [stderr] Running tests/rework.rs (/opt/rustwide/target/debug/deps/rework-86122edb5e8fa69a) [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stderr] Running tests/smoke_test.rs (/opt/rustwide/target/debug/deps/smoke_test-cd5861f08eb14ac8) [INFO] [stdout] test test_strategy_components_individually_stable ... ok [INFO] [stdout] test test_complete_strategy_backtest_stable ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test test_integration_smoke ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests algotrading [INFO] [stdout] [INFO] [stdout] running 32 tests [INFO] [stdout] test src/core/rolling.rs - core::rolling::RollingBuffer (line 21) ... ok [INFO] [stdout] test src/numeric/helpers.rs - numeric::helpers::impl_default_numeric (line 55) ... ignored [INFO] [stdout] test src/numeric/helpers.rs - numeric::helpers::numeric_aliases (line 86) ... ignored [INFO] [stdout] test src/numeric/helpers.rs - numeric::helpers::numeric_struct (line 10) ... ignored [INFO] [stdout] test src/options/pricing.rs - options::pricing::delta_call (line 120) ... ignored [INFO] [stdout] test src/options/pricing.rs - options::pricing::delta_call (line 72) ... ignored [INFO] [stdout] test src/options/pricing.rs - options::pricing::delta_call (line 99) ... ignored [INFO] [stdout] test src/lib.rs - (line 34) ... ok [INFO] [stdout] test src/probability/utils.rs - probability::utils::gaussian_pdf (line 18) ... ok [INFO] [stdout] test src/core/rolling.rs - core::rolling::RollingBuffer::iter (line 144) ... ok [INFO] [stdout] test src/matrix/ops.rs - matrix::ops (line 161) ... ok [INFO] [stdout] test src/core/rolling.rs - core::rolling::RollingBuffer::push (line 70) ... ok [INFO] [stdout] test src/probability/utils.rs - probability::utils::standard_normal_cdf (line 64) ... ok [INFO] [stdout] test src/matrix/ops.rs - matrix::ops (line 52) ... ok [INFO] [stdout] test src/probability/distributions.rs - probability::distributions (line 18) ... ok [INFO] [stdout] test src/probability/distributions.rs - probability::distributions::Normal (line 114) ... ok [INFO] [stdout] test src/matrix/kernels.rs - matrix::kernels::invert_matrix (line 606) ... ok [INFO] [stdout] test src/matrix/ops.rs - matrix::ops (line 18) ... ok [INFO] [stdout] test src/probability/distributions.rs - probability::distributions (line 34) ... ok [INFO] [stdout] test src/probability/utils.rs - probability::utils::chi_squared_quantile (line 204) ... ok [INFO] [stdout] test src/probability/utils.rs - probability::utils::normal_quantile (line 128) ... ok [INFO] [stdout] test src/stats/generic.rs - stats::generic (line 8) ... ignored [INFO] [stdout] test src/probability/distributions.rs - probability::distributions (line 56) ... ok [INFO] [stdout] test src/matrix/ops.rs - matrix::ops (line 89) ... ok [INFO] [stdout] test src/matrix/ops.rs - matrix::ops (line 126) ... ok [INFO] [stdout] test src/ta/indicators.rs - ta::indicators::EWMA (line 11) ... ok [INFO] [stdout] test src/probability/utils.rs - probability::utils::standard_normal_pdf (line 42) ... ok [INFO] [stdout] test src/stats/rolling.rs - stats::rolling::RollingStats (line 11) ... ok [INFO] [stdout] test src/stats/mod.rs - stats (line 8) ... ok [INFO] [stdout] test src/probability/utils.rs - probability::utils::variance_from_sums (line 249) ... ok [INFO] [stdout] test src/ta/mod.rs - ta (line 8) ... ok [INFO] [stdout] test src/ta/clean.rs - ta::clean::EWMA (line 14) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 25 passed; 0 failed; 7 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stdout] all doctests ran in 0.70s; merged doctests compilation took 0.63s [INFO] running `Command { std: "docker" "inspect" "79016ee04677421067e067dd83f5789711a1cf8b06cfce8af4c5eebbbd5f55d4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "79016ee04677421067e067dd83f5789711a1cf8b06cfce8af4c5eebbbd5f55d4", kill_on_drop: false }` [INFO] [stdout] 79016ee04677421067e067dd83f5789711a1cf8b06cfce8af4c5eebbbd5f55d4