[INFO] cloning repository https://github.com/matiboy/bittrade-websockets [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/matiboy/bittrade-websockets" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatiboy%2Fbittrade-websockets", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatiboy%2Fbittrade-websockets'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8bee2fe73527e8178591c2620506bcc5c3776d0f [INFO] checking matiboy/bittrade-websockets against master#8c32e313cccf7df531e2d49ffb8227bb92304aee for pr-145608-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatiboy%2Fbittrade-websockets" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/matiboy/bittrade-websockets [INFO] finished tweaking git repo https://github.com/matiboy/bittrade-websockets [INFO] tweaked toml for git repo https://github.com/matiboy/bittrade-websockets written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/matiboy/bittrade-websockets on toolchain 8c32e313cccf7df531e2d49ffb8227bb92304aee [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8c32e313cccf7df531e2d49ffb8227bb92304aee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/matiboy/bittrade-websockets 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" "+8c32e313cccf7df531e2d49ffb8227bb92304aee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded tracing-log v0.2.0 [INFO] [stderr] Downloaded tokio-tungstenite v0.26.1 [INFO] [stderr] Downloaded nu-ansi-term v0.46.0 [INFO] [stderr] Downloaded smawk v0.3.2 [INFO] [stderr] Downloaded console v0.15.10 [INFO] [stderr] Downloaded encode_unicode v1.0.0 [INFO] [stderr] Downloaded tungstenite v0.26.1 [INFO] [stderr] Downloaded uuid v1.12.1 [INFO] [stderr] Downloaded http v1.2.0 [INFO] [stderr] Downloaded rkyv v0.7.45 [INFO] [stderr] Downloaded rust_decimal v1.36.0 [INFO] [stderr] Downloaded serde_json v1.0.137 [INFO] [stderr] Downloaded tempfile v3.16.0 [INFO] [stderr] Downloaded native-tls v0.2.13 [INFO] [stderr] Downloaded anstream v0.6.18 [INFO] [stderr] Downloaded anstyle v1.0.10 [INFO] [stderr] Downloaded cliclack v0.3.5 [INFO] [stderr] Downloaded env_filter v0.1.3 [INFO] [stderr] Downloaded openssl v0.10.69 [INFO] [stderr] Downloaded env_logger v0.11.6 [INFO] [stderr] Downloaded simdutf8 v0.1.5 [INFO] [stderr] Downloaded bytecheck v0.6.12 [INFO] [stderr] Downloaded rkyv_derive v0.7.45 [INFO] [stderr] Downloaded seahash v4.1.0 [INFO] [stderr] Downloaded rust_decimal_macros v1.36.0 [INFO] [stderr] Downloaded data-encoding v2.7.0 [INFO] [stderr] Downloaded security-framework-sys v2.14.0 [INFO] [stderr] Downloaded miniz_oxide v0.8.3 [INFO] [stderr] Downloaded overload v0.1.1 [INFO] [stderr] Downloaded anstyle-parse v0.2.6 [INFO] [stderr] Downloaded anstyle-query v1.1.2 [INFO] [stderr] Downloaded anstyle-wincon v3.0.7 [INFO] [stderr] Downloaded colorchoice v1.0.3 [INFO] [stderr] Downloaded bytecheck_derive v0.6.12 [INFO] [stderr] Downloaded ptr_meta_derive v0.1.4 [INFO] [stderr] Downloaded ptr_meta v0.1.4 [INFO] [stderr] Downloaded rend v0.4.2 [INFO] [stderr] Downloaded tracing-serde v0.2.0 [INFO] [stderr] Downloaded unicode-ident v1.0.15 [INFO] [stderr] Downloaded tokio v1.43.0 [INFO] [stderr] Downloaded openssl-src v300.4.1+3.4.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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8c32e313cccf7df531e2d49ffb8227bb92304aee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 52ba8ec60ba8ceb2878542fd5b37e717771bb230b1ec4a73f6a858116da55780 [INFO] running `Command { std: "docker" "start" "-a" "52ba8ec60ba8ceb2878542fd5b37e717771bb230b1ec4a73f6a858116da55780", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "52ba8ec60ba8ceb2878542fd5b37e717771bb230b1ec4a73f6a858116da55780", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "52ba8ec60ba8ceb2878542fd5b37e717771bb230b1ec4a73f6a858116da55780", kill_on_drop: false }` [INFO] [stdout] 52ba8ec60ba8ceb2878542fd5b37e717771bb230b1ec4a73f6a858116da55780 [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+8c32e313cccf7df531e2d49ffb8227bb92304aee" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ebbb0c09404451c46ff40fa022ebfa1b6b96ed045eeae50240d9e11fe1c92aff [INFO] running `Command { std: "docker" "start" "-a" "ebbb0c09404451c46ff40fa022ebfa1b6b96ed045eeae50240d9e11fe1c92aff", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.93 [INFO] [stderr] Compiling unicode-ident v1.0.15 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Compiling vcpkg v0.2.15 [INFO] [stderr] Compiling pkg-config v0.3.31 [INFO] [stderr] Checking pin-project-lite v0.2.16 [INFO] [stderr] Compiling libc v0.2.169 [INFO] [stderr] Compiling cc v1.2.10 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Checking bitflags v2.8.0 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling serde v1.0.217 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Checking bytes v1.9.0 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Compiling openssl v0.10.69 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking foreign-types-shared v0.1.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling native-tls v0.2.13 [INFO] [stderr] Checking foreign-types v0.3.2 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Checking tracing-core v0.1.33 [INFO] [stderr] Compiling portable-atomic v1.10.0 [INFO] [stderr] Checking openssl-probe v0.1.6 [INFO] [stderr] Checking futures-task v0.3.31 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Compiling httparse v1.9.5 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking regex-syntax v0.6.29 [INFO] [stderr] Checking cpufeatures v0.2.17 [INFO] [stderr] Compiling rust_decimal v1.36.0 [INFO] [stderr] Compiling getrandom v0.3.1 [INFO] [stderr] Compiling serde_json v1.0.137 [INFO] [stderr] Checking utf8parse v0.2.2 [INFO] [stderr] Checking anstyle-parse v0.2.6 [INFO] [stderr] Checking http v1.2.0 [INFO] [stderr] Checking anstyle v1.0.10 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Checking number_prefix v0.4.0 [INFO] [stderr] Checking smawk v0.3.2 [INFO] [stderr] Checking anstyle-query v1.1.2 [INFO] [stderr] Checking data-encoding v2.7.0 [INFO] [stderr] Checking linux-raw-sys v0.4.15 [INFO] [stderr] Compiling quote v1.0.38 [INFO] [stderr] Checking unicode-width v0.1.14 [INFO] [stderr] Checking colorchoice v1.0.3 [INFO] [stderr] Checking is_terminal_polyfill v1.70.1 [INFO] [stderr] Checking utf-8 v0.7.6 [INFO] [stderr] Compiling openssl-src v300.4.1+3.4.0 [INFO] [stderr] Checking overload v0.1.1 [INFO] [stderr] Checking unicode-linebreak v0.1.5 [INFO] [stderr] Compiling syn v2.0.96 [INFO] [stderr] Checking parking_lot_core v0.9.10 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking mio v1.0.3 [INFO] [stderr] Checking socket2 v0.5.8 [INFO] [stderr] Checking console v0.15.10 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking textwrap v0.16.1 [INFO] [stderr] Checking nu-ansi-term v0.46.0 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking anstream v0.6.18 [INFO] [stderr] Checking indicatif v0.17.9 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking sha1 v0.10.6 [INFO] [stderr] Checking regex-automata v0.4.9 [INFO] [stderr] Checking thread_local v1.1.8 [INFO] [stderr] Checking strsim v0.11.1 [INFO] [stderr] Checking fastrand v2.3.0 [INFO] [stderr] Compiling openssl-sys v0.9.104 [INFO] [stderr] Checking regex-automata v0.1.10 [INFO] [stderr] Compiling rust_decimal_macros v1.36.0 [INFO] [stderr] Checking matchers v0.1.0 [INFO] [stderr] Checking tempfile v3.16.0 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Checking env_filter v0.1.3 [INFO] [stderr] Checking env_logger v0.11.6 [INFO] [stderr] Compiling serde_derive v1.0.217 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling thiserror-impl v2.0.11 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Checking zeroize v1.8.1 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking cliclack v0.3.5 [INFO] [stderr] Checking tokio v1.43.0 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking thiserror v2.0.11 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking tracing-serde v0.2.0 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking tokio-util v0.7.13 [INFO] [stderr] Checking tracing-subscriber v0.3.19 [INFO] [stderr] Checking tungstenite v0.26.1 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking tokio-tungstenite v0.26.1 [INFO] [stderr] Checking bittrade-websockets v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `time::Duration` [INFO] [stdout] --> src/exchanges/manager.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, time::Duration}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `broadcast`, `oneshot`, and `time::sleep` [INFO] [stdout] --> src/exchanges/manager.rs:3:28 [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::{select, sync::{broadcast, mpsc, oneshot}, time::sleep}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `UnixSocketError` and `create_socket` [INFO] [stdout] --> src/exchanges/manager.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::unix_socket::{create_socket, UnixSocketError}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/exchanges/binance/exchange.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `broadcast` and `select` [INFO] [stdout] --> src/exchanges/binance/exchange.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::{select, sync::{broadcast, mpsc, oneshot, watch}}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `commands::Command` and `messages::BinancePairMessage` [INFO] [stdout] --> src/exchanges/binance/exchange.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | use super::{commands::Command, messages::BinancePairMessage}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `stream::SplitSink` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:3:15 [INFO] [stdout] | [INFO] [stdout] 3 | use futures::{stream::SplitSink, SinkExt, StreamExt}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `JoinHandle`, `JoinSet`, and `net::TcpStream` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:4:13 [INFO] [stdout] | [INFO] [stdout] 4 | use tokio::{net::TcpStream, select, sync::{broadcast, mpsc, oneshot, watch, RwLock}, task::{JoinHandle, JoinSet}, time::{self, sleep}}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MaybeTlsStream` and `WebSocketStream` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:5:47 [INFO] [stdout] | [INFO] [stdout] 5 | use tokio_tungstenite::{tungstenite::Message, MaybeTlsStream, WebSocketStream}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/channels/pair.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `watch` [INFO] [stdout] --> src/channels/pair.rs:3:45 [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::{select, sync::{broadcast, mpsc, watch}}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio_tungstenite::tungstenite::Message` [INFO] [stdout] --> src/channels/pair.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use tokio_tungstenite::tungstenite::Message; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `time::Duration` [INFO] [stdout] --> src/exchanges/manager.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, time::Duration}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `broadcast`, `oneshot`, and `time::sleep` [INFO] [stdout] --> src/exchanges/manager.rs:3:28 [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::{select, sync::{broadcast, mpsc, oneshot}, time::sleep}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `UnixSocketError` and `create_socket` [INFO] [stdout] --> src/exchanges/manager.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::unix_socket::{create_socket, UnixSocketError}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/exchanges/binance/exchange.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `broadcast` and `select` [INFO] [stdout] --> src/exchanges/binance/exchange.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::{select, sync::{broadcast, mpsc, oneshot, watch}}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `commands::Command` and `messages::BinancePairMessage` [INFO] [stdout] --> src/exchanges/binance/exchange.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | use super::{commands::Command, messages::BinancePairMessage}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `stream::SplitSink` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:3:15 [INFO] [stdout] | [INFO] [stdout] 3 | use futures::{stream::SplitSink, SinkExt, StreamExt}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `JoinHandle`, `JoinSet`, and `net::TcpStream` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:4:13 [INFO] [stdout] | [INFO] [stdout] 4 | use tokio::{net::TcpStream, select, sync::{broadcast, mpsc, oneshot, watch, RwLock}, task::{JoinHandle, JoinSet}, time::{self, sleep}}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MaybeTlsStream` and `WebSocketStream` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:5:47 [INFO] [stdout] | [INFO] [stdout] 5 | use tokio_tungstenite::{tungstenite::Message, MaybeTlsStream, WebSocketStream}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::exchanges::exchange::ExchangeName` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 167 | use crate::exchanges::exchange::ExchangeName; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:169:9 [INFO] [stdout] | [INFO] [stdout] 169 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:170:9 [INFO] [stdout] | [INFO] [stdout] 170 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `mpsc` and `watch` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:171:23 [INFO] [stdout] | [INFO] [stdout] 171 | use tokio::sync::{mpsc, watch}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration` and `sleep` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:172:23 [INFO] [stdout] | [INFO] [stdout] 172 | use tokio::time::{sleep, Duration}; [INFO] [stdout] | ^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/channels/pair.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `watch` [INFO] [stdout] --> src/channels/pair.rs:3:45 [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::{select, sync::{broadcast, mpsc, watch}}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio_tungstenite::tungstenite::Message` [INFO] [stdout] --> src/channels/pair.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use tokio_tungstenite::tungstenite::Message; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/exchanges/manager.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 51 | ExchangeName::Binance => { [INFO] [stdout] | --------------------- matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 54 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/exchanges/manager.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 51 | ExchangeName::Binance => { [INFO] [stdout] | --------------------- matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 54 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `exchange_name` [INFO] [stdout] --> src/exchanges/manager.rs:63:37 [INFO] [stdout] | [INFO] [stdout] 63 | async fn remove_pair(&mut self, exchange_name: ExchangeName, pair: String) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_exchange_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pair` [INFO] [stdout] --> src/exchanges/manager.rs:63:66 [INFO] [stdout] | [INFO] [stdout] 63 | async fn remove_pair(&mut self, exchange_name: ExchangeName, pair: String) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_pair` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `exchange_name` [INFO] [stdout] --> src/exchanges/manager.rs:63:37 [INFO] [stdout] | [INFO] [stdout] 63 | async fn remove_pair(&mut self, exchange_name: ExchangeName, pair: String) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_exchange_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pair` [INFO] [stdout] --> src/exchanges/manager.rs:63:66 [INFO] [stdout] | [INFO] [stdout] 63 | async fn remove_pair(&mut self, exchange_name: ExchangeName, pair: String) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_pair` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rx` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:25:14 [INFO] [stdout] | [INFO] [stdout] 25 | let (tx, rx) = broadcast::channel::(1024); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rx` [INFO] [stdout] --> src/exchanges/binance/websocket/public.rs:25:14 [INFO] [stdout] | [INFO] [stdout] 25 | let (tx, rx) = broadcast::channel::(1024); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `receiver` [INFO] [stdout] --> src/exchanges/exchange/handler.rs:18:22 [INFO] [stdout] | [INFO] [stdout] 18 | let (sender, receiver) = broadcast::channel(1024); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `receiver` [INFO] [stdout] --> src/exchanges/exchange/handler.rs:18:22 [INFO] [stdout] | [INFO] [stdout] 18 | let (sender, receiver) = broadcast::channel(1024); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Exit` is never constructed [INFO] [stdout] --> src/control/control.rs:189:5 [INFO] [stdout] | [INFO] [stdout] 187 | pub enum PromptResult { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] 188 | Serve(String), [INFO] [stdout] 189 | Exit, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MainError` is never used [INFO] [stdout] --> src/errors.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum MainError { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `exchange` and `pair` are never read [INFO] [stdout] --> src/exchanges/messages.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct ExchangePairPrice { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 6 | #[serde(skip)] [INFO] [stdout] 7 | pub exchange: ExchangeName, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 8 | #[serde(skip)] [INFO] [stdout] 9 | pub pair: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExchangePairPrice` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ExchangeApiError` is never used [INFO] [stdout] --> src/exchanges/errors.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum ExchangeApiError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `remove_pair` is never used [INFO] [stdout] --> src/exchanges/manager.rs:63:14 [INFO] [stdout] | [INFO] [stdout] 16 | impl ExchangeManager { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | async fn remove_pair(&mut self, exchange_name: ExchangeName, pair: String) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `public_websocket_handle` is never read [INFO] [stdout] --> src/exchanges/binance/exchange.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct BinanceExchange { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 11 | public_websocket_handle: Option>, // TODO we should not need to keep the handle anymore, the oneshot sto... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BinanceExchange` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `remove_pair` is never used [INFO] [stdout] --> src/exchanges/binance/exchange.rs:57:18 [INFO] [stdout] | [INFO] [stdout] 17 | impl BinanceExchange { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 57 | pub async fn remove_pair(&mut self, pair: &String) -> () { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_default_private_url` is never used [INFO] [stdout] --> src/exchanges/binance/exchange.rs:94:8 [INFO] [stdout] | [INFO] [stdout] 94 | pub fn get_default_private_url() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Command` is never used [INFO] [stdout] --> src/exchanges/binance/commands.rs:3:10 [INFO] [stdout] | [INFO] [stdout] 3 | pub enum Command { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `stop_sender`, `task`, and `sender` are never read [INFO] [stdout] --> src/exchanges/exchange/handler.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct ExchangeHandler { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 10 | pub stop_sender: oneshot::Sender<()>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 11 | pub task: JoinHandle<()>, [INFO] [stdout] | ^^^^ [INFO] [stdout] 12 | pub sender: broadcast::Sender, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExchangeHandler` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Exit` is never constructed [INFO] [stdout] --> src/control/control.rs:189:5 [INFO] [stdout] | [INFO] [stdout] 187 | pub enum PromptResult { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] 188 | Serve(String), [INFO] [stdout] 189 | Exit, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MainError` is never used [INFO] [stdout] --> src/errors.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum MainError { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `exchange` and `pair` are never read [INFO] [stdout] --> src/exchanges/messages.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct ExchangePairPrice { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 6 | #[serde(skip)] [INFO] [stdout] 7 | pub exchange: ExchangeName, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 8 | #[serde(skip)] [INFO] [stdout] 9 | pub pair: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExchangePairPrice` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ExchangeApiError` is never used [INFO] [stdout] --> src/exchanges/errors.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum ExchangeApiError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `remove_pair` is never used [INFO] [stdout] --> src/exchanges/manager.rs:63:14 [INFO] [stdout] | [INFO] [stdout] 16 | impl ExchangeManager { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | async fn remove_pair(&mut self, exchange_name: ExchangeName, pair: String) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `public_websocket_handle` is never read [INFO] [stdout] --> src/exchanges/binance/exchange.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct BinanceExchange { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 11 | public_websocket_handle: Option>, // TODO we should not need to keep the handle anymore, the oneshot sto... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BinanceExchange` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `remove_pair` is never used [INFO] [stdout] --> src/exchanges/binance/exchange.rs:57:18 [INFO] [stdout] | [INFO] [stdout] 17 | impl BinanceExchange { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 57 | pub async fn remove_pair(&mut self, pair: &String) -> () { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_default_private_url` is never used [INFO] [stdout] --> src/exchanges/binance/exchange.rs:94:8 [INFO] [stdout] | [INFO] [stdout] 94 | pub fn get_default_private_url() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `AddKey` is never constructed [INFO] [stdout] --> src/exchanges/binance/commands.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 3 | pub enum Command { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 6 | AddKey(String, String), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `stop_sender`, `task`, and `sender` are never read [INFO] [stdout] --> src/exchanges/exchange/handler.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct ExchangeHandler { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 10 | pub stop_sender: oneshot::Sender<()>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 11 | pub task: JoinHandle<()>, [INFO] [stdout] | ^^^^ [INFO] [stdout] 12 | pub sender: broadcast::Sender, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExchangeHandler` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 17s [INFO] running `Command { std: "docker" "inspect" "ebbb0c09404451c46ff40fa022ebfa1b6b96ed045eeae50240d9e11fe1c92aff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ebbb0c09404451c46ff40fa022ebfa1b6b96ed045eeae50240d9e11fe1c92aff", kill_on_drop: false }` [INFO] [stdout] ebbb0c09404451c46ff40fa022ebfa1b6b96ed045eeae50240d9e11fe1c92aff