[INFO] updating cached repository https://github.com/guoxingyun/orderBook-rs [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] [stderr] From https://github.com/guoxingyun/orderBook-rs [INFO] [stderr] aea211a..326f350 master -> master [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 326f3505e26cc65b3f34d583022c2c71881feeb7 [INFO] testing guoxingyun/orderBook-rs against try#41997647ba6a77908f6ef64401414feb00bccf16 for pr-71274 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fguoxingyun%2ForderBook-rs" "/workspace/builds/worker-12/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-12/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/guoxingyun/orderBook-rs on toolchain 41997647ba6a77908f6ef64401414feb00bccf16 [INFO] running `"/workspace/cargo-home/bin/cargo" "+41997647ba6a77908f6ef64401414feb00bccf16" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/guoxingyun/orderBook-rs [INFO] finished tweaking git repo https://github.com/guoxingyun/orderBook-rs [INFO] tweaked toml for git repo https://github.com/guoxingyun/orderBook-rs written to /workspace/builds/worker-12/source/Cargo.toml [INFO] crate git repo https://github.com/guoxingyun/orderBook-rs already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+41997647ba6a77908f6ef64401414feb00bccf16" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] warning: unused manifest key: rust [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+41997647ba6a77908f6ef64401414feb00bccf16" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 1e218a5d6c2d0b3b08bb67416c228acfcd29414e84d798905d83119672d9e9f7 [INFO] running `"docker" "start" "-a" "1e218a5d6c2d0b3b08bb67416c228acfcd29414e84d798905d83119672d9e9f7"` [INFO] [stderr] warning: unused manifest key: rust [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling fnv v1.0.6 [INFO] [stderr] Compiling slab v0.4.2 [INFO] [stderr] Compiling proc-macro2 v1.0.9 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling syn v1.0.17 [INFO] [stderr] Compiling cc v1.0.50 [INFO] [stderr] Compiling serde v1.0.105 [INFO] [stderr] Compiling itoa v0.4.5 [INFO] [stderr] Compiling smallvec v1.2.0 [INFO] [stderr] Compiling version_check v0.9.1 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling ryu v1.0.3 [INFO] [stderr] Compiling matches v0.1.8 [INFO] [stderr] Compiling fake-simd v0.1.2 [INFO] [stderr] Compiling futures-core v0.3.4 [INFO] [stderr] Compiling fallible-iterator v0.2.0 [INFO] [stderr] Compiling futures-sink v0.3.4 [INFO] [stderr] Compiling bytes v0.5.4 [INFO] [stderr] Compiling rustc-demangle v0.1.16 [INFO] [stderr] Compiling httparse v1.3.4 [INFO] [stderr] Compiling pkg-config v0.3.17 [INFO] [stderr] Compiling arc-swap v0.4.5 [INFO] [stderr] Compiling pin-utils v0.1.0-alpha.4 [INFO] [stderr] Compiling siphasher v0.3.2 [INFO] [stderr] Compiling md5 v0.7.0 [INFO] [stderr] Compiling pin-project-lite v0.1.4 [INFO] [stderr] Compiling unicode-segmentation v1.6.0 [INFO] [stderr] Compiling base64 v0.12.0 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling slog v2.5.2 [INFO] [stderr] Compiling rent_to_own v0.1.0 [INFO] [stderr] Compiling slab v0.3.0 [INFO] [stderr] Compiling smallvec v0.2.1 [INFO] [stderr] Compiling percent-encoding v2.1.0 [INFO] [stderr] Compiling try-lock v0.2.2 [INFO] [stderr] Compiling openssl v0.10.28 [INFO] [stderr] Compiling foreign-types-shared v0.1.1 [INFO] [stderr] Compiling take v0.1.0 [INFO] [stderr] Compiling mime v0.3.16 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling termcolor v1.1.0 [INFO] [stderr] Compiling untrusted v0.6.2 [INFO] [stderr] Compiling ref_slice v1.2.0 [INFO] [stderr] Compiling rustc-serialize v0.3.24 [INFO] [stderr] Compiling tokio-service v0.1.0 [INFO] [stderr] Compiling relay v0.1.1 [INFO] [stderr] Compiling lock_api v0.3.3 [INFO] [stderr] Compiling lock_api v0.2.0 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling tokio-sync v0.1.8 [INFO] [stderr] Compiling thread_local v1.0.1 [INFO] [stderr] Compiling unicode-bidi v0.3.4 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling unicode-normalization v0.1.12 [INFO] [stderr] Compiling futures-channel v0.3.4 [INFO] [stderr] Compiling phf_shared v0.8.0 [INFO] [stderr] Compiling phf_shared v0.7.24 [INFO] [stderr] Compiling unicase v2.6.0 [INFO] [stderr] Compiling error-chain v0.12.2 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling memoffset v0.5.4 [INFO] [stderr] Compiling crossbeam-epoch v0.8.2 [INFO] [stderr] Compiling num-traits v0.2.11 [INFO] [stderr] Compiling num-integer v0.1.42 [INFO] [stderr] Compiling indexmap v1.3.2 [INFO] [stderr] Compiling num-bigint v0.2.6 [INFO] [stderr] Compiling num-rational v0.2.4 [INFO] [stderr] Compiling num-iter v0.1.40 [INFO] [stderr] Compiling num-complex v0.2.4 [INFO] [stderr] Compiling foreign-types v0.3.2 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Compiling humantime v1.3.0 [INFO] [stderr] Compiling phf v0.7.24 [INFO] [stderr] Compiling phf v0.8.0 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling num_cpus v1.12.0 [INFO] [stderr] Compiling net2 v0.2.33 [INFO] [stderr] Compiling getrandom v0.1.14 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling signal-hook-registry v1.2.0 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling parking_lot_core v0.7.0 [INFO] [stderr] Compiling dirs-sys v0.3.4 [INFO] [stderr] Compiling bstr v0.2.12 [INFO] [stderr] Compiling generic-array v0.12.3 [INFO] [stderr] Compiling smallvec v0.6.13 [INFO] [stderr] Compiling stringprep v0.1.2 [INFO] [stderr] Compiling log v0.3.9 [INFO] [stderr] Compiling want v0.0.4 [INFO] [stderr] Compiling want v0.2.0 [INFO] [stderr] Compiling backtrace-sys v0.1.34 [INFO] [stderr] Compiling openssl-sys v0.9.54 [INFO] [stderr] Compiling miniz-sys v0.1.12 [INFO] [stderr] Compiling ring v0.14.6 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling base64 v0.10.1 [INFO] [stderr] Compiling base64 v0.9.3 [INFO] [stderr] Compiling snap v0.2.5 [INFO] [stderr] Compiling futures-cpupool v0.1.8 [INFO] [stderr] Compiling regex v1.3.5 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling quote v1.0.3 [INFO] [stderr] Compiling dirs v2.0.2 [INFO] [stderr] Compiling mio v0.6.21 [INFO] [stderr] Compiling parking_lot v0.10.0 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling parking_lot_core v0.5.0 [INFO] [stderr] Compiling hyper v0.12.35 [INFO] [stderr] Compiling parking_lot v0.8.0 [INFO] [stderr] Compiling digest v0.8.1 [INFO] [stderr] Compiling crypto-mac v0.7.0 [INFO] [stderr] Compiling block-buffer v0.7.3 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling rand v0.3.23 [INFO] [stderr] Compiling tokio-executor v0.1.10 [INFO] [stderr] Compiling crossbeam-queue v0.2.1 [INFO] [stderr] Compiling crossbeam-channel v0.4.2 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling tokio-io v0.1.13 [INFO] [stderr] Compiling http v0.1.21 [INFO] [stderr] Compiling string v0.2.1 [INFO] [stderr] Compiling tokio-buf v0.1.1 [INFO] [stderr] Compiling term v0.6.1 [INFO] [stderr] Compiling hmac v0.7.1 [INFO] [stderr] Compiling sha2 v0.8.1 [INFO] [stderr] Compiling tokio-timer v0.2.13 [INFO] [stderr] Compiling tokio-current-thread v0.1.7 [INFO] [stderr] Compiling crossbeam-deque v0.7.3 [INFO] [stderr] Compiling mio-uds v0.6.7 [INFO] [stderr] Compiling globset v0.4.5 [INFO] [stderr] Compiling env_logger v0.7.1 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling slog-async v2.5.0 [INFO] [stderr] Compiling flate2 v0.2.20 [INFO] [stderr] Compiling tokio-codec v0.1.2 [INFO] [stderr] Compiling postgres-protocol v0.4.1 [INFO] [stderr] Compiling backtrace v0.3.45 [INFO] [stderr] Compiling tokio-threadpool v0.1.18 [INFO] [stderr] Compiling error-chain v0.10.0 [INFO] [stderr] Compiling tokio-reactor v0.1.12 [INFO] [stderr] Compiling postgres-protocol v0.5.1 [INFO] [stderr] Compiling twox-hash v1.5.0 [INFO] [stderr] Compiling http-body v0.1.0 [INFO] [stderr] Compiling h2 v0.1.26 [INFO] [stderr] Compiling tokio-fs v0.1.7 [INFO] [stderr] Compiling tokio-tcp v0.1.4 [INFO] [stderr] Compiling tokio-uds v0.2.6 [INFO] [stderr] Compiling tokio-udp v0.1.6 [INFO] [stderr] Compiling postgres-types v0.1.1 [INFO] [stderr] Compiling num v0.2.1 [INFO] [stderr] Compiling tokio v0.1.22 [INFO] [stderr] Compiling tokio-core v0.1.17 [INFO] [stderr] Compiling kafka v0.8.0 [INFO] [stderr] Compiling tokio-proto v0.1.1 [INFO] [stderr] Compiling darling_core v0.8.6 [INFO] [stderr] Compiling hyper v0.11.27 [INFO] [stderr] Compiling serde_derive v1.0.105 [INFO] [stderr] Compiling futures-macro v0.3.4 [INFO] [stderr] Compiling tokio-macros v0.2.5 [INFO] [stderr] Compiling async-trait v0.1.26 [INFO] [stderr] Compiling tokio v0.2.13 [INFO] [stderr] Compiling futures-util v0.3.4 [INFO] [stderr] Compiling darling_macro v0.8.6 [INFO] [stderr] Compiling darling v0.8.6 [INFO] [stderr] Compiling derive_state_machine_future v0.2.0 [INFO] [stderr] Compiling futures-executor v0.3.4 [INFO] [stderr] Compiling futures v0.3.4 [INFO] [stderr] Compiling tokio-util v0.3.1 [INFO] [stderr] Compiling tokio-postgres v0.5.3 [INFO] [stderr] Compiling state_machine_future v0.2.0 [INFO] [stderr] Compiling postgres v0.17.2 [INFO] [stderr] Compiling serde_json v1.0.48 [INFO] [stderr] Compiling chrono v0.4.11 [INFO] [stderr] Compiling rust_decimal v1.4.0 [INFO] [stderr] Compiling slog-term v2.5.0 [INFO] [stderr] Compiling jsonrpc-core v12.2.0 [INFO] [stderr] Compiling jsonrpc-core v8.0.1 [INFO] [stderr] Compiling tokio-postgres v0.4.0-rc.3 [INFO] [stderr] Compiling jsonrpc-server-utils v12.2.0 [INFO] [stderr] Compiling jsonrpc-client-core v0.5.0 [INFO] [stderr] Compiling jsonrpc-client-http v0.5.0 [INFO] [stderr] Compiling jsonrpc-http-server v12.2.0 [INFO] [stderr] Compiling postgres v0.16.0-rc.2 [INFO] [stderr] Compiling orderBook-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused imports: `Producer`, `Record`, `RequiredAcks` [INFO] [stderr] --> src/consume/engine/mod.rs:3:23 [INFO] [stderr] | [INFO] [stderr] 3 | use kafka::producer::{Producer, Record, RequiredAcks}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `log::__private_api_enabled` [INFO] [stderr] --> src/consume/engine/mod.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use log::__private_api_enabled; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rustc_serialize::json` [INFO] [stderr] --> src/consume/engine/mod.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use rustc_serialize::json; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::any::Any` [INFO] [stderr] --> src/consume/engine/mod.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::any::Any; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Ord` [INFO] [stderr] --> src/consume/engine/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::cmp::Ord; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BTreeMap` [INFO] [stderr] --> src/consume/engine/mod.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use std::collections::BTreeMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/consume/engine/mod.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Mul` [INFO] [stderr] --> src/consume/engine/mod.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::ops::Mul; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr::null` [INFO] [stderr] --> src/consume/engine/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::ptr::null; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/consume/engine/mod.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::Duration` [INFO] [stderr] --> src/consume/engine/mod.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use std::time::Duration; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Ord` [INFO] [stderr] --> src/consume/flush/mod.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::cmp::Ord; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BTreeMap` [INFO] [stderr] --> src/consume/flush/mod.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::collections::BTreeMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::SystemTime` [INFO] [stderr] --> src/consume/flush/mod.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::time::SystemTime; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `jsonrpc_http_server::jsonrpc_core::*` [INFO] [stderr] --> src/consume/flush/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use jsonrpc_http_server::jsonrpc_core::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `jsonrpc_http_server::*` [INFO] [stderr] --> src/consume/flush/mod.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use jsonrpc_http_server::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `kafka::error::Error as KafkaError` [INFO] [stderr] --> src/consume/flush/mod.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use kafka::error::Error as KafkaError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde::Deserialize` [INFO] [stderr] --> src/consume/flush/mod.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use serde::Deserialize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::any::Any` [INFO] [stderr] --> src/consume/flush/mod.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::any::Any; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/consume/flush/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Mul` [INFO] [stderr] --> src/consume/flush/mod.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::ops::Mul; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Ord` [INFO] [stderr] --> src/consume/mod.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::cmp::Ord; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BTreeMap` [INFO] [stderr] --> src/consume/mod.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::collections::BTreeMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::offset::LocalResult` [INFO] [stderr] --> src/consume/mod.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use chrono::offset::LocalResult; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::prelude::*` [INFO] [stderr] --> src/consume/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use chrono::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `jsonrpc_http_server::jsonrpc_core::*` [INFO] [stderr] --> src/consume/mod.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use jsonrpc_http_server::jsonrpc_core::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `jsonrpc_http_server::*` [INFO] [stderr] --> src/consume/mod.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use jsonrpc_http_server::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Consumer`, `FetchOffset`, `GroupOffsetStorage` [INFO] [stderr] --> src/consume/mod.rs:16:23 [INFO] [stderr] | [INFO] [stderr] 16 | use kafka::consumer::{Consumer, FetchOffset, GroupOffsetStorage}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `kafka::error::Error as KafkaError` [INFO] [stderr] --> src/consume/mod.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use kafka::error::Error as KafkaError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::any::Any` [INFO] [stderr] --> src/consume/mod.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | use std::any::Any; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/consume/mod.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Mul` [INFO] [stderr] --> src/consume/mod.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use std::ops::Mul; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type `orderFilter` should have an upper camel case name [INFO] [stderr] --> src/consume/mod.rs:34:8 [INFO] [stderr] | [INFO] [stderr] 34 | struct orderFilter { [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `OrderFilter` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/consume/mod.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | / /** [INFO] [stderr] 53 | | unsafe { [INFO] [stderr] 54 | | println!("available buy order len {},available sell order len {},--BUY-{:?},--------SELL{:?}", [INFO] [stderr] 55 | | crate::available_buy_orders.len(), crate::available_sell_orders.len(), [INFO] [stderr] 56 | | crate::available_buy_orders, crate::available_sell_orders); [INFO] [stderr] 57 | | }**/ [INFO] [stderr] | |____________^ [INFO] [stderr] 58 | / for ms in mss.iter() { [INFO] [stderr] 59 | | for m in ms.messages() { [INFO] [stderr] 60 | | let mut message = String::new(); [INFO] [stderr] 61 | | let message = String::from_utf8_lossy(m.value); [INFO] [stderr] ... | [INFO] [stderr] 75 | | let _ = crate::ORDER_CONSUMER.lock().unwrap().consume_messageset(ms); [INFO] [stderr] 76 | | } [INFO] [stderr] | |_________- rustdoc does not generate documentation for expressions [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/consume/mod.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 77 | / /** [INFO] [stderr] 78 | | unsafe { [INFO] [stderr] 79 | | println!("available buy order len {},available sell order len {},--BUY-{:?},--------SELL{:?}", [INFO] [stderr] 80 | | crate::available_buy_orders.len(), crate::available_sell_orders.len(), [INFO] [stderr] 81 | | crate::available_buy_orders, crate::available_sell_orders); [INFO] [stderr] 82 | | }**/ [INFO] [stderr] | |____________^ [INFO] [stderr] 83 | crate::ORDER_CONSUMER.lock().unwrap().commit_consumed(); [INFO] [stderr] | ------------------------------------------------------- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Client`, `NoTls`, `config::Config`, `error::Error`, `row::SimpleQueryRow` [INFO] [stderr] --> src/models/mod.rs:1:16 [INFO] [stderr] | [INFO] [stderr] 1 | use postgres::{config::Config, error::Error, row::SimpleQueryRow, Client, NoTls}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rustc_serialize::json` [INFO] [stderr] --> src/models/mod.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use rustc_serialize::json; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Mul` [INFO] [stderr] --> src/models/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::ops::Mul; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr::null` [INFO] [stderr] --> src/models/mod.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | use std::ptr::null; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::Mutex` [INFO] [stderr] --> src/models/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | use std::sync::Mutex; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/models/mod.rs:115:12 [INFO] [stderr] | [INFO] [stderr] 115 | if (index < trades_len - 1) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::offset::LocalResult` [INFO] [stderr] --> src/util/mod.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use chrono::offset::LocalResult; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ffi::CString` [INFO] [stderr] --> src/util/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::ffi::CString; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/util/mod.rs:35:27 [INFO] [stderr] | [INFO] [stderr] 35 | let value = value as &Any; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufReader` [INFO] [stderr] --> src/main.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::io::BufReader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::OpenOptions` [INFO] [stderr] --> src/main.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use std::fs::OpenOptions; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Record` [INFO] [stderr] --> src/main.rs:25:33 [INFO] [stderr] | [INFO] [stderr] 25 | use kafka::producer::{Producer, Record, RequiredAcks}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fmt::Write` [INFO] [stderr] --> src/main.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | use std::fmt::Write; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr::null` [INFO] [stderr] --> src/main.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | use std::ptr::null; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::mpsc::channel` [INFO] [stderr] --> src/main.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | use std::sync::mpsc::channel; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::Instant` [INFO] [stderr] --> src/main.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | use std::time::Instant; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fmt::Write` [INFO] [stderr] --> src/consume/engine/mod.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::fmt::Write; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `message` [INFO] [stderr] --> src/consume/mod.rs:60:21 [INFO] [stderr] | [INFO] [stderr] 60 | let mut message = String::new(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `price_gap` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | let mut price_gap = 0.0; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `matched_amount` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | let mut matched_amount: f64 = 0.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/consume/engine/mod.rs:63:13 [INFO] [stderr] | [INFO] [stderr] 63 | let mut index = 0; [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `opponents_available_orders` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:65:17 [INFO] [stderr] | [INFO] [stderr] 65 | let mut opponents_available_orders = &mut Default::default(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `partner_available_orders` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | let mut partner_available_orders = &mut Default::default(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `matched_amount` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:104:21 [INFO] [stderr] | [INFO] [stderr] 104 | matched_amount = current_available_amount; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 85 | let mut client; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:118:9 [INFO] [stderr] | [INFO] [stderr] 118 | let mut producer = Producer::from_hosts(vec![kafka_server.to_owned()]) [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/mod.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | let mut mss = crate::ORDER_CONSUMER.lock().unwrap().poll().unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/mod.rs:60:21 [INFO] [stderr] | [INFO] [stderr] 60 | let mut message = String::new(); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/engine/mod.rs:63:13 [INFO] [stderr] | [INFO] [stderr] 63 | let mut index = 0; [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/engine/mod.rs:92:17 [INFO] [stderr] | [INFO] [stderr] 92 | let mut current_opponents_amount = opponents_available_orders[0].amount.clone(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/engine/mod.rs:94:17 [INFO] [stderr] | [INFO] [stderr] 94 | let mut next_available_amount = [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/engine/mod.rs:139:13 [INFO] [stderr] | [INFO] [stderr] 139 | let mut trade = EngineTrade { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/consume/engine/mod.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused attribute [INFO] [stderr] --> src/main.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused attribute [INFO] [stderr] --> src/main.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static variable `available_buy_orders` should have an upper case name [INFO] [stderr] --> src/main.rs:32:12 [INFO] [stderr] | [INFO] [stderr] 32 | static mut available_buy_orders: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `AVAILABLE_BUY_ORDERS` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stderr] [INFO] [stderr] warning: static variable `available_sell_orders` should have an upper case name [INFO] [stderr] --> src/main.rs:33:12 [INFO] [stderr] | [INFO] [stderr] 33 | static mut available_sell_orders: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `AVAILABLE_SELL_ORDERS` [INFO] [stderr] [INFO] [stderr] warning: static variable `trades` should have an upper case name [INFO] [stderr] --> src/main.rs:34:12 [INFO] [stderr] | [INFO] [stderr] 34 | static mut trades: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^ help: convert the identifier to upper case: `TRADES` [INFO] [stderr] [INFO] [stderr] warning: static variable `market_id` should have an upper case name [INFO] [stderr] --> src/main.rs:35:12 [INFO] [stderr] | [INFO] [stderr] 35 | static mut market_id: String = String::new(); [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to upper case: `MARKET_ID` [INFO] [stderr] [INFO] [stderr] warning: static variable `kafka_server` should have an upper case name [INFO] [stderr] --> src/main.rs:36:8 [INFO] [stderr] | [INFO] [stderr] 36 | static kafka_server: &str = "localhost:9092"; [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to upper case: `KAFKA_SERVER` [INFO] [stderr] [INFO] [stderr] warning: static variable `transaction_id` should have an upper case name [INFO] [stderr] --> src/main.rs:37:12 [INFO] [stderr] | [INFO] [stderr] 37 | static mut transaction_id: i32 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `TRANSACTION_ID` [INFO] [stderr] [INFO] [stderr] warning: function `restartDB` should have a snake case name [INFO] [stderr] --> src/main.rs:63:8 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn restartDB() -> bool { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `restart_db` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `connetDB` should have a snake case name [INFO] [stderr] --> src/main.rs:84:4 [INFO] [stderr] | [INFO] [stderr] 84 | fn connetDB() -> Option { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `connet_db` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/consume/mod.rs:83:9 [INFO] [stderr] | [INFO] [stderr] 83 | crate::ORDER_CONSUMER.lock().unwrap().commit_consumed(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: structure field `marketID` should have a snake case name [INFO] [stderr] --> src/models/mod.rs:70:9 [INFO] [stderr] | [INFO] [stderr] 70 | pub marketID: String, [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `market_id` [INFO] [stderr] [INFO] [stderr] warning: variable `tradesArr` should have a snake case name [INFO] [stderr] --> src/models/mod.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 101 | let mut tradesArr: Vec<&str> = Default::default(); [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `trades_arr` [INFO] [stderr] [INFO] [stderr] warning: 81 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 3m 28s [INFO] running `"docker" "inspect" "1e218a5d6c2d0b3b08bb67416c228acfcd29414e84d798905d83119672d9e9f7"` [INFO] running `"docker" "rm" "-f" "1e218a5d6c2d0b3b08bb67416c228acfcd29414e84d798905d83119672d9e9f7"` [INFO] [stdout] 1e218a5d6c2d0b3b08bb67416c228acfcd29414e84d798905d83119672d9e9f7 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+41997647ba6a77908f6ef64401414feb00bccf16" "test" "--frozen" "--no-run"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 171352dfbbe3e8c1ac60053bd03da2f6ee7ee7f6bf15563e287c8ed87f2a2bd7 [INFO] running `"docker" "start" "-a" "171352dfbbe3e8c1ac60053bd03da2f6ee7ee7f6bf15563e287c8ed87f2a2bd7"` [INFO] [stderr] warning: unused manifest key: rust [INFO] [stderr] Compiling orderBook-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused imports: `Producer`, `Record`, `RequiredAcks` [INFO] [stderr] --> src/consume/engine/mod.rs:3:23 [INFO] [stderr] | [INFO] [stderr] 3 | use kafka::producer::{Producer, Record, RequiredAcks}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `log::__private_api_enabled` [INFO] [stderr] --> src/consume/engine/mod.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use log::__private_api_enabled; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rustc_serialize::json` [INFO] [stderr] --> src/consume/engine/mod.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use rustc_serialize::json; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::any::Any` [INFO] [stderr] --> src/consume/engine/mod.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::any::Any; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Ord` [INFO] [stderr] --> src/consume/engine/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::cmp::Ord; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BTreeMap` [INFO] [stderr] --> src/consume/engine/mod.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use std::collections::BTreeMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/consume/engine/mod.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Mul` [INFO] [stderr] --> src/consume/engine/mod.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::ops::Mul; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr::null` [INFO] [stderr] --> src/consume/engine/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::ptr::null; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/consume/engine/mod.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::Duration` [INFO] [stderr] --> src/consume/engine/mod.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use std::time::Duration; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Ord` [INFO] [stderr] --> src/consume/flush/mod.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::cmp::Ord; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BTreeMap` [INFO] [stderr] --> src/consume/flush/mod.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::collections::BTreeMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::SystemTime` [INFO] [stderr] --> src/consume/flush/mod.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::time::SystemTime; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `jsonrpc_http_server::jsonrpc_core::*` [INFO] [stderr] --> src/consume/flush/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use jsonrpc_http_server::jsonrpc_core::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `jsonrpc_http_server::*` [INFO] [stderr] --> src/consume/flush/mod.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use jsonrpc_http_server::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `kafka::error::Error as KafkaError` [INFO] [stderr] --> src/consume/flush/mod.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use kafka::error::Error as KafkaError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde::Deserialize` [INFO] [stderr] --> src/consume/flush/mod.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use serde::Deserialize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::any::Any` [INFO] [stderr] --> src/consume/flush/mod.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::any::Any; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/consume/flush/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Mul` [INFO] [stderr] --> src/consume/flush/mod.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::ops::Mul; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Ord` [INFO] [stderr] --> src/consume/mod.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::cmp::Ord; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BTreeMap` [INFO] [stderr] --> src/consume/mod.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::collections::BTreeMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::offset::LocalResult` [INFO] [stderr] --> src/consume/mod.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use chrono::offset::LocalResult; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::prelude::*` [INFO] [stderr] --> src/consume/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use chrono::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `jsonrpc_http_server::jsonrpc_core::*` [INFO] [stderr] --> src/consume/mod.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use jsonrpc_http_server::jsonrpc_core::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `jsonrpc_http_server::*` [INFO] [stderr] --> src/consume/mod.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use jsonrpc_http_server::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Consumer`, `FetchOffset`, `GroupOffsetStorage` [INFO] [stderr] --> src/consume/mod.rs:16:23 [INFO] [stderr] | [INFO] [stderr] 16 | use kafka::consumer::{Consumer, FetchOffset, GroupOffsetStorage}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `kafka::error::Error as KafkaError` [INFO] [stderr] --> src/consume/mod.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use kafka::error::Error as KafkaError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::any::Any` [INFO] [stderr] --> src/consume/mod.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | use std::any::Any; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/consume/mod.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Mul` [INFO] [stderr] --> src/consume/mod.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use std::ops::Mul; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type `orderFilter` should have an upper camel case name [INFO] [stderr] --> src/consume/mod.rs:34:8 [INFO] [stderr] | [INFO] [stderr] 34 | struct orderFilter { [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `OrderFilter` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/consume/mod.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | / /** [INFO] [stderr] 53 | | unsafe { [INFO] [stderr] 54 | | println!("available buy order len {},available sell order len {},--BUY-{:?},--------SELL{:?}", [INFO] [stderr] 55 | | crate::available_buy_orders.len(), crate::available_sell_orders.len(), [INFO] [stderr] 56 | | crate::available_buy_orders, crate::available_sell_orders); [INFO] [stderr] 57 | | }**/ [INFO] [stderr] | |____________^ [INFO] [stderr] 58 | / for ms in mss.iter() { [INFO] [stderr] 59 | | for m in ms.messages() { [INFO] [stderr] 60 | | let mut message = String::new(); [INFO] [stderr] 61 | | let message = String::from_utf8_lossy(m.value); [INFO] [stderr] ... | [INFO] [stderr] 75 | | let _ = crate::ORDER_CONSUMER.lock().unwrap().consume_messageset(ms); [INFO] [stderr] 76 | | } [INFO] [stderr] | |_________- rustdoc does not generate documentation for expressions [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/consume/mod.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 77 | / /** [INFO] [stderr] 78 | | unsafe { [INFO] [stderr] 79 | | println!("available buy order len {},available sell order len {},--BUY-{:?},--------SELL{:?}", [INFO] [stderr] 80 | | crate::available_buy_orders.len(), crate::available_sell_orders.len(), [INFO] [stderr] 81 | | crate::available_buy_orders, crate::available_sell_orders); [INFO] [stderr] 82 | | }**/ [INFO] [stderr] | |____________^ [INFO] [stderr] 83 | crate::ORDER_CONSUMER.lock().unwrap().commit_consumed(); [INFO] [stderr] | ------------------------------------------------------- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Client`, `NoTls`, `config::Config`, `error::Error`, `row::SimpleQueryRow` [INFO] [stderr] --> src/models/mod.rs:1:16 [INFO] [stderr] | [INFO] [stderr] 1 | use postgres::{config::Config, error::Error, row::SimpleQueryRow, Client, NoTls}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rustc_serialize::json` [INFO] [stderr] --> src/models/mod.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use rustc_serialize::json; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Mul` [INFO] [stderr] --> src/models/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::ops::Mul; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr::null` [INFO] [stderr] --> src/models/mod.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | use std::ptr::null; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::Mutex` [INFO] [stderr] --> src/models/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | use std::sync::Mutex; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/models/mod.rs:115:12 [INFO] [stderr] | [INFO] [stderr] 115 | if (index < trades_len - 1) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::offset::LocalResult` [INFO] [stderr] --> src/util/mod.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use chrono::offset::LocalResult; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ffi::CString` [INFO] [stderr] --> src/util/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::ffi::CString; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/util/mod.rs:35:27 [INFO] [stderr] | [INFO] [stderr] 35 | let value = value as &Any; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufReader` [INFO] [stderr] --> src/main.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::io::BufReader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::OpenOptions` [INFO] [stderr] --> src/main.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use std::fs::OpenOptions; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Record` [INFO] [stderr] --> src/main.rs:25:33 [INFO] [stderr] | [INFO] [stderr] 25 | use kafka::producer::{Producer, Record, RequiredAcks}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fmt::Write` [INFO] [stderr] --> src/main.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | use std::fmt::Write; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr::null` [INFO] [stderr] --> src/main.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | use std::ptr::null; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::mpsc::channel` [INFO] [stderr] --> src/main.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | use std::sync::mpsc::channel; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::Instant` [INFO] [stderr] --> src/main.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | use std::time::Instant; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fmt::Write` [INFO] [stderr] --> src/consume/engine/mod.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::fmt::Write; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `message` [INFO] [stderr] --> src/consume/mod.rs:60:21 [INFO] [stderr] | [INFO] [stderr] 60 | let mut message = String::new(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `price_gap` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | let mut price_gap = 0.0; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `matched_amount` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | let mut matched_amount: f64 = 0.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/consume/engine/mod.rs:63:13 [INFO] [stderr] | [INFO] [stderr] 63 | let mut index = 0; [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `opponents_available_orders` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:65:17 [INFO] [stderr] | [INFO] [stderr] 65 | let mut opponents_available_orders = &mut Default::default(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `partner_available_orders` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | let mut partner_available_orders = &mut Default::default(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `matched_amount` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:104:21 [INFO] [stderr] | [INFO] [stderr] 104 | matched_amount = current_available_amount; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 85 | let mut client; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:118:9 [INFO] [stderr] | [INFO] [stderr] 118 | let mut producer = Producer::from_hosts(vec![kafka_server.to_owned()]) [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/mod.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | let mut mss = crate::ORDER_CONSUMER.lock().unwrap().poll().unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/mod.rs:60:21 [INFO] [stderr] | [INFO] [stderr] 60 | let mut message = String::new(); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/engine/mod.rs:63:13 [INFO] [stderr] | [INFO] [stderr] 63 | let mut index = 0; [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/engine/mod.rs:92:17 [INFO] [stderr] | [INFO] [stderr] 92 | let mut current_opponents_amount = opponents_available_orders[0].amount.clone(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/engine/mod.rs:94:17 [INFO] [stderr] | [INFO] [stderr] 94 | let mut next_available_amount = [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/engine/mod.rs:139:13 [INFO] [stderr] | [INFO] [stderr] 139 | let mut trade = EngineTrade { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/consume/engine/mod.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused attribute [INFO] [stderr] --> src/main.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused attribute [INFO] [stderr] --> src/main.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static variable `available_buy_orders` should have an upper case name [INFO] [stderr] --> src/main.rs:32:12 [INFO] [stderr] | [INFO] [stderr] 32 | static mut available_buy_orders: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `AVAILABLE_BUY_ORDERS` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stderr] [INFO] [stderr] warning: static variable `available_sell_orders` should have an upper case name [INFO] [stderr] --> src/main.rs:33:12 [INFO] [stderr] | [INFO] [stderr] 33 | static mut available_sell_orders: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `AVAILABLE_SELL_ORDERS` [INFO] [stderr] [INFO] [stderr] warning: static variable `trades` should have an upper case name [INFO] [stderr] --> src/main.rs:34:12 [INFO] [stderr] | [INFO] [stderr] 34 | static mut trades: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^ help: convert the identifier to upper case: `TRADES` [INFO] [stderr] [INFO] [stderr] warning: static variable `market_id` should have an upper case name [INFO] [stderr] --> src/main.rs:35:12 [INFO] [stderr] | [INFO] [stderr] 35 | static mut market_id: String = String::new(); [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to upper case: `MARKET_ID` [INFO] [stderr] [INFO] [stderr] warning: static variable `kafka_server` should have an upper case name [INFO] [stderr] --> src/main.rs:36:8 [INFO] [stderr] | [INFO] [stderr] 36 | static kafka_server: &str = "localhost:9092"; [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to upper case: `KAFKA_SERVER` [INFO] [stderr] [INFO] [stderr] warning: static variable `transaction_id` should have an upper case name [INFO] [stderr] --> src/main.rs:37:12 [INFO] [stderr] | [INFO] [stderr] 37 | static mut transaction_id: i32 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `TRANSACTION_ID` [INFO] [stderr] [INFO] [stderr] warning: function `restartDB` should have a snake case name [INFO] [stderr] --> src/main.rs:63:8 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn restartDB() -> bool { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `restart_db` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `connetDB` should have a snake case name [INFO] [stderr] --> src/main.rs:84:4 [INFO] [stderr] | [INFO] [stderr] 84 | fn connetDB() -> Option { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `connet_db` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/consume/mod.rs:83:9 [INFO] [stderr] | [INFO] [stderr] 83 | crate::ORDER_CONSUMER.lock().unwrap().commit_consumed(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: structure field `marketID` should have a snake case name [INFO] [stderr] --> src/models/mod.rs:70:9 [INFO] [stderr] | [INFO] [stderr] 70 | pub marketID: String, [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `market_id` [INFO] [stderr] [INFO] [stderr] warning: variable `tradesArr` should have a snake case name [INFO] [stderr] --> src/models/mod.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 101 | let mut tradesArr: Vec<&str> = Default::default(); [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `trades_arr` [INFO] [stderr] [INFO] [stderr] warning: 81 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 6.69s [INFO] running `"docker" "inspect" "171352dfbbe3e8c1ac60053bd03da2f6ee7ee7f6bf15563e287c8ed87f2a2bd7"` [INFO] running `"docker" "rm" "-f" "171352dfbbe3e8c1ac60053bd03da2f6ee7ee7f6bf15563e287c8ed87f2a2bd7"` [INFO] [stdout] 171352dfbbe3e8c1ac60053bd03da2f6ee7ee7f6bf15563e287c8ed87f2a2bd7 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+41997647ba6a77908f6ef64401414feb00bccf16" "test" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 6374444e1a9aee56f0f0b0d5536287b726a0c6dc82fb8c3fe2621afa69a4732c [INFO] running `"docker" "start" "-a" "6374444e1a9aee56f0f0b0d5536287b726a0c6dc82fb8c3fe2621afa69a4732c"` [INFO] [stderr] warning: unused manifest key: rust [INFO] [stderr] warning: unused imports: `Producer`, `Record`, `RequiredAcks` [INFO] [stderr] --> src/consume/engine/mod.rs:3:23 [INFO] [stderr] | [INFO] [stderr] 3 | use kafka::producer::{Producer, Record, RequiredAcks}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `log::__private_api_enabled` [INFO] [stderr] --> src/consume/engine/mod.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use log::__private_api_enabled; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rustc_serialize::json` [INFO] [stderr] --> src/consume/engine/mod.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use rustc_serialize::json; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::any::Any` [INFO] [stderr] --> src/consume/engine/mod.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::any::Any; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Ord` [INFO] [stderr] --> src/consume/engine/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::cmp::Ord; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BTreeMap` [INFO] [stderr] --> src/consume/engine/mod.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use std::collections::BTreeMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/consume/engine/mod.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Mul` [INFO] [stderr] --> src/consume/engine/mod.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::ops::Mul; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr::null` [INFO] [stderr] --> src/consume/engine/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::ptr::null; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/consume/engine/mod.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::Duration` [INFO] [stderr] --> src/consume/engine/mod.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use std::time::Duration; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Ord` [INFO] [stderr] --> src/consume/flush/mod.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::cmp::Ord; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BTreeMap` [INFO] [stderr] --> src/consume/flush/mod.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::collections::BTreeMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::SystemTime` [INFO] [stderr] --> src/consume/flush/mod.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::time::SystemTime; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `jsonrpc_http_server::jsonrpc_core::*` [INFO] [stderr] --> src/consume/flush/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use jsonrpc_http_server::jsonrpc_core::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `jsonrpc_http_server::*` [INFO] [stderr] --> src/consume/flush/mod.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use jsonrpc_http_server::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `kafka::error::Error as KafkaError` [INFO] [stderr] --> src/consume/flush/mod.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use kafka::error::Error as KafkaError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde::Deserialize` [INFO] [stderr] --> src/consume/flush/mod.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use serde::Deserialize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::any::Any` [INFO] [stderr] --> src/consume/flush/mod.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::any::Any; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/consume/flush/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Mul` [INFO] [stderr] --> src/consume/flush/mod.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::ops::Mul; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Ord` [INFO] [stderr] --> src/consume/mod.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::cmp::Ord; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BTreeMap` [INFO] [stderr] --> src/consume/mod.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::collections::BTreeMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::offset::LocalResult` [INFO] [stderr] --> src/consume/mod.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use chrono::offset::LocalResult; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::prelude::*` [INFO] [stderr] --> src/consume/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use chrono::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `jsonrpc_http_server::jsonrpc_core::*` [INFO] [stderr] --> src/consume/mod.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use jsonrpc_http_server::jsonrpc_core::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `jsonrpc_http_server::*` [INFO] [stderr] --> src/consume/mod.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use jsonrpc_http_server::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Consumer`, `FetchOffset`, `GroupOffsetStorage` [INFO] [stderr] --> src/consume/mod.rs:16:23 [INFO] [stderr] | [INFO] [stderr] 16 | use kafka::consumer::{Consumer, FetchOffset, GroupOffsetStorage}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `kafka::error::Error as KafkaError` [INFO] [stderr] --> src/consume/mod.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use kafka::error::Error as KafkaError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::any::Any` [INFO] [stderr] --> src/consume/mod.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | use std::any::Any; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::env` [INFO] [stderr] --> src/consume/mod.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use std::env; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Mul` [INFO] [stderr] --> src/consume/mod.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use std::ops::Mul; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type `orderFilter` should have an upper camel case name [INFO] [stderr] --> src/consume/mod.rs:34:8 [INFO] [stderr] | [INFO] [stderr] 34 | struct orderFilter { [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `OrderFilter` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/consume/mod.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | / /** [INFO] [stderr] 53 | | unsafe { [INFO] [stderr] 54 | | println!("available buy order len {},available sell order len {},--BUY-{:?},--------SELL{:?}", [INFO] [stderr] 55 | | crate::available_buy_orders.len(), crate::available_sell_orders.len(), [INFO] [stderr] 56 | | crate::available_buy_orders, crate::available_sell_orders); [INFO] [stderr] 57 | | }**/ [INFO] [stderr] | |____________^ [INFO] [stderr] 58 | / for ms in mss.iter() { [INFO] [stderr] 59 | | for m in ms.messages() { [INFO] [stderr] 60 | | let mut message = String::new(); [INFO] [stderr] 61 | | let message = String::from_utf8_lossy(m.value); [INFO] [stderr] ... | [INFO] [stderr] 75 | | let _ = crate::ORDER_CONSUMER.lock().unwrap().consume_messageset(ms); [INFO] [stderr] 76 | | } [INFO] [stderr] | |_________- rustdoc does not generate documentation for expressions [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/consume/mod.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 77 | / /** [INFO] [stderr] 78 | | unsafe { [INFO] [stderr] 79 | | println!("available buy order len {},available sell order len {},--BUY-{:?},--------SELL{:?}", [INFO] [stderr] 80 | | crate::available_buy_orders.len(), crate::available_sell_orders.len(), [INFO] [stderr] 81 | | crate::available_buy_orders, crate::available_sell_orders); [INFO] [stderr] 82 | | }**/ [INFO] [stderr] | |____________^ [INFO] [stderr] 83 | crate::ORDER_CONSUMER.lock().unwrap().commit_consumed(); [INFO] [stderr] | ------------------------------------------------------- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Client`, `NoTls`, `config::Config`, `error::Error`, `row::SimpleQueryRow` [INFO] [stderr] --> src/models/mod.rs:1:16 [INFO] [stderr] | [INFO] [stderr] 1 | use postgres::{config::Config, error::Error, row::SimpleQueryRow, Client, NoTls}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rustc_serialize::json` [INFO] [stderr] --> src/models/mod.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use rustc_serialize::json; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Mul` [INFO] [stderr] --> src/models/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::ops::Mul; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr::null` [INFO] [stderr] --> src/models/mod.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | use std::ptr::null; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::Mutex` [INFO] [stderr] --> src/models/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | use std::sync::Mutex; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/models/mod.rs:115:12 [INFO] [stderr] | [INFO] [stderr] 115 | if (index < trades_len - 1) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::offset::LocalResult` [INFO] [stderr] --> src/util/mod.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use chrono::offset::LocalResult; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ffi::CString` [INFO] [stderr] --> src/util/mod.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::ffi::CString; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/util/mod.rs:35:27 [INFO] [stderr] | [INFO] [stderr] 35 | let value = value as &Any; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufReader` [INFO] [stderr] --> src/main.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::io::BufReader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::OpenOptions` [INFO] [stderr] --> src/main.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use std::fs::OpenOptions; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Record` [INFO] [stderr] --> src/main.rs:25:33 [INFO] [stderr] | [INFO] [stderr] 25 | use kafka::producer::{Producer, Record, RequiredAcks}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fmt::Write` [INFO] [stderr] --> src/main.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | use std::fmt::Write; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr::null` [INFO] [stderr] --> src/main.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | use std::ptr::null; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::mpsc::channel` [INFO] [stderr] --> src/main.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | use std::sync::mpsc::channel; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::Instant` [INFO] [stderr] --> src/main.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | use std::time::Instant; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fmt::Write` [INFO] [stderr] --> src/consume/engine/mod.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::fmt::Write; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `message` [INFO] [stderr] --> src/consume/mod.rs:60:21 [INFO] [stderr] | [INFO] [stderr] 60 | let mut message = String::new(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `price_gap` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | let mut price_gap = 0.0; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `matched_amount` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | let mut matched_amount: f64 = 0.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/consume/engine/mod.rs:63:13 [INFO] [stderr] | [INFO] [stderr] 63 | let mut index = 0; [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `opponents_available_orders` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:65:17 [INFO] [stderr] | [INFO] [stderr] 65 | let mut opponents_available_orders = &mut Default::default(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `partner_available_orders` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | let mut partner_available_orders = &mut Default::default(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `matched_amount` is never read [INFO] [stderr] --> src/consume/engine/mod.rs:104:21 [INFO] [stderr] | [INFO] [stderr] 104 | matched_amount = current_available_amount; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 85 | let mut client; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:118:9 [INFO] [stderr] | [INFO] [stderr] 118 | let mut producer = Producer::from_hosts(vec![kafka_server.to_owned()]) [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/mod.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | let mut mss = crate::ORDER_CONSUMER.lock().unwrap().poll().unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/mod.rs:60:21 [INFO] [stderr] | [INFO] [stderr] 60 | let mut message = String::new(); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/engine/mod.rs:63:13 [INFO] [stderr] | [INFO] [stderr] 63 | let mut index = 0; [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/engine/mod.rs:92:17 [INFO] [stderr] | [INFO] [stderr] 92 | let mut current_opponents_amount = opponents_available_orders[0].amount.clone(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/engine/mod.rs:94:17 [INFO] [stderr] | [INFO] [stderr] 94 | let mut next_available_amount = [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consume/engine/mod.rs:139:13 [INFO] [stderr] | [INFO] [stderr] 139 | let mut trade = EngineTrade { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/consume/engine/mod.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused attribute [INFO] [stderr] --> src/main.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused attribute [INFO] [stderr] --> src/main.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static variable `available_buy_orders` should have an upper case name [INFO] [stderr] --> src/main.rs:32:12 [INFO] [stderr] | [INFO] [stderr] 32 | static mut available_buy_orders: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `AVAILABLE_BUY_ORDERS` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stderr] [INFO] [stderr] warning: static variable `available_sell_orders` should have an upper case name [INFO] [stderr] --> src/main.rs:33:12 [INFO] [stderr] | [INFO] [stderr] 33 | static mut available_sell_orders: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `AVAILABLE_SELL_ORDERS` [INFO] [stderr] [INFO] [stderr] warning: static variable `trades` should have an upper case name [INFO] [stderr] --> src/main.rs:34:12 [INFO] [stderr] | [INFO] [stderr] 34 | static mut trades: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^ help: convert the identifier to upper case: `TRADES` [INFO] [stderr] [INFO] [stderr] warning: static variable `market_id` should have an upper case name [INFO] [stderr] --> src/main.rs:35:12 [INFO] [stderr] | [INFO] [stderr] 35 | static mut market_id: String = String::new(); [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to upper case: `MARKET_ID` [INFO] [stderr] [INFO] [stderr] warning: static variable `kafka_server` should have an upper case name [INFO] [stderr] --> src/main.rs:36:8 [INFO] [stderr] | [INFO] [stderr] 36 | static kafka_server: &str = "localhost:9092"; [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to upper case: `KAFKA_SERVER` [INFO] [stderr] [INFO] [stderr] warning: static variable `transaction_id` should have an upper case name [INFO] [stderr] --> src/main.rs:37:12 [INFO] [stderr] | [INFO] [stderr] 37 | static mut transaction_id: i32 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `TRANSACTION_ID` [INFO] [stderr] [INFO] [stderr] warning: function `restartDB` should have a snake case name [INFO] [stderr] --> src/main.rs:63:8 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn restartDB() -> bool { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `restart_db` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `connetDB` should have a snake case name [INFO] [stderr] --> src/main.rs:84:4 [INFO] [stderr] | [INFO] [stderr] 84 | fn connetDB() -> Option { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `connet_db` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/consume/mod.rs:83:9 [INFO] [stderr] | [INFO] [stderr] 83 | crate::ORDER_CONSUMER.lock().unwrap().commit_consumed(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: structure field `marketID` should have a snake case name [INFO] [stderr] --> src/models/mod.rs:70:9 [INFO] [stderr] | [INFO] [stderr] 70 | pub marketID: String, [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `market_id` [INFO] [stderr] [INFO] [stderr] warning: variable `tradesArr` should have a snake case name [INFO] [stderr] --> src/models/mod.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 101 | let mut tradesArr: Vec<&str> = Default::default(); [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `trades_arr` [INFO] [stderr] [INFO] [stderr] warning: 81 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.20s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/mist_engine_rs-665e94451e0a6678 [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "6374444e1a9aee56f0f0b0d5536287b726a0c6dc82fb8c3fe2621afa69a4732c"` [INFO] running `"docker" "rm" "-f" "6374444e1a9aee56f0f0b0d5536287b726a0c6dc82fb8c3fe2621afa69a4732c"` [INFO] [stdout] 6374444e1a9aee56f0f0b0d5536287b726a0c6dc82fb8c3fe2621afa69a4732c