[INFO] cloning repository https://github.com/Alekro1618/PairsTrading
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Alekro1618/PairsTrading" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlekro1618%2FPairsTrading", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlekro1618%2FPairsTrading'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d6d992ef722580ff0de4300ed3e0cbee67133c03
[INFO] testing Alekro1618/PairsTrading against master#733b47ea4b1b86216f14ef56e49440c33933f230+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlekro1618%2FPairsTrading" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Alekro1618/PairsTrading
[INFO] finished tweaking git repo https://github.com/Alekro1618/PairsTrading
[INFO] tweaked toml for git repo https://github.com/Alekro1618/PairsTrading written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Alekro1618/PairsTrading on toolchain 733b47ea4b1b86216f14ef56e49440c33933f230
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Alekro1618/PairsTrading 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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 27d527fa5269e051c14598345b985e002caf17058a8a60ab6480866dbdfde8dc
[INFO] running `Command { std: "docker" "start" "-a" "27d527fa5269e051c14598345b985e002caf17058a8a60ab6480866dbdfde8dc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "27d527fa5269e051c14598345b985e002caf17058a8a60ab6480866dbdfde8dc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "27d527fa5269e051c14598345b985e002caf17058a8a60ab6480866dbdfde8dc", kill_on_drop: false }`
[INFO] [stdout] 27d527fa5269e051c14598345b985e002caf17058a8a60ab6480866dbdfde8dc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 23f8088fdf3ade8d2e36a1bad5c5958e2b5d79c6f958e62802845dec66b53d27
[INFO] running `Command { std: "docker" "start" "-a" "23f8088fdf3ade8d2e36a1bad5c5958e2b5d79c6f958e62802845dec66b53d27", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]    Compiling smallvec v1.15.0
[INFO] [stderr]    Compiling cc v1.2.22
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]    Compiling http v1.3.1
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling icu_properties_data v2.0.0
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling tracing-core v0.1.33
[INFO] [stderr]    Compiling openssl v0.10.72
[INFO] [stderr]    Compiling hashbrown v0.15.3
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling signal-hook-registry v1.4.5
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling socket2 v0.5.9
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling adler2 v2.0.0
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling miniz_oxide v0.8.8
[INFO] [stderr]    Compiling indexmap v2.9.0
[INFO] [stderr]    Compiling pathfinder_simd v0.5.5
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling yeslogic-fontconfig-sys v6.0.0
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling libloading v0.8.9
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling png v0.17.16
[INFO] [stderr]    Compiling dlib v0.5.2
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling weezl v0.1.10
[INFO] [stderr]    Compiling jpeg-decoder v0.3.2
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling rustversion v1.0.20
[INFO] [stderr]    Compiling font-kit v0.14.3
[INFO] [stderr]    Compiling bytemuck v1.23.2
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling image v0.24.9
[INFO] [stderr]    Compiling rustls-pki-types v1.12.0
[INFO] [stderr]    Compiling openssl-sys v0.9.108
[INFO] [stderr]    Compiling freetype-sys v0.20.1
[INFO] [stderr]    Compiling pathfinder_geometry v0.5.1
[INFO] [stderr]    Compiling gif v0.12.0
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling futures v0.1.31
[INFO] [stderr]    Compiling iana-time-zone v0.1.64
[INFO] [stderr]    Compiling rust_decimal v1.38.0
[INFO] [stderr]    Compiling float-ord v0.3.2
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling plotters-bitmap v0.3.7
[INFO] [stderr]    Compiling futures-cpupool v0.1.8
[INFO] [stderr]    Compiling rustls-pemfile v2.2.0
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling ttf-parser v0.20.0
[INFO] [stderr]    Compiling fs v0.0.5
[INFO] [stderr]    Compiling strum v0.27.1
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling rust_decimal_macros v1.38.0
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]    Compiling tokio v1.45.0
[INFO] [stderr]    Compiling strum_macros v0.27.1
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling zerovec v0.11.2
[INFO] [stderr]    Compiling tinystr v0.8.1
[INFO] [stderr]    Compiling icu_locale_core v2.0.0
[INFO] [stderr]    Compiling potential_utf v0.1.2
[INFO] [stderr]    Compiling zerotrie v0.2.2
[INFO] [stderr]    Compiling icu_provider v2.0.0
[INFO] [stderr]    Compiling icu_collections v2.0.0
[INFO] [stderr]    Compiling tokio-util v0.7.15
[INFO] [stderr]    Compiling icu_normalizer v2.0.0
[INFO] [stderr]    Compiling icu_properties v2.0.0
[INFO] [stderr]    Compiling h2 v0.4.10
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling idna v1.0.3
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling url v2.5.4
[INFO] [stderr]    Compiling hyper v1.6.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling hyper-util v0.1.11
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.15
[INFO] [stderr]    Compiling project v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/models/porfolio.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::models::instrument::{self, Instrument};
[INFO] [stdout]   |                                 ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/strategy/strategy.rs:5:94
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{binance::client::{BinanceClient, Requests, StrategyMoves}, models::{instrument::{self, Instrument}, kline::Kline, porfolio::P...
[INFO] [stdout]   |                                                                                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration`, `SystemTime`, `UNIX_EPOCH`, `self`, and `thread`
[INFO] [stdout]  --> src/backtest/backtest.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, thread, time::{self, Duration, SystemTime, UNIX_EPOCH}};
[INFO] [stdout]   |                                 ^^^^^^         ^^^^  ^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Strategy` and `simple::Simple`
[INFO] [stdout]  --> src/backtest/backtest.rs:3:40
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...s, simple::Simple}, backtest::strategytest::TestStrategy, binance::client::{BinanceClient, Requests, StrategyMoves}, models::kline::Kline, plots::series::draw_series, strategy::strategy::{Algorithm, Strategy}, ...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^                                                                                                                                                                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Requests`
[INFO] [stdout]  --> src/backtest/strategytest.rs:6:46
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{binance::client::{BinanceClient, Requests, StrategyMoves}, models::{instrument::Instrument, kline::Kline, porfolio::Portfolio}};
[INFO] [stdout]   |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::f64`
[INFO] [stdout]  --> src/algorithms/simple.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::f64;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Strategy`
[INFO] [stdout]  --> src/algorithms/simple.rs:6:109
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{binance::client::StrategyMoves, models::instrument::Instrument, strategy::strategy::{Algorithm, Strategy}};
[INFO] [stdout]   |                                                                                                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::time`
[INFO] [stdout]  --> src/algorithms/pairs.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::time;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Strategy`
[INFO] [stdout]  --> src/algorithms/pairs.rs:6:109
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{binance::client::StrategyMoves, models::instrument::Instrument, strategy::strategy::{Algorithm, Strategy}, tools::tests::{reg...
[INFO] [stdout]   |                                                                                                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rust_decimal::Decimal`
[INFO] [stdout]  --> src/tools/operations.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rust_decimal::Decimal;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fmt::Debug`
[INFO] [stdout]  --> src/tools/time.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::Debug, time::{Duration, SystemTime, UNIX_EPOCH}};
[INFO] [stdout]   |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BLACK` and `Color`
[INFO] [stdout]  --> src/plots/series.rs:1:108
[INFO] [stdout]   |
[INFO] [stdout] 1 | use plotters::{chart::ChartBuilder, prelude::{BitMapBackend, IntoDrawingArea}, series::LineSeries, style::{Color, IntoFont, BLACK, RED, W...
[INFO] [stdout]   |                                                                                                            ^^^^^            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]   --> src/binance/routes.rs:40:31
[INFO] [stdout]    |
[INFO] [stdout] 40 |     async fn make_long(&self, name : &str) {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `interval`
[INFO] [stdout]   --> src/backtest/strategytest.rs:89:45
[INFO] [stdout]    |
[INFO] [stdout] 89 |     async fn get_klines(&self, name : &str, interval : &str, limit : &str) -> Vec<Kline> {
[INFO] [stdout]    |                                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interval`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Price`, `Order`, and `Trades` are never constructed
[INFO] [stdout]   --> src/binance/client.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum BinanceRequest {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 14 |     #[strum(serialize = "/api/v3/ticker/price")]
[INFO] [stdout] 15 |     Price,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     Order,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 20 |     #[strum(serialize = "/api/v3/aggTrades")]
[INFO] [stdout] 21 |     Trades
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `price`, `make_long`, and `aggregate_trades` are never used
[INFO] [stdout]   --> src/binance/client.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Requests {
[INFO] [stdout]    |           -------- methods in this trait
[INFO] [stdout] 25 |     async fn price(&self, name : &str) -> Instrument;
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 26 |     async fn price_stamp(&self, name : &str, interval : &str, start : &str, end : &str, limit : &str) -> Vec<Kline>;
[INFO] [stdout] 27 |     async fn make_long(&self, name : &str);
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 28 |     async fn aggregate_trades(&self, symbol : &str, start : &str, limit : &str) -> Vec<Trade>;
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_portfolio` is never used
[INFO] [stdout]   --> src/binance/client.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub trait StrategyMoves {
[INFO] [stdout]    |           ------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 39 |     async fn get_portfolio(&self) -> Portfolio;
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `credentials` is never read
[INFO] [stdout]   --> src/binance/client.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct BinanceClient {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 49 |     client : Client,
[INFO] [stdout] 50 |     credentials : Credentials
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinanceClient` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `request_post` is never used
[INFO] [stdout]   --> src/binance/client.rs:90:18
[INFO] [stdout]    |
[INFO] [stdout] 53 | impl BinanceClient {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub async fn request_post(&self, url : BinanceRequest, json : String, params : Option<String>) -> String {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `key` and `secret` are never read
[INFO] [stdout]  --> src/binance/credentials.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Credentials {
[INFO] [stdout]   |            ----------- fields in this struct
[INFO] [stdout] 8 |     key: String,
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 9 |     secret: String
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Credentials` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `close_time`, `open`, `high`, and `low` are never read
[INFO] [stdout]   --> src/models/kline.rs:7:9
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub struct Kline {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 6  |     pub open_time : u128,
[INFO] [stdout] 7  |     pub close_time : u128,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 8  |     pub open : f64,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 9  |     pub high : f64,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 10 |     pub low : f64,
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Kline` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `price` is never read
[INFO] [stdout]  --> src/models/price.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Price {
[INFO] [stdout]   |            ----- field in this struct
[INFO] [stdout] 6 |     pub price : String
[INFO] [stdout]   |         ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Price` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]   --> src/models/porfolio.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Portfolio {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub fn len(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `p`, `q`, and `T` are never read
[INFO] [stdout]  --> src/models/trade.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Trade {
[INFO] [stdout]   |            ----- fields in this struct
[INFO] [stdout] 6 |     pub p : String,
[INFO] [stdout]   |         ^
[INFO] [stdout] 7 |     pub q : String,
[INFO] [stdout]   |         ^
[INFO] [stdout] 8 |     pub T : i128
[INFO] [stdout]   |         ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Trade` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Strategy` is never constructed
[INFO] [stdout]  --> src/strategy/strategy.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Strategy {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `client` is never read
[INFO] [stdout]  --> src/backtest/strategytest.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct TestStrategy {
[INFO] [stdout]   |            ------------ field in this struct
[INFO] [stdout] 9 |     client : BinanceClient,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Simple` is never constructed
[INFO] [stdout]  --> src/algorithms/simple.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Simple;
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/algorithms/simple.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Simple {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BTC` is never used
[INFO] [stdout]   --> src/algorithms/simple.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const BTC: &str = "BTCUSDT";
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logreturns` is never used
[INFO] [stdout]  --> src/tools/operations.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn logreturns(arr : &Vec<f64>) -> f64 {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cov` is never used
[INFO] [stdout]   --> src/tools/statistics.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn cov(arr1 : &Vec<f64>, arr2 : &Vec<f64>) -> f64 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cor` is never used
[INFO] [stdout]   --> src/tools/statistics.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn cor(arr1 : &Vec<f64>, arr2 : &Vec<f64>) -> f64 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_TIMESTAMP` is never used
[INFO] [stdout]  --> src/tools/time.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub const MAX_TIMESTAMP : u128 = 12;
[INFO] [stdout]   |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]  --> src/models/trade.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub T : i128
[INFO] [stdout]   |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7m 31s
[INFO] running `Command { std: "docker" "inspect" "23f8088fdf3ade8d2e36a1bad5c5958e2b5d79c6f958e62802845dec66b53d27", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "23f8088fdf3ade8d2e36a1bad5c5958e2b5d79c6f958e62802845dec66b53d27", kill_on_drop: false }`
[INFO] [stdout] 23f8088fdf3ade8d2e36a1bad5c5958e2b5d79c6f958e62802845dec66b53d27
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] caf73c76705f8ae42e409adf6ec973674e7a782bafee46caa11631954948ae0c
[INFO] running `Command { std: "docker" "start" "-a" "caf73c76705f8ae42e409adf6ec973674e7a782bafee46caa11631954948ae0c", kill_on_drop: false }`
[INFO] [stderr]    Compiling project v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/models/porfolio.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::models::instrument::{self, Instrument};
[INFO] [stdout]   |                                 ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/strategy/strategy.rs:5:94
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{binance::client::{BinanceClient, Requests, StrategyMoves}, models::{instrument::{self, Instrument}, kline::Kline, porfolio::P...
[INFO] [stdout]   |                                                                                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration`, `SystemTime`, `UNIX_EPOCH`, `self`, and `thread`
[INFO] [stdout]  --> src/backtest/backtest.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashMap, thread, time::{self, Duration, SystemTime, UNIX_EPOCH}};
[INFO] [stdout]   |                                 ^^^^^^         ^^^^  ^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Strategy` and `simple::Simple`
[INFO] [stdout]  --> src/backtest/backtest.rs:3:40
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...s, simple::Simple}, backtest::strategytest::TestStrategy, binance::client::{BinanceClient, Requests, StrategyMoves}, models::kline::Kline, plots::series::draw_series, strategy::strategy::{Algorithm, Strategy}, ...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^                                                                                                                                                                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Requests`
[INFO] [stdout]  --> src/backtest/strategytest.rs:6:46
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{binance::client::{BinanceClient, Requests, StrategyMoves}, models::{instrument::Instrument, kline::Kline, porfolio::Portfolio}};
[INFO] [stdout]   |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::f64`
[INFO] [stdout]  --> src/algorithms/simple.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::f64;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Strategy`
[INFO] [stdout]  --> src/algorithms/simple.rs:6:109
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{binance::client::StrategyMoves, models::instrument::Instrument, strategy::strategy::{Algorithm, Strategy}};
[INFO] [stdout]   |                                                                                                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::time`
[INFO] [stdout]  --> src/algorithms/pairs.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::time;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Strategy`
[INFO] [stdout]  --> src/algorithms/pairs.rs:6:109
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{binance::client::StrategyMoves, models::instrument::Instrument, strategy::strategy::{Algorithm, Strategy}, tools::tests::{reg...
[INFO] [stdout]   |                                                                                                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rust_decimal::Decimal`
[INFO] [stdout]  --> src/tools/operations.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use rust_decimal::Decimal;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fmt::Debug`
[INFO] [stdout]  --> src/tools/time.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::Debug, time::{Duration, SystemTime, UNIX_EPOCH}};
[INFO] [stdout]   |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BLACK` and `Color`
[INFO] [stdout]  --> src/plots/series.rs:1:108
[INFO] [stdout]   |
[INFO] [stdout] 1 | use plotters::{chart::ChartBuilder, prelude::{BitMapBackend, IntoDrawingArea}, series::LineSeries, style::{Color, IntoFont, BLACK, RED, W...
[INFO] [stdout]   |                                                                                                            ^^^^^            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]   --> src/binance/routes.rs:40:31
[INFO] [stdout]    |
[INFO] [stdout] 40 |     async fn make_long(&self, name : &str) {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `interval`
[INFO] [stdout]   --> src/backtest/strategytest.rs:89:45
[INFO] [stdout]    |
[INFO] [stdout] 89 |     async fn get_klines(&self, name : &str, interval : &str, limit : &str) -> Vec<Kline> {
[INFO] [stdout]    |                                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interval`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Price`, `Order`, and `Trades` are never constructed
[INFO] [stdout]   --> src/binance/client.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum BinanceRequest {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 14 |     #[strum(serialize = "/api/v3/ticker/price")]
[INFO] [stdout] 15 |     Price,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     Order,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 20 |     #[strum(serialize = "/api/v3/aggTrades")]
[INFO] [stdout] 21 |     Trades
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `price`, `make_long`, and `aggregate_trades` are never used
[INFO] [stdout]   --> src/binance/client.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Requests {
[INFO] [stdout]    |           -------- methods in this trait
[INFO] [stdout] 25 |     async fn price(&self, name : &str) -> Instrument;
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 26 |     async fn price_stamp(&self, name : &str, interval : &str, start : &str, end : &str, limit : &str) -> Vec<Kline>;
[INFO] [stdout] 27 |     async fn make_long(&self, name : &str);
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 28 |     async fn aggregate_trades(&self, symbol : &str, start : &str, limit : &str) -> Vec<Trade>;
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_portfolio` is never used
[INFO] [stdout]   --> src/binance/client.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub trait StrategyMoves {
[INFO] [stdout]    |           ------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 39 |     async fn get_portfolio(&self) -> Portfolio;
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `credentials` is never read
[INFO] [stdout]   --> src/binance/client.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct BinanceClient {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 49 |     client : Client,
[INFO] [stdout] 50 |     credentials : Credentials
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinanceClient` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `request_post` is never used
[INFO] [stdout]   --> src/binance/client.rs:90:18
[INFO] [stdout]    |
[INFO] [stdout] 53 | impl BinanceClient {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub async fn request_post(&self, url : BinanceRequest, json : String, params : Option<String>) -> String {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `key` and `secret` are never read
[INFO] [stdout]  --> src/binance/credentials.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Credentials {
[INFO] [stdout]   |            ----------- fields in this struct
[INFO] [stdout] 8 |     key: String,
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 9 |     secret: String
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Credentials` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `close_time`, `open`, `high`, and `low` are never read
[INFO] [stdout]   --> src/models/kline.rs:7:9
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub struct Kline {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 6  |     pub open_time : u128,
[INFO] [stdout] 7  |     pub close_time : u128,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 8  |     pub open : f64,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 9  |     pub high : f64,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 10 |     pub low : f64,
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Kline` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `price` is never read
[INFO] [stdout]  --> src/models/price.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Price {
[INFO] [stdout]   |            ----- field in this struct
[INFO] [stdout] 6 |     pub price : String
[INFO] [stdout]   |         ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Price` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]   --> src/models/porfolio.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Portfolio {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub fn len(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `p`, `q`, and `T` are never read
[INFO] [stdout]  --> src/models/trade.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Trade {
[INFO] [stdout]   |            ----- fields in this struct
[INFO] [stdout] 6 |     pub p : String,
[INFO] [stdout]   |         ^
[INFO] [stdout] 7 |     pub q : String,
[INFO] [stdout]   |         ^
[INFO] [stdout] 8 |     pub T : i128
[INFO] [stdout]   |         ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Trade` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Strategy` is never constructed
[INFO] [stdout]  --> src/strategy/strategy.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Strategy {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `client` is never read
[INFO] [stdout]  --> src/backtest/strategytest.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct TestStrategy {
[INFO] [stdout]   |            ------------ field in this struct
[INFO] [stdout] 9 |     client : BinanceClient,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Simple` is never constructed
[INFO] [stdout]  --> src/algorithms/simple.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Simple;
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/algorithms/simple.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Simple {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BTC` is never used
[INFO] [stdout]   --> src/algorithms/simple.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const BTC: &str = "BTCUSDT";
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logreturns` is never used
[INFO] [stdout]  --> src/tools/operations.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn logreturns(arr : &Vec<f64>) -> f64 {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cov` is never used
[INFO] [stdout]   --> src/tools/statistics.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn cov(arr1 : &Vec<f64>, arr2 : &Vec<f64>) -> f64 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cor` is never used
[INFO] [stdout]   --> src/tools/statistics.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn cor(arr1 : &Vec<f64>, arr2 : &Vec<f64>) -> f64 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_TIMESTAMP` is never used
[INFO] [stdout]  --> src/tools/time.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub const MAX_TIMESTAMP : u128 = 12;
[INFO] [stdout]   |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]  --> src/models/trade.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub T : i128
[INFO] [stdout]   |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.21s
[INFO] running `Command { std: "docker" "inspect" "caf73c76705f8ae42e409adf6ec973674e7a782bafee46caa11631954948ae0c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "caf73c76705f8ae42e409adf6ec973674e7a782bafee46caa11631954948ae0c", kill_on_drop: false }`
[INFO] [stdout] caf73c76705f8ae42e409adf6ec973674e7a782bafee46caa11631954948ae0c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 404023c6c821145bcabbb1bd20e5ba750fc9c8fd4c467606f5ef81163321e962
[INFO] running `Command { std: "docker" "start" "-a" "404023c6c821145bcabbb1bd20e5ba750fc9c8fd4c467606f5ef81163321e962", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]  --> src/models/porfolio.rs:3:33
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::models::instrument::{self, Instrument};
[INFO] [stderr]   |                                 ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]  --> src/strategy/strategy.rs:5:94
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::{binance::client::{BinanceClient, Requests, StrategyMoves}, models::{instrument::{self, Instrument}, kline::Kline, porfolio::P...
[INFO] [stderr]   |                                                                                              ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Duration`, `SystemTime`, `UNIX_EPOCH`, `self`, and `thread`
[INFO] [stderr]  --> src/backtest/backtest.rs:1:33
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{collections::HashMap, thread, time::{self, Duration, SystemTime, UNIX_EPOCH}};
[INFO] [stderr]   |                                 ^^^^^^         ^^^^  ^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Strategy` and `simple::Simple`
[INFO] [stderr]  --> src/backtest/backtest.rs:3:40
[INFO] [stderr]   |
[INFO] [stderr] 3 | ...s, simple::Simple}, backtest::strategytest::TestStrategy, binance::client::{BinanceClient, Requests, StrategyMoves}, models::kline::Kline, plots::series::draw_series, strategy::strategy::{Algorithm, Strategy}, ...
[INFO] [stderr]   |       ^^^^^^^^^^^^^^                                                                                                                                                                                      ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Requests`
[INFO] [stderr]  --> src/backtest/strategytest.rs:6:46
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::{binance::client::{BinanceClient, Requests, StrategyMoves}, models::{instrument::Instrument, kline::Kline, porfolio::Portfolio}};
[INFO] [stderr]   |                                              ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `core::f64`
[INFO] [stderr]  --> src/algorithms/simple.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use core::f64;
[INFO] [stderr]   |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Strategy`
[INFO] [stderr]  --> src/algorithms/simple.rs:6:109
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::{binance::client::StrategyMoves, models::instrument::Instrument, strategy::strategy::{Algorithm, Strategy}};
[INFO] [stderr]   |                                                                                                             ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `core::time`
[INFO] [stderr]  --> src/algorithms/pairs.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use core::time;
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Strategy`
[INFO] [stderr]  --> src/algorithms/pairs.rs:6:109
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::{binance::client::StrategyMoves, models::instrument::Instrument, strategy::strategy::{Algorithm, Strategy}, tools::tests::{reg...
[INFO] [stderr]   |                                                                                                             ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rust_decimal::Decimal`
[INFO] [stderr]  --> src/tools/operations.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use rust_decimal::Decimal;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `fmt::Debug`
[INFO] [stderr]  --> src/tools/time.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{fmt::Debug, time::{Duration, SystemTime, UNIX_EPOCH}};
[INFO] [stderr]   |           ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BLACK` and `Color`
[INFO] [stderr]  --> src/plots/series.rs:1:108
[INFO] [stderr]   |
[INFO] [stderr] 1 | use plotters::{chart::ChartBuilder, prelude::{BitMapBackend, IntoDrawingArea}, series::LineSeries, style::{Color, IntoFont, BLACK, RED, W...
[INFO] [stderr]   |                                                                                                            ^^^^^            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `name`
[INFO] [stderr]   --> src/binance/routes.rs:40:31
[INFO] [stderr]    |
[INFO] [stderr] 40 |     async fn make_long(&self, name : &str) {
[INFO] [stderr]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `interval`
[INFO] [stderr]   --> src/backtest/strategytest.rs:89:45
[INFO] [stderr]    |
[INFO] [stderr] 89 |     async fn get_klines(&self, name : &str, interval : &str, limit : &str) -> Vec<Kline> {
[INFO] [stderr]    |                                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interval`
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Price`, `Order`, and `Trades` are never constructed
[INFO] [stderr]   --> src/binance/client.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub enum BinanceRequest {
[INFO] [stderr]    |          -------------- variants in this enum
[INFO] [stderr] 14 |     #[strum(serialize = "/api/v3/ticker/price")]
[INFO] [stderr] 15 |     Price,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 19 |     Order,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 20 |     #[strum(serialize = "/api/v3/aggTrades")]
[INFO] [stderr] 21 |     Trades
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `price`, `make_long`, and `aggregate_trades` are never used
[INFO] [stderr]   --> src/binance/client.rs:25:14
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub trait Requests {
[INFO] [stderr]    |           -------- methods in this trait
[INFO] [stderr] 25 |     async fn price(&self, name : &str) -> Instrument;
[INFO] [stderr]    |              ^^^^^
[INFO] [stderr] 26 |     async fn price_stamp(&self, name : &str, interval : &str, start : &str, end : &str, limit : &str) -> Vec<Kline>;
[INFO] [stderr] 27 |     async fn make_long(&self, name : &str);
[INFO] [stderr]    |              ^^^^^^^^^
[INFO] [stderr] 28 |     async fn aggregate_trades(&self, symbol : &str, start : &str, limit : &str) -> Vec<Trade>;
[INFO] [stderr]    |              ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_portfolio` is never used
[INFO] [stderr]   --> src/binance/client.rs:39:14
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub trait StrategyMoves {
[INFO] [stderr]    |           ------------- method in this trait
[INFO] [stderr] ...
[INFO] [stderr] 39 |     async fn get_portfolio(&self) -> Portfolio;
[INFO] [stderr]    |              ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `credentials` is never read
[INFO] [stderr]   --> src/binance/client.rs:50:5
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub struct BinanceClient {
[INFO] [stderr]    |            ------------- field in this struct
[INFO] [stderr] 49 |     client : Client,
[INFO] [stderr] 50 |     credentials : Credentials
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `BinanceClient` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `request_post` is never used
[INFO] [stderr]   --> src/binance/client.rs:90:18
[INFO] [stderr]    |
[INFO] [stderr] 53 | impl BinanceClient {
[INFO] [stderr]    | ------------------ method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 90 |     pub async fn request_post(&self, url : BinanceRequest, json : String, params : Option<String>) -> String {
[INFO] [stderr]    |                  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `key` and `secret` are never read
[INFO] [stderr]  --> src/binance/credentials.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub struct Credentials {
[INFO] [stderr]   |            ----------- fields in this struct
[INFO] [stderr] 8 |     key: String,
[INFO] [stderr]   |     ^^^
[INFO] [stderr] 9 |     secret: String
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `Credentials` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `close_time`, `open`, `high`, and `low` are never read
[INFO] [stderr]   --> src/models/kline.rs:7:9
[INFO] [stderr]    |
[INFO] [stderr] 5  | pub struct Kline {
[INFO] [stderr]    |            ----- fields in this struct
[INFO] [stderr] 6  |     pub open_time : u128,
[INFO] [stderr] 7  |     pub close_time : u128,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr] 8  |     pub open : f64,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 9  |     pub high : f64,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 10 |     pub low : f64,
[INFO] [stderr]    |         ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Kline` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `price` is never read
[INFO] [stderr]  --> src/models/price.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub struct Price {
[INFO] [stderr]   |            ----- field in this struct
[INFO] [stderr] 6 |     pub price : String
[INFO] [stderr]   |         ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `Price` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `len` is never used
[INFO] [stderr]   --> src/models/porfolio.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 10 | impl Portfolio {
[INFO] [stderr]    | -------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 15 |     pub fn len(&self) -> usize {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `p`, `q`, and `T` are never read
[INFO] [stderr]  --> src/models/trade.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub struct Trade {
[INFO] [stderr]   |            ----- fields in this struct
[INFO] [stderr] 6 |     pub p : String,
[INFO] [stderr]   |         ^
[INFO] [stderr] 7 |     pub q : String,
[INFO] [stderr]   |         ^
[INFO] [stderr] 8 |     pub T : i128
[INFO] [stderr]   |         ^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `Trade` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Strategy` is never constructed
[INFO] [stderr]  --> src/strategy/strategy.rs:7:12
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub struct Strategy {
[INFO] [stderr]   |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `client` is never read
[INFO] [stderr]  --> src/backtest/strategytest.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub struct TestStrategy {
[INFO] [stderr]   |            ------------ field in this struct
[INFO] [stderr] 9 |     client : BinanceClient,
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Simple` is never constructed
[INFO] [stderr]  --> src/algorithms/simple.rs:8:12
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub struct Simple;
[INFO] [stderr]   |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/algorithms/simple.rs:11:12
[INFO] [stderr]    |
[INFO] [stderr] 10 | impl Simple {
[INFO] [stderr]    | ----------- associated function in this implementation
[INFO] [stderr] 11 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `BTC` is never used
[INFO] [stderr]   --> src/algorithms/simple.rs:16:7
[INFO] [stderr]    |
[INFO] [stderr] 16 | const BTC: &str = "BTCUSDT";
[INFO] [stderr]    |       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logreturns` is never used
[INFO] [stderr]  --> src/tools/operations.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn logreturns(arr : &Vec<f64>) -> f64 {
[INFO] [stderr]   |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `cov` is never used
[INFO] [stderr]   --> src/tools/statistics.rs:26:8
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub fn cov(arr1 : &Vec<f64>, arr2 : &Vec<f64>) -> f64 {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `cor` is never used
[INFO] [stderr]   --> src/tools/statistics.rs:31:8
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub fn cor(arr1 : &Vec<f64>, arr2 : &Vec<f64>) -> f64 {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MAX_TIMESTAMP` is never used
[INFO] [stderr]  --> src/tools/time.rs:5:11
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub const MAX_TIMESTAMP : u128 = 12;
[INFO] [stderr]   |           ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `T` should have a snake case name
[INFO] [stderr]  --> src/models/trade.rs:8:9
[INFO] [stderr]   |
[INFO] [stderr] 8 |     pub T : i128
[INFO] [stderr]   |         ^ help: convert the identifier to snake case: `t`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `project` (bin "project" test) generated 34 warnings (run `cargo fix --bin "project" --tests` to apply 12 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.31s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/project-10673148dc2f69ce)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "404023c6c821145bcabbb1bd20e5ba750fc9c8fd4c467606f5ef81163321e962", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "404023c6c821145bcabbb1bd20e5ba750fc9c8fd4c467606f5ef81163321e962", kill_on_drop: false }`
[INFO] [stdout] 404023c6c821145bcabbb1bd20e5ba750fc9c8fd4c467606f5ef81163321e962
