[INFO] fetching crate finlib-ta 0.6.0... [INFO] testing finlib-ta-0.6.0 against beta-2025-09-21 for beta-1.91-3 [INFO] extracting crate finlib-ta 0.6.0 into /workspace/builds/worker-5-tc2/source [INFO] started tweaking crates.io crate finlib-ta 0.6.0 [INFO] finished tweaking crates.io crate finlib-ta 0.6.0 [INFO] tweaked toml for crates.io crate finlib-ta 0.6.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate finlib-ta 0.6.0 on toolchain beta-2025-09-21 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate finlib-ta 0.6.0 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" "+beta-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7e241cc96d1616d80076ac949e53a42eddf47689c0ac2a0a484abe08e1768344 [INFO] running `Command { std: "docker" "start" "-a" "7e241cc96d1616d80076ac949e53a42eddf47689c0ac2a0a484abe08e1768344", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7e241cc96d1616d80076ac949e53a42eddf47689c0ac2a0a484abe08e1768344", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7e241cc96d1616d80076ac949e53a42eddf47689c0ac2a0a484abe08e1768344", kill_on_drop: false }` [INFO] [stdout] 7e241cc96d1616d80076ac949e53a42eddf47689c0ac2a0a484abe08e1768344 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 77b9aec3ac543b7ffedc0d4cf7d94e60f389e0d4a1de61b5a06681c00fde2407 [INFO] running `Command { std: "docker" "start" "-a" "77b9aec3ac543b7ffedc0d4cf7d94e60f389e0d4a1de61b5a06681c00fde2407", kill_on_drop: false }` [INFO] [stderr] Compiling finlib-ta v0.6.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `alloc::vec` [INFO] [stdout] --> src/indicators/volume_weighted_average_price.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use alloc::vec; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloc::vec` [INFO] [stdout] --> src/data_item.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use alloc::vec; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.47s [INFO] running `Command { std: "docker" "inspect" "77b9aec3ac543b7ffedc0d4cf7d94e60f389e0d4a1de61b5a06681c00fde2407", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "77b9aec3ac543b7ffedc0d4cf7d94e60f389e0d4a1de61b5a06681c00fde2407", kill_on_drop: false }` [INFO] [stdout] 77b9aec3ac543b7ffedc0d4cf7d94e60f389e0d4a1de61b5a06681c00fde2407 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6dff6a0738f73c4e4d92bd2dbce16c0e89d8fee98dadb8024e394a684c163138 [INFO] running `Command { std: "docker" "start" "-a" "6dff6a0738f73c4e4d92bd2dbce16c0e89d8fee98dadb8024e394a684c163138", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v0.1.8 [INFO] [stderr] Compiling memchr v2.7.5 [INFO] [stderr] Compiling assert_approx_eq v1.1.0 [INFO] [stderr] Compiling bencher v0.1.5 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling bincode v1.3.3 [INFO] [stdout] warning: unused import: `alloc::vec` [INFO] [stdout] --> src/indicators/volume_weighted_average_price.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use alloc::vec; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloc::vec` [INFO] [stdout] --> src/data_item.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use alloc::vec; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling csv-core v0.1.12 [INFO] [stderr] Compiling csv v1.3.1 [INFO] [stderr] Compiling finlib-ta v0.6.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/exponential_moving_average.rs:132:5 [INFO] [stdout] | [INFO] [stdout] 132 | test_indicator!(ExponentialMovingAverage); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 132 | let _ = test_indicator!(ExponentialMovingAverage); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/weighted_moving_average.rs:143:5 [INFO] [stdout] | [INFO] [stdout] 143 | test_indicator!(WeightedMovingAverage); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 143 | let _ = test_indicator!(WeightedMovingAverage); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/hull_moving_average.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | test_indicator!(HullMovingAverage); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 123 | let _ = test_indicator!(HullMovingAverage); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/simple_moving_average.rs:134:5 [INFO] [stdout] | [INFO] [stdout] 134 | test_indicator!(SimpleMovingAverage); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 134 | let _ = test_indicator!(SimpleMovingAverage); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/standard_deviation.rs:160:5 [INFO] [stdout] | [INFO] [stdout] 160 | test_indicator!(StandardDeviation); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 160 | let _ = test_indicator!(StandardDeviation); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/mean_absolute_deviation.rs:128:5 [INFO] [stdout] | [INFO] [stdout] 128 | test_indicator!(MeanAbsoluteDeviation); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 128 | let _ = test_indicator!(MeanAbsoluteDeviation); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/relative_strength_index.rs:162:5 [INFO] [stdout] | [INFO] [stdout] 162 | test_indicator!(RelativeStrengthIndex); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 162 | let _ = test_indicator!(RelativeStrengthIndex); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/minimum.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | test_indicator!(Minimum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 127 | let _ = test_indicator!(Minimum); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/maximum.rs:128:5 [INFO] [stdout] | [INFO] [stdout] 128 | test_indicator!(Maximum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 128 | let _ = test_indicator!(Maximum); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/fast_stochastic.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | test_indicator!(FastStochastic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 127 | let _ = test_indicator!(FastStochastic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/slow_stochastic.rs:94:5 [INFO] [stdout] | [INFO] [stdout] 94 | test_indicator!(SlowStochastic); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 94 | let _ = test_indicator!(SlowStochastic); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/true_range.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | test_indicator!(TrueRange); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 119 | let _ = test_indicator!(TrueRange); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/average_true_range.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | test_indicator!(AverageTrueRange); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 123 | let _ = test_indicator!(AverageTrueRange); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/moving_average_convergence_divergence.rs:145:5 [INFO] [stdout] | [INFO] [stdout] 145 | test_indicator!(Macd); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 145 | let _ = test_indicator!(Macd); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/percentage_price_oscillator.rs:145:5 [INFO] [stdout] | [INFO] [stdout] 145 | test_indicator!(Ppo); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 145 | let _ = test_indicator!(Ppo); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/efficiency_ratio.rs:133:5 [INFO] [stdout] | [INFO] [stdout] 133 | test_indicator!(EfficiencyRatio); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 133 | let _ = test_indicator!(EfficiencyRatio); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/bollinger_bands.rs:131:5 [INFO] [stdout] | [INFO] [stdout] 131 | test_indicator!(BollingerBands); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 131 | let _ = test_indicator!(BollingerBands); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/keltner_channel.rs:144:5 [INFO] [stdout] | [INFO] [stdout] 144 | test_indicator!(KeltnerChannel); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 144 | let _ = test_indicator!(KeltnerChannel); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `must_use` that must be used [INFO] [stdout] --> src/indicators/rate_of_change.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | test_indicator!(RateOfChange); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 135 | let _ = test_indicator!(RateOfChange); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 3.74s [INFO] running `Command { std: "docker" "inspect" "6dff6a0738f73c4e4d92bd2dbce16c0e89d8fee98dadb8024e394a684c163138", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6dff6a0738f73c4e4d92bd2dbce16c0e89d8fee98dadb8024e394a684c163138", kill_on_drop: false }` [INFO] [stdout] 6dff6a0738f73c4e4d92bd2dbce16c0e89d8fee98dadb8024e394a684c163138 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] b591bf03f1ef91fe14bee42f99c948f184e3af7c0c4cefc9cf9b11ee7a44abd7 [INFO] running `Command { std: "docker" "start" "-a" "b591bf03f1ef91fe14bee42f99c948f184e3af7c0c4cefc9cf9b11ee7a44abd7", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `alloc::vec` [INFO] [stderr] --> src/indicators/volume_weighted_average_price.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use alloc::vec; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `alloc::vec` [INFO] [stderr] --> src/data_item.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use alloc::vec; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `finlib-ta` (lib) generated 2 warnings (run `cargo fix --lib -p finlib-ta` to apply 2 suggestions) [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/exponential_moving_average.rs:132:5 [INFO] [stderr] | [INFO] [stderr] 132 | test_indicator!(ExponentialMovingAverage); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 132 | let _ = test_indicator!(ExponentialMovingAverage); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/weighted_moving_average.rs:143:5 [INFO] [stderr] | [INFO] [stderr] 143 | test_indicator!(WeightedMovingAverage); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 143 | let _ = test_indicator!(WeightedMovingAverage); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/hull_moving_average.rs:123:5 [INFO] [stderr] | [INFO] [stderr] 123 | test_indicator!(HullMovingAverage); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 123 | let _ = test_indicator!(HullMovingAverage); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/simple_moving_average.rs:134:5 [INFO] [stderr] | [INFO] [stderr] 134 | test_indicator!(SimpleMovingAverage); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 134 | let _ = test_indicator!(SimpleMovingAverage); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/standard_deviation.rs:160:5 [INFO] [stderr] | [INFO] [stderr] 160 | test_indicator!(StandardDeviation); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 160 | let _ = test_indicator!(StandardDeviation); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/mean_absolute_deviation.rs:128:5 [INFO] [stderr] | [INFO] [stderr] 128 | test_indicator!(MeanAbsoluteDeviation); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 128 | let _ = test_indicator!(MeanAbsoluteDeviation); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/relative_strength_index.rs:162:5 [INFO] [stderr] | [INFO] [stderr] 162 | test_indicator!(RelativeStrengthIndex); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 162 | let _ = test_indicator!(RelativeStrengthIndex); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/minimum.rs:127:5 [INFO] [stderr] | [INFO] [stderr] 127 | test_indicator!(Minimum); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 127 | let _ = test_indicator!(Minimum); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/maximum.rs:128:5 [INFO] [stderr] | [INFO] [stderr] 128 | test_indicator!(Maximum); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 128 | let _ = test_indicator!(Maximum); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/fast_stochastic.rs:127:5 [INFO] [stderr] | [INFO] [stderr] 127 | test_indicator!(FastStochastic); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 127 | let _ = test_indicator!(FastStochastic); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/slow_stochastic.rs:94:5 [INFO] [stderr] | [INFO] [stderr] 94 | test_indicator!(SlowStochastic); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 94 | let _ = test_indicator!(SlowStochastic); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/true_range.rs:119:5 [INFO] [stderr] | [INFO] [stderr] 119 | test_indicator!(TrueRange); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 119 | let _ = test_indicator!(TrueRange); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/average_true_range.rs:123:5 [INFO] [stderr] | [INFO] [stderr] 123 | test_indicator!(AverageTrueRange); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 123 | let _ = test_indicator!(AverageTrueRange); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/moving_average_convergence_divergence.rs:145:5 [INFO] [stderr] | [INFO] [stderr] 145 | test_indicator!(Macd); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 145 | let _ = test_indicator!(Macd); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/percentage_price_oscillator.rs:145:5 [INFO] [stderr] | [INFO] [stderr] 145 | test_indicator!(Ppo); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 145 | let _ = test_indicator!(Ppo); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/efficiency_ratio.rs:133:5 [INFO] [stderr] | [INFO] [stderr] 133 | test_indicator!(EfficiencyRatio); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 133 | let _ = test_indicator!(EfficiencyRatio); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/bollinger_bands.rs:131:5 [INFO] [stderr] | [INFO] [stderr] 131 | test_indicator!(BollingerBands); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 131 | let _ = test_indicator!(BollingerBands); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/keltner_channel.rs:144:5 [INFO] [stderr] | [INFO] [stderr] 144 | test_indicator!(KeltnerChannel); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 144 | let _ = test_indicator!(KeltnerChannel); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `must_use` that must be used [INFO] [stderr] --> src/indicators/rate_of_change.rs:135:5 [INFO] [stderr] | [INFO] [stderr] 135 | test_indicator!(RateOfChange); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 135 | let _ = test_indicator!(RateOfChange); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `finlib-ta` (lib test) generated 19 warnings [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/finlib_ta-eecf53630a47c9dd) [INFO] [stdout] [INFO] [stdout] running 147 tests [INFO] [stdout] test data_item::tests::test_builder ... ok [INFO] [stdout] test indicators::average_true_range::tests::test_default ... ok [INFO] [stdout] test helpers::tests::test_max3 ... ok [INFO] [stdout] test indicators::average_true_range::tests::test_new ... ok [INFO] [stdout] test indicators::average_true_range::tests::test_display ... ok [INFO] [stdout] test indicators::bollinger_bands::tests::test_display ... ok [INFO] [stdout] test indicators::bollinger_bands::tests::test_indicator ... ok [INFO] [stdout] test indicators::bollinger_bands::tests::test_new ... ok [INFO] [stdout] test indicators::bollinger_bands::tests::test_next ... ok [INFO] [stdout] test indicators::bollinger_bands::tests::test_reset ... ok [INFO] [stdout] test indicators::chandelier_exit::tests::test_display ... ok [INFO] [stdout] test indicators::chandelier_exit::tests::test_default ... ok [INFO] [stdout] test indicators::chandelier_exit::tests::test_next_bar ... ok [INFO] [stdout] test indicators::average_true_range::tests::test_indicator ... ok [INFO] [stdout] test indicators::chandelier_exit::tests::test_reset ... ok [INFO] [stdout] test indicators::commodity_channel_index::tests::test_reset ... ok [INFO] [stdout] test indicators::efficiency_ratio::tests::test_indicator ... ok [INFO] [stdout] test indicators::commodity_channel_index::tests::test_display ... ok [INFO] [stdout] test indicators::exponential_moving_average::tests::test_default ... ok [INFO] [stdout] test indicators::exponential_moving_average::tests::test_display ... ok [INFO] [stdout] test indicators::exponential_moving_average::tests::test_indicator ... ok [INFO] [stdout] test indicators::exponential_moving_average::tests::test_new ... ok [INFO] [stdout] test indicators::exponential_moving_average::tests::test_next ... ok [INFO] [stdout] test indicators::exponential_moving_average::tests::test_reset ... ok [INFO] [stdout] test indicators::commodity_channel_index::tests::test_default ... ok [INFO] [stdout] test indicators::fast_stochastic::tests::test_default ... ok [INFO] [stdout] test indicators::fast_stochastic::tests::test_indicator ... ok [INFO] [stdout] test indicators::fast_stochastic::tests::test_display ... ok [INFO] [stdout] test indicators::commodity_channel_index::tests::test_next_bar ... ok [INFO] [stdout] test indicators::average_true_range::tests::test_reset ... ok [INFO] [stdout] test indicators::efficiency_ratio::tests::test_display ... ok [INFO] [stdout] test indicators::bollinger_bands::tests::test_default ... ok [INFO] [stdout] test indicators::efficiency_ratio::tests::test_new ... ok [INFO] [stdout] test indicators::hull_moving_average::tests::test_indicator ... ok [INFO] [stdout] test indicators::hull_moving_average::tests::test_new ... ok [INFO] [stdout] test indicators::hull_moving_average::tests::test_reset ... ok [INFO] [stdout] test indicators::fast_stochastic::tests::test_new ... ok [INFO] [stdout] test indicators::keltner_channel::tests::test_default ... ok [INFO] [stdout] test indicators::fast_stochastic::tests::test_next_with_bars ... ok [INFO] [stdout] test indicators::fast_stochastic::tests::test_next_with_f64 ... ok [INFO] [stdout] test indicators::fast_stochastic::tests::test_reset ... ok [INFO] [stdout] test indicators::hull_moving_average::tests::test_default ... ok [INFO] [stdout] test indicators::hull_moving_average::tests::test_display ... ok [INFO] [stdout] test indicators::hull_moving_average::tests::test_next ... ok [INFO] [stdout] test indicators::efficiency_ratio::tests::test_next ... ok [INFO] [stdout] test indicators::keltner_channel::tests::test_display ... ok [INFO] [stdout] test indicators::keltner_channel::tests::test_new ... ok [INFO] [stdout] test indicators::keltner_channel::tests::test_next ... ok [INFO] [stdout] test indicators::keltner_channel::tests::test_next_with_data_item ... ok [INFO] [stdout] test indicators::keltner_channel::tests::test_reset ... ok [INFO] [stdout] test indicators::maximum::tests::test_default ... ok [INFO] [stdout] test indicators::maximum::tests::test_new ... ok [INFO] [stdout] test indicators::maximum::tests::test_display ... ok [INFO] [stdout] test indicators::maximum::tests::test_reset ... ok [INFO] [stdout] test indicators::maximum::tests::test_next ... ok [INFO] [stdout] test indicators::maximum::tests::test_indicator ... ok [INFO] [stdout] test indicators::mean_absolute_deviation::tests::test_indicator ... ok [INFO] [stdout] test indicators::maximum::tests::test_next_with_bars ... ok [INFO] [stdout] test indicators::mean_absolute_deviation::tests::test_new ... ok [INFO] [stdout] test indicators::mean_absolute_deviation::tests::test_default ... ok [INFO] [stdout] test indicators::mean_absolute_deviation::tests::test_display ... ok [INFO] [stdout] test indicators::minimum::tests::test_default ... ok [INFO] [stdout] test indicators::minimum::tests::test_next ... ok [INFO] [stdout] test indicators::minimum::tests::test_next_with_bars ... ok [INFO] [stdout] test indicators::mean_absolute_deviation::tests::test_reset ... ok [INFO] [stdout] test indicators::minimum::tests::test_reset ... ok [INFO] [stdout] test indicators::mean_absolute_deviation::tests::test_next ... ok [INFO] [stdout] test indicators::money_flow_index::tests::test_default ... ok [INFO] [stdout] test indicators::keltner_channel::tests::test_indicator ... ok [INFO] [stdout] test indicators::minimum::tests::test_new ... ok [INFO] [stdout] test indicators::money_flow_index::tests::test_display ... ok [INFO] [stdout] test indicators::minimum::tests::test_display ... ok [INFO] [stdout] test indicators::minimum::tests::test_indicator ... ok [INFO] [stdout] test indicators::money_flow_index::tests::test_reset ... ok [INFO] [stdout] test indicators::moving_average_convergence_divergence::tests::test_default ... ok [INFO] [stdout] test indicators::moving_average_convergence_divergence::tests::test_reset ... ok [INFO] [stdout] test indicators::moving_average_convergence_divergence::tests::test_new ... ok [INFO] [stdout] test indicators::on_balance_volume::tests::test_default ... ok [INFO] [stdout] test indicators::moving_average_convergence_divergence::tests::test_display ... ok [INFO] [stdout] test indicators::moving_average_convergence_divergence::tests::test_macd ... ok [INFO] [stdout] test indicators::on_balance_volume::tests::test_display ... ok [INFO] [stdout] test indicators::percentage_price_oscillator::tests::test_default ... ok [INFO] [stdout] test indicators::percentage_price_oscillator::tests::test_display ... ok [INFO] [stdout] test indicators::percentage_price_oscillator::tests::test_indicator ... ok [INFO] [stdout] test indicators::percentage_price_oscillator::tests::test_new ... ok [INFO] [stdout] test indicators::percentage_price_oscillator::tests::test_next ... ok [INFO] [stdout] test indicators::on_balance_volume::tests::test_next_bar ... ok [INFO] [stdout] test indicators::on_balance_volume::tests::test_reset ... ok [INFO] [stdout] test indicators::commodity_channel_index::tests::test_new ... ok [INFO] [stdout] test indicators::money_flow_index::tests::test_new ... ok [INFO] [stdout] test indicators::moving_average_convergence_divergence::tests::test_indicator ... ok [INFO] [stdout] test indicators::percentage_price_oscillator::tests::test_reset ... ok [INFO] [stdout] test indicators::rate_of_change::tests::test_indicator ... ok [INFO] [stdout] test indicators::rate_of_change::tests::test_next_bar ... ok [INFO] [stdout] test indicators::rate_of_change::tests::test_reset ... ok [INFO] [stdout] test indicators::relative_strength_index::tests::test_default ... ok [INFO] [stdout] test indicators::rate_of_change::tests::test_next_f64 ... ok [INFO] [stdout] test indicators::relative_strength_index::tests::test_display ... ok [INFO] [stdout] test indicators::money_flow_index::tests::test_next_bar ... ok [INFO] [stdout] test indicators::relative_strength_index::tests::test_indicator ... ok [INFO] [stdout] test indicators::simple_moving_average::tests::test_new ... ok [INFO] [stdout] test indicators::relative_strength_index::tests::test_next ... ok [INFO] [stdout] test indicators::simple_moving_average::tests::test_reset ... ok [INFO] [stdout] test indicators::relative_strength_index::tests::test_new ... ok [INFO] [stdout] test indicators::relative_strength_index::tests::test_reset ... ok [INFO] [stdout] test indicators::rate_of_change::tests::test_new ... ok [INFO] [stdout] test indicators::simple_moving_average::tests::test_indicator ... ok [INFO] [stdout] test indicators::simple_moving_average::tests::test_next_with_bars ... ok [INFO] [stdout] test indicators::simple_moving_average::tests::test_next ... ok [INFO] [stdout] test indicators::simple_moving_average::tests::test_default ... ok [INFO] [stdout] test indicators::slow_stochastic::tests::test_display ... ok [INFO] [stdout] test indicators::slow_stochastic::tests::test_default ... ok [INFO] [stdout] test indicators::slow_stochastic::tests::test_indicator ... ok [INFO] [stdout] test indicators::slow_stochastic::tests::test_reset ... ok [INFO] [stdout] test indicators::slow_stochastic::tests::test_new ... ok [INFO] [stdout] test indicators::standard_deviation::tests::test_default ... ok [INFO] [stdout] test indicators::standard_deviation::tests::test_display ... ok [INFO] [stdout] test indicators::standard_deviation::tests::test_indicator ... ok [INFO] [stdout] test indicators::slow_stochastic::tests::test_next_with_bars ... ok [INFO] [stdout] test indicators::standard_deviation::tests::test_new ... ok [INFO] [stdout] test indicators::standard_deviation::tests::test_next ... ok [INFO] [stdout] test indicators::slow_stochastic::tests::test_next_with_f64 ... ok [INFO] [stdout] test indicators::standard_deviation::tests::test_next_floating_point_error ... ok [INFO] [stdout] test indicators::standard_deviation::tests::test_next_with_bars ... ok [INFO] [stdout] test indicators::standard_deviation::tests::test_next_same_values ... ok [INFO] [stdout] test indicators::standard_deviation::tests::test_reset ... ok [INFO] [stdout] test indicators::true_range::tests::test_default ... ok [INFO] [stdout] test indicators::true_range::tests::test_indicator ... ok [INFO] [stdout] test indicators::true_range::tests::test_display ... ok [INFO] [stdout] test indicators::true_range::tests::test_next_bar ... ok [INFO] [stdout] test indicators::true_range::tests::test_next_f64 ... ok [INFO] [stdout] test indicators::true_range::tests::test_reset ... ok [INFO] [stdout] test indicators::volume_weighted_average_price::tests::test_default ... ok [INFO] [stdout] test indicators::volume_weighted_average_price::tests::test_display ... ok [INFO] [stdout] test indicators::volume_weighted_average_price::tests::test_next_std_dev ... ok [INFO] [stdout] test indicators::volume_weighted_average_price::tests::test_next ... ok [INFO] [stdout] test indicators::volume_weighted_average_price::tests::test_reset ... ok [INFO] [stdout] test indicators::weighted_moving_average::tests::test_display ... ok [INFO] [stdout] test indicators::weighted_moving_average::tests::test_indicator ... ok [INFO] [stdout] test indicators::weighted_moving_average::tests::test_default ... ok [INFO] [stdout] test indicators::weighted_moving_average::tests::test_next ... ok [INFO] [stdout] test indicators::weighted_moving_average::tests::test_new ... ok [INFO] [stdout] test indicators::weighted_moving_average::tests::test_reset ... ok [INFO] [stdout] test indicators::average_true_range::tests::test_next ... ok [INFO] [stdout] test indicators::simple_moving_average::tests::test_display ... ok [INFO] [stdout] test indicators::chandelier_exit::tests::test_new ... ok [INFO] [stderr] Doc-tests finlib_ta [INFO] [stdout] test indicators::efficiency_ratio::tests::test_reset ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 147 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 25 tests [INFO] [stdout] test src/indicators/money_flow_index.rs - indicators::money_flow_index::MoneyFlowIndex (line 39) ... ok [INFO] [stdout] test src/data_item.rs - data_item::DataItem (line 12) ... ok [INFO] [stdout] test src/indicators/percentage_price_oscillator.rs - indicators::percentage_price_oscillator::PercentagePriceOscillator (line 33) ... ok [INFO] [stdout] test src/indicators/minimum.rs - indicators::minimum::Minimum (line 18) ... ok [INFO] [stdout] test src/indicators/bollinger_bands.rs - indicators::bollinger_bands::BollingerBands (line 26) ... ok [INFO] [stdout] test src/indicators/rate_of_change.rs - indicators::rate_of_change::RateOfChange (line 28) ... ok [INFO] [stdout] test src/indicators/hull_moving_average.rs - indicators::hull_moving_average::HullMovingAverage (line 19) ... ok [INFO] [stdout] test src/indicators/exponential_moving_average.rs - indicators::exponential_moving_average::ExponentialMovingAverage (line 39) ... ok [INFO] [stdout] test src/indicators/chandelier_exit.rs - indicators::chandelier_exit::ChandelierExit (line 29) ... ok [INFO] [stdout] test src/indicators/keltner_channel.rs - indicators::keltner_channel::KeltnerChannel (line 27) ... ok [INFO] [stdout] test src/indicators/efficiency_ratio.rs - indicators::efficiency_ratio::EfficiencyRatio (line 21) ... ok [INFO] [stdout] test src/indicators/on_balance_volume.rs - indicators::on_balance_volume::OnBalanceVolume (line 30) ... ok [INFO] [stdout] test src/indicators/maximum.rs - indicators::maximum::Maximum (line 18) ... ok [INFO] [stdout] test src/indicators/average_true_range.rs - indicators::average_true_range::AverageTrueRange (line 31) ... ok [INFO] [stdout] test src/indicators/relative_strength_index.rs - indicators::relative_strength_index::RelativeStrengthIndex (line 56) ... ok [INFO] [stdout] test src/indicators/true_range.rs - indicators::true_range::TrueRange (line 23) ... ok [INFO] [stdout] test src/indicators/fast_stochastic.rs - indicators::fast_stochastic::FastStochastic (line 32) ... ok [INFO] [stdout] test src/indicators/slow_stochastic.rs - indicators::slow_stochastic::SlowStochastic (line 20) ... ok [INFO] [stdout] test src/indicators/moving_average_convergence_divergence.rs - indicators::moving_average_convergence_divergence::MovingAverageConvergenceDivergence (line 33) ... ok [INFO] [stdout] test src/lib.rs - (line 14) ... ok [INFO] [stdout] test src/indicators/standard_deviation.rs - indicators::standard_deviation::StandardDeviation (line 34) ... ok [INFO] [stdout] test src/indicators/volume_weighted_average_price.rs - indicators::volume_weighted_average_price::VolumeWeightedAveragePriceBands (line 59) ... ok [INFO] [stdout] test src/indicators/simple_moving_average.rs - indicators::simple_moving_average::SimpleMovingAverage (line 28) ... ok [INFO] [stdout] test src/indicators/weighted_moving_average.rs - indicators::weighted_moving_average::WeightedMovingAverage (line 27) ... ok [INFO] [stdout] test src/indicators/volume_weighted_average_price.rs - indicators::volume_weighted_average_price::VolumeWeightedAveragePriceBands (line 13) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.46s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "b591bf03f1ef91fe14bee42f99c948f184e3af7c0c4cefc9cf9b11ee7a44abd7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b591bf03f1ef91fe14bee42f99c948f184e3af7c0c4cefc9cf9b11ee7a44abd7", kill_on_drop: false }` [INFO] [stdout] b591bf03f1ef91fe14bee42f99c948f184e3af7c0c4cefc9cf9b11ee7a44abd7