[INFO] cloning repository https://github.com/aeroalgo/robots
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/aeroalgo/robots" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faeroalgo%2Frobots", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faeroalgo%2Frobots'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 38ed09c4a2b5d02e611ad878b0fe699a6a520c61
[INFO] checking aeroalgo/robots against try#d1d7143153307f561233bd4d93e2a3b24157b081 for pr-151539-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faeroalgo%2Frobots" "/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/aeroalgo/robots
[INFO] finished tweaking git repo https://github.com/aeroalgo/robots
[INFO] tweaked toml for git repo https://github.com/aeroalgo/robots written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/aeroalgo/robots on toolchain d1d7143153307f561233bd4d93e2a3b24157b081
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d1d7143153307f561233bd4d93e2a3b24157b081" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/aeroalgo/robots 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" "+d1d7143153307f561233bd4d93e2a3b24157b081" "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/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] db5f4d32aaf47b9b77444affe1e08d5f3b2ffde16ace4c4f6c9951b2a434245d
[INFO] running `Command { std: "docker" "start" "db5f4d32aaf47b9b77444affe1e08d5f3b2ffde16ace4c4f6c9951b2a434245d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "db5f4d32aaf47b9b77444affe1e08d5f3b2ffde16ace4c4f6c9951b2a434245d" "/opt/rustwide/cargo-home/bin/cargo" "+d1d7143153307f561233bd4d93e2a3b24157b081" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "db5f4d32aaf47b9b77444affe1e08d5f3b2ffde16ace4c4f6c9951b2a434245d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "db5f4d32aaf47b9b77444affe1e08d5f3b2ffde16ace4c4f6c9951b2a434245d" "/opt/rustwide/cargo-home/bin/cargo" "+d1d7143153307f561233bd4d93e2a3b24157b081" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling unicode-ident v1.0.20
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling find-msvc-tools v0.1.4
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking hashbrown v0.16.0
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]    Compiling siphasher v1.0.1
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]     Checking lexical-util v0.8.5
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]     Checking writeable v0.6.1
[INFO] [stderr]     Checking litemap v0.8.0
[INFO] [stderr]     Checking phf_shared v0.11.3
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling icu_normalizer_data v2.0.0
[INFO] [stderr]     Checking phf v0.11.3
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]     Checking num v0.4.3
[INFO] [stderr]     Checking tracing-core v0.1.34
[INFO] [stderr]     Checking arrow-schema v51.0.0
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling flatbuffers v23.5.26
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]    Compiling doc-comment v0.3.4
[INFO] [stderr]     Checking twox-hash v2.1.2
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking indexmap v2.12.0
[INFO] [stderr]    Compiling phf_codegen v0.11.3
[INFO] [stderr]     Checking lexical-parse-integer v0.8.6
[INFO] [stderr]     Checking lexical-write-integer v0.8.5
[INFO] [stderr]     Checking lexical-parse-float v0.8.5
[INFO] [stderr]     Checking lz4_flex v0.11.5
[INFO] [stderr]     Checking csv v1.4.0
[INFO] [stderr]     Checking arrow-schema v50.0.0
[INFO] [stderr]     Checking lexical-write-float v0.8.5
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling snap v1.1.1
[INFO] [stderr]     Checking brotli-decompressor v2.5.1
[INFO] [stderr]     Checking ordered-float v2.10.1
[INFO] [stderr]    Compiling syn v2.0.108
[INFO] [stderr]     Checking flate2 v1.1.5
[INFO] [stderr]     Checking integer-encoding v3.0.4
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking thrift v0.17.0
[INFO] [stderr]     Checking twox-hash v1.6.3
[INFO] [stderr]    Compiling seq-macro v0.3.6
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking lexical-core v0.8.5
[INFO] [stderr]     Checking tinyvec v1.10.0
[INFO] [stderr]     Checking unicode-bidi v0.3.18
[INFO] [stderr]    Compiling openssl v0.10.74
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking petgraph v0.6.5
[INFO] [stderr]     Checking md-5 v0.10.6
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking unicode-normalization v0.1.24
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]     Checking mio v1.1.0
[INFO] [stderr]     Checking socket2 v0.6.1
[INFO] [stderr]    Compiling cc v1.2.43
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking tempfile v3.23.0
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking unicode-properties v0.1.3
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking brotli v3.5.0
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking crossterm v0.27.0
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]     Checking stringprep v0.1.5
[INFO] [stderr]    Compiling time-core v0.1.6
[INFO] [stderr]     Checking tap v1.0.1
[INFO] [stderr]     Checking matches v0.1.10
[INFO] [stderr]     Checking fallible-iterator v0.2.0
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]     Checking deranged v0.5.4
[INFO] [stderr]    Compiling time-macros v0.2.24
[INFO] [stderr]     Checking idna v0.2.3
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]     Checking wyz v0.5.1
[INFO] [stderr]     Checking memmap2 v0.9.9
[INFO] [stderr]     Checking phf_shared v0.13.1
[INFO] [stderr]    Compiling rustc_version_runtime v0.2.1
[INFO] [stderr]     Checking bytemuck v1.24.0
[INFO] [stderr]     Checking funty v2.0.0
[INFO] [stderr]    Compiling protobuf v2.28.0
[INFO] [stderr]    Compiling symbolic-demangle v12.17.0
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]     Checking lru-cache v0.1.2
[INFO] [stderr]     Checking phf v0.13.1
[INFO] [stderr]     Checking rgb v0.8.52
[INFO] [stderr]     Checking is-terminal v0.4.17
[INFO] [stderr]     Checking socket2 v0.4.10
[INFO] [stderr]     Checking num-format v0.4.4
[INFO] [stderr]     Checking serde_bytes v0.11.19
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking bitvec v1.0.1
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling openssl-sys v0.9.110
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling blake3 v1.8.2
[INFO] [stderr]    Compiling bzip2-sys v0.1.13+1.0.8
[INFO] [stderr]    Compiling lzma-sys v0.1.20
[INFO] [stderr]    Compiling lz4-sys v1.11.1+lz4-1.10.0
[INFO] [stderr]    Compiling parse-zoneinfo v0.3.1
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling clickhouse-rs-cityhash-sys v0.1.2
[INFO] [stderr]    Compiling findshlibs v0.10.2
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]     Checking quick-xml v0.26.0
[INFO] [stderr]     Checking time v0.3.44
[INFO] [stderr]     Checking retain_mut v0.1.9
[INFO] [stderr]    Compiling chrono-tz-build v0.2.1
[INFO] [stderr]     Checking str_stack v0.1.0
[INFO] [stderr]     Checking resolv-conf v0.7.5
[INFO] [stderr]     Checking bzip2 v0.5.2
[INFO] [stderr]     Checking whoami v1.6.1
[INFO] [stderr]    Compiling pprof v0.12.1
[INFO] [stderr]     Checking bzip2 v0.4.4
[INFO] [stderr]    Compiling chrono-tz v0.8.6
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]     Checking nix v0.26.4
[INFO] [stderr]     Checking pbkdf2 v0.11.0
[INFO] [stderr]     Checking sha-1 v0.10.1
[INFO] [stderr]     Checking combine v4.6.7
[INFO] [stderr]     Checking bstr v1.12.0
[INFO] [stderr]     Checking glob v0.3.3
[INFO] [stderr]     Checking sha1_smol v1.0.1
[INFO] [stderr]     Checking take_mut v0.2.2
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking dotenv v0.15.0
[INFO] [stderr]     Checking try-partialord v0.1.3
[INFO] [stderr]    Compiling darling_core v0.13.4
[INFO] [stderr]    Compiling serde_derive_internals v0.26.0
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]    Compiling snafu-derive v0.7.5
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling enum-as-inner v0.4.0
[INFO] [stderr]    Compiling clickhouse-derive v0.1.1
[INFO] [stderr]    Compiling sealed v0.4.0
[INFO] [stderr]    Compiling typed-builder v0.10.0
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]     Checking xz2 v0.1.7
[INFO] [stderr]    Compiling zerocopy-derive v0.8.27
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]     Checking snafu v0.7.5
[INFO] [stderr]    Compiling sqlparser_derive v0.2.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking sqlparser v0.44.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]     Checking zerovec v0.11.4
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]    Compiling darling_macro v0.13.4
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling prost-derive v0.12.6
[INFO] [stderr]    Compiling darling v0.13.4
[INFO] [stderr]    Compiling serde_with_macros v1.5.2
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.3
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]    Compiling derive_more v0.99.20
[INFO] [stderr]     Checking comfy-table v7.1.1
[INFO] [stderr]    Compiling enum-iterator-derive v1.5.0
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking chrono v0.4.39
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking arrow-buffer v51.0.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking arrow-buffer v50.0.0
[INFO] [stderr]     Checking uuid v1.18.1
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking arrow-data v51.0.0
[INFO] [stderr]     Checking debugid v0.8.0
[INFO] [stderr]     Checking axum-core v0.3.4
[INFO] [stderr]     Checking symbolic-common v12.17.0
[INFO] [stderr]     Checking arrow-data v50.0.0
[INFO] [stderr]     Checking prost v0.12.6
[INFO] [stderr]     Checking inferno v0.11.21
[INFO] [stderr]     Checking serde_with v1.14.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking thiserror v2.0.17
[INFO] [stderr]     Checking arrow-array v50.0.0
[INFO] [stderr]     Checking enum-iterator v2.3.0
[INFO] [stderr]     Checking postgres-protocol v0.6.9
[INFO] [stderr]     Checking bson v2.15.0
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking tokio-util v0.7.16
[INFO] [stderr]     Checking tokio-io-timeout v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]     Checking deadpool-runtime v0.1.4
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking postgres-types v0.2.11
[INFO] [stderr]     Checking datafusion-common-runtime v37.1.0
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking deadpool v0.9.5
[INFO] [stderr]     Checking tokio-rustls v0.24.1
[INFO] [stderr]     Checking async-compression v0.4.19
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]     Checking tokio-postgres v0.7.15
[INFO] [stderr]     Checking object_store v0.9.1
[INFO] [stderr]     Checking trust-dns-proto v0.21.2
[INFO] [stderr]     Checking redis v0.24.0
[INFO] [stderr]     Checking arrow-select v50.0.0
[INFO] [stderr]     Checking arrow-arith v50.0.0
[INFO] [stderr]     Checking arrow-row v50.0.0
[INFO] [stderr]     Checking arrow-cast v50.0.0
[INFO] [stderr]     Checking arrow-string v50.0.0
[INFO] [stderr]     Checking arrow-ord v50.0.0
[INFO] [stderr]     Checking lz4 v1.28.1
[INFO] [stderr]     Checking deadpool-postgres v0.10.5
[INFO] [stderr]     Checking arrow-ipc v50.0.0
[INFO] [stderr]     Checking arrow-csv v50.0.0
[INFO] [stderr]     Checking arrow-json v50.0.0
[INFO] [stderr]     Checking trust-dns-resolver v0.21.2
[INFO] [stderr]     Checking arrow-array v51.0.0
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking arrow v50.0.0
[INFO] [stderr]     Checking parquet v50.0.0
[INFO] [stderr]     Checking mongodb v2.8.2
[INFO] [stderr]     Checking arrow-select v51.0.0
[INFO] [stderr]     Checking arrow-row v51.0.0
[INFO] [stderr]     Checking arrow-arith v51.0.0
[INFO] [stderr]     Checking arrow-cast v51.0.0
[INFO] [stderr]     Checking arrow-string v51.0.0
[INFO] [stderr]     Checking arrow-ord v51.0.0
[INFO] [stderr]     Checking hyper-timeout v0.4.1
[INFO] [stderr]     Checking axum v0.6.20
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking clickhouse v0.11.6
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking arrow-ipc v51.0.0
[INFO] [stderr]     Checking arrow-json v51.0.0
[INFO] [stderr]     Checking arrow-csv v51.0.0
[INFO] [stderr]     Checking arrow v51.0.0
[INFO] [stderr]     Checking parquet v51.0.0
[INFO] [stderr]     Checking tonic v0.10.2
[INFO] [stderr]     Checking datafusion-common v37.1.0
[INFO] [stderr]     Checking arrow-flight v50.0.0
[INFO] [stderr]     Checking datafusion-expr v37.1.0
[INFO] [stderr]     Checking datafusion-execution v37.1.0
[INFO] [stderr]     Checking datafusion-sql v37.1.0
[INFO] [stderr]     Checking datafusion-physical-expr v37.1.0
[INFO] [stderr]     Checking datafusion-functions v37.1.0
[INFO] [stderr]     Checking datafusion-physical-plan v37.1.0
[INFO] [stderr]     Checking datafusion-optimizer v37.1.0
[INFO] [stderr]     Checking datafusion-functions-array v37.1.0
[INFO] [stderr]     Checking datafusion v37.1.0
[INFO] [stderr]     Checking robots v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0761]: file for module `builder` found at both "src/strategy/builder.rs" and "src/strategy/builder/mod.rs"
[INFO] [stdout]  --> src/strategy/mod.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub mod builder;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: delete or rename one of them to remove the ambiguity
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0761]: file for module `builder` found at both "src/strategy/builder.rs" and "src/strategy/builder/mod.rs"
[INFO] [stdout]  --> src/strategy/mod.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub mod builder;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: delete or rename one of them to remove the ambiguity
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::metrics::BacktestReport`
[INFO] [stdout]  --> src/backtest/backtest_orchestrator.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::metrics::BacktestReport;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PositionBook`
[INFO] [stdout]  --> src/backtest/backtest_orchestrator.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::position::{PositionBook, PositionManager};
[INFO] [stdout]   |                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TimeframeData`
[INFO] [stdout]  --> src/backtest/condition_evaluator.rs:8:49
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::strategy::context::{StrategyContext, TimeframeData};
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::candles::aggregator::TimeFrameAggregator`
[INFO] [stdout]  --> src/backtest/engine.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::candles::aggregator::TimeFrameAggregator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TimeframeData`
[INFO] [stdout]   --> src/backtest/engine.rs:13:49
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::strategy::context::{StrategyContext, TimeframeData};
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StrategySignalType`
[INFO] [stdout]   --> src/backtest/engine.rs:15:81
[INFO] [stdout]    |
[INFO] [stdout] 15 |     StrategyDecision, StrategyDefinition, StrategyParameterMap, StrategySignal, StrategySignalType,
[INFO] [stdout]    |                                                                                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TimeframeData`
[INFO] [stdout]  --> src/backtest/feed_manager.rs:6:49
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::strategy::context::{StrategyContext, TimeframeData};
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StrategyError`
[INFO] [stdout]   --> src/backtest/indicator_engine.rs:10:73
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::strategy::types::{IndicatorBindingSpec, IndicatorSourceSpec, StrategyError};
[INFO] [stdout]    |                                                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::converter::TimeFrameConverter`
[INFO] [stdout]  --> src/candles/aggregator/expander.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::converter::TimeFrameConverter;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `Utc`
[INFO] [stdout]  --> src/candles/aggregator/expander.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use chrono::{DateTime, Duration, Utc};
[INFO] [stdout]   |              ^^^^^^^^            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `Utc`
[INFO] [stdout]  --> src/candles/builders.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> src/candles/builders.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::VecDeque;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrow_flight::flight_service_server::FlightServiceServer`
[INFO] [stdout]  --> src/data_access/database/arrow_flight.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use arrow_flight::flight_service_server::FlightServiceServer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrow_flight::sql::server::FlightSqlService`
[INFO] [stdout]  --> src/data_access/database/arrow_flight.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use arrow_flight::sql::server::FlightSqlService;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ActionType`, `Criteria`, `Empty`, `FlightInfo`, `HandshakeRequest`, `HandshakeResponse`, `PutResult`, `SchemaResult`, and `Ticket`
[INFO] [stdout]   --> src/data_access/database/arrow_flight.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Action, ActionType, Criteria, Empty, FlightData, FlightDescriptor, FlightInfo,
[INFO] [stdout]    |             ^^^^^^^^^^  ^^^^^^^^  ^^^^^                                ^^^^^^^^^^
[INFO] [stdout] 12 |     HandshakeRequest, HandshakeResponse, PutResult, SchemaResult, Ticket,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/data_access/database/arrow_flight.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/data_access/database/arrow_flight.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]   --> src/data_access/database/arrow_flight.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use tokio::sync::Mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Response`, `Status`, and `Streaming`
[INFO] [stdout]   --> src/data_access/database/arrow_flight.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 | use tonic::{Request, Response, Status, Streaming};
[INFO] [stdout]    |                      ^^^^^^^^  ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_access::models::*`
[INFO] [stdout]  --> src/data_access/database/clickhouse.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::data_access::models::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_access::models::*`
[INFO] [stdout]  --> src/data_access/database/datafusion.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::data_access::models::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataType` and `Field`
[INFO] [stdout]  --> src/data_access/database/datafusion.rs:8:36
[INFO] [stdout]   |
[INFO] [stdout] 8 | use datafusion::arrow::datatypes::{DataType, Field, Schema};
[INFO] [stdout]   |                                    ^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `datafusion::common::Result as DataFusionResult`
[INFO] [stdout]  --> src/data_access/database/datafusion.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use datafusion::common::Result as DataFusionResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/data_access/database/datafusion.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_access::models::*`
[INFO] [stdout]  --> src/data_access/database/postgresql.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::data_access::models::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `Utc`
[INFO] [stdout]  --> src/data_access/database/postgresql.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use chrono::{DateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Row`
[INFO] [stdout]   --> src/data_access/database/postgresql.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tokio_postgres::{NoTls, Row};
[INFO] [stdout]    |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DataAccessError`
[INFO] [stdout]  --> src/data_access/examples/arrow_parquet_examples.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::data_access::{DataAccessError, Result};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MongoDBQueryBuilder`, `SortDirection`, and `UserQueryBuilder`
[INFO] [stdout]   --> src/data_access/examples/mongodb_examples.rs:8:5
[INFO] [stdout]    |
[INFO] [stdout]  8 |     MongoDBQueryBuilder,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  9 |     SortDirection,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     UserQueryBuilder,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]   --> src/data_access/examples/mongodb_examples.rs:20:14
[INFO] [stdout]    |
[INFO] [stdout] 20 | use chrono::{DateTime, Utc};
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PostgreSQLConfig`
[INFO] [stdout]  --> src/data_access/examples/postgresql_examples.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     PostgreSQLConfig, PostgreSQLConnector, PostgreSQLUtils,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]   --> src/data_access/examples/postgresql_examples.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | use chrono::{DateTime, Utc};
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_access::models::*`
[INFO] [stdout]  --> src/data_access/query_builder/arrow.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::data_access::models::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/data_access/query_builder/arrow.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/data_access/query_builder/arrow.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/data_access/query_builder/clickhouse.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/data_access/query_builder/clickhouse.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/data_access/query_builder/postgresql.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/data_access/query_builder/postgresql.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataAccessError` and `Result`
[INFO] [stdout]  --> src/data_access/query_builder/redis.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::data_access::{DataAccessError, Result};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deserialize`
[INFO] [stdout]  --> src/data_access/query_builder/redis.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/data_access/query_builder/redis.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BarBuilderError`
[INFO] [stdout]  --> src/data_model/quote_frame.rs:9:63
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::candles::builders::{BarBuilder, BarBuilderFactory, BarBuilderError};
[INFO] [stdout]   |                                                               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Any` and `TypeId`
[INFO] [stdout]  --> src/di/service_provider.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::any::{Any, TypeId};
[INFO] [stdout]   |                ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/di/setup.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::strategy::base::Strategy`
[INFO] [stdout]  --> src/di/setup.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::strategy::base::Strategy;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/discovery/strategy_converter/condition_builder.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndicatorInfo`
[INFO] [stdout]  --> src/discovery/strategy_converter/condition_builder.rs:5:46
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::discovery::types::{ConditionInfo, IndicatorInfo};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConditionDeclarativeSpec` and `PriceField`
[INFO] [stdout]  --> src/discovery/strategy_converter/condition_builder.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 |     ConditionBindingSpec, ConditionDeclarativeSpec, ConditionInputSpec, ConditionOperator,
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     IndicatorBindingSpec, PriceField,
[INFO] [stdout]   |                           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::builders::condition_builder::UnifiedConditionBuilder`
[INFO] [stdout]   --> src/discovery/strategy_converter/condition_builder.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |         use crate::utils::builders::condition_builder::UnifiedConditionBuilder;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/discovery/strategy_converter/handler_builder.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::discovery::types::StopHandlerInfo`
[INFO] [stdout]  --> src/discovery/strategy_converter/handler_builder.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::discovery::types::StopHandlerInfo;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PositionDirection`, `PriceField`, and `StrategyParamValue`
[INFO] [stdout]  --> src/discovery/strategy_converter/handler_builder.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     PositionDirection, PriceField, StopHandlerSpec, StrategyParamValue, TakeHandlerSpec,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/discovery/strategy_converter/indicator_builder.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IndicatorInfo` and `NestedIndicator`
[INFO] [stdout]  --> src/discovery/strategy_converter/indicator_builder.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::discovery::types::{IndicatorInfo, NestedIndicator};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::optimization::condition_id::ConditionId`
[INFO] [stdout]  --> src/discovery/strategy_converter/indicator_builder.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::optimization::condition_id::ConditionId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndicatorSourceSpec`
[INFO] [stdout]  --> src/discovery/strategy_converter/indicator_builder.rs:7:52
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::strategy::types::{IndicatorBindingSpec, IndicatorSourceSpec};
[INFO] [stdout]   |                                                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::Utc`
[INFO] [stdout]  --> src/discovery/strategy_converter/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::Utc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]  --> src/discovery/strategy_converter/main.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{BTreeMap, HashMap};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::discovery::config::StrategyDiscoveryConfig`
[INFO] [stdout]  --> src/discovery/strategy_converter/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::discovery::config::StrategyDiscoveryConfig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConditionInfo` and `IndicatorInfo`
[INFO] [stdout]  --> src/discovery/strategy_converter/main.rs:7:31
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::discovery::types::{ConditionInfo, IndicatorInfo};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::optimization::condition_id::ConditionId`
[INFO] [stdout]  --> src/discovery/strategy_converter/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::optimization::condition_id::ConditionId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::condition_builder::ConditionBuilder`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::condition_builder::ConditionBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::handler_builder::HandlerBuilder`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use super::handler_builder::HandlerBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::indicator_builder::IndicatorBuilder`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use super::indicator_builder::IndicatorBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::metadata_builder::MetadataBuilder`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use super::metadata_builder::MetadataBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::parameter_extractor::ParameterExtractor`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use super::parameter_extractor::ParameterExtractor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::rule_builder::RuleBuilder`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use super::rule_builder::RuleBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConditionBindingSpec`, `ConditionDeclarativeSpec`, `ConditionInputSpec`, `ConditionOperator`, `DataSeriesSource`, `IndicatorBindingSpec`, `IndicatorSourceSpec`, `PositionDirection`, `RuleLogic`, `StopHandlerSpec`, `StrategyCategory`, `StrategyMetadata`, `StrategyParamValue`, `StrategyParameterSpec`, `StrategyRuleSpec`, `StrategySignalType`, and `TakeHandlerSpec`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     ConditionBindingSpec, ConditionDeclarativeSpec, ConditionInputSpec, ConditionOperator,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 18 |     DataSeriesSource, IndicatorBindingSpec, IndicatorSourceSpec, PositionDirection, RuleLogic,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 19 |     StopHandlerSpec, StrategyCategory, StrategyDefinition, StrategyMetadata, StrategyParamValue,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^                      ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 20 |     StrategyParameterMap, StrategyParameterSpec, StrategyRuleSpec, StrategySignalType,
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 21 |     TakeHandlerSpec,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::helpers::get_condition_param_range`
[INFO] [stdout]  --> src/discovery/strategy_converter/parameter_extractor/handler.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::helpers::get_condition_param_range;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `get_default_stop_params` and `get_default_take_params`
[INFO] [stdout]  --> src/discovery/strategy_converter/parameter_extractor/mod.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use handler::{get_default_stop_params, get_default_take_params};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/discovery/types.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `examples`
[INFO] [stdout]   --> src/indicators/mod.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[cfg(feature = "examples")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default`, `pprof`, and `profiling`
[INFO] [stdout]    = help: consider adding `examples` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataConverter` and `DataValidator`
[INFO] [stdout]  --> src/indicators/base.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     DataConverter, DataValidator, IndicatorCategory, IndicatorError, IndicatorMetadata,
[INFO] [stdout]   |     ^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndicatorId`
[INFO] [stdout]  --> src/indicators/registry.rs:6:44
[INFO] [stdout]   |
[INFO] [stdout] 6 |         IndicatorCategory, IndicatorError, IndicatorId, IndicatorType, OHLCData, ParameterSet,
[INFO] [stdout]   |                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PriceField`
[INFO] [stdout]   --> src/indicators/impl/trend/sma.rs:13:49
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::strategy::types::{ConditionOperator, PriceField};
[INFO] [stdout]    |                                                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_model::vector_ops::unsafe_ops`
[INFO] [stdout]  --> src/indicators/impl/volatility/atr.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::data_model::vector_ops::unsafe_ops;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/indicators/mod.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub use registry::*;
[INFO] [stdout]    |         ^^^^^^^^^^^ the name `IndicatorMetadata` in the type namespace is first re-exported here
[INFO] [stdout] 25 | pub use types::*;
[INFO] [stdout]    |         -------- but the name `IndicatorMetadata` in the type namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NestingConfig`
[INFO] [stdout]  --> src/optimization/build_rules_provider.rs:2:52
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::indicators::base::{IndicatorBuildRules, NestingConfig, ThresholdType};
[INFO] [stdout]   |                                                    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::optimization::condition_id::ConditionId`
[INFO] [stdout]  --> src/optimization/builders/condition_builder.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::optimization::condition_id::ConditionId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::optimization::builders::IndicatorBuilder`
[INFO] [stdout]   --> src/optimization/builders/condition_builder.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::optimization::builders::IndicatorBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::condition::ConditionParameterPresets`
[INFO] [stdout]  --> src/optimization/candidate_builder/helpers.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::condition::ConditionParameterPresets;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `can_accept_nested_input`, `get_allowed_conditions`, `has_absolute_threshold`, and `has_percent_of_price_threshold`
[INFO] [stdout]   --> src/optimization/candidate_builder/helpers.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     can_accept_nested_input, get_allowed_conditions, has_absolute_threshold,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 12 |     has_percent_of_price_threshold, is_oscillator_like, is_phase_1_allowed,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::super::builders::ConditionBuilder`
[INFO] [stdout]   --> src/optimization/candidate_builder/helpers.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use super::super::builders::ConditionBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::condition::ConditionParameterPresets`
[INFO] [stdout]  --> src/optimization/candidate_builder/phase_builder.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::condition::ConditionParameterPresets;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/optimization/candidate_builder/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ElementConstraints` and `ElementProbabilities`
[INFO] [stdout]   --> src/optimization/candidate_builder/mod.rs:12:29
[INFO] [stdout]    |
[INFO] [stdout] 12 |     CandidateBuilderConfig, ElementConstraints, ElementProbabilities,
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StrategyParameterSpec`
[INFO] [stdout]    --> src/optimization/population.rs:130:53
[INFO] [stdout]     |
[INFO] [stdout] 130 |         use crate::strategy::types::{ParameterKind, StrategyParameterSpec};
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StopSignalKind`
[INFO] [stdout]   --> src/position/manager.rs:14:48
[INFO] [stdout]    |
[INFO] [stdout] 14 |     PositionDirection, PriceField, StopSignal, StopSignalKind, StrategyDecision, StrategyError,
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `extract_number_required` and `has_parameter`
[INFO] [stdout]  --> src/risk/factory.rs:7:60
[INFO] [stdout]   |
[INFO] [stdout] 7 |     extract_indicator_params_with_aliases, extract_number, extract_number_required,
[INFO] [stdout]   |                                                            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     extract_percentage, extract_string_required, has_parameter, normalize_indicator_params,
[INFO] [stdout]   |                                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParameterSet`
[INFO] [stdout]  --> src/risk/parameters.rs:2:68
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::indicators::types::{IndicatorParameter, ParameterRange, ParameterSet, ParameterType};
[INFO] [stdout]   |                                                                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PositionDirection`
[INFO] [stdout]  --> src/strategy/presets.rs:4:39
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::types::{ConditionOperator, PositionDirection, StrategyCategory, StrategyDefinition};
[INFO] [stdout]   |                                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::parameter_extraction::get_condition_param_range`
[INFO] [stdout]   --> src/utils/builders/condition_builder.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::utils::parameter_extraction::get_condition_param_range;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `middle` in this scope
[INFO] [stdout]   --> src/indicators/tests.rs:99:38
[INFO] [stdout]    |
[INFO] [stdout] 99 |             let upper_diff = upper - middle;
[INFO] [stdout]    |                                      ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `middle` in this scope
[INFO] [stdout]    --> src/indicators/tests.rs:100:30
[INFO] [stdout]     |
[INFO] [stdout] 100 |             let lower_diff = middle - lower;
[INFO] [stdout]     |                              ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::metrics::BacktestReport`
[INFO] [stdout]  --> src/backtest/backtest_orchestrator.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::metrics::BacktestReport;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PositionBook`
[INFO] [stdout]  --> src/backtest/backtest_orchestrator.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::position::{PositionBook, PositionManager};
[INFO] [stdout]   |                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TimeframeData`
[INFO] [stdout]  --> src/backtest/condition_evaluator.rs:8:49
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::strategy::context::{StrategyContext, TimeframeData};
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::candles::aggregator::TimeFrameAggregator`
[INFO] [stdout]  --> src/backtest/engine.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::candles::aggregator::TimeFrameAggregator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TimeframeData`
[INFO] [stdout]   --> src/backtest/engine.rs:13:49
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::strategy::context::{StrategyContext, TimeframeData};
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StrategySignalType`
[INFO] [stdout]   --> src/backtest/engine.rs:15:81
[INFO] [stdout]    |
[INFO] [stdout] 15 |     StrategyDecision, StrategyDefinition, StrategyParameterMap, StrategySignal, StrategySignalType,
[INFO] [stdout]    |                                                                                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TimeframeData`
[INFO] [stdout]  --> src/backtest/feed_manager.rs:6:49
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::strategy::context::{StrategyContext, TimeframeData};
[INFO] [stdout]   |                                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StrategyError`
[INFO] [stdout]   --> src/backtest/indicator_engine.rs:10:73
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::strategy::types::{IndicatorBindingSpec, IndicatorSourceSpec, StrategyError};
[INFO] [stdout]    |                                                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/backtest/tests.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use super::*;
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `StrategyCategory` and `StrategyDefinition`
[INFO] [stdout]   --> src/backtest/tests.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         StrategyCategory, StrategyDecision, StrategyDefinition, StrategyError, StrategyId,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^                    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::converter::TimeFrameConverter`
[INFO] [stdout]  --> src/candles/aggregator/expander.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::converter::TimeFrameConverter;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `Utc`
[INFO] [stdout]  --> src/candles/aggregator/expander.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use chrono::{DateTime, Duration, Utc};
[INFO] [stdout]   |              ^^^^^^^^            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `Utc`
[INFO] [stdout]  --> src/candles/builders.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> src/candles/builders.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::VecDeque;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/condition/tests.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use super::*;
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrow_flight::flight_service_server::FlightServiceServer`
[INFO] [stdout]  --> src/data_access/database/arrow_flight.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use arrow_flight::flight_service_server::FlightServiceServer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `arrow_flight::sql::server::FlightSqlService`
[INFO] [stdout]  --> src/data_access/database/arrow_flight.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use arrow_flight::sql::server::FlightSqlService;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ActionType`, `Criteria`, `Empty`, `FlightInfo`, `HandshakeRequest`, `HandshakeResponse`, `PutResult`, `SchemaResult`, and `Ticket`
[INFO] [stdout]   --> src/data_access/database/arrow_flight.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Action, ActionType, Criteria, Empty, FlightData, FlightDescriptor, FlightInfo,
[INFO] [stdout]    |             ^^^^^^^^^^  ^^^^^^^^  ^^^^^                                ^^^^^^^^^^
[INFO] [stdout] 12 |     HandshakeRequest, HandshakeResponse, PutResult, SchemaResult, Ticket,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/data_access/database/arrow_flight.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/data_access/database/arrow_flight.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]   --> src/data_access/database/arrow_flight.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use tokio::sync::Mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Response`, `Status`, and `Streaming`
[INFO] [stdout]   --> src/data_access/database/arrow_flight.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 | use tonic::{Request, Response, Status, Streaming};
[INFO] [stdout]    |                      ^^^^^^^^  ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_access::models::*`
[INFO] [stdout]  --> src/data_access/database/clickhouse.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::data_access::models::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_access::models::*`
[INFO] [stdout]  --> src/data_access/database/datafusion.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::data_access::models::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataType` and `Field`
[INFO] [stdout]  --> src/data_access/database/datafusion.rs:8:36
[INFO] [stdout]   |
[INFO] [stdout] 8 | use datafusion::arrow::datatypes::{DataType, Field, Schema};
[INFO] [stdout]   |                                    ^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `datafusion::common::Result as DataFusionResult`
[INFO] [stdout]  --> src/data_access/database/datafusion.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use datafusion::common::Result as DataFusionResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/data_access/database/datafusion.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_access::models::*`
[INFO] [stdout]  --> src/data_access/database/postgresql.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::data_access::models::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `Utc`
[INFO] [stdout]  --> src/data_access/database/postgresql.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use chrono::{DateTime, Utc};
[INFO] [stdout]   |              ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Row`
[INFO] [stdout]   --> src/data_access/database/postgresql.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tokio_postgres::{NoTls, Row};
[INFO] [stdout]    |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DataAccessError`
[INFO] [stdout]  --> src/data_access/examples/arrow_parquet_examples.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::data_access::{DataAccessError, Result};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MongoDBQueryBuilder`, `SortDirection`, and `UserQueryBuilder`
[INFO] [stdout]   --> src/data_access/examples/mongodb_examples.rs:8:5
[INFO] [stdout]    |
[INFO] [stdout]  8 |     MongoDBQueryBuilder,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  9 |     SortDirection,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     UserQueryBuilder,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]   --> src/data_access/examples/mongodb_examples.rs:20:14
[INFO] [stdout]    |
[INFO] [stdout] 20 | use chrono::{DateTime, Utc};
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PostgreSQLConfig`
[INFO] [stdout]  --> src/data_access/examples/postgresql_examples.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     PostgreSQLConfig, PostgreSQLConnector, PostgreSQLUtils,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]   --> src/data_access/examples/postgresql_examples.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | use chrono::{DateTime, Utc};
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_access::models::*`
[INFO] [stdout]  --> src/data_access/query_builder/arrow.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::data_access::models::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/data_access/query_builder/arrow.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/data_access/query_builder/arrow.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/data_access/query_builder/clickhouse.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/data_access/query_builder/clickhouse.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/data_access/query_builder/postgresql.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/data_access/query_builder/postgresql.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataAccessError` and `Result`
[INFO] [stdout]  --> src/data_access/query_builder/redis.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::data_access::{DataAccessError, Result};
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deserialize`
[INFO] [stdout]  --> src/data_access/query_builder/redis.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/data_access/query_builder/redis.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BarBuilderError`
[INFO] [stdout]  --> src/data_model/quote_frame.rs:9:63
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::candles::builders::{BarBuilder, BarBuilderFactory, BarBuilderError};
[INFO] [stdout]   |                                                               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Any` and `TypeId`
[INFO] [stdout]  --> src/di/service_provider.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::any::{Any, TypeId};
[INFO] [stdout]   |                ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/di/setup.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::strategy::base::Strategy`
[INFO] [stdout]  --> src/di/setup.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::strategy::base::Strategy;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/discovery/strategy_converter/condition_builder.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndicatorInfo`
[INFO] [stdout]  --> src/discovery/strategy_converter/condition_builder.rs:5:46
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::discovery::types::{ConditionInfo, IndicatorInfo};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConditionDeclarativeSpec` and `PriceField`
[INFO] [stdout]  --> src/discovery/strategy_converter/condition_builder.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 |     ConditionBindingSpec, ConditionDeclarativeSpec, ConditionInputSpec, ConditionOperator,
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     IndicatorBindingSpec, PriceField,
[INFO] [stdout]   |                           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::builders::condition_builder::UnifiedConditionBuilder`
[INFO] [stdout]   --> src/discovery/strategy_converter/condition_builder.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |         use crate::utils::builders::condition_builder::UnifiedConditionBuilder;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/discovery/strategy_converter/handler_builder.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::discovery::types::StopHandlerInfo`
[INFO] [stdout]  --> src/discovery/strategy_converter/handler_builder.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::discovery::types::StopHandlerInfo;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PositionDirection`, `PriceField`, and `StrategyParamValue`
[INFO] [stdout]  --> src/discovery/strategy_converter/handler_builder.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     PositionDirection, PriceField, StopHandlerSpec, StrategyParamValue, TakeHandlerSpec,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/discovery/strategy_converter/indicator_builder.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IndicatorInfo` and `NestedIndicator`
[INFO] [stdout]  --> src/discovery/strategy_converter/indicator_builder.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::discovery::types::{IndicatorInfo, NestedIndicator};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::optimization::condition_id::ConditionId`
[INFO] [stdout]  --> src/discovery/strategy_converter/indicator_builder.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::optimization::condition_id::ConditionId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndicatorSourceSpec`
[INFO] [stdout]  --> src/discovery/strategy_converter/indicator_builder.rs:7:52
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::strategy::types::{IndicatorBindingSpec, IndicatorSourceSpec};
[INFO] [stdout]   |                                                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::Utc`
[INFO] [stdout]  --> src/discovery/strategy_converter/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::Utc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]  --> src/discovery/strategy_converter/main.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{BTreeMap, HashMap};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConditionInfo` and `IndicatorInfo`
[INFO] [stdout]  --> src/discovery/strategy_converter/main.rs:7:31
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::discovery::types::{ConditionInfo, IndicatorInfo};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::optimization::condition_id::ConditionId`
[INFO] [stdout]  --> src/discovery/strategy_converter/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::optimization::condition_id::ConditionId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::condition_builder::ConditionBuilder`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::condition_builder::ConditionBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::handler_builder::HandlerBuilder`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use super::handler_builder::HandlerBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::indicator_builder::IndicatorBuilder`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use super::indicator_builder::IndicatorBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::metadata_builder::MetadataBuilder`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use super::metadata_builder::MetadataBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::rule_builder::RuleBuilder`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use super::rule_builder::RuleBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConditionBindingSpec`, `ConditionDeclarativeSpec`, `ConditionInputSpec`, `ConditionOperator`, `DataSeriesSource`, `IndicatorBindingSpec`, `IndicatorSourceSpec`, `PositionDirection`, `RuleLogic`, `StopHandlerSpec`, `StrategyCategory`, `StrategyMetadata`, `StrategyParamValue`, `StrategyParameterSpec`, `StrategyRuleSpec`, `StrategySignalType`, and `TakeHandlerSpec`
[INFO] [stdout]   --> src/discovery/strategy_converter/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     ConditionBindingSpec, ConditionDeclarativeSpec, ConditionInputSpec, ConditionOperator,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 18 |     DataSeriesSource, IndicatorBindingSpec, IndicatorSourceSpec, PositionDirection, RuleLogic,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 19 |     StopHandlerSpec, StrategyCategory, StrategyDefinition, StrategyMetadata, StrategyParamValue,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^                      ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 20 |     StrategyParameterMap, StrategyParameterSpec, StrategyRuleSpec, StrategySignalType,
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 21 |     TakeHandlerSpec,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::helpers::get_condition_param_range`
[INFO] [stdout]  --> src/discovery/strategy_converter/parameter_extractor/handler.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::helpers::get_condition_param_range;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `get_default_stop_params` and `get_default_take_params`
[INFO] [stdout]  --> src/discovery/strategy_converter/parameter_extractor/mod.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use handler::{get_default_stop_params, get_default_take_params};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StopHandlerInfo`
[INFO] [stdout]    --> src/discovery/strategy_converter/parameter_extractor/mod.rs:108:77
[INFO] [stdout]     |
[INFO] [stdout] 108 |         IndicatorParamInfo as DiscoveryIndicatorParamInfo, NestedIndicator, StopHandlerInfo,
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/discovery/types.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `examples`
[INFO] [stdout]   --> src/indicators/mod.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[cfg(feature = "examples")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default`, `pprof`, and `profiling`
[INFO] [stdout]    = help: consider adding `examples` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataConverter` and `DataValidator`
[INFO] [stdout]  --> src/indicators/base.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     DataConverter, DataValidator, IndicatorCategory, IndicatorError, IndicatorMetadata,
[INFO] [stdout]   |     ^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndicatorId`
[INFO] [stdout]  --> src/indicators/registry.rs:6:44
[INFO] [stdout]   |
[INFO] [stdout] 6 |         IndicatorCategory, IndicatorError, IndicatorId, IndicatorType, OHLCData, ParameterSet,
[INFO] [stdout]   |                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PriceField`
[INFO] [stdout]   --> src/indicators/impl/trend/sma.rs:13:49
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::strategy::types::{ConditionOperator, PriceField};
[INFO] [stdout]    |                                                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_model::vector_ops::unsafe_ops`
[INFO] [stdout]  --> src/indicators/impl/volatility/atr.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::data_model::vector_ops::unsafe_ops;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/indicators/tests.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use super::*;
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: ambiguous glob re-exports
[INFO] [stdout]   --> src/indicators/mod.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub use registry::*;
[INFO] [stdout]    |         ^^^^^^^^^^^ the name `IndicatorMetadata` in the type namespace is first re-exported here
[INFO] [stdout] 25 | pub use types::*;
[INFO] [stdout]    |         -------- but the name `IndicatorMetadata` in the type namespace is also re-exported here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ambiguous_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NestingConfig`
[INFO] [stdout]  --> src/optimization/build_rules_provider.rs:2:52
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::indicators::base::{IndicatorBuildRules, NestingConfig, ThresholdType};
[INFO] [stdout]   |                                                    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::optimization::condition_id::ConditionId`
[INFO] [stdout]  --> src/optimization/builders/condition_builder.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::optimization::condition_id::ConditionId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::optimization::builders::IndicatorBuilder`
[INFO] [stdout]   --> src/optimization/builders/condition_builder.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::optimization::builders::IndicatorBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::condition::ConditionParameterPresets`
[INFO] [stdout]  --> src/optimization/candidate_builder/helpers.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::condition::ConditionParameterPresets;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `can_accept_nested_input`, `get_allowed_conditions`, `has_absolute_threshold`, and `has_percent_of_price_threshold`
[INFO] [stdout]   --> src/optimization/candidate_builder/helpers.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     can_accept_nested_input, get_allowed_conditions, has_absolute_threshold,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 12 |     has_percent_of_price_threshold, is_oscillator_like, is_phase_1_allowed,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::super::builders::ConditionBuilder`
[INFO] [stdout]   --> src/optimization/candidate_builder/helpers.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use super::super::builders::ConditionBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::condition::ConditionParameterPresets`
[INFO] [stdout]  --> src/optimization/candidate_builder/phase_builder.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::condition::ConditionParameterPresets;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/optimization/candidate_builder/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ElementConstraints` and `ElementProbabilities`
[INFO] [stdout]   --> src/optimization/candidate_builder/mod.rs:12:29
[INFO] [stdout]    |
[INFO] [stdout] 12 |     CandidateBuilderConfig, ElementConstraints, ElementProbabilities,
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EvaluatedStrategy` and `GeneticIndividual`
[INFO] [stdout]   --> src/optimization/island.rs:48:38
[INFO] [stdout]    |
[INFO] [stdout] 48 |     use crate::optimization::types::{EvaluatedStrategy, GeneticIndividual, Population};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::strategy::types::StrategyParamValue`
[INFO] [stdout]   --> src/optimization/migration.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     use crate::strategy::types::StrategyParamValue;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StrategyParameterSpec`
[INFO] [stdout]    --> src/optimization/population.rs:130:53
[INFO] [stdout]     |
[INFO] [stdout] 130 |         use crate::strategy::types::{ParameterKind, StrategyParameterSpec};
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TrendDirection`
[INFO] [stdout]    --> src/position/manager.rs:934:51
[INFO] [stdout]     |
[INFO] [stdout] 934 |     use crate::condition::types::{SignalStrength, TrendDirection};
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `extract_number_required` and `has_parameter`
[INFO] [stdout]  --> src/risk/factory.rs:7:60
[INFO] [stdout]   |
[INFO] [stdout] 7 |     extract_indicator_params_with_aliases, extract_number, extract_number_required,
[INFO] [stdout]   |                                                            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     extract_percentage, extract_string_required, has_parameter, normalize_indicator_params,
[INFO] [stdout]   |                                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParameterSet`
[INFO] [stdout]  --> src/risk/parameters.rs:2:68
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::indicators::types::{IndicatorParameter, ParameterRange, ParameterSet, ParameterType};
[INFO] [stdout]   |                                                                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PositionDirection`
[INFO] [stdout]  --> src/strategy/presets.rs:4:39
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::types::{ConditionOperator, PositionDirection, StrategyCategory, StrategyDefinition};
[INFO] [stdout]   |                                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::parameter_extraction::get_condition_param_range`
[INFO] [stdout]   --> src/utils/builders/condition_builder.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::utils::parameter_extraction::get_condition_param_range;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::discovery::types::ConditionParamInfo`
[INFO] [stdout]    --> src/utils/builders/condition_builder.rs:369:9
[INFO] [stdout]     |
[INFO] [stdout] 369 |     use crate::discovery::types::ConditionParamInfo;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::strategy::types::IndicatorSourceSpec`
[INFO] [stdout]    --> src/utils/converters/indicator_converter.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |     use crate::strategy::types::IndicatorSourceSpec;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::strategy::types::ConditionOperator`
[INFO] [stdout]    --> src/utils/converters/strategy_converter.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |     use crate::strategy::types::ConditionOperator;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:125:13
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let mut stream = futures::stream::iter(flight_data_stream);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:125:13
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let mut stream = futures::stream::iter(flight_data_stream);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]    --> src/data_model/types.rs:236:15
[INFO] [stdout]     |
[INFO] [stdout] 236 |     DateTime::from_utc(naive, Utc)
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
[INFO] [stdout]    --> src/data_model/types.rs:236:15
[INFO] [stdout]     |
[INFO] [stdout] 236 |     DateTime::from_utc(naive, Utc)
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BarBuilder`
[INFO] [stdout]  --> src/data_model/quote_frame.rs:9:32
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::candles::builders::{BarBuilder, BarBuilderFactory, BarBuilderError};
[INFO] [stdout]   |                                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::indicators::base::Indicator`
[INFO] [stdout]  --> src/discovery/strategy_converter/parameter_extractor/indicator.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::indicators::base::Indicator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/backtest/engine.rs:412:17
[INFO] [stdout]     |
[INFO] [stdout] 412 |             let mut decision = self
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `aggregated_idx`
[INFO] [stdout]   --> src/candles/aggregator/mod.rs:78:17
[INFO] [stdout]    |
[INFO] [stdout] 78 |             let aggregated_idx = aggregated_quotes.len();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_aggregated_idx`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/candles/aggregator/mod.rs:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |         let mut new_candle_open = first_quote.open();
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `descriptor`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:123:13
[INFO] [stdout]     |
[INFO] [stdout] 123 |         let descriptor = FlightDescriptor::new_cmd("INSERT".to_string());
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flight_data`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:142:43
[INFO] [stdout]     |
[INFO] [stdout] 142 |     fn flight_data_to_record_batch_static(flight_data: FlightData) -> Result<RecordBatch> {
[INFO] [stdout]     |                                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_flight_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:151:43
[INFO] [stdout]     |
[INFO] [stdout] 151 |     fn record_batch_to_flight_data(&self, batch: RecordBatch) -> Result<FlightData> {
[INFO] [stdout]     |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batches`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |         let batches = self.base_connector.get_data(&query).await?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `candles`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:308:42
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub async fn send_candles(&mut self, candles: Vec<Candle>) -> Result<()> {
[INFO] [stdout]     |                                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_candles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batches`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |         let batches = self.base_connector.get_data(&query).await?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trades`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:339:41
[INFO] [stdout]     |
[INFO] [stdout] 339 |     pub async fn send_trades(&mut self, trades: Vec<Trade>) -> Result<()> {
[INFO] [stdout]     |                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_trades`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query`
[INFO] [stdout]     --> src/data_access/database/clickhouse.rs:1597:30
[INFO] [stdout]      |
[INFO] [stdout] 1597 |     async fn query<T>(&self, query: &str) -> Result<Vec<T>>
[INFO] [stdout]      |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query`
[INFO] [stdout]     --> src/data_access/database/clickhouse.rs:1620:42
[INFO] [stdout]      |
[INFO] [stdout] 1620 |     async fn query_with_params<T>(&self, query: &str, _params: &[&dyn ToSql]) -> Result<Vec<T>>
[INFO] [stdout]      |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed for `Vec<_>`
[INFO] [stdout]    --> src/utils/builders/condition_builder.rs:398:13
[INFO] [stdout]     |
[INFO] [stdout] 398 |         let indicator_bindings = vec![];
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^   ------ type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `indicator_bindings` an explicit type, where the placeholder `_` is specified
[INFO] [stdout]     |
[INFO] [stdout] 398 |         let indicator_bindings: Vec<_> = vec![];
[INFO] [stdout]     |                               ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]   --> src/data_access/database/datafusion.rs:87:19
[INFO] [stdout]    |
[INFO] [stdout] 87 |             .map(|batch| {
[INFO] [stdout]    |                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batches`
[INFO] [stdout]    --> src/data_access/database/datafusion.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 123 |         batches: Vec<ArrowRecordBatch>,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `df`
[INFO] [stdout]    --> src/data_access/database/datafusion.rs:156:13
[INFO] [stdout]     |
[INFO] [stdout] 156 |         let df = context
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_df`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/data_access/database/datafusion.rs:250:13
[INFO] [stdout]     |
[INFO] [stdout] 250 |         let context = self.context.as_ref().ok_or_else(|| {
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/data_access/database/datafusion.rs:310:13
[INFO] [stdout]     |
[INFO] [stdout] 310 |         let mut config = SessionConfig::new()
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol`
[INFO] [stdout]    --> src/data_access/database/datafusion.rs:502:9
[INFO] [stdout]     |
[INFO] [stdout] 502 |         symbol: &str,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `current_index` found for struct `TimeframeData` in the current scope
[INFO] [stdout]    --> src/utils/helpers/context_helpers.rs:49:25
[INFO] [stdout]     |
[INFO] [stdout]  49 |         assert_eq!(data.current_index(), 0);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/strategy/context.rs:57:1
[INFO] [stdout]     |
[INFO] [stdout]  57 | pub struct TimeframeData {
[INFO] [stdout]     | ------------------------ method `current_index` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `set_index` with a similar name, but with different arguments
[INFO] [stdout]    --> src/strategy/context.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     pub fn set_index(&mut self, index: usize) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BarBuilder`
[INFO] [stdout]  --> src/data_model/quote_frame.rs:9:32
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::candles::builders::{BarBuilder, BarBuilderFactory, BarBuilderError};
[INFO] [stdout]   |                                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::indicators::base::Indicator`
[INFO] [stdout]  --> src/discovery/strategy_converter/parameter_extractor/indicator.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::indicators::base::Indicator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/backtest/engine.rs:412:17
[INFO] [stdout]     |
[INFO] [stdout] 412 |             let mut decision = self
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tf_240`
[INFO] [stdout]    --> src/backtest/tests.rs:366:13
[INFO] [stdout]     |
[INFO] [stdout] 366 |         let tf_240 = TimeFrame::Minutes(240);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tf_240`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `calculator`
[INFO] [stdout]    --> src/backtest/tests.rs:563:13
[INFO] [stdout]     |
[INFO] [stdout] 563 |         let calculator = EquityCalculator::new(10000.0);
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_calculator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `calculator2`
[INFO] [stdout]    --> src/backtest/tests.rs:564:13
[INFO] [stdout]     |
[INFO] [stdout] 564 |         let calculator2 = EquityCalculator::new(5000.0);
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_calculator2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/backtest/tests.rs:571:13
[INFO] [stdout]     |
[INFO] [stdout] 571 |         let mut position_manager = crate::position::PositionManager::new("test".to_string());
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `evaluator`
[INFO] [stdout]    --> src/backtest/tests.rs:600:13
[INFO] [stdout]     |
[INFO] [stdout] 600 |         let evaluator = ConditionEvaluator::new();
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_evaluator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `evaluator`
[INFO] [stdout]    --> src/backtest/tests.rs:606:13
[INFO] [stdout]     |
[INFO] [stdout] 606 |         let evaluator = ConditionEvaluator::default();
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_evaluator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> src/backtest/tests.rs:612:13
[INFO] [stdout]     |
[INFO] [stdout] 612 |         let engine = IndicatorEngine::new();
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> src/backtest/tests.rs:618:13
[INFO] [stdout]     |
[INFO] [stdout] 618 |         let engine = IndicatorEngine::default();
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `service`
[INFO] [stdout]    --> src/backtest/tests.rs:624:13
[INFO] [stdout]     |
[INFO] [stdout] 624 |         let service = TimeFrameAggregationService::new();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_service`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `service`
[INFO] [stdout]    --> src/backtest/tests.rs:630:13
[INFO] [stdout]     |
[INFO] [stdout] 630 |         let service = TimeFrameAggregationService::default();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_service`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `aggregated_idx`
[INFO] [stdout]   --> src/candles/aggregator/mod.rs:78:17
[INFO] [stdout]    |
[INFO] [stdout] 78 |             let aggregated_idx = aggregated_quotes.len();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_aggregated_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/candles/aggregator/mod.rs:372:13
[INFO] [stdout]     |
[INFO] [stdout] 372 |         let mut new_candle_open = first_quote.open();
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client`
[INFO] [stdout]    --> src/data_access/database/mongodb.rs:649:21
[INFO] [stdout]     |
[INFO] [stdout] 649 |         if let Some(client) = self.client.take() {
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_client`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `descriptor`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:123:13
[INFO] [stdout]     |
[INFO] [stdout] 123 |         let descriptor = FlightDescriptor::new_cmd("INSERT".to_string());
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flight_data`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:142:43
[INFO] [stdout]     |
[INFO] [stdout] 142 |     fn flight_data_to_record_batch_static(flight_data: FlightData) -> Result<RecordBatch> {
[INFO] [stdout]     |                                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_flight_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:151:43
[INFO] [stdout]     |
[INFO] [stdout] 151 |     fn record_batch_to_flight_data(&self, batch: RecordBatch) -> Result<FlightData> {
[INFO] [stdout]     |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batches`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |         let batches = self.base_connector.get_data(&query).await?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `candles`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:308:42
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub async fn send_candles(&mut self, candles: Vec<Candle>) -> Result<()> {
[INFO] [stdout]     |                                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_candles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batches`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:331:13
[INFO] [stdout]     |
[INFO] [stdout] 331 |         let batches = self.base_connector.get_data(&query).await?;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trades`
[INFO] [stdout]    --> src/data_access/database/arrow_flight.rs:339:41
[INFO] [stdout]     |
[INFO] [stdout] 339 |     pub async fn send_trades(&mut self, trades: Vec<Trade>) -> Result<()> {
[INFO] [stdout]     |                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_trades`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query`
[INFO] [stdout]     --> src/data_access/database/clickhouse.rs:1597:30
[INFO] [stdout]      |
[INFO] [stdout] 1597 |     async fn query<T>(&self, query: &str) -> Result<Vec<T>>
[INFO] [stdout]      |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `query`
[INFO] [stdout]     --> src/data_access/database/clickhouse.rs:1620:42
[INFO] [stdout]      |
[INFO] [stdout] 1620 |     async fn query_with_params<T>(&self, query: &str, _params: &[&dyn ToSql]) -> Result<Vec<T>>
[INFO] [stdout]      |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]   --> src/data_access/database/datafusion.rs:87:19
[INFO] [stdout]    |
[INFO] [stdout] 87 |             .map(|batch| {
[INFO] [stdout]    |                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batches`
[INFO] [stdout]    --> src/data_access/database/datafusion.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 123 |         batches: Vec<ArrowRecordBatch>,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batches`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `df`
[INFO] [stdout]    --> src/data_access/database/datafusion.rs:156:13
[INFO] [stdout]     |
[INFO] [stdout] 156 |         let df = context
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_df`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/data_access/database/datafusion.rs:250:13
[INFO] [stdout]     |
[INFO] [stdout] 250 |         let context = self.context.as_ref().ok_or_else(|| {
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/data_access/database/datafusion.rs:310:13
[INFO] [stdout]     |
[INFO] [stdout] 310 |         let mut config = SessionConfig::new()
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol`
[INFO] [stdout]    --> src/data_access/database/datafusion.rs:502:9
[INFO] [stdout]     |
[INFO] [stdout] 502 |         symbol: &str,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client`
[INFO] [stdout]    --> src/data_access/database/mongodb.rs:649:21
[INFO] [stdout]     |
[INFO] [stdout] 649 |         if let Some(client) = self.client.take() {
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_client`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]    --> src/data_access/database/postgresql.rs:328:21
[INFO] [stdout]     |
[INFO] [stdout] 328 |         if let Some(pool) = self.pool.take() {
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]    --> src/data_access/database/postgresql.rs:432:13
[INFO] [stdout]     |
[INFO] [stdout] 432 |         for row in rows {
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `test_candles`
[INFO] [stdout]    --> src/data_access/examples/arrow_parquet_examples.rs:290:17
[INFO] [stdout]     |
[INFO] [stdout] 290 |             let test_candles = vec![Candle {
[INFO] [stdout]     |                 ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_test_candles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pattern_condition`
[INFO] [stdout]    --> src/data_access/query_builder/arrow.rs:717:9
[INFO] [stdout]     |
[INFO] [stdout] 717 |         pattern_condition: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pattern_condition`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field`
[INFO] [stdout]    --> src/data_access/query_builder/arrow.rs:730:9
[INFO] [stdout]     |
[INFO] [stdout] 730 |         field: &str,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_field`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_filter`
[INFO] [stdout]    --> src/data_access/query_builder/arrow.rs:732:13
[INFO] [stdout]     |
[INFO] [stdout] 732 |         let symbol_filter = symbols
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_filter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operator`
[INFO] [stdout]    --> src/data_access/query_builder/postgresql.rs:260:43
[INFO] [stdout]     |
[INFO] [stdout] 260 |     pub fn having(mut self, column: &str, operator: &str, value: &str) -> Self {
[INFO] [stdout]     |                                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pool`
[INFO] [stdout]    --> src/data_access/database/postgresql.rs:328:21
[INFO] [stdout]     |
[INFO] [stdout] 328 |         if let Some(pool) = self.pool.take() {
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]    --> src/data_access/database/postgresql.rs:432:13
[INFO] [stdout]     |
[INFO] [stdout] 432 |         for row in rows {
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `candidate`
[INFO] [stdout]   --> src/discovery/strategy_converter/rule_builder.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |         candidate: &StrategyCandidate,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_candidate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `candidate`
[INFO] [stdout]   --> src/discovery/strategy_converter/rule_builder.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         candidate: &StrategyCandidate,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_candidate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `test_candles`
[INFO] [stdout]    --> src/data_access/examples/arrow_parquet_examples.rs:290:17
[INFO] [stdout]     |
[INFO] [stdout] 290 |             let test_candles = vec![Candle {
[INFO] [stdout]     |                 ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_test_candles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `indicator`
[INFO] [stdout]    --> src/optimization/builders/condition_builder.rs:791:9
[INFO] [stdout]     |
[INFO] [stdout] 791 |         indicator: &IndicatorInfo,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indicator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `probabilities`
[INFO] [stdout]   --> src/optimization/builders/operator_selector.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     probabilities: &ConditionProbabilities,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_probabilities`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/optimization/builders/stop_handler_builder.rs:44:21
[INFO] [stdout]    |
[INFO] [stdout] 44 |                 let mut params = Self::make_handler_params(config, available);
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pattern_condition`
[INFO] [stdout]    --> src/data_access/query_builder/arrow.rs:717:9
[INFO] [stdout]     |
[INFO] [stdout] 717 |         pattern_condition: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pattern_condition`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `field`
[INFO] [stdout]    --> src/data_access/query_builder/arrow.rs:730:9
[INFO] [stdout]     |
[INFO] [stdout] 730 |         field: &str,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_field`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `symbol_filter`
[INFO] [stdout]    --> src/data_access/query_builder/arrow.rs:732:13
[INFO] [stdout]     |
[INFO] [stdout] 732 |         let symbol_filter = symbols
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_filter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operator`
[INFO] [stdout]    --> src/data_access/query_builder/postgresql.rs:260:43
[INFO] [stdout]     |
[INFO] [stdout] 260 |     pub fn having(mut self, column: &str, operator: &str, value: &str) -> Self {
[INFO] [stdout]     |                                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `weight1`
[INFO] [stdout]    --> src/optimization/genetic/crossover.rs:247:5
[INFO] [stdout]     |
[INFO] [stdout] 247 |     weight1: f64,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_weight1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `weight2`
[INFO] [stdout]    --> src/optimization/genetic/crossover.rs:248:5
[INFO] [stdout]     |
[INFO] [stdout] 248 |     weight2: f64,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_weight2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `indicator_name_for_param`
[INFO] [stdout]    --> src/optimization/population.rs:142:21
[INFO] [stdout]     |
[INFO] [stdout] 142 |                 let indicator_name_for_param =
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indicator_name_for_param`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/optimization/population.rs:504:33
[INFO] [stdout]     |
[INFO] [stdout] 504 | ...                   let value = min + (step_index as f64 * step);
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `persistence`
[INFO] [stdout]    --> src/position/manager.rs:561:21
[INFO] [stdout]     |
[INFO] [stdout] 561 |         if let Some(persistence) = &self.persistence {
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_persistence`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `candidate`
[INFO] [stdout]   --> src/discovery/strategy_converter/rule_builder.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |         candidate: &StrategyCandidate,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_candidate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `candidate`
[INFO] [stdout]   --> src/discovery/strategy_converter/rule_builder.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         candidate: &StrategyCandidate,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_candidate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0761`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `indicator`
[INFO] [stdout]    --> src/optimization/builders/condition_builder.rs:791:9
[INFO] [stdout]     |
[INFO] [stdout] 791 |         indicator: &IndicatorInfo,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indicator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `probabilities`
[INFO] [stdout]   --> src/optimization/builders/operator_selector.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     probabilities: &ConditionProbabilities,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_probabilities`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/optimization/builders/stop_handler_builder.rs:44:21
[INFO] [stdout]    |
[INFO] [stdout] 44 |                 let mut params = Self::make_handler_params(config, available);
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `robots` (lib) due to 1 previous error; 133 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `system`
[INFO] [stdout]    --> src/optimization/fresh_blood.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let system = FreshBloodSystem::new(config);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_system`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `weight1`
[INFO] [stdout]    --> src/optimization/genetic/crossover.rs:247:5
[INFO] [stdout]     |
[INFO] [stdout] 247 |     weight1: f64,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_weight1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `weight2`
[INFO] [stdout]    --> src/optimization/genetic/crossover.rs:248:5
[INFO] [stdout]     |
[INFO] [stdout] 248 |     weight2: f64,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_weight2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `system`
[INFO] [stdout]    --> src/optimization/migration.rs:109:13
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let system = MigrationSystem::new(config);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_system`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `optimizer`
[INFO] [stdout]    --> src/optimization/per_structure_optimizer.rs:160:13
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let optimizer = PerStructureOptimizer::new(config, frames, base_tf, discovery_config);
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_optimizer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `indicator_name_for_param`
[INFO] [stdout]    --> src/optimization/population.rs:142:21
[INFO] [stdout]     |
[INFO] [stdout] 142 |                 let indicator_name_for_param =
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indicator_name_for_param`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/optimization/population.rs:504:33
[INFO] [stdout]     |
[INFO] [stdout] 504 | ...                   let value = min + (step_index as f64 * step);
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sds`
[INFO] [stdout]    --> src/optimization/sds.rs:268:13
[INFO] [stdout]     |
[INFO] [stdout] 268 |         let sds = StochasticDiffusionSearch::new(config);
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_sds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `saver`
[INFO] [stdout]   --> src/optimization/strategy_saver.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let saver = StrategySaver::new();
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_saver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `saver`
[INFO] [stdout]   --> src/optimization/strategy_saver.rs:75:13
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let saver = StrategySaver::default();
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_saver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `persistence`
[INFO] [stdout]    --> src/position/manager.rs:561:21
[INFO] [stdout]     |
[INFO] [stdout] 561 |         if let Some(persistence) = &self.persistence {
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_persistence`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0425, E0599, E0761.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `robots` (lib test) due to 5 previous errors; 157 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "db5f4d32aaf47b9b77444affe1e08d5f3b2ffde16ace4c4f6c9951b2a434245d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "db5f4d32aaf47b9b77444affe1e08d5f3b2ffde16ace4c4f6c9951b2a434245d", kill_on_drop: false }`
[INFO] [stdout] db5f4d32aaf47b9b77444affe1e08d5f3b2ffde16ace4c4f6c9951b2a434245d
