[INFO] cloning repository https://github.com/lucasmanoguerra/lightweight-charts-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lucasmanoguerra/lightweight-charts-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flucasmanoguerra%2Flightweight-charts-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flucasmanoguerra%2Flightweight-charts-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e521eb1a7f9c98a88c2fed2ee51b5a75e221c041
[INFO] checking lucasmanoguerra/lightweight-charts-rs/e521eb1a7f9c98a88c2fed2ee51b5a75e221c041 against master#3c9faa0d037b9eecda4a440cc482ff7f960fb8a5 for pr-152210
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flucasmanoguerra%2Flightweight-charts-rs" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/lucasmanoguerra/lightweight-charts-rs
[INFO] finished tweaking git repo https://github.com/lucasmanoguerra/lightweight-charts-rs
[INFO] tweaked toml for git repo https://github.com/lucasmanoguerra/lightweight-charts-rs written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/lucasmanoguerra/lightweight-charts-rs on toolchain 3c9faa0d037b9eecda4a440cc482ff7f960fb8a5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3c9faa0d037b9eecda4a440cc482ff7f960fb8a5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/lucasmanoguerra/lightweight-charts-rs 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" "+3c9faa0d037b9eecda4a440cc482ff7f960fb8a5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded imagesize v0.12.0
[INFO] [stderr]   Downloaded fragile v2.0.1
[INFO] [stderr]   Downloaded relm4-css v0.10.1
[INFO] [stderr]   Downloaded gdk-pixbuf-sys v0.21.5
[INFO] [stderr]   Downloaded cairo-sys-rs v0.21.5
[INFO] [stderr]   Downloaded graphene-sys v0.21.5
[INFO] [stderr]   Downloaded cairo-rs v0.21.5
[INFO] [stderr]   Downloaded gobject-sys v0.21.5
[INFO] [stderr]   Downloaded flume v0.12.0
[INFO] [stderr]   Downloaded gio-sys v0.21.5
[INFO] [stderr]   Downloaded glib-macros v0.21.5
[INFO] [stderr]   Downloaded gdk4 v0.10.3
[INFO] [stderr]   Downloaded gtk4-sys v0.10.3
[INFO] [stderr]   Downloaded time v0.3.46
[INFO] [stderr]   Downloaded gio v0.21.5
[INFO] [stderr]   Downloaded webpki-roots v1.0.6
[INFO] [stderr]   Downloaded glib v0.21.5
[INFO] [stderr]   Downloaded relm4 v0.10.1
[INFO] [stderr]   Downloaded ureq v2.12.1
[INFO] [stderr]   Downloaded glib-sys v0.21.5
[INFO] [stderr]   Downloaded pango v0.21.5
[INFO] [stderr]   Downloaded usvg v0.41.0
[INFO] [stderr]   Downloaded gdk4-sys v0.10.3
[INFO] [stderr]   Downloaded cfg-expr v0.20.6
[INFO] [stderr]   Downloaded gtk4 v0.10.3
[INFO] [stderr]   Downloaded relm4-macros v0.10.1
[INFO] [stderr]   Downloaded roxmltree v0.19.0
[INFO] [stderr]   Downloaded resvg v0.41.0
[INFO] [stderr]   Downloaded gdk-pixbuf v0.21.5
[INFO] [stderr]   Downloaded graphene-rs v0.21.5
[INFO] [stderr]   Downloaded gsk4 v0.10.3
[INFO] [stderr]   Downloaded gtk4-macros v0.10.3
[INFO] [stderr]   Downloaded gsk4-sys v0.10.3
[INFO] [stderr]   Downloaded system-deps v7.0.7
[INFO] [stderr]   Downloaded pango-sys v0.21.5
[INFO] [stderr]   Downloaded rustybuzz v0.13.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+3c9faa0d037b9eecda4a440cc482ff7f960fb8a5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 55bbbd0f95a0da6e68d046f5ecadff5ee2f640f47ad904eb4d4ab7863cc558fc
[INFO] running `Command { std: "docker" "start" "-a" "55bbbd0f95a0da6e68d046f5ecadff5ee2f640f47ad904eb4d4ab7863cc558fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "55bbbd0f95a0da6e68d046f5ecadff5ee2f640f47ad904eb4d4ab7863cc558fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "55bbbd0f95a0da6e68d046f5ecadff5ee2f640f47ad904eb4d4ab7863cc558fc", kill_on_drop: false }`
[INFO] [stdout] 55bbbd0f95a0da6e68d046f5ecadff5ee2f640f47ad904eb4d4ab7863cc558fc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+3c9faa0d037b9eecda4a440cc482ff7f960fb8a5" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f5d3699ab091217f9abdd6626e4e6fda10c74ff2ffc22accd49c4269ed60b41a
[INFO] running `Command { std: "docker" "start" "-a" "f5d3699ab091217f9abdd6626e4e6fda10c74ff2ffc22accd49c4269ed60b41a", kill_on_drop: false }`
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling serde_spanned v1.0.4
[INFO] [stderr]    Compiling version-compare v0.2.1
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]    Compiling target-lexicon v0.13.3
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]    Compiling zerocopy v0.8.38
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]    Compiling slotmap v1.1.1
[INFO] [stderr]     Checking float-cmp v0.9.0
[INFO] [stderr]     Checking roxmltree v0.20.0
[INFO] [stderr]    Compiling toml v0.9.11+spec-1.1.0
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking strict-num v0.1.1
[INFO] [stderr]     Checking percent-encoding v2.3.2
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]     Checking ttf-parser v0.20.0
[INFO] [stderr]     Checking tinyvec v1.10.0
[INFO] [stderr]    Compiling cfg-expr v0.20.6
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking kurbo v0.11.3
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking memmap2 v0.9.9
[INFO] [stderr]     Checking fontconfig-parser v0.5.8
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]    Compiling field-offset v0.3.6
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking unicode-properties v0.1.4
[INFO] [stderr]     Checking unicode-ccc v0.2.0
[INFO] [stderr]    Compiling system-deps v7.0.7
[INFO] [stderr]     Checking siphasher v1.0.2
[INFO] [stderr]     Checking unicode-script v0.5.8
[INFO] [stderr]    Compiling relm4-css v0.10.1
[INFO] [stderr]     Checking unicode-bidi-mirroring v0.2.0
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking webpki-roots v1.0.6
[INFO] [stderr]     Checking simplecss v0.2.2
[INFO] [stderr]     Checking xmlwriter v0.1.0
[INFO] [stderr]     Checking roxmltree v0.19.0
[INFO] [stderr]     Checking fastrand v2.3.0
[INFO] [stderr]     Checking data-url v0.3.2
[INFO] [stderr]     Checking unicode-bidi v0.3.18
[INFO] [stderr]    Compiling rust_decimal v1.40.0
[INFO] [stderr]     Checking weezl v0.1.12
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]     Checking unicode-vo v0.1.0
[INFO] [stderr]     Checking imagesize v0.12.0
[INFO] [stderr]     Checking pico-args v0.5.0
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking flume v0.12.0
[INFO] [stderr]     Checking deranged v0.5.5
[INFO] [stderr]     Checking webpki-roots v0.26.11
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking rgb v0.8.52
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking svgtypes v0.15.3
[INFO] [stderr]     Checking data-encoding v2.10.0
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking gif v0.13.3
[INFO] [stderr]     Checking fragile v2.0.1
[INFO] [stderr]     Checking num-conv v0.2.0
[INFO] [stderr]     Checking jpeg-decoder v0.3.2
[INFO] [stderr]     Checking time-core v0.1.8
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]    Compiling glib-sys v0.21.5
[INFO] [stderr]    Compiling gobject-sys v0.21.5
[INFO] [stderr]    Compiling gio-sys v0.21.5
[INFO] [stderr]    Compiling pango-sys v0.21.5
[INFO] [stderr]    Compiling cairo-sys-rs v0.21.5
[INFO] [stderr]    Compiling gdk-pixbuf-sys v0.21.5
[INFO] [stderr]    Compiling gdk4-sys v0.10.3
[INFO] [stderr]    Compiling graphene-sys v0.21.5
[INFO] [stderr]    Compiling gsk4-sys v0.10.3
[INFO] [stderr]    Compiling gtk4-sys v0.10.3
[INFO] [stderr]     Checking fontdb v0.16.2
[INFO] [stderr]     Checking rustybuzz v0.13.0
[INFO] [stderr]     Checking time v0.3.46
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling glib-macros v0.21.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling gtk4-macros v0.10.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling relm4-macros v0.10.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]     Checking rustls-webpki v0.103.9
[INFO] [stderr]     Checking openssl v0.10.75
[INFO] [stderr]     Checking usvg v0.41.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking resvg v0.41.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking native-tls v0.2.14
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking glib v0.21.5
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking tungstenite v0.21.0
[INFO] [stderr]     Checking ureq v2.12.1
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking gio v0.21.5
[INFO] [stderr]     Checking cairo-rs v0.21.5
[INFO] [stderr]     Checking graphene-rs v0.21.5
[INFO] [stderr]     Checking pango v0.21.5
[INFO] [stderr]     Checking gdk-pixbuf v0.21.5
[INFO] [stderr]     Checking gdk4 v0.10.3
[INFO] [stderr]     Checking gsk4 v0.10.3
[INFO] [stderr]     Checking gtk4 v0.10.3
[INFO] [stderr]     Checking relm4 v0.10.1
[INFO] [stderr]     Checking lightweight-charts-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/indicators/macd.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut times: Vec<(time::OffsetDateTime, f64)> =
[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: field `next_time_scale_id` is never read
[INFO] [stdout]   --> src/chart/core/mod.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub(crate) struct ChartCore {
[INFO] [stdout]    |                   --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 38 |     next_time_scale_id: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChartCore` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `panel_is_collapsed`, `panel_is_visible`, and `set_indicator_panel_data` are never used
[INFO] [stdout]    --> src/chart/core/series.rs:227:19
[INFO] [stdout]     |
[INFO] [stdout]  11 | impl ChartCore {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub(crate) fn panel_is_collapsed(&self, panel_id: PanelId) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub(crate) fn panel_is_visible(&self, panel_id: PanelId) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub(crate) fn set_indicator_panel_data(&mut self, panel_id: PanelId, data: Vec<LinePoint>) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `series_id` and `kind` are never read
[INFO] [stdout]   --> src/chart/data.rs:36:16
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub(crate) struct PanelSeries {
[INFO] [stdout]    |                   ----------- fields in this struct
[INFO] [stdout] 36 |     pub(crate) series_id: usize,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 37 |     pub(crate) kind: SeriesKind,
[INFO] [stdout]    |                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PanelSeries` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parent_id` is never read
[INFO] [stdout]   --> src/chart/data.rs:45:16
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub(crate) struct Panel {
[INFO] [stdout]    |                   ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) parent_id: Option<PanelId>,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Panel` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_data`, `view_range`, `pan`, and `zoom` are never used
[INFO] [stdout]    --> src/chart/data.rs:139:19
[INFO] [stdout]     |
[INFO] [stdout] 128 | impl PriceScaleState {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub(crate) fn update_data(&mut self, min: f64, max: f64, auto_range: (f64, f64)) {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub(crate) fn view_range(&self) -> f64 {
[INFO] [stdout]     |                   ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub(crate) fn pan(&mut self, delta: f64) {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub(crate) fn zoom(&mut self, factor: f64, anchor: f64) {
[INFO] [stdout]     |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_price` is never used
[INFO] [stdout]    --> src/chart/format.rs:123:15
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub(crate) fn format_price(value: f64, precision: usize) -> String {
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `main_top` is never read
[INFO] [stdout]   --> src/chart/layout.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub(crate) struct PanelLayout {
[INFO] [stdout]    |                   ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub(crate) main_top: f64,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PanelLayout` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/chart/layout.rs:29:16
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub(crate) struct TimeAxisLayout {
[INFO] [stdout]    |                   -------------- fields in this struct
[INFO] [stdout] 29 |     pub(crate) group_id: TimeScaleId,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 30 |     pub(crate) top: f64,
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 31 |     pub(crate) bottom: f64,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 32 |     pub(crate) height: f64,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 33 |     pub(crate) plot_left: f64,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 34 |     pub(crate) plot_right: f64,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 35 |     pub(crate) plot_width: f64,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 36 |     pub(crate) axis_left: f64,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 37 |     pub(crate) axis_right: f64,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TimeAxisLayout` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `time_axes`, `width`, `height`, and `padding` are never read
[INFO] [stdout]   --> src/chart/layout.rs:43:16
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub(crate) struct ChartLayout {
[INFO] [stdout]    |                   ----------- fields in this struct
[INFO] [stdout] 42 |     pub(crate) panels: Vec<PanelLayout>,
[INFO] [stdout] 43 |     pub(crate) time_axes: Vec<TimeAxisLayout>,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub(crate) width: f64,
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout] 61 |     pub(crate) height: f64,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 62 |     pub(crate) padding: f64,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChartLayout` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `panel_layout`, `time_axis_at`, `time_axis_layout`, `panel_axis_side`, and `group_axis_side` are never used
[INFO] [stdout]    --> src/chart/layout.rs:278:19
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl ChartLayout {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub(crate) fn panel_layout(&self, panel_id: PanelId) -> Option<&PanelLayout> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |     pub(crate) fn time_axis_at(&self, y: f64) -> Option<TimeScaleId> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub(crate) fn time_axis_layout(&self, group_id: TimeScaleId) -> Option<&TimeAxisLayout> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     pub(crate) fn panel_axis_side(&self, panel_id: PanelId, x: f64) -> Option<bool> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub(crate) fn group_axis_side(&self, group_id: TimeScaleId, x: f64) -> Option<bool> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `zoom_by` is never used
[INFO] [stdout]    --> src/chart/scales.rs:126:19
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl TimeScale {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub(crate) fn zoom_by(&mut self, factor: f64, anchor: f64) {
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_y_to_price` is never used
[INFO] [stdout]   --> src/chart/util.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(crate) fn map_y_to_price(y: f64, min: f64, max: f64, top: f64, height: f64) -> f64 {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Plus` is never constructed
[INFO] [stdout]   --> src/icons/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum IconName {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout]  9 |     Gear,
[INFO] [stdout] 10 |     Plus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IconName` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LinePoint` and `LineSeriesApi`
[INFO] [stdout]  --> examples/line_chart.rs:1:62
[INFO] [stdout]   |
[INFO] [stdout] 1 | use lightweight_charts_rs::{create_chart, ChartStyle, Color, LinePoint, LineSeriesApi};
[INFO] [stdout]   |                                                              ^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `ChartStyle` has no field named `background_color`
[INFO] [stdout]  --> examples/line_chart.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 |             background_color: Color::from_rgb(255, 255, 255),
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ `ChartStyle` does not have this field
[INFO] [stdout]   |
[INFO] [stdout]   = note: available fields are: `background`, `grid`, `up`, `down`, `border_up` ... and 15 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `from_rgb` found for struct `Color` in the current scope
[INFO] [stdout]    --> examples/line_chart.rs:8:38
[INFO] [stdout]     |
[INFO] [stdout]   8 |             background_color: Color::from_rgb(255, 255, 255),
[INFO] [stdout]     |                                      ^^^^^^^^ function or associated item not found in `Color`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `Color`, consider using `Color::new` which returns `Color`
[INFO] [stdout]    --> src/chart/types.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub const fn new(r: f64, g: f64, b: f64) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    --> /rustc/3c9faa0d037b9eecda4a440cc482ff7f960fb8a5/library/core/src/convert/mod.rs:592:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `ChartStyle` has no field named `grid_color`
[INFO] [stdout]  --> examples/line_chart.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 |             grid_color: Color::from_rgb(230, 230, 230),
[INFO] [stdout]   |             ^^^^^^^^^^ `ChartStyle` does not have this field
[INFO] [stdout]   |
[INFO] [stdout]   = note: available fields are: `background`, `grid`, `up`, `down`, `border_up` ... and 15 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `from_rgb` found for struct `Color` in the current scope
[INFO] [stdout]    --> examples/line_chart.rs:9:32
[INFO] [stdout]     |
[INFO] [stdout]   9 |             grid_color: Color::from_rgb(230, 230, 230),
[INFO] [stdout]     |                                ^^^^^^^^ function or associated item not found in `Color`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `Color`, consider using `Color::new` which returns `Color`
[INFO] [stdout]    --> src/chart/types.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub const fn new(r: f64, g: f64, b: f64) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    --> /rustc/3c9faa0d037b9eecda4a440cc482ff7f960fb8a5/library/core/src/convert/mod.rs:592:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `ChartStyle` has no field named `text_color`
[INFO] [stdout]   --> examples/line_chart.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 |             text_color: Color::from_rgb(50, 50, 50),
[INFO] [stdout]    |             ^^^^^^^^^^ `ChartStyle` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `background`, `grid`, `up`, `down`, `border_up` ... and 15 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `from_rgb` found for struct `Color` in the current scope
[INFO] [stdout]    --> examples/line_chart.rs:10:32
[INFO] [stdout]     |
[INFO] [stdout]  10 |             text_color: Color::from_rgb(50, 50, 50),
[INFO] [stdout]     |                                ^^^^^^^^ function or associated item not found in `Color`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `Color`, consider using `Color::new` which returns `Color`
[INFO] [stdout]    --> src/chart/types.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub const fn new(r: f64, g: f64, b: f64) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    --> /rustc/3c9faa0d037b9eecda4a440cc482ff7f960fb8a5/library/core/src/convert/mod.rs:592:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 0 arguments but 2 arguments were supplied
[INFO] [stdout]   --> examples/line_chart.rs:5:21
[INFO] [stdout]    |
[INFO] [stdout]  5 |       let mut chart = create_chart(
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout]  6 |           "EUR/USD",
[INFO] [stdout]    |           --------- unexpected argument #1 of type `&'static str`
[INFO] [stdout]  7 | /         ChartStyle {
[INFO] [stdout]  8 | |             background_color: Color::from_rgb(255, 255, 255),
[INFO] [stdout]  9 | |             grid_color: Color::from_rgb(230, 230, 230),
[INFO] [stdout] 10 | |             text_color: Color::from_rgb(50, 50, 50),
[INFO] [stdout] 11 | |             ..ChartStyle::default()
[INFO] [stdout] 12 | |         },
[INFO] [stdout]    | |_________- unexpected argument #2 of type `ChartStyle`
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> src/chart/api.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn create_chart() -> ChartApi {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] help: remove the extra arguments
[INFO] [stdout]    |
[INFO] [stdout]  6 -         "EUR/USD",
[INFO] [stdout]  7 -         ChartStyle {
[INFO] [stdout]  8 -             background_color: Color::from_rgb(255, 255, 255),
[INFO] [stdout]  9 -             grid_color: Color::from_rgb(230, 230, 230),
[INFO] [stdout] 10 -             text_color: Color::from_rgb(50, 50, 50),
[INFO] [stdout] 11 -             ..ChartStyle::default()
[INFO] [stdout] 12 -         },
[INFO] [stdout] 13 -     );
[INFO] [stdout]  6 +         );
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 0 arguments but 1 argument was supplied
[INFO] [stdout]    --> examples/line_chart.rs:29:11
[INFO] [stdout]     |
[INFO] [stdout]  29 |     chart.add_line_series(line_data);
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ --------- unexpected argument of type `Vec<({integer}, {float})>`
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/chart/api.rs:123:12
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn add_line_series(&self) -> LineSeriesApi {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout]  29 -     chart.add_line_series(line_data);
[INFO] [stdout]  29 +     chart.add_line_series();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CandlestickSeriesApi`
[INFO] [stdout]  --> examples/basic_chart.rs:1:43
[INFO] [stdout]   |
[INFO] [stdout] 1 | use lightweight_charts_rs::{create_chart, CandlestickSeriesApi, ChartStyle, Color};
[INFO] [stdout]   |                                           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `show` found for struct `ChartApi` in the current scope
[INFO] [stdout]   --> examples/line_chart.rs:32:11
[INFO] [stdout]    |
[INFO] [stdout] 32 |     chart.show();
[INFO] [stdout]    |           ^^^^ method not found in `ChartApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0560, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `ChartStyle` has no field named `background_color`
[INFO] [stdout]  --> examples/basic_chart.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 |             background_color: Color::from_rgb(24, 26, 27),
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^ `ChartStyle` does not have this field
[INFO] [stdout]   |
[INFO] [stdout]   = note: available fields are: `background`, `grid`, `up`, `down`, `border_up` ... and 15 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `from_rgb` found for struct `Color` in the current scope
[INFO] [stdout]    --> examples/basic_chart.rs:8:38
[INFO] [stdout]     |
[INFO] [stdout]   8 |             background_color: Color::from_rgb(24, 26, 27),
[INFO] [stdout]     |                                      ^^^^^^^^ function or associated item not found in `Color`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `Color`, consider using `Color::new` which returns `Color`
[INFO] [stdout]    --> src/chart/types.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub const fn new(r: f64, g: f64, b: f64) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    --> /rustc/3c9faa0d037b9eecda4a440cc482ff7f960fb8a5/library/core/src/convert/mod.rs:592:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `lightweight-charts-rs` (example "line_chart") due to 9 previous errors; 1 warning emitted
[INFO] [stdout] error[E0560]: struct `ChartStyle` has no field named `grid_color`
[INFO] [stdout]  --> examples/basic_chart.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 |             grid_color: Color::from_rgb(44, 46, 47),
[INFO] [stdout]   |             ^^^^^^^^^^ `ChartStyle` does not have this field
[INFO] [stdout]   |
[INFO] [stdout]   = note: available fields are: `background`, `grid`, `up`, `down`, `border_up` ... and 15 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0599]: no function or associated item named `from_rgb` found for struct `Color` in the current scope
[INFO] [stdout]    --> examples/basic_chart.rs:9:32
[INFO] [stdout]     |
[INFO] [stdout]   9 |             grid_color: Color::from_rgb(44, 46, 47),
[INFO] [stdout]     |                                ^^^^^^^^ function or associated item not found in `Color`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `Color`, consider using `Color::new` which returns `Color`
[INFO] [stdout]    --> src/chart/types.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub const fn new(r: f64, g: f64, b: f64) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    --> /rustc/3c9faa0d037b9eecda4a440cc482ff7f960fb8a5/library/core/src/convert/mod.rs:592:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `ChartStyle` has no field named `text_color`
[INFO] [stdout]   --> examples/basic_chart.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 |             text_color: Color::from_rgb(200, 200, 200),
[INFO] [stdout]    |             ^^^^^^^^^^ `ChartStyle` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `background`, `grid`, `up`, `down`, `border_up` ... and 15 others
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `from_rgb` found for struct `Color` in the current scope
[INFO] [stdout]    --> examples/basic_chart.rs:10:32
[INFO] [stdout]     |
[INFO] [stdout]  10 |             text_color: Color::from_rgb(200, 200, 200),
[INFO] [stdout]     |                                ^^^^^^^^ function or associated item not found in `Color`
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `Color`, consider using `Color::new` which returns `Color`
[INFO] [stdout]    --> src/chart/types.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub const fn new(r: f64, g: f64, b: f64) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: there is an associated function `from` with a similar name
[INFO] [stdout]    --> /rustc/3c9faa0d037b9eecda4a440cc482ff7f960fb8a5/library/core/src/convert/mod.rs:592:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 0 arguments but 2 arguments were supplied
[INFO] [stdout]   --> examples/basic_chart.rs:5:21
[INFO] [stdout]    |
[INFO] [stdout]  5 |       let mut chart = create_chart(
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout]  6 |           "BTC/USD",
[INFO] [stdout]    |           --------- unexpected argument #1 of type `&'static str`
[INFO] [stdout]  7 | /         ChartStyle {
[INFO] [stdout]  8 | |             background_color: Color::from_rgb(24, 26, 27),
[INFO] [stdout]  9 | |             grid_color: Color::from_rgb(44, 46, 47),
[INFO] [stdout] 10 | |             text_color: Color::from_rgb(200, 200, 200),
[INFO] [stdout] 11 | |             ..ChartStyle::default()
[INFO] [stdout] 12 | |         },
[INFO] [stdout]    | |_________- unexpected argument #2 of type `ChartStyle`
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> src/chart/api.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn create_chart() -> ChartApi {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] help: remove the extra arguments
[INFO] [stdout]    |
[INFO] [stdout]  6 -         "BTC/USD",
[INFO] [stdout]  7 -         ChartStyle {
[INFO] [stdout]  8 -             background_color: Color::from_rgb(24, 26, 27),
[INFO] [stdout]  9 -             grid_color: Color::from_rgb(44, 46, 47),
[INFO] [stdout] 10 -             text_color: Color::from_rgb(200, 200, 200),
[INFO] [stdout] 11 -             ..ChartStyle::default()
[INFO] [stdout] 12 -         },
[INFO] [stdout] 13 -     );
[INFO] [stdout]  6 +         );
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 0 arguments but 1 argument was supplied
[INFO] [stdout]    --> examples/basic_chart.rs:29:11
[INFO] [stdout]     |
[INFO] [stdout]  29 |     chart.add_candlestick_series(candles);
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^ ------- unexpected argument of type `Vec<({integer}, {float}, {float}, {float}, {float})>`
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/chart/api.rs:101:12
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub fn add_candlestick_series(&self) -> CandlestickSeriesApi {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout]  29 -     chart.add_candlestick_series(candles);
[INFO] [stdout]  29 +     chart.add_candlestick_series();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `show` found for struct `ChartApi` in the current scope
[INFO] [stdout]   --> examples/basic_chart.rs:32:11
[INFO] [stdout]    |
[INFO] [stdout] 32 |     chart.show();
[INFO] [stdout]    |           ^^^^ method not found in `ChartApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0560, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `lightweight-charts-rs` (example "basic_chart") due to 9 previous errors; 1 warning emitted
[INFO] [stdout] error[E0432]: unresolved imports `lightweight_charts_rs::indicators::RSI`, `lightweight_charts_rs::indicators::SMA`
[INFO] [stdout]  --> examples/indicators.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 |     indicators::{RSI, SMA},
[INFO] [stdout]   |                  ^^^  ^^^ no `SMA` in `indicators`
[INFO] [stdout]   |                  |
[INFO] [stdout]   |                  no `RSI` in `indicators`
[INFO] [stdout]   |
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]   |
[INFO] [stdout] 3 -     indicators::{RSI, SMA},
[INFO] [stdout] 3 +     indicators::{rsi, SMA},
[INFO] [stdout]   |
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]   |
[INFO] [stdout] 3 -     indicators::{RSI, SMA},
[INFO] [stdout] 3 +     indicators::{RSI, sma},
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CandlestickSeriesApi` and `Color`
[INFO] [stdout]  --> examples/indicators.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     CandlestickSeriesApi, ChartStyle, Color,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^              ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 0 arguments but 2 arguments were supplied
[INFO] [stdout]   --> examples/indicators.rs:9:21
[INFO] [stdout]    |
[INFO] [stdout]  9 |     let mut chart = create_chart("BTC/USD", ChartStyle::default());
[INFO] [stdout]    |                     ^^^^^^^^^^^^ ---------  --------------------- unexpected argument #2 of type `ChartStyle`
[INFO] [stdout]    |                                  |
[INFO] [stdout]    |                                  unexpected argument #1 of type `&'static str`
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> src/chart/api.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn create_chart() -> ChartApi {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] help: remove the extra arguments
[INFO] [stdout]    |
[INFO] [stdout]  9 -     let mut chart = create_chart("BTC/USD", ChartStyle::default());
[INFO] [stdout]  9 +     let mut chart = create_chart();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/indicators/macd.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut times: Vec<(time::OffsetDateTime, f64)> =
[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: field `next_time_scale_id` is never read
[INFO] [stdout]   --> src/chart/core/mod.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub(crate) struct ChartCore {
[INFO] [stdout]    |                   --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 38 |     next_time_scale_id: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChartCore` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `panel_is_collapsed`, `panel_is_visible`, and `set_indicator_panel_data` are never used
[INFO] [stdout]    --> src/chart/core/series.rs:227:19
[INFO] [stdout]     |
[INFO] [stdout]  11 | impl ChartCore {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub(crate) fn panel_is_collapsed(&self, panel_id: PanelId) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub(crate) fn panel_is_visible(&self, panel_id: PanelId) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub(crate) fn set_indicator_panel_data(&mut self, panel_id: PanelId, data: Vec<LinePoint>) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `series_id` and `kind` are never read
[INFO] [stdout]   --> src/chart/data.rs:36:16
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub(crate) struct PanelSeries {
[INFO] [stdout]    |                   ----------- fields in this struct
[INFO] [stdout] 36 |     pub(crate) series_id: usize,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 37 |     pub(crate) kind: SeriesKind,
[INFO] [stdout]    |                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PanelSeries` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parent_id` is never read
[INFO] [stdout]   --> src/chart/data.rs:45:16
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub(crate) struct Panel {
[INFO] [stdout]    |                   ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) parent_id: Option<PanelId>,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Panel` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_data`, `view_range`, `pan`, and `zoom` are never used
[INFO] [stdout]    --> src/chart/data.rs:139:19
[INFO] [stdout]     |
[INFO] [stdout] 128 | impl PriceScaleState {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub(crate) fn update_data(&mut self, min: f64, max: f64, auto_range: (f64, f64)) {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub(crate) fn view_range(&self) -> f64 {
[INFO] [stdout]     |                   ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub(crate) fn pan(&mut self, delta: f64) {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub(crate) fn zoom(&mut self, factor: f64, anchor: f64) {
[INFO] [stdout]     |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_price` is never used
[INFO] [stdout]    --> src/chart/format.rs:123:15
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub(crate) fn format_price(value: f64, precision: usize) -> String {
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `main_top` is never read
[INFO] [stdout]   --> src/chart/layout.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub(crate) struct PanelLayout {
[INFO] [stdout]    |                   ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub(crate) main_top: f64,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PanelLayout` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/chart/layout.rs:29:16
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub(crate) struct TimeAxisLayout {
[INFO] [stdout]    |                   -------------- fields in this struct
[INFO] [stdout] 29 |     pub(crate) group_id: TimeScaleId,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 30 |     pub(crate) top: f64,
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 31 |     pub(crate) bottom: f64,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 32 |     pub(crate) height: f64,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 33 |     pub(crate) plot_left: f64,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 34 |     pub(crate) plot_right: f64,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 35 |     pub(crate) plot_width: f64,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 36 |     pub(crate) axis_left: f64,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 37 |     pub(crate) axis_right: f64,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TimeAxisLayout` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `time_axes`, `width`, `height`, and `padding` are never read
[INFO] [stdout]   --> src/chart/layout.rs:43:16
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub(crate) struct ChartLayout {
[INFO] [stdout]    |                   ----------- fields in this struct
[INFO] [stdout] 42 |     pub(crate) panels: Vec<PanelLayout>,
[INFO] [stdout] 43 |     pub(crate) time_axes: Vec<TimeAxisLayout>,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub(crate) width: f64,
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout] 61 |     pub(crate) height: f64,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 62 |     pub(crate) padding: f64,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChartLayout` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `panel_layout`, `time_axis_at`, `time_axis_layout`, `panel_axis_side`, and `group_axis_side` are never used
[INFO] [stdout]    --> src/chart/layout.rs:278:19
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl ChartLayout {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub(crate) fn panel_layout(&self, panel_id: PanelId) -> Option<&PanelLayout> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |     pub(crate) fn time_axis_at(&self, y: f64) -> Option<TimeScaleId> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub(crate) fn time_axis_layout(&self, group_id: TimeScaleId) -> Option<&TimeAxisLayout> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     pub(crate) fn panel_axis_side(&self, panel_id: PanelId, x: f64) -> Option<bool> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub(crate) fn group_axis_side(&self, group_id: TimeScaleId, x: f64) -> Option<bool> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `zoom_by` is never used
[INFO] [stdout]    --> src/chart/scales.rs:126:19
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl TimeScale {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub(crate) fn zoom_by(&mut self, factor: f64, anchor: f64) {
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_y_to_price` is never used
[INFO] [stdout]   --> src/chart/util.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(crate) fn map_y_to_price(y: f64, min: f64, max: f64, top: f64, height: f64) -> f64 {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Plus` is never constructed
[INFO] [stdout]   --> src/icons/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum IconName {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout]  9 |     Gear,
[INFO] [stdout] 10 |     Plus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IconName` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `lightweight_charts_rs::WebSocketDataFeed`
[INFO] [stdout]  --> examples/realtime.rs:2:60
[INFO] [stdout]   |
[INFO] [stdout] 2 |     create_chart, CandlestickSeriesApi, ChartStyle, Color, WebSocketDataFeed,
[INFO] [stdout]   |                                                            ^^^^^^^^^^^^^^^^^ no `WebSocketDataFeed` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CandlestickSeriesApi` and `Color`
[INFO] [stdout]  --> examples/realtime.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     create_chart, CandlestickSeriesApi, ChartStyle, Color, WebSocketDataFeed,
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^              ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 0 arguments but 2 arguments were supplied
[INFO] [stdout]   --> examples/realtime.rs:7:21
[INFO] [stdout]    |
[INFO] [stdout]  7 |     let mut chart = create_chart("BTC/USDT", ChartStyle::default());
[INFO] [stdout]    |                     ^^^^^^^^^^^^ ----------  --------------------- unexpected argument #2 of type `ChartStyle`
[INFO] [stdout]    |                                  |
[INFO] [stdout]    |                                  unexpected argument #1 of type `&'static str`
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> src/chart/api.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn create_chart() -> ChartApi {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] help: remove the extra arguments
[INFO] [stdout]    |
[INFO] [stdout]  7 -     let mut chart = create_chart("BTC/USDT", ChartStyle::default());
[INFO] [stdout]  7 +     let mut chart = create_chart();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BarConversionError` and `Bar`
[INFO] [stdout]   --> src/chart/mod.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     Bar, BarConversionError, Candle, Color, CrosshairCenter, CrosshairMode, HistogramPoint,
[INFO] [stdout]    |     ^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BarConversionError` and `Bar`
[INFO] [stdout]   --> src/chart/mod.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     Bar, BarConversionError, Candle, Color, CrosshairCenter, CrosshairMode, HistogramPoint,
[INFO] [stdout]    |     ^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 0 arguments but 1 argument was supplied
[INFO] [stdout]    --> examples/indicators.rs:31:11
[INFO] [stdout]     |
[INFO] [stdout]  31 |     chart.add_candlestick_series(candles.clone());
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^ --------------- unexpected argument of type `Vec<({integer}, {float}, {float}, {float}, {float})>`
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/chart/api.rs:101:12
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub fn add_candlestick_series(&self) -> CandlestickSeriesApi {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout]  31 -     chart.add_candlestick_series(candles.clone());
[INFO] [stdout]  31 +     chart.add_candlestick_series();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 0 arguments but 1 argument was supplied
[INFO] [stdout]    --> examples/realtime.rs:16:11
[INFO] [stdout]     |
[INFO] [stdout]  16 |     chart.add_candlestick_series(initial_candles);
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^ --------------- unexpected argument of type `Vec<({integer}, {float}, {float}, {float}, {float})>`
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/chart/api.rs:101:12
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub fn add_candlestick_series(&self) -> CandlestickSeriesApi {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout]  16 -     chart.add_candlestick_series(initial_candles);
[INFO] [stdout]  16 +     chart.add_candlestick_series();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 0 arguments but 1 argument was supplied
[INFO] [stdout]    --> examples/indicators.rs:35:11
[INFO] [stdout]     |
[INFO] [stdout]  35 |     chart.add_line_series(sma);
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^ --- unexpected argument
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/chart/api.rs:123:12
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn add_line_series(&self) -> LineSeriesApi {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the extra argument
[INFO] [stdout]     |
[INFO] [stdout]  35 -     chart.add_line_series(sma);
[INFO] [stdout]  35 +     chart.add_line_series();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `start_realtime_data` found for struct `ChartApi` in the current scope
[INFO] [stdout]   --> examples/realtime.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 |     chart.start_realtime_data(data_feed);
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^ method not found in `ChartApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `show` found for struct `ChartApi` in the current scope
[INFO] [stdout]   --> examples/realtime.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 |     chart.show();
[INFO] [stdout]    |           ^^^^ method not found in `ChartApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `lightweight-charts-rs` (example "realtime") due to 5 previous errors; 1 warning emitted
[INFO] [stdout] error[E0599]: no method named `add_indicator_panel` found for struct `ChartApi` in the current scope
[INFO] [stdout]   --> examples/indicators.rs:39:11
[INFO] [stdout]    |
[INFO] [stdout] 39 |     chart.add_indicator_panel("RSI", rsi_values);
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^ method not found in `ChartApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `show` found for struct `ChartApi` in the current scope
[INFO] [stdout]   --> examples/indicators.rs:42:11
[INFO] [stdout]    |
[INFO] [stdout] 42 |     chart.show();
[INFO] [stdout]    |           ^^^^ method not found in `ChartApi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `tungstenite::WebSocket::<Stream>::read_message`: Use `read`
[INFO] [stdout]   --> src/app/data_feed.rs:94:34
[INFO] [stdout]    |
[INFO] [stdout] 94 |                     match socket.read_message() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `tungstenite::WebSocket::<Stream>::write_message`: Use `send`
[INFO] [stdout]    --> src/app/data_feed.rs:101:44
[INFO] [stdout]     |
[INFO] [stdout] 101 | ...                   let _ = socket.write_message(Message::Pong(payload));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `lightweight-charts-rs` (example "indicators") due to 6 previous errors; 1 warning emitted
[INFO] [stdout] warning: use of deprecated method `tungstenite::WebSocket::<Stream>::read_message`: Use `read`
[INFO] [stdout]   --> src/app/data_feed.rs:94:34
[INFO] [stdout]    |
[INFO] [stdout] 94 |                     match socket.read_message() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `tungstenite::WebSocket::<Stream>::write_message`: Use `send`
[INFO] [stdout]    --> src/app/data_feed.rs:101:44
[INFO] [stdout]     |
[INFO] [stdout] 101 | ...                   let _ = socket.write_message(Message::Pong(payload));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `relm4::gtk4::style_context::<impl relm4::gtk4::StyleContext>::add_provider_for_display`: Use gtk::style_context_add_provider_for_display instead.
[INFO] [stdout]    --> src/app/mod.rs:658:24
[INFO] [stdout]     |
[INFO] [stdout] 658 |     gtk::StyleContext::add_provider_for_display(
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `relm4::gtk4::style_context::<impl relm4::gtk4::StyleContext>::add_provider_for_display`: Use gtk::style_context_add_provider_for_display instead.
[INFO] [stdout]    --> src/app/mod.rs:658:24
[INFO] [stdout]     |
[INFO] [stdout] 658 |     gtk::StyleContext::add_provider_for_display(
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/indicators/macd.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut times: Vec<(time::OffsetDateTime, f64)> =
[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/indicators/macd.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut times: Vec<(time::OffsetDateTime, f64)> =
[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: field `is_final` is never read
[INFO] [stdout]   --> src/app/market_data.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct KlineEvent {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub is_final: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `symbol_combo` and `indicator_combo` are never read
[INFO] [stdout]  --> src/app/panel_picker.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct PanelPickerUi {
[INFO] [stdout]   |            ------------- fields in this struct
[INFO] [stdout] 7 |     pub window: gtk::Window,
[INFO] [stdout] 8 |     pub symbol_combo: gtk::ComboBoxText,
[INFO] [stdout]   |         ^^^^^^^^^^^^
[INFO] [stdout] 9 |     pub indicator_combo: gtk::ComboBoxText,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `PanelPickerUi` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `open_global` is never read
[INFO] [stdout]   --> src/app/panel_settings.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct PanelSettingsUi {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub open_global: gtk::Button,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PanelSettingsUi` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/chart/api.rs:208:12
[INFO] [stdout]     |
[INFO] [stdout]  86 | impl ChartApi {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn rsi_color(&self) -> Option<Color> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub fn set_rsi_color(&self, color: Color) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn set_rsi_auto_scale(&self, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 247 |     pub fn set_rsi_price_scale_visible(&self, visible: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 256 |     pub fn rsi_auto_scale(&self) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn rsi_price_scale_visible(&self) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 547 |     pub fn set_axis_visibility(&self, left: bool, right: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 737 |     pub fn apply_time_scale_options(&self, options: TimeScaleOptions) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 791 |     pub fn set_price_scale_mode(&self, side: PriceScale, mode: PriceScaleMode) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 795 |     pub fn set_price_scale_auto_scale(&self, side: PriceScale, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 801 |     pub fn set_price_scale_visible(&self, side: PriceScale, visible: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 807 |     pub fn set_price_scale_margins(&self, side: PriceScale, margins: ScaleMargins) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 813 |     pub fn set_price_scale_border(&self, side: PriceScale, visible: bool, color: Color) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 819 |     pub fn set_price_scale_text_color(&self, side: PriceScale, color: Color) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 825 |     pub fn set_price_scale_ticks_visible(&self, side: PriceScale, visible: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 831 |     pub fn set_price_scale_minimum_width(&self, side: PriceScale, width: f64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 837 |     pub fn set_price_scale_invert(&self, side: PriceScale, invert: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 841 |     pub fn set_price_scale_align_labels(&self, side: PriceScale, align: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 847 |     pub fn set_price_scale_entire_text_only(&self, side: PriceScale, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 853 |     pub fn set_price_scale_ensure_edge_ticks(&self, side: PriceScale, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_data_from_bars` is never used
[INFO] [stdout]    --> src/chart/api.rs:911:12
[INFO] [stdout]     |
[INFO] [stdout] 864 | impl CandlestickSeriesApi {
[INFO] [stdout]     | ------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 911 |     pub fn set_data_from_bars(&self, bars: Vec<Bar>) -> Result<(), BarConversionError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_markers` is never used
[INFO] [stdout]     --> src/chart/api.rs:1090:12
[INFO] [stdout]      |
[INFO] [stdout] 1053 | impl LineSeriesApi {
[INFO] [stdout]      | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1090 |     pub fn set_markers(&self, markers: Vec<Marker>) {
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_markers` is never used
[INFO] [stdout]     --> src/chart/api.rs:1175:12
[INFO] [stdout]      |
[INFO] [stdout] 1134 | impl HistogramSeriesApi {
[INFO] [stdout]      | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1175 |     pub fn set_markers(&self, markers: Vec<Marker>) {
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_price` is never used
[INFO] [stdout]     --> src/chart/api.rs:1238:12
[INFO] [stdout]      |
[INFO] [stdout] 1219 | impl PriceLineApi {
[INFO] [stdout]      | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1238 |     pub fn set_price(&self, price: f64) {
[INFO] [stdout]      |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `next_time_scale_id` is never read
[INFO] [stdout]   --> src/chart/core/mod.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub(crate) struct ChartCore {
[INFO] [stdout]    |                   --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 38 |     next_time_scale_id: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChartCore` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_axis_visibility` is never used
[INFO] [stdout]   --> src/chart/core/options.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl ChartCore {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub(crate) fn set_axis_visibility(&mut self, left: bool, right: bool) {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/chart/core/pricescale.rs:21:19
[INFO] [stdout]     |
[INFO] [stdout]   5 | impl ChartCore {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  21 |     pub(crate) fn set_price_scale_mode(&mut self, side: PriceScale, mode: PriceScaleMode) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  28 |     pub(crate) fn set_price_scale_auto_scale(&mut self, side: PriceScale, enabled: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  35 |     pub(crate) fn set_price_scale_visible(&mut self, side: PriceScale, visible: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  42 |     pub(crate) fn set_price_scale_margins(&mut self, side: PriceScale, margins: ScaleMargins) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |     pub(crate) fn set_price_scale_border(&mut self, side: PriceScale, visible: bool, color: Color) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub(crate) fn set_price_scale_text_color(&mut self, side: PriceScale, color: Color) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  69 |     pub(crate) fn set_price_scale_ticks_visible(&mut self, side: PriceScale, visible: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     pub(crate) fn set_price_scale_minimum_width(&mut self, side: PriceScale, width: f64) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  83 |     pub(crate) fn set_price_scale_invert(&mut self, side: PriceScale, invert: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub(crate) fn set_price_scale_align_labels(&mut self, side: PriceScale, align: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub(crate) fn set_price_scale_entire_text_only(&mut self, side: PriceScale, enabled: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub(crate) fn set_price_scale_ensure_edge_ticks(&mut self, side: PriceScale, enabled: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/chart/core/series.rs:110:19
[INFO] [stdout]     |
[INFO] [stdout]  11 | impl ChartCore {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub(crate) fn rsi_color(&self) -> Option<Color> {
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub(crate) fn set_rsi_color(&mut self, color: Color) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub(crate) fn set_rsi_auto_scale(&mut self, enabled: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub(crate) fn set_rsi_price_scale_visible(&mut self, visible: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub(crate) fn rsi_auto_scale(&self) -> Option<bool> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub(crate) fn rsi_price_scale_visible(&self) -> Option<bool> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub(crate) fn panel_is_collapsed(&self, panel_id: PanelId) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub(crate) fn panel_is_visible(&self, panel_id: PanelId) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub(crate) fn set_indicator_panel_data(&mut self, panel_id: PanelId, data: Vec<LinePoint>) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 412 |     pub(crate) fn set_price_line_price(&mut self, id: usize, line_id: usize, price: f64) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `apply_time_scale_options` is never used
[INFO] [stdout]    --> src/chart/core/timescale.rs:117:19
[INFO] [stdout]     |
[INFO] [stdout]   5 | impl ChartCore {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub(crate) fn apply_time_scale_options(&mut self, options: TimeScaleOptions) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `series_id` and `kind` are never read
[INFO] [stdout]   --> src/chart/data.rs:36:16
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub(crate) struct PanelSeries {
[INFO] [stdout]    |                   ----------- fields in this struct
[INFO] [stdout] 36 |     pub(crate) series_id: usize,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 37 |     pub(crate) kind: SeriesKind,
[INFO] [stdout]    |                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PanelSeries` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parent_id` is never read
[INFO] [stdout]   --> src/chart/data.rs:45:16
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub(crate) struct Panel {
[INFO] [stdout]    |                   ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) parent_id: Option<PanelId>,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Panel` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_data`, `view_range`, `pan`, and `zoom` are never used
[INFO] [stdout]    --> src/chart/data.rs:139:19
[INFO] [stdout]     |
[INFO] [stdout] 128 | impl PriceScaleState {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub(crate) fn update_data(&mut self, min: f64, max: f64, auto_range: (f64, f64)) {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub(crate) fn view_range(&self) -> f64 {
[INFO] [stdout]     |                   ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub(crate) fn pan(&mut self, delta: f64) {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub(crate) fn zoom(&mut self, factor: f64, anchor: f64) {
[INFO] [stdout]     |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_price` is never used
[INFO] [stdout]    --> src/chart/format.rs:123:15
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub(crate) fn format_price(value: f64, precision: usize) -> String {
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `main_top` is never read
[INFO] [stdout]   --> src/chart/layout.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub(crate) struct PanelLayout {
[INFO] [stdout]    |                   ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub(crate) main_top: f64,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PanelLayout` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/chart/layout.rs:29:16
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub(crate) struct TimeAxisLayout {
[INFO] [stdout]    |                   -------------- fields in this struct
[INFO] [stdout] 29 |     pub(crate) group_id: TimeScaleId,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 30 |     pub(crate) top: f64,
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 31 |     pub(crate) bottom: f64,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 32 |     pub(crate) height: f64,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 33 |     pub(crate) plot_left: f64,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 34 |     pub(crate) plot_right: f64,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 35 |     pub(crate) plot_width: f64,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 36 |     pub(crate) axis_left: f64,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 37 |     pub(crate) axis_right: f64,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TimeAxisLayout` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `time_axes`, `width`, `height`, and `padding` are never read
[INFO] [stdout]   --> src/chart/layout.rs:43:16
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub(crate) struct ChartLayout {
[INFO] [stdout]    |                   ----------- fields in this struct
[INFO] [stdout] 42 |     pub(crate) panels: Vec<PanelLayout>,
[INFO] [stdout] 43 |     pub(crate) time_axes: Vec<TimeAxisLayout>,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub(crate) width: f64,
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout] 61 |     pub(crate) height: f64,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 62 |     pub(crate) padding: f64,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChartLayout` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `panel_layout`, `time_axis_at`, `time_axis_layout`, `panel_axis_side`, and `group_axis_side` are never used
[INFO] [stdout]    --> src/chart/layout.rs:278:19
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl ChartLayout {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub(crate) fn panel_layout(&self, panel_id: PanelId) -> Option<&PanelLayout> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |     pub(crate) fn time_axis_at(&self, y: f64) -> Option<TimeScaleId> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub(crate) fn time_axis_layout(&self, group_id: TimeScaleId) -> Option<&TimeAxisLayout> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     pub(crate) fn panel_axis_side(&self, panel_id: PanelId, x: f64) -> Option<bool> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub(crate) fn group_axis_side(&self, group_id: TimeScaleId, x: f64) -> Option<bool> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `allow_shift_visible_range_on_whitespace_replacement` is never read
[INFO] [stdout]   --> src/chart/options.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct TimeScaleOptions {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub allow_shift_visible_range_on_whitespace_replacement: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TimeScaleOptions` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `OnTouchEnd` is never constructed
[INFO] [stdout]    --> src/chart/options.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub enum TrackingModeExitMode {
[INFO] [stdout]     |          -------------------- variant in this enum
[INFO] [stdout] 180 |     OnTouchEnd,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TrackingModeExitMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rsi_height_ratio` is never read
[INFO] [stdout]    --> src/chart/options.rs:304:9
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub struct ChartStyle {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub rsi_height_ratio: f64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ChartStyle` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `zoom_by` is never used
[INFO] [stdout]    --> src/chart/scales.rs:126:19
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl TimeScale {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub(crate) fn zoom_by(&mut self, factor: f64, anchor: f64) {
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `InBar`, `AtPriceTop`, `AtPriceBottom`, and `AtPriceMiddle` are never constructed
[INFO] [stdout]    --> src/chart/types.rs:223:5
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub enum MarkerPosition {
[INFO] [stdout]     |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 223 |     InBar,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 224 |     AtPriceTop,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 225 |     AtPriceBottom,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 226 |     AtPriceMiddle,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MarkerPosition` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Circle`, `Square`, and `Diamond` are never constructed
[INFO] [stdout]    --> src/chart/types.rs:233:5
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub enum MarkerShape {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 233 |     Circle,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 234 |     Square,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 235 |     Diamond,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MarkerShape` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `min_move` is never read
[INFO] [stdout]    --> src/chart/types.rs:350:9
[INFO] [stdout]     |
[INFO] [stdout] 346 |     Price {
[INFO] [stdout]     |     ----- field in this variant
[INFO] [stdout] ...
[INFO] [stdout] 350 |         min_move: f64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PriceFormat` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_y_to_price` is never used
[INFO] [stdout]   --> src/chart/util.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(crate) fn map_y_to_price(y: f64, min: f64, max: f64, top: f64, height: f64) -> f64 {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Plus` is never constructed
[INFO] [stdout]   --> src/icons/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum IconName {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout]  9 |     Gear,
[INFO] [stdout] 10 |     Plus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IconName` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BollingerBands` is never constructed
[INFO] [stdout]  --> src/indicators/bollinger.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct BollingerBands {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_bollinger` is never used
[INFO] [stdout]  --> src/indicators/bollinger.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn compute_bollinger(candles: &[Candle], period: usize, mult: f64) -> BollingerBands {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_ema` is never used
[INFO] [stdout]  --> src/indicators/ema.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn compute_ema(candles: &[Candle], period: usize) -> Vec<LinePoint> {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_ema_for_times` is never used
[INFO] [stdout]   --> src/indicators/ema.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn compute_ema_for_times(values: &[(OffsetDateTime, f64)], period: usize) -> Vec<LinePoint> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MacdSeries` is never constructed
[INFO] [stdout]  --> src/indicators/macd.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct MacdSeries {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_macd` is never used
[INFO] [stdout]   --> src/indicators/macd.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn compute_macd(candles: &[Candle], fast: usize, slow: usize, signal: usize) -> MacdSeries {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_sma` is never used
[INFO] [stdout]  --> src/indicators/sma.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn compute_sma(candles: &[Candle], period: usize) -> Vec<LinePoint> {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_sma_for_times` is never used
[INFO] [stdout]   --> src/indicators/sma.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn compute_sma_for_times(values: &[(OffsetDateTime, f64)], period: usize) -> Vec<LinePoint> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StochRsiSeries` is never constructed
[INFO] [stdout]  --> src/indicators/stoch_rsi.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct StochRsiSeries {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_stoch_rsi` is never used
[INFO] [stdout]  --> src/indicators/stoch_rsi.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn compute_stoch_rsi(
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StochasticSeries` is never constructed
[INFO] [stdout]  --> src/indicators/stochastic.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct StochasticSeries {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_stochastic` is never used
[INFO] [stdout]  --> src/indicators/stochastic.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn compute_stochastic(
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `row_with_spin` is never used
[INFO] [stdout]   --> src/settings_ui/helpers.rs:40:15
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub(crate) fn row_with_spin(label: &str, digits: u32) -> gtk::SpinButton {
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `panel_selector` and `series_selector` are never read
[INFO] [stdout]   --> src/settings_ui/series/mod.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct SeriesControls {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 74 |     pub panel_selector: gtk::ComboBoxText,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 75 |     pub series_selector: gtk::ComboBoxText,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SeriesControls` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_final` is never read
[INFO] [stdout]   --> src/app/market_data.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct KlineEvent {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub is_final: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `symbol_combo` and `indicator_combo` are never read
[INFO] [stdout]  --> src/app/panel_picker.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct PanelPickerUi {
[INFO] [stdout]   |            ------------- fields in this struct
[INFO] [stdout] 7 |     pub window: gtk::Window,
[INFO] [stdout] 8 |     pub symbol_combo: gtk::ComboBoxText,
[INFO] [stdout]   |         ^^^^^^^^^^^^
[INFO] [stdout] 9 |     pub indicator_combo: gtk::ComboBoxText,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `PanelPickerUi` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `open_global` is never read
[INFO] [stdout]   --> src/app/panel_settings.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct PanelSettingsUi {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub open_global: gtk::Button,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PanelSettingsUi` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/chart/api.rs:208:12
[INFO] [stdout]     |
[INFO] [stdout]  86 | impl ChartApi {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn rsi_color(&self) -> Option<Color> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub fn set_rsi_color(&self, color: Color) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn set_rsi_auto_scale(&self, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 247 |     pub fn set_rsi_price_scale_visible(&self, visible: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 256 |     pub fn rsi_auto_scale(&self) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn rsi_price_scale_visible(&self) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 547 |     pub fn set_axis_visibility(&self, left: bool, right: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 737 |     pub fn apply_time_scale_options(&self, options: TimeScaleOptions) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 791 |     pub fn set_price_scale_mode(&self, side: PriceScale, mode: PriceScaleMode) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 795 |     pub fn set_price_scale_auto_scale(&self, side: PriceScale, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 801 |     pub fn set_price_scale_visible(&self, side: PriceScale, visible: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 807 |     pub fn set_price_scale_margins(&self, side: PriceScale, margins: ScaleMargins) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 813 |     pub fn set_price_scale_border(&self, side: PriceScale, visible: bool, color: Color) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 819 |     pub fn set_price_scale_text_color(&self, side: PriceScale, color: Color) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 825 |     pub fn set_price_scale_ticks_visible(&self, side: PriceScale, visible: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 831 |     pub fn set_price_scale_minimum_width(&self, side: PriceScale, width: f64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 837 |     pub fn set_price_scale_invert(&self, side: PriceScale, invert: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 841 |     pub fn set_price_scale_align_labels(&self, side: PriceScale, align: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 847 |     pub fn set_price_scale_entire_text_only(&self, side: PriceScale, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 853 |     pub fn set_price_scale_ensure_edge_ticks(&self, side: PriceScale, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_data_from_bars` is never used
[INFO] [stdout]    --> src/chart/api.rs:911:12
[INFO] [stdout]     |
[INFO] [stdout] 864 | impl CandlestickSeriesApi {
[INFO] [stdout]     | ------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 911 |     pub fn set_data_from_bars(&self, bars: Vec<Bar>) -> Result<(), BarConversionError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_markers` is never used
[INFO] [stdout]     --> src/chart/api.rs:1090:12
[INFO] [stdout]      |
[INFO] [stdout] 1053 | impl LineSeriesApi {
[INFO] [stdout]      | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1090 |     pub fn set_markers(&self, markers: Vec<Marker>) {
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_markers` is never used
[INFO] [stdout]     --> src/chart/api.rs:1175:12
[INFO] [stdout]      |
[INFO] [stdout] 1134 | impl HistogramSeriesApi {
[INFO] [stdout]      | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1175 |     pub fn set_markers(&self, markers: Vec<Marker>) {
[INFO] [stdout]      |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_price` is never used
[INFO] [stdout]     --> src/chart/api.rs:1238:12
[INFO] [stdout]      |
[INFO] [stdout] 1219 | impl PriceLineApi {
[INFO] [stdout]      | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1238 |     pub fn set_price(&self, price: f64) {
[INFO] [stdout]      |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `next_time_scale_id` is never read
[INFO] [stdout]   --> src/chart/core/mod.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub(crate) struct ChartCore {
[INFO] [stdout]    |                   --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 38 |     next_time_scale_id: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChartCore` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_axis_visibility` is never used
[INFO] [stdout]   --> src/chart/core/options.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl ChartCore {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub(crate) fn set_axis_visibility(&mut self, left: bool, right: bool) {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/chart/core/pricescale.rs:21:19
[INFO] [stdout]     |
[INFO] [stdout]   5 | impl ChartCore {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  21 |     pub(crate) fn set_price_scale_mode(&mut self, side: PriceScale, mode: PriceScaleMode) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  28 |     pub(crate) fn set_price_scale_auto_scale(&mut self, side: PriceScale, enabled: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  35 |     pub(crate) fn set_price_scale_visible(&mut self, side: PriceScale, visible: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  42 |     pub(crate) fn set_price_scale_margins(&mut self, side: PriceScale, margins: ScaleMargins) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |     pub(crate) fn set_price_scale_border(&mut self, side: PriceScale, visible: bool, color: Color) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub(crate) fn set_price_scale_text_color(&mut self, side: PriceScale, color: Color) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  69 |     pub(crate) fn set_price_scale_ticks_visible(&mut self, side: PriceScale, visible: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     pub(crate) fn set_price_scale_minimum_width(&mut self, side: PriceScale, width: f64) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  83 |     pub(crate) fn set_price_scale_invert(&mut self, side: PriceScale, invert: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub(crate) fn set_price_scale_align_labels(&mut self, side: PriceScale, align: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub(crate) fn set_price_scale_entire_text_only(&mut self, side: PriceScale, enabled: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub(crate) fn set_price_scale_ensure_edge_ticks(&mut self, side: PriceScale, enabled: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/chart/core/series.rs:110:19
[INFO] [stdout]     |
[INFO] [stdout]  11 | impl ChartCore {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub(crate) fn rsi_color(&self) -> Option<Color> {
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub(crate) fn set_rsi_color(&mut self, color: Color) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub(crate) fn set_rsi_auto_scale(&mut self, enabled: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub(crate) fn set_rsi_price_scale_visible(&mut self, visible: bool) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub(crate) fn rsi_auto_scale(&self) -> Option<bool> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub(crate) fn rsi_price_scale_visible(&self) -> Option<bool> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub(crate) fn panel_is_collapsed(&self, panel_id: PanelId) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub(crate) fn panel_is_visible(&self, panel_id: PanelId) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub(crate) fn set_indicator_panel_data(&mut self, panel_id: PanelId, data: Vec<LinePoint>) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 412 |     pub(crate) fn set_price_line_price(&mut self, id: usize, line_id: usize, price: f64) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `apply_time_scale_options` is never used
[INFO] [stdout]    --> src/chart/core/timescale.rs:117:19
[INFO] [stdout]     |
[INFO] [stdout]   5 | impl ChartCore {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub(crate) fn apply_time_scale_options(&mut self, options: TimeScaleOptions) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `series_id` and `kind` are never read
[INFO] [stdout]   --> src/chart/data.rs:36:16
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub(crate) struct PanelSeries {
[INFO] [stdout]    |                   ----------- fields in this struct
[INFO] [stdout] 36 |     pub(crate) series_id: usize,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 37 |     pub(crate) kind: SeriesKind,
[INFO] [stdout]    |                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PanelSeries` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parent_id` is never read
[INFO] [stdout]   --> src/chart/data.rs:45:16
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub(crate) struct Panel {
[INFO] [stdout]    |                   ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) parent_id: Option<PanelId>,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Panel` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_data`, `view_range`, `pan`, and `zoom` are never used
[INFO] [stdout]    --> src/chart/data.rs:139:19
[INFO] [stdout]     |
[INFO] [stdout] 128 | impl PriceScaleState {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub(crate) fn update_data(&mut self, min: f64, max: f64, auto_range: (f64, f64)) {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub(crate) fn view_range(&self) -> f64 {
[INFO] [stdout]     |                   ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub(crate) fn pan(&mut self, delta: f64) {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub(crate) fn zoom(&mut self, factor: f64, anchor: f64) {
[INFO] [stdout]     |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_price` is never used
[INFO] [stdout]    --> src/chart/format.rs:123:15
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub(crate) fn format_price(value: f64, precision: usize) -> String {
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `main_top` is never read
[INFO] [stdout]   --> src/chart/layout.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub(crate) struct PanelLayout {
[INFO] [stdout]    |                   ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub(crate) main_top: f64,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PanelLayout` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/chart/layout.rs:29:16
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub(crate) struct TimeAxisLayout {
[INFO] [stdout]    |                   -------------- fields in this struct
[INFO] [stdout] 29 |     pub(crate) group_id: TimeScaleId,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 30 |     pub(crate) top: f64,
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 31 |     pub(crate) bottom: f64,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 32 |     pub(crate) height: f64,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 33 |     pub(crate) plot_left: f64,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 34 |     pub(crate) plot_right: f64,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 35 |     pub(crate) plot_width: f64,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 36 |     pub(crate) axis_left: f64,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] 37 |     pub(crate) axis_right: f64,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TimeAxisLayout` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `time_axes`, `width`, `height`, and `padding` are never read
[INFO] [stdout]   --> src/chart/layout.rs:43:16
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub(crate) struct ChartLayout {
[INFO] [stdout]    |                   ----------- fields in this struct
[INFO] [stdout] 42 |     pub(crate) panels: Vec<PanelLayout>,
[INFO] [stdout] 43 |     pub(crate) time_axes: Vec<TimeAxisLayout>,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub(crate) width: f64,
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout] 61 |     pub(crate) height: f64,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 62 |     pub(crate) padding: f64,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChartLayout` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `panel_layout`, `time_axis_at`, `time_axis_layout`, `panel_axis_side`, and `group_axis_side` are never used
[INFO] [stdout]    --> src/chart/layout.rs:278:19
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl ChartLayout {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub(crate) fn panel_layout(&self, panel_id: PanelId) -> Option<&PanelLayout> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |     pub(crate) fn time_axis_at(&self, y: f64) -> Option<TimeScaleId> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub(crate) fn time_axis_layout(&self, group_id: TimeScaleId) -> Option<&TimeAxisLayout> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     pub(crate) fn panel_axis_side(&self, panel_id: PanelId, x: f64) -> Option<bool> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub(crate) fn group_axis_side(&self, group_id: TimeScaleId, x: f64) -> Option<bool> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `allow_shift_visible_range_on_whitespace_replacement` is never read
[INFO] [stdout]   --> src/chart/options.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct TimeScaleOptions {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub allow_shift_visible_range_on_whitespace_replacement: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TimeScaleOptions` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `OnTouchEnd` is never constructed
[INFO] [stdout]    --> src/chart/options.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub enum TrackingModeExitMode {
[INFO] [stdout]     |          -------------------- variant in this enum
[INFO] [stdout] 180 |     OnTouchEnd,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TrackingModeExitMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rsi_height_ratio` is never read
[INFO] [stdout]    --> src/chart/options.rs:304:9
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub struct ChartStyle {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub rsi_height_ratio: f64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ChartStyle` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `zoom_by` is never used
[INFO] [stdout]    --> src/chart/scales.rs:126:19
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl TimeScale {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub(crate) fn zoom_by(&mut self, factor: f64, anchor: f64) {
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `InBar`, `AtPriceTop`, `AtPriceBottom`, and `AtPriceMiddle` are never constructed
[INFO] [stdout]    --> src/chart/types.rs:223:5
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub enum MarkerPosition {
[INFO] [stdout]     |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 223 |     InBar,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 224 |     AtPriceTop,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 225 |     AtPriceBottom,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 226 |     AtPriceMiddle,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MarkerPosition` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Circle`, `Square`, and `Diamond` are never constructed
[INFO] [stdout]    --> src/chart/types.rs:233:5
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub enum MarkerShape {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 233 |     Circle,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 234 |     Square,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 235 |     Diamond,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MarkerShape` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `min_move` is never read
[INFO] [stdout]    --> src/chart/types.rs:350:9
[INFO] [stdout]     |
[INFO] [stdout] 346 |     Price {
[INFO] [stdout]     |     ----- field in this variant
[INFO] [stdout] ...
[INFO] [stdout] 350 |         min_move: f64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PriceFormat` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_y_to_price` is never used
[INFO] [stdout]   --> src/chart/util.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(crate) fn map_y_to_price(y: f64, min: f64, max: f64, top: f64, height: f64) -> f64 {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Plus` is never constructed
[INFO] [stdout]   --> src/icons/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum IconName {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout]  9 |     Gear,
[INFO] [stdout] 10 |     Plus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IconName` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BollingerBands` is never constructed
[INFO] [stdout]  --> src/indicators/bollinger.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct BollingerBands {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_bollinger` is never used
[INFO] [stdout]  --> src/indicators/bollinger.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn compute_bollinger(candles: &[Candle], period: usize, mult: f64) -> BollingerBands {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_ema` is never used
[INFO] [stdout]  --> src/indicators/ema.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn compute_ema(candles: &[Candle], period: usize) -> Vec<LinePoint> {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_ema_for_times` is never used
[INFO] [stdout]   --> src/indicators/ema.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn compute_ema_for_times(values: &[(OffsetDateTime, f64)], period: usize) -> Vec<LinePoint> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MacdSeries` is never constructed
[INFO] [stdout]  --> src/indicators/macd.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct MacdSeries {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_macd` is never used
[INFO] [stdout]   --> src/indicators/macd.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn compute_macd(candles: &[Candle], fast: usize, slow: usize, signal: usize) -> MacdSeries {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_sma` is never used
[INFO] [stdout]  --> src/indicators/sma.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn compute_sma(candles: &[Candle], period: usize) -> Vec<LinePoint> {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_sma_for_times` is never used
[INFO] [stdout]   --> src/indicators/sma.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn compute_sma_for_times(values: &[(OffsetDateTime, f64)], period: usize) -> Vec<LinePoint> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StochRsiSeries` is never constructed
[INFO] [stdout]  --> src/indicators/stoch_rsi.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct StochRsiSeries {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_stoch_rsi` is never used
[INFO] [stdout]  --> src/indicators/stoch_rsi.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn compute_stoch_rsi(
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StochasticSeries` is never constructed
[INFO] [stdout]  --> src/indicators/stochastic.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct StochasticSeries {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_stochastic` is never used
[INFO] [stdout]  --> src/indicators/stochastic.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn compute_stochastic(
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `row_with_spin` is never used
[INFO] [stdout]   --> src/settings_ui/helpers.rs:40:15
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub(crate) fn row_with_spin(label: &str, digits: u32) -> gtk::SpinButton {
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `panel_selector` and `series_selector` are never read
[INFO] [stdout]   --> src/settings_ui/series/mod.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct SeriesControls {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 74 |     pub panel_selector: gtk::ComboBoxText,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 75 |     pub series_selector: gtk::ComboBoxText,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SeriesControls` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "f5d3699ab091217f9abdd6626e4e6fda10c74ff2ffc22accd49c4269ed60b41a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f5d3699ab091217f9abdd6626e4e6fda10c74ff2ffc22accd49c4269ed60b41a", kill_on_drop: false }`
[INFO] [stdout] f5d3699ab091217f9abdd6626e4e6fda10c74ff2ffc22accd49c4269ed60b41a
