[INFO] fetching crate fin-stream 2.4.2... [INFO] testing fin-stream-2.4.2 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-1 [INFO] extracting crate fin-stream 2.4.2 into /workspace/builds/worker-6-tc1/source [INFO] started tweaking crates.io crate fin-stream 2.4.2 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate fin-stream 2.4.2 [INFO] tweaked toml for crates.io crate fin-stream 2.4.2 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate fin-stream 2.4.2 on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate fin-stream 2.4.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" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded rust_decimal_macros v1.40.0 [INFO] [stderr] Downloaded rkyv_derive v0.7.46 [INFO] [stderr] Downloaded toml_edit v0.25.5+spec-1.1.0 [INFO] [stderr] Downloaded toml_datetime v1.0.1+spec-1.1.0 [INFO] [stderr] Downloaded toml_parser v1.0.10+spec-1.1.0 [INFO] [stderr] Downloaded tokio-tungstenite v0.24.0 [INFO] [stderr] Downloaded borsh-derive v1.6.0 [INFO] [stderr] Downloaded tungstenite v0.24.0 [INFO] [stderr] Downloaded rkyv v0.7.46 [INFO] [stderr] Downloaded rust_decimal v1.40.0 [INFO] [stderr] Downloaded fin-primitives v2.12.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d9d5b009911e6e85599d0759b29a2b2edcb87045d6728125c2866875f0c67f6b [INFO] running `Command { std: "docker" "start" "-a" "d9d5b009911e6e85599d0759b29a2b2edcb87045d6728125c2866875f0c67f6b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d9d5b009911e6e85599d0759b29a2b2edcb87045d6728125c2866875f0c67f6b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d9d5b009911e6e85599d0759b29a2b2edcb87045d6728125c2866875f0c67f6b", kill_on_drop: false }` [INFO] [stdout] d9d5b009911e6e85599d0759b29a2b2edcb87045d6728125c2866875f0c67f6b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] eca3356b5cbb7401c106b0ad5bb22ad62006523ea10840bc241c1b31e6a11754 [INFO] running `Command { std: "docker" "start" "-a" "eca3356b5cbb7401c106b0ad5bb22ad62006523ea10840bc241c1b31e6a11754", kill_on_drop: false }` [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling zerocopy v0.8.42 [INFO] [stderr] Compiling cc v1.2.57 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling tokio-macros v2.6.1 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling rust_decimal v1.40.0 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling data-encoding v2.10.0 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling rust_decimal_macros v1.40.0 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling dashmap v5.5.3 [INFO] [stderr] Compiling openssl-sys v0.9.112 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling openssl v0.10.76 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling uuid v1.22.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling fin-primitives v2.12.0 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling tungstenite v0.24.0 [INFO] [stderr] Compiling tokio-tungstenite v0.24.0 [INFO] [stderr] Compiling fin-stream v2.4.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `rust_decimal::prelude::ToPrimitive` [INFO] [stdout] --> src/norm/mod.rs:5771:13 [INFO] [stdout] | [INFO] [stdout] 5771 | use rust_decimal::prelude::ToPrimitive; [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: `rust_decimal::prelude::ToPrimitive` [INFO] [stdout] --> src/ohlcv/mod.rs:3439:13 [INFO] [stdout] | [INFO] [stdout] 3439 | use rust_decimal::prelude::ToPrimitive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 32.28s [INFO] running `Command { std: "docker" "inspect" "eca3356b5cbb7401c106b0ad5bb22ad62006523ea10840bc241c1b31e6a11754", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "eca3356b5cbb7401c106b0ad5bb22ad62006523ea10840bc241c1b31e6a11754", kill_on_drop: false }` [INFO] [stdout] eca3356b5cbb7401c106b0ad5bb22ad62006523ea10840bc241c1b31e6a11754 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 197368a8220d48fc6f22d19e11e37233c5f5562db8ec246306d89166f68f47d9 [INFO] running `Command { std: "docker" "start" "-a" "197368a8220d48fc6f22d19e11e37233c5f5562db8ec246306d89166f68f47d9", kill_on_drop: false }` [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling zerocopy-derive v0.8.42 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling openssl v0.10.76 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling clap_builder v4.6.0 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling zerocopy v0.8.42 [INFO] [stderr] Compiling clap v4.6.0 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling uuid v1.22.0 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling rust_decimal v1.40.0 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling tokio-test v0.4.5 [INFO] [stderr] Compiling proptest v1.10.0 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling fin-primitives v2.12.0 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling criterion v0.5.1 [INFO] [stderr] Compiling tungstenite v0.24.0 [INFO] [stderr] Compiling tokio-tungstenite v0.24.0 [INFO] [stderr] Compiling fin-stream v2.4.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `rust_decimal::prelude::ToPrimitive` [INFO] [stdout] --> src/norm/mod.rs:5771:13 [INFO] [stdout] | [INFO] [stdout] 5771 | use rust_decimal::prelude::ToPrimitive; [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: `rust_decimal::prelude::ToPrimitive` [INFO] [stdout] --> src/ohlcv/mod.rs:3439:13 [INFO] [stdout] | [INFO] [stdout] 3439 | use rust_decimal::prelude::ToPrimitive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0428]: the name `test_minmax_mean_absolute_deviation_none_for_empty` is defined multiple times [INFO] [stdout] --> src/norm/mod.rs:4028:5 [INFO] [stdout] | [INFO] [stdout] 2952 | fn test_minmax_mean_absolute_deviation_none_for_empty() { [INFO] [stdout] | ------------------------------------------------------- previous definition of the value `test_minmax_mean_absolute_deviation_none_for_empty` here [INFO] [stdout] ... [INFO] [stdout] 4028 | fn test_minmax_mean_absolute_deviation_none_for_empty() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `test_minmax_mean_absolute_deviation_none_for_empty` redefined here [INFO] [stdout] | [INFO] [stdout] = note: `test_minmax_mean_absolute_deviation_none_for_empty` must be defined only once in the value namespace of this module [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0428]: the name `test_volume_trend_slope_none_for_single_bar` is defined multiple times [INFO] [stdout] --> src/ohlcv/mod.rs:9408:5 [INFO] [stdout] | [INFO] [stdout] 8828 | fn test_volume_trend_slope_none_for_single_bar() { [INFO] [stdout] | ------------------------------------------------ previous definition of the value `test_volume_trend_slope_none_for_single_bar` here [INFO] [stdout] ... [INFO] [stdout] 9408 | fn test_volume_trend_slope_none_for_single_bar() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `test_volume_trend_slope_none_for_single_bar` redefined here [INFO] [stdout] | [INFO] [stdout] = note: `test_volume_trend_slope_none_for_single_bar` must be defined only once in the value namespace of this module [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0428]: the name `test_large_trade_fraction_none_for_empty` is defined multiple times [INFO] [stdout] --> src/tick/mod.rs:8792:5 [INFO] [stdout] | [INFO] [stdout] 7360 | fn test_large_trade_fraction_none_for_empty() { [INFO] [stdout] | --------------------------------------------- previous definition of the value `test_large_trade_fraction_none_for_empty` here [INFO] [stdout] ... [INFO] [stdout] 8792 | fn test_large_trade_fraction_none_for_empty() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `test_large_trade_fraction_none_for_empty` redefined here [INFO] [stdout] | [INFO] [stdout] = note: `test_large_trade_fraction_none_for_empty` must be defined only once in the value namespace of this module [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rust_decimal::prelude::ToPrimitive` [INFO] [stdout] --> src/norm/mod.rs:5771:13 [INFO] [stdout] | [INFO] [stdout] 5771 | use rust_decimal::prelude::ToPrimitive; [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: `rust_decimal::prelude::ToPrimitive` [INFO] [stdout] --> src/ohlcv/mod.rs:3439:13 [INFO] [stdout] | [INFO] [stdout] 3439 | use rust_decimal::prelude::ToPrimitive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rust_decimal_macros::dec` [INFO] [stdout] --> src/tick/mod.rs:6227:13 [INFO] [stdout] | [INFO] [stdout] 6227 | use rust_decimal_macros::dec; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `book::OrderBook::total_bid_volume`: Use `bid_volume_total()` instead [INFO] [stdout] --> src/book/mod.rs:2164:22 [INFO] [stdout] | [INFO] [stdout] 2164 | assert_eq!(b.total_bid_volume(), dec!(5)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `book::OrderBook::total_ask_volume`: Use `ask_volume_total()` instead [INFO] [stdout] --> src/book/mod.rs:2172:22 [INFO] [stdout] | [INFO] [stdout] 2172 | assert_eq!(b.total_ask_volume(), dec!(5)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `book::OrderBook::total_bid_volume`: Use `bid_volume_total()` instead [INFO] [stdout] --> src/book/mod.rs:2178:22 [INFO] [stdout] | [INFO] [stdout] 2178 | assert_eq!(b.total_bid_volume(), dec!(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `book::OrderBook::ask_level_count`: use ask_depth() instead [INFO] [stdout] --> src/book/mod.rs:2630:30 [INFO] [stdout] | [INFO] [stdout] 2630 | assert_eq!(book("X").ask_level_count(), 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `book::OrderBook::ask_level_count`: use ask_depth() instead [INFO] [stdout] --> src/book/mod.rs:2639:22 [INFO] [stdout] | [INFO] [stdout] 2639 | assert_eq!(b.ask_level_count(), 3); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `book::OrderBook::bid_level_count`: use bid_depth() instead [INFO] [stdout] --> src/book/mod.rs:2647:22 [INFO] [stdout] | [INFO] [stdout] 2647 | assert_eq!(b.bid_level_count(), 2); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::unknown_feed_count`: Use `unknown_count` instead [INFO] [stdout] --> src/health/mod.rs:1538:22 [INFO] [stdout] | [INFO] [stdout] 1538 | assert_eq!(m.unknown_feed_count(), 2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::unknown_feed_count`: Use `unknown_count` instead [INFO] [stdout] --> src/health/mod.rs:1547:22 [INFO] [stdout] | [INFO] [stdout] 1547 | assert_eq!(m.unknown_feed_count(), 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::unknown_feed_count`: Use `unknown_count` instead [INFO] [stdout] --> src/health/mod.rs:1553:22 [INFO] [stdout] | [INFO] [stdout] 1553 | assert_eq!(m.unknown_feed_count(), 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::healthy_ratio`: Use `ratio_healthy` instead [INFO] [stdout] --> src/health/mod.rs:1611:22 [INFO] [stdout] | [INFO] [stdout] 1611 | assert_eq!(m.healthy_ratio(), 0.0); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::healthy_ratio`: Use `ratio_healthy` instead [INFO] [stdout] --> src/health/mod.rs:1622:20 [INFO] [stdout] | [INFO] [stdout] 1622 | assert!((m.healthy_ratio() - 1.0).abs() < 1e-10); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::healthy_ratio`: Use `ratio_healthy` instead [INFO] [stdout] --> src/health/mod.rs:1633:20 [INFO] [stdout] | [INFO] [stdout] 1633 | assert!((m.healthy_ratio() - 0.5).abs() < 1e-10); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::is_any_feed_stale`: Use `is_any_stale` instead [INFO] [stdout] --> src/health/mod.rs:1685:19 [INFO] [stdout] | [INFO] [stdout] 1685 | assert!(m.is_any_feed_stale()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::is_any_feed_stale`: Use `is_any_stale` instead [INFO] [stdout] --> src/health/mod.rs:1694:20 [INFO] [stdout] | [INFO] [stdout] 1694 | assert!(!m.is_any_feed_stale()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::is_any_feed_stale`: Use `is_any_stale` instead [INFO] [stdout] --> src/health/mod.rs:1700:20 [INFO] [stdout] | [INFO] [stdout] 1700 | assert!(!m.is_any_feed_stale()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::average_tick_count`: Use `avg_tick_count` instead [INFO] [stdout] --> src/health/mod.rs:1755:22 [INFO] [stdout] | [INFO] [stdout] 1755 | assert_eq!(m.average_tick_count(), 0.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::average_tick_count`: Use `avg_tick_count` instead [INFO] [stdout] --> src/health/mod.rs:1767:20 [INFO] [stdout] | [INFO] [stdout] 1767 | assert!((m.average_tick_count() - 1.5).abs() < 1e-10); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::total_stale_count`: Use `stale_count` instead [INFO] [stdout] --> src/health/mod.rs:1821:22 [INFO] [stdout] | [INFO] [stdout] 1821 | assert_eq!(m.total_stale_count(), 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::total_stale_count`: Use `stale_count` instead [INFO] [stdout] --> src/health/mod.rs:1833:22 [INFO] [stdout] | [INFO] [stdout] 1833 | assert_eq!(m.total_stale_count(), 2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::any_unknown`: Use `has_any_unknown` instead [INFO] [stdout] --> src/health/mod.rs:2040:20 [INFO] [stdout] | [INFO] [stdout] 2040 | assert!(!m.any_unknown()); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::any_unknown`: Use `has_any_unknown` instead [INFO] [stdout] --> src/health/mod.rs:2047:19 [INFO] [stdout] | [INFO] [stdout] 2047 | assert!(m.any_unknown()); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::any_unknown`: Use `has_any_unknown` instead [INFO] [stdout] --> src/health/mod.rs:2055:20 [INFO] [stdout] | [INFO] [stdout] 2055 | assert!(!m.any_unknown()); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::degraded_count`: Use `stale_count` instead [INFO] [stdout] --> src/health/mod.rs:2066:22 [INFO] [stdout] | [INFO] [stdout] 2066 | assert_eq!(m.degraded_count(), 0); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::degraded_count`: Use `stale_count` instead [INFO] [stdout] --> src/health/mod.rs:2077:22 [INFO] [stdout] | [INFO] [stdout] 2077 | assert_eq!(m.degraded_count(), 1); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::degraded_count`: Use `stale_count` instead [INFO] [stdout] --> src/health/mod.rs:2083:22 [INFO] [stdout] | [INFO] [stdout] 2083 | assert_eq!(m.degraded_count(), 0); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::feeds_needing_check`: Use `unhealthy_feeds` instead [INFO] [stdout] --> src/health/mod.rs:2215:25 [INFO] [stdout] | [INFO] [stdout] 2215 | let needing = m.feeds_needing_check(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::feeds_needing_check`: Use `unhealthy_feeds` instead [INFO] [stdout] --> src/health/mod.rs:2226:19 [INFO] [stdout] | [INFO] [stdout] 2226 | assert!(m.feeds_needing_check().is_empty()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `health::HealthMonitor::feeds_needing_check`: Use `unhealthy_feeds` instead [INFO] [stdout] --> src/health/mod.rs:2234:25 [INFO] [stdout] | [INFO] [stdout] 2234 | let needing = m.feeds_needing_check(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::time_dilation`: Use `dilate_time` instead [INFO] [stdout] --> src/lorentz/mod.rs:1244:30 [INFO] [stdout] | [INFO] [stdout] 1244 | assert!(approx_eq(lt.time_dilation(10.0), 10.0)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::time_dilation`: Use `dilate_time` instead [INFO] [stdout] --> src/lorentz/mod.rs:1253:30 [INFO] [stdout] | [INFO] [stdout] 1253 | assert!(approx_eq(lt.time_dilation(tau), t)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::time_dilation`: Use `dilate_time` instead [INFO] [stdout] --> src/lorentz/mod.rs:1261:24 [INFO] [stdout] | [INFO] [stdout] 1261 | let coord = lt.time_dilation(proper); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::doppler_factor`: Use `doppler_ratio` instead [INFO] [stdout] --> src/lorentz/mod.rs:1787:20 [INFO] [stdout] | [INFO] [stdout] 1787 | assert!((t.doppler_factor() - 1.0).abs() < 1e-12); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::doppler_factor`: Use `doppler_ratio` instead [INFO] [stdout] --> src/lorentz/mod.rs:1794:20 [INFO] [stdout] | [INFO] [stdout] 1794 | assert!((t.doppler_factor() - 2.0).abs() < 1e-10); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::doppler_factor`: Use `doppler_ratio` instead [INFO] [stdout] --> src/lorentz/mod.rs:1802:22 [INFO] [stdout] | [INFO] [stdout] 1802 | let fwd = t1.doppler_factor(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::doppler_factor`: Use `doppler_ratio` instead [INFO] [stdout] --> src/lorentz/mod.rs:1803:28 [INFO] [stdout] | [INFO] [stdout] 1803 | let rev = 1.0 / t2.doppler_factor(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::relativistic_mass`: Use `relativistic_energy` instead [INFO] [stdout] --> src/lorentz/mod.rs:1838:20 [INFO] [stdout] | [INFO] [stdout] 1838 | assert!((t.relativistic_mass(1.0) - 1.0).abs() < 1e-12); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::relativistic_mass`: Use `relativistic_energy` instead [INFO] [stdout] --> src/lorentz/mod.rs:1845:20 [INFO] [stdout] | [INFO] [stdout] 1845 | assert!((t.relativistic_mass(1.0) - 1.25).abs() < 1e-10); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::energy_ratio`: Use `kinetic_energy_ratio` instead [INFO] [stdout] --> src/lorentz/mod.rs:1851:19 [INFO] [stdout] | [INFO] [stdout] 1851 | assert!(t.energy_ratio().abs() < 1e-12); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::energy_ratio`: Use `kinetic_energy_ratio` instead [INFO] [stdout] --> src/lorentz/mod.rs:1858:20 [INFO] [stdout] | [INFO] [stdout] 1858 | assert!((t.energy_ratio() - 0.25).abs() < 1e-10); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::momentum_ratio`: Use `beta_times_gamma` instead [INFO] [stdout] --> src/lorentz/mod.rs:1866:19 [INFO] [stdout] | [INFO] [stdout] 1866 | assert!(t.momentum_ratio().abs() < 1e-12); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::momentum_ratio`: Use `beta_times_gamma` instead [INFO] [stdout] --> src/lorentz/mod.rs:1873:20 [INFO] [stdout] | [INFO] [stdout] 1873 | assert!((t.momentum_ratio() - 0.75).abs() < 1e-10); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::is_ultra_relativistic`: Use `is_ultrarelativistic` instead [INFO] [stdout] --> src/lorentz/mod.rs:1879:19 [INFO] [stdout] | [INFO] [stdout] 1879 | assert!(t.is_ultra_relativistic()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::is_ultra_relativistic`: Use `is_ultrarelativistic` instead [INFO] [stdout] --> src/lorentz/mod.rs:1885:20 [INFO] [stdout] | [INFO] [stdout] 1885 | assert!(!t.is_ultra_relativistic()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lorentz::LorentzTransform::is_ultra_relativistic`: Use `is_ultrarelativistic` instead [INFO] [stdout] --> src/lorentz/mod.rs:1891:20 [INFO] [stdout] | [INFO] [stdout] 1891 | assert!(!t.is_ultra_relativistic()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `norm::MinMaxNormalizer::normalize_clamp`: Use `normalize()` instead — it already clamps to [0.0, 1.0] [INFO] [stdout] --> src/norm/mod.rs:2236:25 [INFO] [stdout] | [INFO] [stdout] 2236 | let clamped = n.normalize_clamp(dec!(50)).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `norm::MinMaxNormalizer::normalize_clamp`: Use `normalize()` instead — it already clamps to [0.0, 1.0] [INFO] [stdout] --> src/norm/mod.rs:2248:25 [INFO] [stdout] | [INFO] [stdout] 2248 | let clamped = n.normalize_clamp(dec!(200)).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `norm::MinMaxNormalizer::normalize_clamp`: Use `normalize()` instead — it already clamps to [0.0, 1.0] [INFO] [stdout] --> src/norm/mod.rs:2259:25 [INFO] [stdout] | [INFO] [stdout] 2259 | let clamped = n.normalize_clamp(dec!(-50)).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `norm::MinMaxNormalizer::normalize_clamp`: Use `normalize()` instead — it already clamps to [0.0, 1.0] [INFO] [stdout] --> src/norm/mod.rs:2266:19 [INFO] [stdout] | [INFO] [stdout] 2266 | assert!(n.normalize_clamp(dec!(5)).is_err()); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `session::SessionAwareness::is_pre_open`: Use `is_pre_market` instead [INFO] [stdout] --> src/session/mod.rs:2002:20 [INFO] [stdout] | [INFO] [stdout] 2002 | assert!(sa.is_pre_open(MON_OPEN_UTC_MS - 60_000)); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `session::SessionAwareness::is_pre_open`: Use `is_pre_market` instead [INFO] [stdout] --> src/session/mod.rs:2008:21 [INFO] [stdout] | [INFO] [stdout] 2008 | assert!(!sa.is_pre_open(MON_OPEN_UTC_MS)); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `session::SessionAwareness::is_pre_open`: Use `is_pre_market` instead [INFO] [stdout] --> src/session/mod.rs:2014:21 [INFO] [stdout] | [INFO] [stdout] 2014 | assert!(!sa.is_pre_open(SAT_UTC_MS)); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `session::SessionAwareness::session_progress_pct`: Use `progress_pct` instead [INFO] [stdout] --> src/session/mod.rs:2120:23 [INFO] [stdout] | [INFO] [stdout] 2120 | assert_eq!(sa.session_progress_pct(SAT_UTC_MS), 0.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `session::SessionAwareness::session_progress_pct`: Use `progress_pct` instead [INFO] [stdout] --> src/session/mod.rs:2127:22 [INFO] [stdout] | [INFO] [stdout] 2127 | let pct = sa.session_progress_pct(MON_OPEN_UTC_MS + 30 * 60_000); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::price_diff_from`: Use `price_move_from` instead [INFO] [stdout] --> src/tick/mod.rs:4658:23 [INFO] [stdout] | [INFO] [stdout] 4658 | assert_eq!(t1.price_diff_from(&t2), rust_decimal_macros::dec!(5)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::price_diff_from`: Use `price_move_from` instead [INFO] [stdout] --> src/tick/mod.rs:4667:23 [INFO] [stdout] | [INFO] [stdout] 4667 | assert_eq!(t1.price_diff_from(&t2), rust_decimal_macros::dec!(-5)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::quote_age_ms`: Use `age_ms` instead [INFO] [stdout] --> src/tick/mod.rs:4860:25 [INFO] [stdout] | [INFO] [stdout] 4860 | assert_eq!(tick.quote_age_ms(3_000), 2_000); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::quote_age_ms`: Use `age_ms` instead [INFO] [stdout] --> src/tick/mod.rs:4866:25 [INFO] [stdout] | [INFO] [stdout] 4866 | assert_eq!(tick.quote_age_ms(1_000), 0); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::notional_value`: Use `value` instead [INFO] [stdout] --> src/tick/mod.rs:4875:25 [INFO] [stdout] | [INFO] [stdout] 4875 | assert_eq!(tick.notional_value(), dec!(500)); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_high_value_tick`: Use `is_notional_large_trade` instead [INFO] [stdout] --> src/tick/mod.rs:4885:22 [INFO] [stdout] | [INFO] [stdout] 4885 | assert!(tick.is_high_value_tick(dec!(500))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_high_value_tick`: Use `is_notional_large_trade` instead [INFO] [stdout] --> src/tick/mod.rs:4895:23 [INFO] [stdout] | [INFO] [stdout] 4895 | assert!(!tick.is_high_value_tick(dec!(100))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_buy_side`: Use `is_buy` instead [INFO] [stdout] --> src/tick/mod.rs:4904:22 [INFO] [stdout] | [INFO] [stdout] 4904 | assert!(tick.is_buy_side()); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_buy_side`: Use `is_buy` instead [INFO] [stdout] --> src/tick/mod.rs:4911:23 [INFO] [stdout] | [INFO] [stdout] 4911 | assert!(!tick.is_buy_side()); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_buy_side`: Use `is_buy` instead [INFO] [stdout] --> src/tick/mod.rs:4918:23 [INFO] [stdout] | [INFO] [stdout] 4918 | assert!(!tick.is_buy_side()); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_sell_side`: Use `is_sell` instead [INFO] [stdout] --> src/tick/mod.rs:4925:22 [INFO] [stdout] | [INFO] [stdout] 4925 | assert!(tick.is_sell_side()); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_large_tick`: Use `is_large_trade` instead [INFO] [stdout] --> src/tick/mod.rs:4974:22 [INFO] [stdout] | [INFO] [stdout] 4974 | assert!(tick.is_large_tick(Decimal::from(5u32))); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_large_tick`: Use `is_large_trade` instead [INFO] [stdout] --> src/tick/mod.rs:4981:23 [INFO] [stdout] | [INFO] [stdout] 4981 | assert!(!tick.is_large_tick(Decimal::from(5u32))); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_large_tick`: Use `is_large_trade` instead [INFO] [stdout] --> src/tick/mod.rs:4988:23 [INFO] [stdout] | [INFO] [stdout] 4988 | assert!(!tick.is_large_tick(Decimal::from(5u32))); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_recent`: Use `is_fresh(now_ms, threshold_ms)` instead [INFO] [stdout] --> src/tick/mod.rs:5045:22 [INFO] [stdout] | [INFO] [stdout] 5045 | assert!(tick.is_recent(1_000, 10_000)); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_recent`: Use `is_fresh(now_ms, threshold_ms)` instead [INFO] [stdout] --> src/tick/mod.rs:5052:23 [INFO] [stdout] | [INFO] [stdout] 5052 | assert!(!tick.is_recent(1_000, 10_000)); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_recent`: Use `is_fresh(now_ms, threshold_ms)` instead [INFO] [stdout] --> src/tick/mod.rs:5059:22 [INFO] [stdout] | [INFO] [stdout] 5059 | assert!(tick.is_recent(1_000, 10_000)); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_above_price`: Use `is_above` instead [INFO] [stdout] --> src/tick/mod.rs:5090:22 [INFO] [stdout] | [INFO] [stdout] 5090 | assert!(tick.is_above_price(rust_decimal_macros::dec!(99))); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_above_price`: Use `is_above` instead [INFO] [stdout] --> src/tick/mod.rs:5096:23 [INFO] [stdout] | [INFO] [stdout] 5096 | assert!(!tick.is_above_price(rust_decimal_macros::dec!(100))); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_above_price`: Use `is_above` instead [INFO] [stdout] --> src/tick/mod.rs:5102:23 [INFO] [stdout] | [INFO] [stdout] 5102 | assert!(!tick.is_above_price(rust_decimal_macros::dec!(101))); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_below_price`: Use `is_below` instead [INFO] [stdout] --> src/tick/mod.rs:5130:22 [INFO] [stdout] | [INFO] [stdout] 5130 | assert!(tick.is_below_price(rust_decimal_macros::dec!(101))); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_below_price`: Use `is_below` instead [INFO] [stdout] --> src/tick/mod.rs:5136:23 [INFO] [stdout] | [INFO] [stdout] 5136 | assert!(!tick.is_below_price(rust_decimal_macros::dec!(100))); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_at_price`: Use `is_at` instead [INFO] [stdout] --> src/tick/mod.rs:5158:22 [INFO] [stdout] | [INFO] [stdout] 5158 | assert!(tick.is_at_price(rust_decimal_macros::dec!(100))); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tick::NormalizedTick::is_at_price`: Use `is_at` instead [INFO] [stdout] --> src/tick/mod.rs:5164:23 [INFO] [stdout] | [INFO] [stdout] 5164 | assert!(!tick.is_at_price(rust_decimal_macros::dec!(101))); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tick/mod.rs:8793:17 [INFO] [stdout] | [INFO] [stdout] 8793 | assert!(NormalizedTick::large_trade_fraction(&[]).is_none()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----- argument #2 of type `rust_decimal::Decimal` is missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/tick/mod.rs:1926:12 [INFO] [stdout] | [INFO] [stdout] 1926 | pub fn large_trade_fraction(ticks: &[NormalizedTick], threshold: Decimal) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ------------------ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 8793 | assert!(NormalizedTick::large_trade_fraction(&[], /* rust_decimal::Decimal */).is_none()); [INFO] [stdout] | +++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/tick/mod.rs:8801:17 [INFO] [stdout] | [INFO] [stdout] 8801 | let f = NormalizedTick::large_trade_fraction(&[t1, t2]).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------- argument #2 of type `rust_decimal::Decimal` is missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/tick/mod.rs:1926:12 [INFO] [stdout] | [INFO] [stdout] 1926 | pub fn large_trade_fraction(ticks: &[NormalizedTick], threshold: Decimal) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ------------------ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 8801 | let f = NormalizedTick::large_trade_fraction(&[t1, t2], /* rust_decimal::Decimal */).unwrap(); [INFO] [stdout] | +++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::avg_message_size`: Use `bytes_per_message()` instead [INFO] [stdout] --> src/ws/mod.rs:1066:23 [INFO] [stdout] | [INFO] [stdout] 1066 | assert!(stats.avg_message_size().is_none()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::avg_message_size`: Use `bytes_per_message()` instead [INFO] [stdout] --> src/ws/mod.rs:1075:25 [INFO] [stdout] | [INFO] [stdout] 1075 | let avg = stats.avg_message_size().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::messages_per_byte`: Use `efficiency_ratio()` instead [INFO] [stdout] --> src/ws/mod.rs:1363:23 [INFO] [stdout] | [INFO] [stdout] 1363 | assert!(stats.messages_per_byte().is_none()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::messages_per_byte`: Use `efficiency_ratio()` instead [INFO] [stdout] --> src/ws/mod.rs:1370:24 [INFO] [stdout] | [INFO] [stdout] 1370 | assert!((stats.messages_per_byte().unwrap() - 0.01).abs() < 1e-12); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::messages_per_byte`: Use `efficiency_ratio()` instead [INFO] [stdout] --> src/ws/mod.rs:1376:25 [INFO] [stdout] | [INFO] [stdout] 1376 | let mpb = stats.messages_per_byte().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::avg_message_size_bytes`: Use `bytes_per_message()` instead [INFO] [stdout] --> src/ws/mod.rs:1384:23 [INFO] [stdout] | [INFO] [stdout] 1384 | assert!(stats.avg_message_size_bytes().is_none()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::avg_message_size_bytes`: Use `bytes_per_message()` instead [INFO] [stdout] --> src/ws/mod.rs:1390:24 [INFO] [stdout] | [INFO] [stdout] 1390 | assert!((stats.avg_message_size_bytes().unwrap() - 500.0).abs() < 1e-12); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::avg_message_size_bytes`: Use `bytes_per_message()` instead [INFO] [stdout] --> src/ws/mod.rs:1396:24 [INFO] [stdout] | [INFO] [stdout] 1396 | assert!((stats.avg_message_size_bytes().unwrap() - 256.0).abs() < 1e-12); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::message_density`: Use `message_rate()` instead [INFO] [stdout] --> src/ws/mod.rs:1496:24 [INFO] [stdout] | [INFO] [stdout] 1496 | assert!((stats.message_density(1_000) - stats.message_rate(1_000)).abs() < 1e-12); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::message_density`: Use `message_rate()` instead [INFO] [stdout] --> src/ws/mod.rs:1502:26 [INFO] [stdout] | [INFO] [stdout] 1502 | assert_eq!(stats.message_density(0), 0.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::compression_ratio`: Use `efficiency_ratio()` instead [INFO] [stdout] --> src/ws/mod.rs:1508:23 [INFO] [stdout] | [INFO] [stdout] 1508 | assert!(stats.compression_ratio().is_none()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::compression_ratio`: Use `efficiency_ratio()` instead [INFO] [stdout] --> src/ws/mod.rs:1514:26 [INFO] [stdout] | [INFO] [stdout] 1514 | assert_eq!(stats.compression_ratio(), stats.efficiency_ratio()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::average_message_size_bytes`: Use `bytes_per_message()` instead [INFO] [stdout] --> src/ws/mod.rs:1573:23 [INFO] [stdout] | [INFO] [stdout] 1573 | assert!(stats.average_message_size_bytes().is_none()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `ws::WsStats::average_message_size_bytes`: Use `bytes_per_message()` instead [INFO] [stdout] --> src/ws/mod.rs:1579:26 [INFO] [stdout] | [INFO] [stdout] 1579 | assert_eq!(stats.average_message_size_bytes(), stats.bytes_per_message()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1499:13 [INFO] [stdout] | [INFO] [stdout] 1499 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1513:13 [INFO] [stdout] | [INFO] [stdout] 1513 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1524:13 [INFO] [stdout] | [INFO] [stdout] 1524 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1589:13 [INFO] [stdout] | [INFO] [stdout] 1589 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1601:13 [INFO] [stdout] | [INFO] [stdout] 1601 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1616:13 [INFO] [stdout] | [INFO] [stdout] 1616 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1627:13 [INFO] [stdout] | [INFO] [stdout] 1627 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1640:13 [INFO] [stdout] | [INFO] [stdout] 1640 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1659:13 [INFO] [stdout] | [INFO] [stdout] 1659 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1671:13 [INFO] [stdout] | [INFO] [stdout] 1671 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1681:13 [INFO] [stdout] | [INFO] [stdout] 1681 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1690:13 [INFO] [stdout] | [INFO] [stdout] 1690 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1705:13 [INFO] [stdout] | [INFO] [stdout] 1705 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1715:13 [INFO] [stdout] | [INFO] [stdout] 1715 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1732:13 [INFO] [stdout] | [INFO] [stdout] 1732 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1747:13 [INFO] [stdout] | [INFO] [stdout] 1747 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1760:13 [INFO] [stdout] | [INFO] [stdout] 1760 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1773:13 [INFO] [stdout] | [INFO] [stdout] 1773 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1797:13 [INFO] [stdout] | [INFO] [stdout] 1797 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1809:13 [INFO] [stdout] | [INFO] [stdout] 1809 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1817:13 [INFO] [stdout] | [INFO] [stdout] 1817 | let mut m = HealthMonitor::new(5_000); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1826:13 [INFO] [stdout] | [INFO] [stdout] 1826 | let mut m = HealthMonitor::new(5_000); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1839:13 [INFO] [stdout] | [INFO] [stdout] 1839 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/health/mod.rs:1846:13 [INFO] [stdout] | [INFO] [stdout] 1846 | let mut m = monitor(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tick` [INFO] [stdout] --> src/tick/mod.rs:4155:13 [INFO] [stdout] | [INFO] [stdout] 4155 | let tick = normalizer().normalize(binance_tick("BTCUSDT")).unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_tick` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ws/mod.rs:842:18 [INFO] [stdout] | [INFO] [stdout] 842 | let (tx, mut channel_rx) = mpsc::channel::(1); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0428. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] error: could not compile `fin-stream` (lib test) due to 5 previous errors; 120 warnings emitted [INFO] running `Command { std: "docker" "inspect" "197368a8220d48fc6f22d19e11e37233c5f5562db8ec246306d89166f68f47d9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "197368a8220d48fc6f22d19e11e37233c5f5562db8ec246306d89166f68f47d9", kill_on_drop: false }` [INFO] [stdout] 197368a8220d48fc6f22d19e11e37233c5f5562db8ec246306d89166f68f47d9