[INFO] cloning repository https://github.com/mohitejaikumar/CLOB
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mohitejaikumar/CLOB" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmohitejaikumar%2FCLOB", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmohitejaikumar%2FCLOB'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f3fbe920de3380f06169369615898beaeae62b49
[INFO] checking mohitejaikumar/CLOB against try#3f7e3b175fda7edbf81081bcd9b91b73f2f7993f for pr-156157-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmohitejaikumar%2FCLOB" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/mohitejaikumar/CLOB
[INFO] finished tweaking git repo https://github.com/mohitejaikumar/CLOB
[INFO] tweaked toml for git repo https://github.com/mohitejaikumar/CLOB written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/mohitejaikumar/CLOB on toolchain 3f7e3b175fda7edbf81081bcd9b91b73f2f7993f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3f7e3b175fda7edbf81081bcd9b91b73f2f7993f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/mohitejaikumar/CLOB 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" "+3f7e3b175fda7edbf81081bcd9b91b73f2f7993f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+3f7e3b175fda7edbf81081bcd9b91b73f2f7993f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 28dfcb250e9f3f6d545a9bc8fa2585812d39d63caa4cf6d7041116e40933506e
[INFO] running `Command { std: "docker" "start" "-a" "28dfcb250e9f3f6d545a9bc8fa2585812d39d63caa4cf6d7041116e40933506e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "28dfcb250e9f3f6d545a9bc8fa2585812d39d63caa4cf6d7041116e40933506e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "28dfcb250e9f3f6d545a9bc8fa2585812d39d63caa4cf6d7041116e40933506e", kill_on_drop: false }`
[INFO] [stdout] 28dfcb250e9f3f6d545a9bc8fa2585812d39d63caa4cf6d7041116e40933506e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+3f7e3b175fda7edbf81081bcd9b91b73f2f7993f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 601e1e68e5536cca8fd83bc34a31226bcf9ae4325e9184ebccc56a85903801f4
[INFO] running `Command { std: "docker" "start" "-a" "601e1e68e5536cca8fd83bc34a31226bcf9ae4325e9184ebccc56a85903801f4", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]     Checking cfg-if v1.0.1
[INFO] [stderr]     Checking bytes v1.10.1
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]     Checking memchr v2.7.5
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]     Checking futures-sink v0.3.31
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]     Checking slab v0.4.10
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]     Checking writeable v0.6.1
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]     Checking litemap v0.8.0
[INFO] [stderr]    Compiling zerocopy v0.8.26
[INFO] [stderr]     Checking tracing-core v0.1.34
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]    Compiling icu_normalizer_data v2.0.0
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking hashbrown v0.15.4
[INFO] [stderr]     Checking ryu v1.0.20
[INFO] [stderr]    Compiling jobserver v0.1.33
[INFO] [stderr]    Compiling serde_json v1.0.141
[INFO] [stderr]     Checking http v1.3.1
[INFO] [stderr]    Compiling cc v1.2.30
[INFO] [stderr]     Checking bitflags v2.9.1
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling rust_decimal v1.37.2
[INFO] [stderr]     Checking indexmap v2.10.0
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]     Checking signal-hook-registry v1.4.5
[INFO] [stderr]     Checking socket2 v0.6.0
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]    Compiling convert_case v0.6.0
[INFO] [stderr]    Compiling time-core v0.1.4
[INFO] [stderr]     Checking strum v0.27.2
[INFO] [stderr]     Checking deranged v0.4.0
[INFO] [stderr]    Compiling time-macros v0.2.22
[INFO] [stderr]     Checking iana-time-zone v0.1.63
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking chrono v0.4.41
[INFO] [stderr]     Checking crc32fast v1.5.0
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]     Checking flate2 v1.1.2
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking combine v4.6.7
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]    Compiling snap v1.1.1
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]    Compiling zstd-sys v2.0.15+zstd.1.5.7
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]     Checking twox-hash v2.1.1
[INFO] [stderr]     Checking lz4_flex v0.11.5
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking dashmap v6.1.0
[INFO] [stderr]     Checking rand_pcg v0.9.0
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]     Checking arc-swap v1.7.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]     Checking local-waker v0.1.4
[INFO] [stderr]     Checking alloc-no-stdlib v2.0.4
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]     Checking data-encoding v2.9.0
[INFO] [stderr]     Checking alloc-stdlib v0.2.2
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]     Checking ipnet v2.11.0
[INFO] [stderr]    Compiling pin-project-lite v0.2.16
[INFO] [stderr]     Checking psl-types v2.0.11
[INFO] [stderr]    Compiling litrs v0.4.2
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling bytestring v1.4.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]     Checking tokio v1.46.1
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]     Checking zerovec v0.11.2
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.2
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]    Compiling enum_stringify v0.6.4
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling rust_decimal_macros v1.37.1
[INFO] [stderr]    Compiling document-features v0.2.11
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling scylla-macros v1.3.0
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking tokio-util v0.7.15
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking h2 v0.4.11
[INFO] [stderr]     Checking redis v0.32.4
[INFO] [stderr]     Checking publicsuffix v2.3.0
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking actix-rt v2.10.0
[INFO] [stderr]     Checking brotli-decompressor v5.0.0
[INFO] [stderr]     Checking actix-utils v3.0.1
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking uuid v1.17.0
[INFO] [stderr]    Compiling cookie v0.16.2
[INFO] [stderr]     Checking actix-service v2.0.3
[INFO] [stderr]    Compiling regex-lite v0.1.6
[INFO] [stderr]     Checking iri-string v0.7.8
[INFO] [stderr]     Checking scylla-cql v1.3.0
[INFO] [stderr]     Checking zeroize v1.8.1
[INFO] [stderr]     Checking rustls-pki-types v1.12.0
[INFO] [stderr]     Checking cookie_store v0.21.1
[INFO] [stderr]    Compiling actix-router v0.5.3
[INFO] [stderr]     Checking brotli v8.0.1
[INFO] [stderr]     Checking derive_more v2.0.1
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking actix-codec v0.5.2
[INFO] [stderr]     Checking hyper v1.6.0
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]     Checking async-compression v0.4.27
[INFO] [stderr]     Checking local-channel v0.1.5
[INFO] [stderr]     Checking language-tags v0.3.2
[INFO] [stderr]     Checking hyper-util v0.1.16
[INFO] [stderr]    Compiling actix-web-codegen v4.3.0
[INFO] [stderr]     Checking actix-server v2.6.0
[INFO] [stderr]    Compiling actix-macros v0.2.4
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking impl-more v0.1.9
[INFO] [stderr]     Checking scylla v1.3.0
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]     Checking dotenv v0.15.0
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking regex-syntax v0.6.29
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking nanorand v0.7.0
[INFO] [stderr]     Checking reqwest v0.12.22
[INFO] [stderr]     Checking tungstenite v0.26.2
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking termcolor v1.4.1
[INFO] [stderr]     Checking overload v0.1.1
[INFO] [stderr]     Checking flume v0.11.1
[INFO] [stderr]     Checking nu-ansi-term v0.46.0
[INFO] [stderr]     Checking simplelog v0.12.2
[INFO] [stderr]     Checking tokio-tungstenite v0.26.2
[INFO] [stderr]     Checking tungstenite v0.27.0
[INFO] [stderr]     Checking num-format v0.4.4
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking actix-http v3.11.0
[INFO] [stderr]     Checking ctrlc v3.4.7
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]     Checking downcast-rs v2.0.1
[INFO] [stderr]     Checking tokio-tungstenite v0.27.0
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking wss v0.1.0 (/opt/rustwide/workdir/wss)
[INFO] [stdout] warning: variant `SOL_USDT` should have an upper camel case name
[INFO] [stdout]  --> wss/src/enums/registered_symbols.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     SOL_USDT,
[INFO] [stdout]   |     ^^^^^^^^ help: convert the identifier to upper camel case: `SolUsdt`
[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: variant `BTC_USDT` should have an upper camel case name
[INFO] [stdout]   --> wss/src/enums/registered_symbols.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     BTC_USDT,
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `BtcUsdt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ETH_USDT` should have an upper camel case name
[INFO] [stdout]   --> wss/src/enums/registered_symbols.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     ETH_USDT,
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `EthUsdt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_UPDATE` should have an upper camel case name
[INFO] [stdout]   --> wss/src/payload.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     ORDER_UPDATE,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderUpdate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling gumdrop_derive v0.8.1
[INFO] [stdout] warning: variant `SOL_USDT` should have an upper camel case name
[INFO] [stdout]  --> wss/src/enums/registered_symbols.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     SOL_USDT,
[INFO] [stdout]   |     ^^^^^^^^ help: convert the identifier to upper camel case: `SolUsdt`
[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: variant `BTC_USDT` should have an upper camel case name
[INFO] [stdout]   --> wss/src/enums/registered_symbols.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     BTC_USDT,
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `BtcUsdt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ETH_USDT` should have an upper camel case name
[INFO] [stdout]   --> wss/src/enums/registered_symbols.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     ETH_USDT,
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `EthUsdt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ORDER_UPDATE` should have an upper camel case name
[INFO] [stdout]   --> wss/src/payload.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     ORDER_UPDATE,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `OrderUpdate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking matchers v0.1.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.19
[INFO] [stderr]     Checking gumdrop v0.8.1
[INFO] [stderr]     Checking goose v0.18.0
[INFO] [stderr]     Checking actix-web v4.11.0
[INFO] [stderr]     Checking archiever v0.1.0 (/opt/rustwide/workdir/archiever)
[INFO] [stdout] warning: unused import: `LoadBalancingPolicy`
[INFO] [stdout]  --> archiever/src/db.rs:3:165
[INFO] [stdout]   |
[INFO] [stdout] 3 | ..., frame::Compression, policies::load_balancing::{self, LoadBalancingPolicy}, statement::batch::Batch};
[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: `hash::Hash`
[INFO] [stdout]  --> archiever/src/state/user.rs:1:47
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, error::Error, hash::Hash};
[INFO] [stdout]   |                                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DeserializeRow` and `SerializeRow`
[INFO] [stdout]  --> archiever/src/state/user.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use scylla::{DeserializeRow, SerializeRow};
[INFO] [stdout]   |              ^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LoadBalancingPolicy`
[INFO] [stdout]  --> archiever/src/db.rs:3:165
[INFO] [stdout]   |
[INFO] [stdout] 3 | ..., frame::Compression, policies::load_balancing::{self, LoadBalancingPolicy}, statement::batch::Batch};
[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: `hash::Hash`
[INFO] [stdout]  --> archiever/src/state/user.rs:1:47
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, error::Error, hash::Hash};
[INFO] [stdout]   |                                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DeserializeRow` and `SerializeRow`
[INFO] [stdout]  --> archiever/src/state/user.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use scylla::{DeserializeRow, SerializeRow};
[INFO] [stdout]   |              ^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> archiever/src/db.rs:114:13
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let mut order_1 = self.get_order(queue_trade.order_id, &queue_trade.exchange.symbol).await?;
[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]    --> archiever/src/db.rs:115:13
[INFO] [stdout]     |
[INFO] [stdout] 115 |         let mut order_2 = self.get_order(
[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]    --> archiever/src/db.rs:114:13
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let mut order_1 = self.get_order(queue_trade.order_id, &queue_trade.exchange.symbol).await?;
[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]    --> archiever/src/db.rs:115:13
[INFO] [stdout]     |
[INFO] [stdout] 115 |         let mut order_2 = self.get_order(
[INFO] [stdout]     |             ----^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking loadtesting v0.1.0 (/opt/rustwide/workdir/loadtesting)
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> archiever/src/state/exchange.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking backend v0.1.0 (/opt/rustwide/workdir/backend)
[INFO] [stderr]     Checking engine v0.1.0 (/opt/rustwide/workdir/engine)
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> archiever/src/state/exchange.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `from_scylla_trade` is never used
[INFO] [stdout]   --> archiever/src/state/scylla_state.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl ScyllaTrade {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 67 |     fn from_scylla_trade(&self) -> Trade {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `from_scylla_trade` is never used
[INFO] [stdout]   --> archiever/src/state/scylla_state.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl ScyllaTrade {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 67 |     fn from_scylla_trade(&self) -> Trade {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CancelAll`, `CancelOrder`, `OrderSide`, and `OrderType`
[INFO] [stdout]  --> loadtesting/src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     CancelAll, CancelOrder, Deposit, OpenOrder, OpenOrders, OrderParams, OrderSide, OrderType,
[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 imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> loadtesting/src/main.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::HashMap`
[INFO] [stdout]   --> loadtesting/src/main.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::{collections::HashMap, str::FromStr, time::Instant};
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_user_balances` is never used
[INFO] [stdout]   --> loadtesting/src/main.rs:91:10
[INFO] [stdout]    |
[INFO] [stdout] 91 | async fn get_user_balances(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deposit_funds` is never used
[INFO] [stdout]   --> loadtesting/src/main.rs:98:10
[INFO] [stdout]    |
[INFO] [stdout] 98 | async fn deposit_funds(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `withdraw_funds` is never used
[INFO] [stdout]    --> loadtesting/src/main.rs:114:10
[INFO] [stdout]     |
[INFO] [stdout] 114 | async fn withdraw_funds(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_order_history` is never used
[INFO] [stdout]    --> loadtesting/src/main.rs:130:10
[INFO] [stdout]     |
[INFO] [stdout] 130 | async fn get_order_history(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `execute_order` is never used
[INFO] [stdout]    --> loadtesting/src/main.rs:139:10
[INFO] [stdout]     |
[INFO] [stdout] 139 | async fn execute_order(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_open_order` is never used
[INFO] [stdout]    --> loadtesting/src/main.rs:199:10
[INFO] [stdout]     |
[INFO] [stdout] 199 | async fn get_open_order(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_open_orders` is never used
[INFO] [stdout]    --> loadtesting/src/main.rs:221:10
[INFO] [stdout]     |
[INFO] [stdout] 221 | async fn get_open_orders(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_trades` is never used
[INFO] [stdout]    --> loadtesting/src/main.rs:241:10
[INFO] [stdout]     |
[INFO] [stdout] 241 | async fn get_trades(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `scylla::response::query_result`
[INFO] [stdout]  --> archiever/src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use scylla::response::query_result;
[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 imports: `CancelAll`, `CancelOrder`, `OrderSide`, and `OrderType`
[INFO] [stdout]  --> loadtesting/src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     CancelAll, CancelOrder, Deposit, OpenOrder, OpenOrders, OrderParams, OrderSide, OrderType,
[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 imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> loadtesting/src/main.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::HashMap`
[INFO] [stdout]   --> loadtesting/src/main.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::{collections::HashMap, str::FromStr, time::Instant};
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `scylla::response::query_result`
[INFO] [stdout]  --> archiever/src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use scylla::response::query_result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SOL_USDT` should have an upper camel case name
[INFO] [stdout]    --> engine/src/matching/mod.rs:111:5
[INFO] [stdout]     |
[INFO] [stdout] 111 |     SOL_USDT,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `SolUsdt`
[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: variant `BTC_USDT` should have an upper camel case name
[INFO] [stdout]    --> engine/src/matching/mod.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 112 |     BTC_USDT,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `BtcUsdt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ETH_USDT` should have an upper camel case name
[INFO] [stdout]    --> engine/src/matching/mod.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     ETH_USDT
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `EthUsdt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SOL_USDT` should have an upper camel case name
[INFO] [stdout]    --> engine/src/matching/mod.rs:111:5
[INFO] [stdout]     |
[INFO] [stdout] 111 |     SOL_USDT,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `SolUsdt`
[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: variant `BTC_USDT` should have an upper camel case name
[INFO] [stdout]    --> engine/src/matching/mod.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 112 |     BTC_USDT,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `BtcUsdt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ETH_USDT` should have an upper camel case name
[INFO] [stdout]    --> engine/src/matching/mod.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     ETH_USDT
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `EthUsdt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `App`
[INFO] [stdout]  --> backend/src/routes/user.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     App, HttpResponse,
[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: `scylla::errors::BadQuery`
[INFO] [stdout]  --> backend/src/api/user.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use scylla::errors::BadQuery;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_web::error::QueryPayloadError`
[INFO] [stdout]  --> backend/src/api/order.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use actix_web::error::QueryPayloadError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_user_balances` is never used
[INFO] [stdout]   --> loadtesting/src/main.rs:91:10
[INFO] [stdout]    |
[INFO] [stdout] 91 | async fn get_user_balances(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deposit_funds` is never used
[INFO] [stdout]   --> loadtesting/src/main.rs:98:10
[INFO] [stdout]    |
[INFO] [stdout] 98 | async fn deposit_funds(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `withdraw_funds` is never used
[INFO] [stdout]    --> loadtesting/src/main.rs:114:10
[INFO] [stdout]     |
[INFO] [stdout] 114 | async fn withdraw_funds(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_order_history` is never used
[INFO] [stdout]    --> loadtesting/src/main.rs:130:10
[INFO] [stdout]     |
[INFO] [stdout] 130 | async fn get_order_history(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `execute_order` is never used
[INFO] [stdout]    --> loadtesting/src/main.rs:139:10
[INFO] [stdout]     |
[INFO] [stdout] 139 | async fn execute_order(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_open_order` is never used
[INFO] [stdout]    --> loadtesting/src/main.rs:199:10
[INFO] [stdout]     |
[INFO] [stdout] 199 | async fn get_open_order(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_open_orders` is never used
[INFO] [stdout]    --> loadtesting/src/main.rs:221:10
[INFO] [stdout]     |
[INFO] [stdout] 221 | async fn get_open_orders(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_trades` is never used
[INFO] [stdout]    --> loadtesting/src/main.rs:241:10
[INFO] [stdout]     |
[INFO] [stdout] 241 | async fn get_trades(user: &mut GooseUser) -> TransactionResult {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:368:13
[INFO] [stdout]     |
[INFO] [stdout] 368 |         let mut temp = res.into_rows_result().unwrap();
[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]    --> engine/src/matching/orderbook.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 |         let mut temp = res.into_rows_result().unwrap();
[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]    --> engine/src/matching/orderbook.rs:368:13
[INFO] [stdout]     |
[INFO] [stdout] 368 |         let mut temp = res.into_rows_result().unwrap();
[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]    --> engine/src/matching/orderbook.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 |         let mut temp = res.into_rows_result().unwrap();
[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]    --> engine/src/matching/orderbook.rs:425:13
[INFO] [stdout]     |
[INFO] [stdout] 425 |         let mut temp = res.into_rows_result().unwrap();
[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]    --> engine/src/matching/orderbook.rs:426:13
[INFO] [stdout]     |
[INFO] [stdout] 426 |         let mut orders = temp.rows::<ScyllaOrder>().unwrap();
[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]    --> engine/src/matching/orderbook.rs:427:13
[INFO] [stdout]     |
[INFO] [stdout] 427 |         let mut temp_cancel = cancel_res.into_rows_result().unwrap();
[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]    --> engine/src/matching/orderbook.rs:428:13
[INFO] [stdout]     |
[INFO] [stdout] 428 |         let mut canceled_orders = temp_cancel.rows::<ScyllaCancelOrder>().unwrap();
[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]    --> engine/src/matching/orderbook.rs:435:13
[INFO] [stdout]     |
[INFO] [stdout] 435 |         let mut canceled_orders: Vec<OrderRequest> = canceled_orders
[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]    --> engine/src/matching/orderbook.rs:425:13
[INFO] [stdout]     |
[INFO] [stdout] 425 |         let mut temp = res.into_rows_result().unwrap();
[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]    --> engine/src/matching/orderbook.rs:426:13
[INFO] [stdout]     |
[INFO] [stdout] 426 |         let mut orders = temp.rows::<ScyllaOrder>().unwrap();
[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]    --> engine/src/matching/orderbook.rs:427:13
[INFO] [stdout]     |
[INFO] [stdout] 427 |         let mut temp_cancel = cancel_res.into_rows_result().unwrap();
[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]    --> engine/src/matching/orderbook.rs:428:13
[INFO] [stdout]     |
[INFO] [stdout] 428 |         let mut canceled_orders = temp_cancel.rows::<ScyllaCancelOrder>().unwrap();
[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]    --> engine/src/matching/orderbook.rs:435:13
[INFO] [stdout]     |
[INFO] [stdout] 435 |         let mut canceled_orders: Vec<OrderRequest> = canceled_orders
[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]   --> engine/src/matching/engine.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |         let mut orderbooks = &mut self.orderbook;
[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]   --> engine/src/matching/engine.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |         let mut query_rows = res.into_rows_result().unwrap();
[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]   --> engine/src/matching/engine.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let mut users = query_rows.rows::<ScyllaUser>().unwrap();
[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]   --> engine/src/matching/engine.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |         let mut orderbooks = &mut self.orderbook;
[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]   --> engine/src/matching/engine.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |         let mut query_rows = res.into_rows_result().unwrap();
[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]   --> engine/src/matching/engine.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let mut users = query_rows.rows::<ScyllaUser>().unwrap();
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `App`
[INFO] [stdout]  --> backend/src/routes/user.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     App, HttpResponse,
[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: `scylla::errors::BadQuery`
[INFO] [stdout]  --> backend/src/api/user.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use scylla::errors::BadQuery;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `actix_web::error::QueryPayloadError`
[INFO] [stdout]  --> backend/src/api/order.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use actix_web::error::QueryPayloadError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> backend/src/app.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let mut redis_connection = connect_redis(&redis_uri);
[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]   --> backend/src/db/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let mut temp = res.into_rows_result().unwrap();
[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]    --> engine/src/lib.rs:149:18
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let (tx, mut rx) = mpsc::unbounded_channel::<PersistOrderRequest>();
[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]    --> engine/src/lib.rs:151:24
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let (event_tx, mut event_rx) = mpsc::unbounded_channel::<Vec<RedisEmit>>();
[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]    --> engine/src/lib.rs:149:18
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let (tx, mut rx) = mpsc::unbounded_channel::<PersistOrderRequest>();
[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]    --> engine/src/lib.rs:151:24
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let (event_tx, mut event_rx) = mpsc::unbounded_channel::<Vec<RedisEmit>>();
[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]   --> backend/src/routes/orders.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let mut con = &mut app_state.redis_connection.lock().unwrap();
[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]    --> backend/src/api/order.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let mut temp = res.into_rows_result().unwrap();
[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]    --> backend/src/api/order.rs:117:13
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let mut orders = temp.rows::<ScyllaOrder>()?;
[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]    --> backend/src/api/order.rs:145:13
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let mut temp = res.into_rows_result().unwrap();
[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]   --> backend/src/api/trade.rs:96:13
[INFO] [stdout]    |
[INFO] [stdout] 96 |         let mut temp = res.into_rows_result().unwrap();
[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]   --> backend/src/api/trade.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let mut trades = temp.rows::<ScyllaTrade>().unwrap();
[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]    --> backend/src/api/trade.rs:117:13
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let mut temp = res.into_rows_result().unwrap();
[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]   --> backend/src/app.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let mut redis_connection = connect_redis(&redis_uri);
[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]   --> backend/src/db/mod.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let mut temp = res.into_rows_result().unwrap();
[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]   --> backend/src/routes/orders.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let mut con = &mut app_state.redis_connection.lock().unwrap();
[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]    --> backend/src/api/order.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let mut temp = res.into_rows_result().unwrap();
[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]    --> backend/src/api/order.rs:117:13
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let mut orders = temp.rows::<ScyllaOrder>()?;
[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]    --> backend/src/api/order.rs:145:13
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let mut temp = res.into_rows_result().unwrap();
[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]   --> backend/src/api/trade.rs:96:13
[INFO] [stdout]    |
[INFO] [stdout] 96 |         let mut temp = res.into_rows_result().unwrap();
[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]   --> backend/src/api/trade.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let mut trades = temp.rows::<ScyllaTrade>().unwrap();
[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]    --> backend/src/api/trade.rs:117:13
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let mut temp = res.into_rows_result().unwrap();
[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]   --> engine/src/matching/orderbook.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |         let mut order_id = &mut self.order_id;
[INFO] [stdout]    |             ----^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:172:13
[INFO] [stdout]     |
[INFO] [stdout] 172 |         let result = match order.order_side {
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[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]    --> engine/src/matching/orderbook.rs:247:13
[INFO] [stdout]     |
[INFO] [stdout] 247 |         let mut open_orders = self.get_open_orders(user_id);
[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]    --> engine/src/matching/orderbook.rs:298:21
[INFO] [stdout]     |
[INFO] [stdout] 298 |                 let mut limit = self.bids.get_mut(price);
[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]    --> engine/src/matching/orderbook.rs:315:21
[INFO] [stdout]     |
[INFO] [stdout] 315 |                 let mut limit = self.asks.get_mut(price);
[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]   --> engine/src/matching/orderbook.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |         let mut order_id = &mut self.order_id;
[INFO] [stdout]    |             ----^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:172:13
[INFO] [stdout]     |
[INFO] [stdout] 172 |         let result = match order.order_side {
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[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]    --> engine/src/matching/orderbook.rs:247:13
[INFO] [stdout]     |
[INFO] [stdout] 247 |         let mut open_orders = self.get_open_orders(user_id);
[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]    --> engine/src/matching/orderbook.rs:298:21
[INFO] [stdout]     |
[INFO] [stdout] 298 |                 let mut limit = self.bids.get_mut(price);
[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]    --> engine/src/matching/orderbook.rs:315:21
[INFO] [stdout]     |
[INFO] [stdout] 315 |                 let mut limit = self.asks.get_mut(price);
[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]    --> engine/src/matching/orderbook.rs:583:9
[INFO] [stdout]     |
[INFO] [stdout] 583 |         mut trade_id: &mut u64,
[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]    --> engine/src/matching/orderbook.rs:583:9
[INFO] [stdout]     |
[INFO] [stdout] 583 |         mut trade_id: &mut u64,
[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]   --> engine/src/matching/engine.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let mut orderbook = self.orderbook.get_mut(&exchange).unwrap();
[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]   --> engine/src/matching/engine.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let mut order_id = &mut self.orderbook.get_mut(exchange).unwrap().order_id;
[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]   --> engine/src/matching/engine.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let mut orderbook = self.orderbook.get_mut(&exchange).unwrap();
[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]   --> engine/src/matching/engine.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let mut order_id = &mut self.orderbook.get_mut(exchange).unwrap().order_id;
[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]    --> engine/src/matching/engine.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     let mut orderbook = Orderbook::new(exchange.clone());
[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]    --> engine/src/matching/engine.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     let mut orderbook = Orderbook::new(exchange.clone());
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]    --> engine/src/handle_order_request.rs:287:9
[INFO] [stdout]     |
[INFO] [stdout] 287 |         start: Instant,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> engine/src/handle_order_request.rs:338:13
[INFO] [stdout]     |
[INFO] [stdout] 338 |         let mut get_open_orders: Vec<RecievedOrder> = orderbook
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]    --> engine/src/handle_order_request.rs:333:9
[INFO] [stdout]     |
[INFO] [stdout] 333 |         start: Instant,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_engine_and_users` is never used
[INFO] [stdout]    --> engine/src/matching/engine.rs:109:4
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn setup_engine_and_users() -> (MatchingEngine, Exchange, Orderbook, Vec<Id>) { // pass redis connection as arg
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> engine/src/lib.rs:51:21
[INFO] [stdout]    |
[INFO] [stdout] 51 |                     redis::cmd(&event.cmd).arg(event.arg_1).arg(event.arg_2).query::<Value>(&mut con);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 51 |                     let _ = redis::cmd(&event.cmd).arg(event.arg_1).arg(event.arg_2).query::<Value>(&mut con);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:691:25
[INFO] [stdout]     |
[INFO] [stdout] 691 | /                         event_tx.unwrap().send(
[INFO] [stdout] 692 | |                             vec![
[INFO] [stdout] 693 | |                                 RedisEmit {
[INFO] [stdout] 694 | |                                     cmd: "PUBLISH".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 715 | |                         );
[INFO] [stdout]     | |_________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 691 |                         let _ = event_tx.unwrap().send(
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:804:25
[INFO] [stdout]     |
[INFO] [stdout] 804 | /                         event_tx.unwrap().send(
[INFO] [stdout] 805 | |                             vec![
[INFO] [stdout] 806 | |                                 RedisEmit {
[INFO] [stdout] 807 | |                                     cmd: "LPUSH".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 828 | |                         );
[INFO] [stdout]     | |_________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 804 |                         let _ = event_tx.unwrap().send(
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:863:5
[INFO] [stdout]     |
[INFO] [stdout] 863 |     users.withdraw(&exchange.base, quantity, user_id);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 863 |     let _ = users.withdraw(&exchange.base, quantity, user_id);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:864:5
[INFO] [stdout]     |
[INFO] [stdout] 864 |     users.deposit(&exchange.quote, quantity * exchange_price, user_id);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 864 |     let _ = users.deposit(&exchange.quote, quantity * exchange_price, user_id);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:868:5
[INFO] [stdout]     |
[INFO] [stdout] 868 |     users.withdraw(&exchange.quote, quantity * exchange_price, client_user_id);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 868 |     let _ = users.withdraw(&exchange.quote, quantity * exchange_price, client_user_id);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:869:5
[INFO] [stdout]     |
[INFO] [stdout] 869 |     users.deposit(&exchange.base, quantity, client_user_id);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 869 |     let _ = users.deposit(&exchange.base, quantity, client_user_id);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/engine.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     engine.add_new_market(exchange.clone());
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 113 |     let _ = engine.add_new_market(exchange.clone());
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/handle_order_request.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 | /         tx.send(
[INFO] [stdout] 130 | |             PersistOrderRequest::Save(SaveOrder {
[INFO] [stdout] 131 | |                 locked_balance,
[INFO] [stdout] 132 | |                 asset,
[INFO] [stdout] 133 | |                 recieved_order: recieved_order.clone(),
[INFO] [stdout] 134 | |             })
[INFO] [stdout] 135 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let _ = tx.send(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/handle_order_request.rs:199:17
[INFO] [stdout]     |
[INFO] [stdout] 199 | /                 tx.send(
[INFO] [stdout] 200 | |                     PersistOrderRequest::Cancel(PersistCancel {
[INFO] [stdout] 201 | |                         id: cancel_order.id,
[INFO] [stdout] 202 | |                         order_side: cancel_order.order_side,
[INFO] [stdout] ...   |
[INFO] [stdout] 209 | |                     })
[INFO] [stdout] 210 | |                 );
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 199 |                 let _ = tx.send(
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/handle_order_request.rs:259:13
[INFO] [stdout]     |
[INFO] [stdout] 259 | /             tx.send(
[INFO] [stdout] 260 | |                 PersistOrderRequest::CancelAll(PersistCancelAll {
[INFO] [stdout] 261 | |                     locked_balances,
[INFO] [stdout] 262 | |                     symbol: cancel_all.symbol,
[INFO] [stdout] ...   |
[INFO] [stdout] 273 | |                 })
[INFO] [stdout] 274 | |             );
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 259 |             let _ = tx.send(
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]   --> backend/src/routes/user.rs:28:55
[INFO] [stdout]    |
[INFO] [stdout] 28 |             let mut response_result: Option<String> = None;
[INFO] [stdout]    |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 32 |                     response_result = Some(response);
[INFO] [stdout]    |                     --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]   --> backend/src/routes/user.rs:66:55
[INFO] [stdout]    |
[INFO] [stdout] 66 |             let mut response_result: Option<String> = None;
[INFO] [stdout]    |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 70 |                     response_result = Some(response);
[INFO] [stdout]    |                     --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]    --> backend/src/routes/user.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             let mut response_result: Option<String> = None;
[INFO] [stdout]     |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 106 |                     response_result = Some(response);
[INFO] [stdout]     |                     --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]    --> backend/src/routes/user.rs:139:55
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let mut response_result: Option<String> = None;
[INFO] [stdout]     |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 143 |                     response_result = Some(response);
[INFO] [stdout]     |                     --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]    --> engine/src/handle_order_request.rs:287:9
[INFO] [stdout]     |
[INFO] [stdout] 287 |         start: Instant,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> engine/src/handle_order_request.rs:338:13
[INFO] [stdout]     |
[INFO] [stdout] 338 |         let mut get_open_orders: Vec<RecievedOrder> = orderbook
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]    --> engine/src/handle_order_request.rs:333:9
[INFO] [stdout]     |
[INFO] [stdout] 333 |         start: Instant,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]   --> backend/src/routes/orders.rs:60:55
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let mut response_result: Option<String> = None;
[INFO] [stdout]    |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 64 |                     response_result = Some(response);
[INFO] [stdout]    |                     --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]    --> backend/src/routes/orders.rs:101:55
[INFO] [stdout]     |
[INFO] [stdout] 101 |             let mut response_result: Option<String> = None;
[INFO] [stdout]     |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 105 |                     response_result = Some(response);
[INFO] [stdout]     |                     --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]    --> backend/src/routes/orders.rs:152:25
[INFO] [stdout]     |
[INFO] [stdout] 152 |                     Err(err) => HttpResponse::BadRequest().json(response),
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]    --> backend/src/routes/orders.rs:141:59
[INFO] [stdout]     |
[INFO] [stdout] 141 |                 let mut response_result: Option<String> = None;
[INFO] [stdout]     |                                                           ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 145 |                         response_result = Some(response);
[INFO] [stdout]     |                         --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]    --> backend/src/routes/orders.rs:190:25
[INFO] [stdout]     |
[INFO] [stdout] 190 |                     Err(err) => HttpResponse::BadRequest().json(response),
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]    --> backend/src/routes/orders.rs:179:59
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 let mut response_result: Option<String> = None;
[INFO] [stdout]     |                                                           ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 183 |                         response_result = Some(response);
[INFO] [stdout]     |                         --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]    --> backend/src/routes/orders.rs:231:25
[INFO] [stdout]     |
[INFO] [stdout] 231 |                     Err(err) => HttpResponse::BadRequest().json(response),
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]    --> backend/src/routes/orders.rs:220:59
[INFO] [stdout]     |
[INFO] [stdout] 220 |                 let mut response_result: Option<String> = None;
[INFO] [stdout]     |                                                           ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 224 |                         response_result = Some(response);
[INFO] [stdout]     |                         --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_engine_and_users` is never used
[INFO] [stdout]    --> engine/src/matching/engine.rs:109:4
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn setup_engine_and_users() -> (MatchingEngine, Exchange, Orderbook, Vec<Id>) { // pass redis connection as arg
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> engine/src/lib.rs:51:21
[INFO] [stdout]    |
[INFO] [stdout] 51 |                     redis::cmd(&event.cmd).arg(event.arg_1).arg(event.arg_2).query::<Value>(&mut con);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 51 |                     let _ = redis::cmd(&event.cmd).arg(event.arg_1).arg(event.arg_2).query::<Value>(&mut con);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:691:25
[INFO] [stdout]     |
[INFO] [stdout] 691 | /                         event_tx.unwrap().send(
[INFO] [stdout] 692 | |                             vec![
[INFO] [stdout] 693 | |                                 RedisEmit {
[INFO] [stdout] 694 | |                                     cmd: "PUBLISH".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 715 | |                         );
[INFO] [stdout]     | |_________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 691 |                         let _ = event_tx.unwrap().send(
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:804:25
[INFO] [stdout]     |
[INFO] [stdout] 804 | /                         event_tx.unwrap().send(
[INFO] [stdout] 805 | |                             vec![
[INFO] [stdout] 806 | |                                 RedisEmit {
[INFO] [stdout] 807 | |                                     cmd: "LPUSH".to_string(),
[INFO] [stdout] ...   |
[INFO] [stdout] 828 | |                         );
[INFO] [stdout]     | |_________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 804 |                         let _ = event_tx.unwrap().send(
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:863:5
[INFO] [stdout]     |
[INFO] [stdout] 863 |     users.withdraw(&exchange.base, quantity, user_id);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 863 |     let _ = users.withdraw(&exchange.base, quantity, user_id);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:864:5
[INFO] [stdout]     |
[INFO] [stdout] 864 |     users.deposit(&exchange.quote, quantity * exchange_price, user_id);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 864 |     let _ = users.deposit(&exchange.quote, quantity * exchange_price, user_id);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:868:5
[INFO] [stdout]     |
[INFO] [stdout] 868 |     users.withdraw(&exchange.quote, quantity * exchange_price, client_user_id);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 868 |     let _ = users.withdraw(&exchange.quote, quantity * exchange_price, client_user_id);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/orderbook.rs:869:5
[INFO] [stdout]     |
[INFO] [stdout] 869 |     users.deposit(&exchange.base, quantity, client_user_id);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 869 |     let _ = users.deposit(&exchange.base, quantity, client_user_id);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/matching/engine.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     engine.add_new_market(exchange.clone());
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 113 |     let _ = engine.add_new_market(exchange.clone());
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/handle_order_request.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 | /         tx.send(
[INFO] [stdout] 130 | |             PersistOrderRequest::Save(SaveOrder {
[INFO] [stdout] 131 | |                 locked_balance,
[INFO] [stdout] 132 | |                 asset,
[INFO] [stdout] 133 | |                 recieved_order: recieved_order.clone(),
[INFO] [stdout] 134 | |             })
[INFO] [stdout] 135 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let _ = tx.send(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/handle_order_request.rs:199:17
[INFO] [stdout]     |
[INFO] [stdout] 199 | /                 tx.send(
[INFO] [stdout] 200 | |                     PersistOrderRequest::Cancel(PersistCancel {
[INFO] [stdout] 201 | |                         id: cancel_order.id,
[INFO] [stdout] 202 | |                         order_side: cancel_order.order_side,
[INFO] [stdout] ...   |
[INFO] [stdout] 209 | |                     })
[INFO] [stdout] 210 | |                 );
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 199 |                 let _ = tx.send(
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> engine/src/handle_order_request.rs:259:13
[INFO] [stdout]     |
[INFO] [stdout] 259 | /             tx.send(
[INFO] [stdout] 260 | |                 PersistOrderRequest::CancelAll(PersistCancelAll {
[INFO] [stdout] 261 | |                     locked_balances,
[INFO] [stdout] 262 | |                     symbol: cancel_all.symbol,
[INFO] [stdout] ...   |
[INFO] [stdout] 273 | |                 })
[INFO] [stdout] 274 | |             );
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 259 |             let _ = tx.send(
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]   --> backend/src/routes/user.rs:28:55
[INFO] [stdout]    |
[INFO] [stdout] 28 |             let mut response_result: Option<String> = None;
[INFO] [stdout]    |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 32 |                     response_result = Some(response);
[INFO] [stdout]    |                     --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]   --> backend/src/routes/user.rs:66:55
[INFO] [stdout]    |
[INFO] [stdout] 66 |             let mut response_result: Option<String> = None;
[INFO] [stdout]    |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 70 |                     response_result = Some(response);
[INFO] [stdout]    |                     --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]    --> backend/src/routes/user.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             let mut response_result: Option<String> = None;
[INFO] [stdout]     |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 106 |                     response_result = Some(response);
[INFO] [stdout]     |                     --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]    --> backend/src/routes/user.rs:139:55
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let mut response_result: Option<String> = None;
[INFO] [stdout]     |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 143 |                     response_result = Some(response);
[INFO] [stdout]     |                     --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]   --> backend/src/routes/orders.rs:60:55
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let mut response_result: Option<String> = None;
[INFO] [stdout]    |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 64 |                     response_result = Some(response);
[INFO] [stdout]    |                     --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]    --> backend/src/routes/orders.rs:101:55
[INFO] [stdout]     |
[INFO] [stdout] 101 |             let mut response_result: Option<String> = None;
[INFO] [stdout]     |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 105 |                     response_result = Some(response);
[INFO] [stdout]     |                     --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]    --> backend/src/routes/orders.rs:152:25
[INFO] [stdout]     |
[INFO] [stdout] 152 |                     Err(err) => HttpResponse::BadRequest().json(response),
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]    --> backend/src/routes/orders.rs:141:59
[INFO] [stdout]     |
[INFO] [stdout] 141 |                 let mut response_result: Option<String> = None;
[INFO] [stdout]     |                                                           ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 145 |                         response_result = Some(response);
[INFO] [stdout]     |                         --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]    --> backend/src/routes/orders.rs:190:25
[INFO] [stdout]     |
[INFO] [stdout] 190 |                     Err(err) => HttpResponse::BadRequest().json(response),
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]    --> backend/src/routes/orders.rs:179:59
[INFO] [stdout]     |
[INFO] [stdout] 179 |                 let mut response_result: Option<String> = None;
[INFO] [stdout]     |                                                           ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 183 |                         response_result = Some(response);
[INFO] [stdout]     |                         --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]    --> backend/src/routes/orders.rs:231:25
[INFO] [stdout]     |
[INFO] [stdout] 231 |                     Err(err) => HttpResponse::BadRequest().json(response),
[INFO] [stdout]     |                         ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `response_result` is never read
[INFO] [stdout]    --> backend/src/routes/orders.rs:220:59
[INFO] [stdout]     |
[INFO] [stdout] 220 |                 let mut response_result: Option<String> = None;
[INFO] [stdout]     |                                                           ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 224 |                         response_result = Some(response);
[INFO] [stdout]     |                         --------------- `response_result` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 42s
[INFO] running `Command { std: "docker" "inspect" "601e1e68e5536cca8fd83bc34a31226bcf9ae4325e9184ebccc56a85903801f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "601e1e68e5536cca8fd83bc34a31226bcf9ae4325e9184ebccc56a85903801f4", kill_on_drop: false }`
[INFO] [stdout] 601e1e68e5536cca8fd83bc34a31226bcf9ae4325e9184ebccc56a85903801f4
