[INFO] fetching crate stock-calc 1.0.1...
[INFO] checking stock-calc-1.0.1 against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1
[INFO] extracting crate stock-calc 1.0.1 into /workspace/builds/worker-4-tc1/source
[INFO] started tweaking crates.io crate stock-calc 1.0.1
[INFO] finished tweaking crates.io crate stock-calc 1.0.1
[INFO] tweaked toml for crates.io crate stock-calc 1.0.1 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate stock-calc 1.0.1 on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate stock-calc 1.0.1 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" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "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]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded zvariant_utils v3.2.0
[INFO] [stderr]   Downloaded tauri-winrt-notification v0.7.2
[INFO] [stderr]   Downloaded windows-version v0.1.4
[INFO] [stderr]   Downloaded notify-rust v4.11.7
[INFO] [stderr]   Downloaded dlv-list v0.3.0
[INFO] [stderr]   Downloaded rust-ini v0.18.0
[INFO] [stderr]   Downloaded mac-notification-sys v0.6.6
[INFO] [stderr]   Downloaded ron v0.7.1
[INFO] [stderr]   Downloaded block2 v0.6.1
[INFO] [stderr]   Downloaded config v0.13.4
[INFO] [stderr]   Downloaded zvariant v5.6.0
[INFO] [stderr]   Downloaded polling v3.9.0
[INFO] [stderr]   Downloaded ordered-multimap v0.4.3
[INFO] [stderr]   Downloaded zbus_macros v5.9.0
[INFO] [stderr]   Downloaded zbus v5.9.0
[INFO] [stderr]   Downloaded zbus_names v4.2.0
[INFO] [stderr]   Downloaded zvariant_derive v5.6.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fd58a094f340200869933a5535f5c72b41ef772113a340ab2d08c06e3c6cf029
[INFO] running `Command { std: "docker" "start" "-a" "fd58a094f340200869933a5535f5c72b41ef772113a340ab2d08c06e3c6cf029", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fd58a094f340200869933a5535f5c72b41ef772113a340ab2d08c06e3c6cf029", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fd58a094f340200869933a5535f5c72b41ef772113a340ab2d08c06e3c6cf029", kill_on_drop: false }`
[INFO] [stdout] fd58a094f340200869933a5535f5c72b41ef772113a340ab2d08c06e3c6cf029
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4c413bc8b21d9c83bd7f329aba65006f50462f5e02cb41da31bb9b61b57090c6
[INFO] running `Command { std: "docker" "start" "-a" "4c413bc8b21d9c83bd7f329aba65006f50462f5e02cb41da31bb9b61b57090c6", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling hashbrown v0.15.4
[INFO] [stderr]    Compiling winnow v0.7.12
[INFO] [stderr]     Checking slab v0.4.10
[INFO] [stderr]    Compiling cc v1.2.31
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling rustix v1.0.8
[INFO] [stderr]     Checking unicode-ident v1.0.18
[INFO] [stderr]     Checking futures-lite v2.6.0
[INFO] [stderr]     Checking linux-raw-sys v0.9.4
[INFO] [stderr]     Checking event-listener v5.4.0
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling memchr v2.7.5
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling endi v1.1.0
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]    Compiling serde_json v1.0.142
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]     Checking quote v1.0.40
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]     Checking async-lock v3.4.0
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]     Checking indexmap v2.10.0
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking syn v2.0.104
[INFO] [stderr]     Checking dlv-list v0.3.0
[INFO] [stderr]     Checking anstyle-query v1.1.3
[INFO] [stderr]     Checking anstream v0.6.19
[INFO] [stderr]     Checking async-broadcast v0.7.2
[INFO] [stderr]     Checking ordered-stream v0.2.0
[INFO] [stderr]     Checking unicode-width v0.2.1
[INFO] [stderr]     Checking yaml-rust v0.4.5
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking clap_builder v4.5.42
[INFO] [stderr]     Checking humantime v2.2.0
[INFO] [stderr]     Checking pathdiff v0.2.3
[INFO] [stderr]     Checking async-executor v1.13.2
[INFO] [stderr]     Checking blocking v1.6.2
[INFO] [stderr]     Checking colored v2.2.0
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking signal-hook-registry v1.4.5
[INFO] [stderr]     Checking parking_lot_core v0.9.11
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]     Checking socket2 v0.6.0
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking ahash v0.7.8
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]     Checking console v0.15.11
[INFO] [stderr]     Checking is-terminal v0.4.16
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking signal-hook-mio v0.2.4
[INFO] [stderr]     Checking crossterm v0.27.0
[INFO] [stderr]     Checking indicatif v0.17.11
[INFO] [stderr]     Checking ordered-multimap v0.4.3
[INFO] [stderr]     Checking rust-ini v0.18.0
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking env_logger v0.10.2
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling proc-macro-crate v3.3.0
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling clap_derive v4.5.41
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]     Checking polling v3.9.0
[INFO] [stderr]     Checking async-io v2.5.0
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking tokio v1.47.1
[INFO] [stderr]     Checking async-signal v0.2.12
[INFO] [stderr]     Checking async-process v2.4.0
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling pest v2.8.1
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking zerovec v0.11.2
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]     Checking clap v4.5.42
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.2
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking serde v1.0.219
[INFO] [stderr]    Compiling pest_meta v2.8.1
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]    Compiling pest_generator v2.8.1
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]    Compiling pest_derive v2.8.1
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking enumflags2 v0.7.12
[INFO] [stderr]     Checking zvariant_utils v3.2.0
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking toml v0.5.11
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking ron v0.7.1
[INFO] [stderr]     Checking json5 v0.4.1
[INFO] [stderr]     Checking chrono v0.4.41
[INFO] [stderr]     Checking tokio-util v0.7.15
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking tokio-test v0.4.4
[INFO] [stderr]     Checking config v0.13.4
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]    Compiling zvariant_derive v5.6.0
[INFO] [stderr]    Compiling zvariant v5.6.0
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking zbus_names v4.2.0
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]    Compiling zbus_macros v5.9.0
[INFO] [stderr]     Checking zbus v5.9.0
[INFO] [stderr]     Checking notify-rust v4.11.7
[INFO] [stderr]     Checking stock-calc v1.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `retry`
[INFO] [stdout]    --> src/main.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     retry: u32,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_retry`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `InvalidStockCode` and `StorageError` are never constructed
[INFO] [stdout]   --> src/error.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum StockCalcError {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 12 |     InvalidStockCode(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     StorageError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StockCalcError` has a derived impl for the trait `Debug`, but this is 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: variant `InvalidNumber` is never constructed
[INFO] [stdout]   --> src/error.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub enum ValidationError {
[INFO] [stdout]    |          --------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 42 |     InvalidNumber,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ValidationError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create_default_config` is never used
[INFO] [stdout]    --> src/config.rs:102:12
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl AppConfig {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn create_default_config() -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `validate_stock_code` is never used
[INFO] [stdout]   --> src/api.rs:79:18
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl StockApi {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub async fn validate_stock_code(&self, stock_code: &str) -> Result<bool> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `format_percentage` is never used
[INFO] [stdout]    --> src/calculator.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout]   7 | impl StockCalculator {
[INFO] [stdout]     | -------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn format_percentage(percentage: f64) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]  --> src/storage.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Storage {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] 9 |     config: AppConfig,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_stock`, `backup_database`, `restore_database`, `clear_database`, and `get_database_info` are never used
[INFO] [stdout]    --> src/storage.rs:71:12
[INFO] [stdout]     |
[INFO] [stdout]  12 | impl Storage {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub fn update_stock(&self, stock: StockData) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn backup_database(&self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn restore_database(&self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn clear_database(&self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn get_database_info(&self) -> Result<DatabaseInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DatabaseInfo` is never constructed
[INFO] [stdout]    --> src/storage.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct DatabaseInfo {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_help` is never used
[INFO] [stdout]    --> src/cli.rs:200:8
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub fn print_help() {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `retry`
[INFO] [stdout]    --> src/main.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     retry: u32,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_retry`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `InvalidStockCode` and `StorageError` are never constructed
[INFO] [stdout]   --> src/error.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub enum StockCalcError {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 12 |     InvalidStockCode(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     StorageError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StockCalcError` has a derived impl for the trait `Debug`, but this is 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: variant `InvalidNumber` is never constructed
[INFO] [stdout]   --> src/error.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub enum ValidationError {
[INFO] [stdout]    |          --------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 42 |     InvalidNumber,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ValidationError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create_default_config` is never used
[INFO] [stdout]    --> src/config.rs:102:12
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl AppConfig {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn create_default_config() -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `validate_stock_code` is never used
[INFO] [stdout]   --> src/api.rs:79:18
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl StockApi {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub async fn validate_stock_code(&self, stock_code: &str) -> Result<bool> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `format_percentage` is never used
[INFO] [stdout]    --> src/calculator.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout]   7 | impl StockCalculator {
[INFO] [stdout]     | -------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn format_percentage(percentage: f64) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]  --> src/storage.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Storage {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] 9 |     config: AppConfig,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_stock`, `backup_database`, `restore_database`, `clear_database`, and `get_database_info` are never used
[INFO] [stdout]    --> src/storage.rs:71:12
[INFO] [stdout]     |
[INFO] [stdout]  12 | impl Storage {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub fn update_stock(&self, stock: StockData) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn backup_database(&self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn restore_database(&self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn clear_database(&self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn get_database_info(&self) -> Result<DatabaseInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DatabaseInfo` is never constructed
[INFO] [stdout]    --> src/storage.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct DatabaseInfo {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_help` is never used
[INFO] [stdout]    --> src/cli.rs:200:8
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub fn print_help() {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 01s
[INFO] running `Command { std: "docker" "inspect" "4c413bc8b21d9c83bd7f329aba65006f50462f5e02cb41da31bb9b61b57090c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4c413bc8b21d9c83bd7f329aba65006f50462f5e02cb41da31bb9b61b57090c6", kill_on_drop: false }`
[INFO] [stdout] 4c413bc8b21d9c83bd7f329aba65006f50462f5e02cb41da31bb9b61b57090c6
