[INFO] cloning repository https://github.com/goodsw4all/KIS_OpenAPI_in_Rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/goodsw4all/KIS_OpenAPI_in_Rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgoodsw4all%2FKIS_OpenAPI_in_Rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgoodsw4all%2FKIS_OpenAPI_in_Rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fe971d83e6a609368f948289e06e5a0320ee7951
[INFO] checking goodsw4all/KIS_OpenAPI_in_Rust against master#36b21637e93b038453924d3c66821089e71d8baa for pr-143164
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgoodsw4all%2FKIS_OpenAPI_in_Rust" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/goodsw4all/KIS_OpenAPI_in_Rust
[INFO] finished tweaking git repo https://github.com/goodsw4all/KIS_OpenAPI_in_Rust
[INFO] tweaked toml for git repo https://github.com/goodsw4all/KIS_OpenAPI_in_Rust written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/goodsw4all/KIS_OpenAPI_in_Rust on toolchain 36b21637e93b038453924d3c66821089e71d8baa
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/goodsw4all/KIS_OpenAPI_in_Rust 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" "+36b21637e93b038453924d3c66821089e71d8baa" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 08c22a37ee411f8a04d35dd72ec33aaf66e2130ace928fee9bf9914c1a8c9248
[INFO] running `Command { std: "docker" "start" "-a" "08c22a37ee411f8a04d35dd72ec33aaf66e2130ace928fee9bf9914c1a8c9248", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "08c22a37ee411f8a04d35dd72ec33aaf66e2130ace928fee9bf9914c1a8c9248", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "08c22a37ee411f8a04d35dd72ec33aaf66e2130ace928fee9bf9914c1a8c9248", kill_on_drop: false }`
[INFO] [stdout] 08c22a37ee411f8a04d35dd72ec33aaf66e2130ace928fee9bf9914c1a8c9248
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e5bb2c1f652af6fc7e7145200470ff794b9be76c6262cd159ca92528a802c271
[INFO] running `Command { std: "docker" "start" "-a" "e5bb2c1f652af6fc7e7145200470ff794b9be76c6262cd159ca92528a802c271", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.126
[INFO] [stderr]    Compiling proc-macro2 v1.0.39
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling unicode-ident v1.0.0
[INFO] [stderr]    Compiling syn v1.0.95
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling pkg-config v0.3.25
[INFO] [stderr]    Compiling cc v1.0.73
[INFO] [stderr]     Checking pin-project-lite v0.2.9
[INFO] [stderr]     Checking bytes v1.1.0
[INFO] [stderr]     Checking itoa v1.0.2
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking once_cell v1.12.0
[INFO] [stderr]    Compiling futures-core v0.3.21
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling typenum v1.15.0
[INFO] [stderr]    Compiling serde_derive v1.0.137
[INFO] [stderr]    Compiling indexmap v1.8.2
[INFO] [stderr]    Compiling quote v1.0.18
[INFO] [stderr]    Compiling futures-task v0.3.21
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]    Compiling serde v1.0.137
[INFO] [stderr]     Checking http v0.2.7
[INFO] [stderr]    Compiling generic-array v0.14.5
[INFO] [stderr]     Checking mio v0.8.3
[INFO] [stderr]     Checking num_cpus v1.13.1
[INFO] [stderr]     Checking socket2 v0.4.4
[INFO] [stderr]    Compiling openssl-sys v0.9.74
[INFO] [stderr]     Checking tracing-core v0.1.26
[INFO] [stderr]     Checking foreign-types-shared v0.1.1
[INFO] [stderr]     Checking matches v0.1.9
[INFO] [stderr]    Compiling httparse v1.7.1
[INFO] [stderr]     Checking tinyvec_macros v0.1.0
[INFO] [stderr]    Compiling futures-util v0.3.21
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking tokio v1.18.2
[INFO] [stderr]    Compiling openssl v0.10.40
[INFO] [stderr]     Checking tinyvec v1.6.0
[INFO] [stderr]     Checking foreign-types v0.3.2
[INFO] [stderr]     Checking pin-utils v0.1.0
[INFO] [stderr]     Checking futures-sink v0.3.21
[INFO] [stderr]     Checking futures-io v0.3.21
[INFO] [stderr]     Checking percent-encoding v2.1.0
[INFO] [stderr]     Checking slab v0.4.6
[INFO] [stderr]    Compiling futures-channel v0.3.21
[INFO] [stderr]    Compiling native-tls v0.2.10
[INFO] [stderr]     Checking form_urlencoded v1.0.1
[INFO] [stderr]     Checking unicode-normalization v0.1.19
[INFO] [stderr]     Checking getrandom v0.2.7
[INFO] [stderr]    Compiling lock_api v0.4.7
[INFO] [stderr]     Checking ryu v1.0.10
[INFO] [stderr]     Checking openssl-probe v0.1.5
[INFO] [stderr]     Checking unicode-bidi v0.3.8
[INFO] [stderr]    Compiling parking_lot_core v0.9.3
[INFO] [stderr]     Checking try-lock v0.2.3
[INFO] [stderr]    Compiling signal-hook v0.3.14
[INFO] [stderr]     Checking want v0.3.0
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking http-body v0.4.5
[INFO] [stderr]     Checking idna v0.2.3
[INFO] [stderr]     Checking crypto-common v0.1.3
[INFO] [stderr]     Checking block-buffer v0.10.2
[INFO] [stderr]     Checking signal-hook-registry v1.4.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.16
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]     Checking smallvec v1.9.0
[INFO] [stderr]    Compiling serde_json v1.0.81
[INFO] [stderr]     Checking httpdate v1.0.2
[INFO] [stderr]    Compiling encoding_rs v0.8.31
[INFO] [stderr]     Checking tower-service v0.3.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking digest v0.10.3
[INFO] [stderr]     Checking os_str_bytes v6.1.0
[INFO] [stderr]     Checking base64 v0.13.0
[INFO] [stderr]     Checking url v2.2.2
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking cpufeatures v0.2.2
[INFO] [stderr]     Checking clap_lex v0.2.0
[INFO] [stderr]     Checking sha-1 v0.10.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking signal-hook-mio v0.2.3
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]     Checking utf-8 v0.7.6
[INFO] [stderr]     Checking ipnet v2.5.0
[INFO] [stderr]     Checking textwrap v0.15.0
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]     Checking strsim v0.10.0
[INFO] [stderr]     Checking mime v0.3.16
[INFO] [stderr]     Checking termcolor v1.1.3
[INFO] [stderr]     Checking itoa v0.4.8
[INFO] [stderr]     Checking crossterm v0.24.0
[INFO] [stderr]     Checking clap v3.1.18
[INFO] [stderr]    Compiling tracing-attributes v0.1.21
[INFO] [stderr]    Compiling openssl-macros v0.1.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.31
[INFO] [stderr]     Checking thiserror v1.0.31
[INFO] [stderr]     Checking tungstenite v0.17.2
[INFO] [stderr]     Checking tracing v0.1.34
[INFO] [stderr]     Checking tokio-util v0.7.2
[INFO] [stderr]     Checking h2 v0.3.13
[INFO] [stderr]     Checking tokio-native-tls v0.3.0
[INFO] [stderr]     Checking hyper v0.14.19
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking bstr v0.2.17
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.10
[INFO] [stderr]     Checking csv v1.1.6
[INFO] [stderr]     Checking stock_trader v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `tx`
[INFO] [stdout]   --> src/kis/ws.rs:12:58
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn websoket_test(conf: &AccountConfig, ticker: &str, tx: Sender<String>) {
[INFO] [stdout]    |                                                          ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `received`
[INFO] [stdout]    --> src/kis/ws.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |         let received = rx.recv().unwrap();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_received`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]    --> src/kis/ws.rs:139:13
[INFO] [stdout]     |
[INFO] [stdout] 139 |         let res = thread_join_handle.join();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kis`
[INFO] [stdout]   --> src/trade/trader.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 |         let kis = KisApi::new(config);
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_kis`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]   --> src/trade/trader.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let res: blocking::Response = client
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `init_kis_api`, `check_risk_points`, `make_list_stocks_to_buy_from_csv`, `calculate_order_price`, `trade`, and `run` are never used
[INFO] [stdout]   --> src/trade/trader.rs:9:8
[INFO] [stdout]    |
[INFO] [stdout] 8  | trait Strategy {
[INFO] [stdout]    |       -------- associated items in this trait
[INFO] [stdout] 9  |     fn init_kis_api(&self, config: kis::AccountConfig) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     fn check_risk_points(&self) -> HashMap<String, i32> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn make_list_stocks_to_buy_from_csv(&mut self) -> TradeResult<()>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 42 |     fn calculate_order_price(&self, stock: &str) -> OrderPrice;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |     fn trade(&self) -> TradeResult<()>;
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 44 |     fn run();
[INFO] [stdout]    |        ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ticker`, `buy`, and `sell` are never read
[INFO] [stdout]   --> src/trade/trader.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | struct OrderPrice {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 48 |     ticker: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 49 |     buy: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 50 |     sell: u32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stock_order_list` is never read
[INFO] [stdout]   --> src/trade/trader.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub struct SimpleTrade {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 55 |     stock_order_list: Vec<OrderPrice>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `check_macro_signal` is never used
[INFO] [stdout]   --> src/trade/trader.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl SimpleTrade {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 65 |     fn check_macro_signal(&self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup` is never used
[INFO] [stdout]    --> src/trade/trader.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn setup() -> KisApi {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stdout]   --> src/trade/trader.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 24 |         for header in csv.headers() {
[INFO] [stdout]    |                       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]    |
[INFO] [stdout] 24 -         for header in csv.headers() {
[INFO] [stdout] 24 +         while let Ok(header) = csv.headers() {
[INFO] [stdout]    |
[INFO] [stdout] help: consider unwrapping the `Result` with `?` to iterate over its contents
[INFO] [stdout]    |
[INFO] [stdout] 24 |         for header in csv.headers()? {
[INFO] [stdout]    |                                    +
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]    |
[INFO] [stdout] 24 -         for header in csv.headers() {
[INFO] [stdout] 24 +         if let Ok(header) = csv.headers() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx`
[INFO] [stdout]   --> src/kis/ws.rs:12:58
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn websoket_test(conf: &AccountConfig, ticker: &str, tx: Sender<String>) {
[INFO] [stdout]    |                                                          ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kis`
[INFO] [stdout]   --> src/trade/trader.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 |         let kis = KisApi::new(config);
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_kis`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]   --> src/trade/trader.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let res: blocking::Response = client
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TradeResult` is never used
[INFO] [stdout]  --> src/trade/trader.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | type TradeResult<T> = Result<T, Box<dyn std::error::Error>>;
[INFO] [stdout]   |      ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Strategy` is never used
[INFO] [stdout]  --> src/trade/trader.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | trait Strategy {
[INFO] [stdout]   |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ticker`, `buy`, and `sell` are never read
[INFO] [stdout]   --> src/trade/trader.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | struct OrderPrice {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 48 |     ticker: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 49 |     buy: u32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 50 |     sell: u32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stock_order_list` is never read
[INFO] [stdout]   --> src/trade/trader.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub struct SimpleTrade {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 55 |     stock_order_list: Vec<OrderPrice>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `check_macro_signal` is never used
[INFO] [stdout]   --> src/trade/trader.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl SimpleTrade {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 65 |     fn check_macro_signal(&self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stdout]   --> src/trade/trader.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 24 |         for header in csv.headers() {
[INFO] [stdout]    |                       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]    |
[INFO] [stdout] 24 -         for header in csv.headers() {
[INFO] [stdout] 24 +         while let Ok(header) = csv.headers() {
[INFO] [stdout]    |
[INFO] [stdout] help: consider unwrapping the `Result` with `?` to iterate over its contents
[INFO] [stdout]    |
[INFO] [stdout] 24 |         for header in csv.headers()? {
[INFO] [stdout]    |                                    +
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]    |
[INFO] [stdout] 24 -         for header in csv.headers() {
[INFO] [stdout] 24 +         if let Ok(header) = csv.headers() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Event`, `KeyCode`, `KeyEvent`, `disable_raw_mode`, `enable_raw_mode`, and `self`
[INFO] [stdout]  --> src/main.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 |     event::{self, Event, KeyCode, KeyEvent},
[INFO] [stdout]   |             ^^^^  ^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 4 |     terminal::{disable_raw_mode, enable_raw_mode},
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Event`, `KeyCode`, `KeyEvent`, `disable_raw_mode`, `enable_raw_mode`, and `self`
[INFO] [stdout]  --> src/main.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 |     event::{self, Event, KeyCode, KeyEvent},
[INFO] [stdout]   |             ^^^^  ^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 4 |     terminal::{disable_raw_mode, enable_raw_mode},
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 58.50s
[INFO] running `Command { std: "docker" "inspect" "e5bb2c1f652af6fc7e7145200470ff794b9be76c6262cd159ca92528a802c271", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e5bb2c1f652af6fc7e7145200470ff794b9be76c6262cd159ca92528a802c271", kill_on_drop: false }`
[INFO] [stdout] e5bb2c1f652af6fc7e7145200470ff794b9be76c6262cd159ca92528a802c271
