[INFO] cloning repository https://github.com/kelviwong/marketdatafeed [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kelviwong/marketdatafeed" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkelviwong%2Fmarketdatafeed", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkelviwong%2Fmarketdatafeed'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 0da428cf5131efc1d8ad6d8839fb08c19e179910 [INFO] testing kelviwong/marketdatafeed against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkelviwong%2Fmarketdatafeed" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/kelviwong/marketdatafeed [INFO] finished tweaking git repo https://github.com/kelviwong/marketdatafeed [INFO] tweaked toml for git repo https://github.com/kelviwong/marketdatafeed written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/kelviwong/marketdatafeed on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/kelviwong/marketdatafeed 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 537514e44e51713976c470884c19ca9e3fd7421faf134c7910b6d4910f610597 [INFO] running `Command { std: "docker" "start" "-a" "537514e44e51713976c470884c19ca9e3fd7421faf134c7910b6d4910f610597", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "537514e44e51713976c470884c19ca9e3fd7421faf134c7910b6d4910f610597", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "537514e44e51713976c470884c19ca9e3fd7421faf134c7910b6d4910f610597", kill_on_drop: false }` [INFO] [stdout] 537514e44e51713976c470884c19ca9e3fd7421faf134c7910b6d4910f610597 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d9ffa55a155fe09f43d550fb2d606f9fcc2b4551a45d3260d5c644be859db82e [INFO] running `Command { std: "docker" "start" "-a" "d9ffa55a155fe09f43d550fb2d606f9fcc2b4551a45d3260d5c644be859db82e", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.94 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling libc v0.2.171 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling vcpkg v0.2.15 [INFO] [stderr] Compiling pkg-config v0.3.32 [INFO] [stderr] Compiling cc v1.2.16 [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling getrandom v0.3.1 [INFO] [stderr] Compiling zerocopy v0.8.23 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling once_cell v1.21.1 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling bitflags v2.9.0 [INFO] [stderr] Compiling openssl v0.10.71 [INFO] [stderr] Compiling foreign-types-shared v0.1.1 [INFO] [stderr] Compiling foreign-types v0.3.2 [INFO] [stderr] Compiling native-tls v0.2.14 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling bytes v1.10.1 [INFO] [stderr] Compiling smallvec v1.14.0 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling syn v2.0.100 [INFO] [stderr] Compiling openssl-probe v0.1.6 [INFO] [stderr] Compiling thiserror v2.0.12 [INFO] [stderr] Compiling log v0.4.26 [INFO] [stderr] Compiling hashbrown v0.15.2 [INFO] [stderr] Compiling openssl-sys v0.9.106 [INFO] [stderr] Compiling http v1.3.1 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling mio v1.0.3 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling socket2 v0.5.8 [INFO] [stderr] Compiling signal-hook-registry v1.4.2 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling indexmap v2.8.0 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling winnow v0.7.4 [INFO] [stderr] Compiling data-encoding v2.8.0 [INFO] [stderr] Compiling tracing-core v0.1.33 [INFO] [stderr] Compiling nix v0.27.1 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling num_cpus v1.16.0 [INFO] [stderr] Compiling rand v0.9.0 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Compiling async-trait v0.1.87 [INFO] [stderr] Compiling tokio v1.44.1 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling tungstenite v0.26.2 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling tokio-tungstenite v0.26.2 [INFO] [stderr] Compiling toml_datetime v0.6.8 [INFO] [stderr] Compiling serde_spanned v0.6.8 [INFO] [stderr] Compiling toml_edit v0.22.24 [INFO] [stderr] Compiling toml v0.8.20 [INFO] [stderr] Compiling MarketDataFeed v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/binance.rs:7:21 [INFO] [stdout] | [INFO] [stdout] 7 | use tracing::{info, warn, error}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `candle_stick` should have an upper camel case name [INFO] [stdout] --> src/candle.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct candle_stick { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CandleStick` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `error` and `warn` [INFO] [stdout] --> src/common.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | use tracing::{error, info, warn}; [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/okx.rs:12:21 [INFO] [stdout] | [INFO] [stdout] 12 | use tracing::{info, warn, error}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/okx.rs:128:24 [INFO] [stdout] | [INFO] [stdout] 128 | if (event == "subscribe") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 128 - if (event == "subscribe") { [INFO] [stdout] 128 + if event == "subscribe" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/okx.rs:130:31 [INFO] [stdout] | [INFO] [stdout] 130 | } else if (event == "error") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 130 - } else if (event == "error") { [INFO] [stdout] 130 + } else if event == "error" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `error` and `warn` [INFO] [stdout] --> src/config.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use tracing::{info, warn, error}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function cannot return without recursing [INFO] [stdout] --> src/binance.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | fn pin(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stdout] 93 | self.pin() [INFO] [stdout] | ---------- recursive call site [INFO] [stdout] | [INFO] [stdout] = help: a `loop` may express intention better if this is on purpose [INFO] [stdout] = note: `#[warn(unconditional_recursion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `ws_stream` is never read [INFO] [stdout] --> src/common.rs:107:29 [INFO] [stdout] | [INFO] [stdout] 107 | let mut ws_stream = None; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pin_id` [INFO] [stdout] --> src/common.rs:147:50 [INFO] [stdout] | [INFO] [stdout] 147 | fn connect_on_thread(feed: Arc>, pin_id: usize) [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_pin_id` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function cannot return without recursing [INFO] [stdout] --> src/okx.rs:117:5 [INFO] [stdout] | [INFO] [stdout] 117 | fn pin(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stdout] 118 | self.pin() [INFO] [stdout] | ---------- recursive call site [INFO] [stdout] | [INFO] [stdout] = help: a `loop` may express intention better if this is on purpose [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `symbol` [INFO] [stdout] --> src/okx.rs:172:46 [INFO] [stdout] | [INFO] [stdout] 172 | fn get_connection_str<'a>(base: &'a str, symbol: &'a str) -> String { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_affinity` is never used [INFO] [stdout] --> src/common.rs:56:4 [INFO] [stdout] | [INFO] [stdout] 56 | fn get_affinity() { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WebSocketResponse` is never constructed [INFO] [stdout] --> src/okx.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | struct WebSocketResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CandlestickData` is never constructed [INFO] [stdout] --> src/okx.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | struct CandlestickData { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate `MarketDataFeed` should have a snake case name [INFO] [stdout] | [INFO] [stdout] = help: convert the identifier to snake case: `market_data_feed` [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `instId` should have a snake case name [INFO] [stdout] --> src/okx.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | instId: String, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `inst_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `instId` should have a snake case name [INFO] [stdout] --> src/okx.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | instId: String, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `inst_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 10s [INFO] running `Command { std: "docker" "inspect" "d9ffa55a155fe09f43d550fb2d606f9fcc2b4551a45d3260d5c644be859db82e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d9ffa55a155fe09f43d550fb2d606f9fcc2b4551a45d3260d5c644be859db82e", kill_on_drop: false }` [INFO] [stdout] d9ffa55a155fe09f43d550fb2d606f9fcc2b4551a45d3260d5c644be859db82e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2952665fe7a376255df668a2d70829bdc02f9532ab058966e240f8e3910ddb6e [INFO] running `Command { std: "docker" "start" "-a" "2952665fe7a376255df668a2d70829bdc02f9532ab058966e240f8e3910ddb6e", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/binance.rs:7:21 [INFO] [stdout] | [INFO] [stdout] 7 | use tracing::{info, warn, error}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `candle_stick` should have an upper camel case name [INFO] [stdout] --> src/candle.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct candle_stick { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CandleStick` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `error` and `warn` [INFO] [stdout] --> src/common.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | use tracing::{error, info, warn}; [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/okx.rs:12:21 [INFO] [stdout] | [INFO] [stdout] 12 | use tracing::{info, warn, error}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/okx.rs:128:24 [INFO] [stdout] | [INFO] [stdout] 128 | if (event == "subscribe") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 128 - if (event == "subscribe") { [INFO] [stdout] 128 + if event == "subscribe" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/okx.rs:130:31 [INFO] [stdout] | [INFO] [stdout] 130 | } else if (event == "error") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 130 - } else if (event == "error") { [INFO] [stdout] 130 + } else if event == "error" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `error` and `warn` [INFO] [stdout] --> src/config.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use tracing::{info, warn, error}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function cannot return without recursing [INFO] [stdout] --> src/binance.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | fn pin(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stdout] 93 | self.pin() [INFO] [stdout] | ---------- recursive call site [INFO] [stdout] | [INFO] [stdout] = help: a `loop` may express intention better if this is on purpose [INFO] [stdout] = note: `#[warn(unconditional_recursion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `ws_stream` is never read [INFO] [stdout] --> src/common.rs:107:29 [INFO] [stdout] | [INFO] [stdout] 107 | let mut ws_stream = None; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pin_id` [INFO] [stdout] --> src/common.rs:147:50 [INFO] [stdout] | [INFO] [stdout] 147 | fn connect_on_thread(feed: Arc>, pin_id: usize) [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_pin_id` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function cannot return without recursing [INFO] [stdout] --> src/okx.rs:117:5 [INFO] [stdout] | [INFO] [stdout] 117 | fn pin(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stdout] 118 | self.pin() [INFO] [stdout] | ---------- recursive call site [INFO] [stdout] | [INFO] [stdout] = help: a `loop` may express intention better if this is on purpose [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `symbol` [INFO] [stdout] --> src/okx.rs:172:46 [INFO] [stdout] | [INFO] [stdout] 172 | fn get_connection_str<'a>(base: &'a str, symbol: &'a str) -> String { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_affinity` is never used [INFO] [stdout] --> src/common.rs:56:4 [INFO] [stdout] | [INFO] [stdout] 56 | fn get_affinity() { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WebSocketResponse` is never constructed [INFO] [stdout] --> src/okx.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | struct WebSocketResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CandlestickData` is never constructed [INFO] [stdout] --> src/okx.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | struct CandlestickData { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate `MarketDataFeed` should have a snake case name [INFO] [stdout] | [INFO] [stdout] = help: convert the identifier to snake case: `market_data_feed` [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `instId` should have a snake case name [INFO] [stdout] --> src/okx.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | instId: String, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `inst_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `instId` should have a snake case name [INFO] [stdout] --> src/okx.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | instId: String, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `inst_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling MarketDataFeed v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/binance.rs:7:21 [INFO] [stdout] | [INFO] [stdout] 7 | use tracing::{info, warn, error}; [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: `super::*` [INFO] [stdout] --> src/binance.rs:130:9 [INFO] [stdout] | [INFO] [stdout] 130 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `candle_stick` should have an upper camel case name [INFO] [stdout] --> src/candle.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct candle_stick { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CandleStick` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `error` and `warn` [INFO] [stdout] --> src/common.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | use tracing::{error, info, warn}; [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/okx.rs:12:21 [INFO] [stdout] | [INFO] [stdout] 12 | use tracing::{info, warn, error}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/okx.rs:128:24 [INFO] [stdout] | [INFO] [stdout] 128 | if (event == "subscribe") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 128 - if (event == "subscribe") { [INFO] [stdout] 128 + if event == "subscribe" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/okx.rs:130:31 [INFO] [stdout] | [INFO] [stdout] 130 | } else if (event == "error") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 130 - } else if (event == "error") { [INFO] [stdout] 130 + } else if event == "error" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `error` and `warn` [INFO] [stdout] --> src/config.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use tracing::{info, warn, error}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function cannot return without recursing [INFO] [stdout] --> src/binance.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | fn pin(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stdout] 93 | self.pin() [INFO] [stdout] | ---------- recursive call site [INFO] [stdout] | [INFO] [stdout] = help: a `loop` may express intention better if this is on purpose [INFO] [stdout] = note: `#[warn(unconditional_recursion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `ws_stream` is never read [INFO] [stdout] --> src/common.rs:107:29 [INFO] [stdout] | [INFO] [stdout] 107 | let mut ws_stream = None; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pin_id` [INFO] [stdout] --> src/common.rs:147:50 [INFO] [stdout] | [INFO] [stdout] 147 | fn connect_on_thread(feed: Arc>, pin_id: usize) [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_pin_id` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function cannot return without recursing [INFO] [stdout] --> src/okx.rs:117:5 [INFO] [stdout] | [INFO] [stdout] 117 | fn pin(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stdout] 118 | self.pin() [INFO] [stdout] | ---------- recursive call site [INFO] [stdout] | [INFO] [stdout] = help: a `loop` may express intention better if this is on purpose [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `symbol` [INFO] [stdout] --> src/okx.rs:172:46 [INFO] [stdout] | [INFO] [stdout] 172 | fn get_connection_str<'a>(base: &'a str, symbol: &'a str) -> String { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_affinity` is never used [INFO] [stdout] --> src/common.rs:56:4 [INFO] [stdout] | [INFO] [stdout] 56 | fn get_affinity() { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WebSocketResponse` is never constructed [INFO] [stdout] --> src/okx.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | struct WebSocketResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CandlestickData` is never constructed [INFO] [stdout] --> src/okx.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | struct CandlestickData { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `instId` should have a snake case name [INFO] [stdout] --> src/okx.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | instId: String, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `inst_id` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `instId` should have a snake case name [INFO] [stdout] --> src/okx.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | instId: String, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `inst_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.22s [INFO] running `Command { std: "docker" "inspect" "2952665fe7a376255df668a2d70829bdc02f9532ab058966e240f8e3910ddb6e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2952665fe7a376255df668a2d70829bdc02f9532ab058966e240f8e3910ddb6e", kill_on_drop: false }` [INFO] [stdout] 2952665fe7a376255df668a2d70829bdc02f9532ab058966e240f8e3910ddb6e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 59d1edbab20d08ad5740bde24bdf9eee6247236c7d532749955491222cf4d257 [INFO] running `Command { std: "docker" "start" "-a" "59d1edbab20d08ad5740bde24bdf9eee6247236c7d532749955491222cf4d257", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `warn` [INFO] [stderr] --> src/binance.rs:7:21 [INFO] [stderr] | [INFO] [stderr] 7 | use tracing::{info, warn, error}; [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: type `candle_stick` should have an upper camel case name [INFO] [stderr] --> src/candle.rs:2:12 [INFO] [stderr] | [INFO] [stderr] 2 | pub struct candle_stick { [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CandleStick` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `error` and `warn` [INFO] [stderr] --> src/common.rs:12:15 [INFO] [stderr] | [INFO] [stderr] 12 | use tracing::{error, info, warn}; [INFO] [stderr] | ^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `warn` [INFO] [stderr] --> src/okx.rs:12:21 [INFO] [stderr] | [INFO] [stderr] 12 | use tracing::{info, warn, error}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/okx.rs:128:24 [INFO] [stderr] | [INFO] [stderr] 128 | if (event == "subscribe") { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 128 - if (event == "subscribe") { [INFO] [stderr] 128 + if event == "subscribe" { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/okx.rs:130:31 [INFO] [stderr] | [INFO] [stderr] 130 | } else if (event == "error") { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 130 - } else if (event == "error") { [INFO] [stderr] 130 + } else if event == "error" { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused imports: `error` and `warn` [INFO] [stderr] --> src/config.rs:4:21 [INFO] [stderr] | [INFO] [stderr] 4 | use tracing::{info, warn, error}; [INFO] [stderr] | ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function cannot return without recursing [INFO] [stderr] --> src/binance.rs:92:5 [INFO] [stderr] | [INFO] [stderr] 92 | fn pin(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stderr] 93 | self.pin() [INFO] [stderr] | ---------- recursive call site [INFO] [stderr] | [INFO] [stderr] = help: a `loop` may express intention better if this is on purpose [INFO] [stderr] = note: `#[warn(unconditional_recursion)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `ws_stream` is never read [INFO] [stderr] --> src/common.rs:107:29 [INFO] [stderr] | [INFO] [stderr] 107 | let mut ws_stream = None; [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pin_id` [INFO] [stderr] --> src/common.rs:147:50 [INFO] [stderr] | [INFO] [stderr] 147 | fn connect_on_thread(feed: Arc>, pin_id: usize) [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_pin_id` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function cannot return without recursing [INFO] [stderr] --> src/okx.rs:117:5 [INFO] [stderr] | [INFO] [stderr] 117 | fn pin(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stderr] 118 | self.pin() [INFO] [stderr] | ---------- recursive call site [INFO] [stderr] | [INFO] [stderr] = help: a `loop` may express intention better if this is on purpose [INFO] [stderr] [INFO] [stderr] warning: unused variable: `symbol` [INFO] [stderr] --> src/okx.rs:172:46 [INFO] [stderr] | [INFO] [stderr] 172 | fn get_connection_str<'a>(base: &'a str, symbol: &'a str) -> String { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol` [INFO] [stderr] [INFO] [stderr] warning: function `get_affinity` is never used [INFO] [stderr] --> src/common.rs:56:4 [INFO] [stderr] | [INFO] [stderr] 56 | fn get_affinity() { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: struct `WebSocketResponse` is never constructed [INFO] [stderr] --> src/okx.rs:15:8 [INFO] [stderr] | [INFO] [stderr] 15 | struct WebSocketResponse { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `CandlestickData` is never constructed [INFO] [stderr] --> src/okx.rs:46:8 [INFO] [stderr] | [INFO] [stderr] 46 | struct CandlestickData { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: crate `MarketDataFeed` should have a snake case name [INFO] [stderr] | [INFO] [stderr] = help: convert the identifier to snake case: `market_data_feed` [INFO] [stderr] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: structure field `instId` should have a snake case name [INFO] [stderr] --> src/okx.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | instId: String, [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `inst_id` [INFO] [stderr] [INFO] [stderr] warning: structure field `instId` should have a snake case name [INFO] [stderr] --> src/okx.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 42 | instId: String, [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `inst_id` [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> src/binance.rs:130:9 [INFO] [stderr] | [INFO] [stderr] 130 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: structure field `instId` should have a snake case name [INFO] [stderr] --> src/okx.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | instId: String, [INFO] [stderr] | ^^^^^^ help: convert the identifier to snake case: `inst_id` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `MarketDataFeed` (lib) generated 18 warnings (run `cargo fix --lib -p MarketDataFeed` to apply 8 suggestions) [INFO] [stderr] warning: `MarketDataFeed` (lib test) generated 18 warnings (16 duplicates) (run `cargo fix --lib -p MarketDataFeed --tests` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.22s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/MarketDataFeed-7d501d7205c2bcc1) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests MarketDataFeed [INFO] [stderr] warning: type `candle_stick` should have an upper camel case name [INFO] [stderr] --> src/candle.rs:2:12 [INFO] [stderr] | [INFO] [stderr] 2 | pub struct candle_stick { [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CandleStick` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/okx.rs:128:24 [INFO] [stderr] | [INFO] [stderr] 128 | if (event == "subscribe") { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 128 - if (event == "subscribe") { [INFO] [stderr] 128 + if event == "subscribe" { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/okx.rs:130:31 [INFO] [stderr] | [INFO] [stderr] 130 | } else if (event == "error") { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 130 - } else if (event == "error") { [INFO] [stderr] 130 + } else if event == "error" { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: 3 warnings emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "59d1edbab20d08ad5740bde24bdf9eee6247236c7d532749955491222cf4d257", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "59d1edbab20d08ad5740bde24bdf9eee6247236c7d532749955491222cf4d257", kill_on_drop: false }` [INFO] [stdout] 59d1edbab20d08ad5740bde24bdf9eee6247236c7d532749955491222cf4d257