[INFO] cloning repository https://github.com/Jind0la/starcitizen-freight
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Jind0la/starcitizen-freight" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJind0la%2Fstarcitizen-freight", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJind0la%2Fstarcitizen-freight'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1aae7fd2ba09c71927af0259c9f4d3eac4616247
[INFO] checking Jind0la/starcitizen-freight against try#b28cc4eb48a6415b914e8ad0308be255ff8d73ed for pr-156508
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJind0la%2Fstarcitizen-freight" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Jind0la/starcitizen-freight
[INFO] finished tweaking git repo https://github.com/Jind0la/starcitizen-freight
[INFO] tweaked toml for git repo https://github.com/Jind0la/starcitizen-freight written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Jind0la/starcitizen-freight on toolchain b28cc4eb48a6415b914e8ad0308be255ff8d73ed
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b28cc4eb48a6415b914e8ad0308be255ff8d73ed" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Jind0la/starcitizen-freight 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" "+b28cc4eb48a6415b914e8ad0308be255ff8d73ed" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rust-embed-utils v8.11.0
[INFO] [stderr]   Downloaded rust-embed-impl v8.11.0
[INFO] [stderr]   Downloaded rustls-webpki v0.103.12
[INFO] [stderr]   Downloaded rustls v0.23.38
[INFO] [stderr]   Downloaded ratatui v0.28.1
[INFO] [stderr]   Downloaded libc v0.2.185
[INFO] [stderr]   Downloaded rust-embed v8.11.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b28cc4eb48a6415b914e8ad0308be255ff8d73ed" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0d168519b2eee745037c6f08e63604b6d3089e65b66ffcdb928b0062e09a56c7
[INFO] running `Command { std: "docker" "start" "-a" "0d168519b2eee745037c6f08e63604b6d3089e65b66ffcdb928b0062e09a56c7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0d168519b2eee745037c6f08e63604b6d3089e65b66ffcdb928b0062e09a56c7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0d168519b2eee745037c6f08e63604b6d3089e65b66ffcdb928b0062e09a56c7", kill_on_drop: false }`
[INFO] [stdout] 0d168519b2eee745037c6f08e63604b6d3089e65b66ffcdb928b0062e09a56c7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b28cc4eb48a6415b914e8ad0308be255ff8d73ed" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ebf7f965d70ae0ccb47b91e47a120d496adcc1aaca6c7b78ac01d93430ab3e52
[INFO] running `Command { std: "docker" "start" "-a" "ebf7f965d70ae0ccb47b91e47a120d496adcc1aaca6c7b78ac01d93430ab3e52", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.185
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking zerofrom v0.1.7
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling rustls v0.23.38
[INFO] [stderr]     Checking ipnet v2.12.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]     Checking rustix v0.38.44
[INFO] [stderr]     Checking webpki-roots v1.0.7
[INFO] [stderr]     Checking unicode-segmentation v1.13.2
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]     Checking iri-string v0.7.12
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]     Checking http-range-header v0.4.2
[INFO] [stderr]     Checking compact_str v0.8.1
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking rust-embed-utils v8.11.0
[INFO] [stderr]     Checking matchit v0.8.4
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]    Compiling rust-embed-impl v8.11.0
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking tokio v1.52.1
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking rust-embed v8.11.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking ratatui v0.28.1
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking chrono v0.4.44
[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 rustls-webpki v0.103.12
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking axum v0.8.9
[INFO] [stderr]     Checking hyper-rustls v0.27.9
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking starcitizen-freight v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `ApiResponse`
[INFO] [stdout]   --> src/api.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::models::{ApiResponse, Commodity, FuelEntry, Route, StarSystem};
[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: `SYSTEM_NAME_PYRO` and `SYSTEM_NAME_STANTON`
[INFO] [stdout]   --> src/calculation.rs:15:24
[INFO] [stdout]    |
[INFO] [stdout] 15 |     SYSTEM_ID_STANTON, SYSTEM_NAME_PYRO, SYSTEM_NAME_STANTON,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `routes` in this scope
[INFO] [stdout]    --> src/calculation.rs:834:26
[INFO] [stdout]     |
[INFO] [stdout] 834 |             rank_routes(&routes, &commodities, 96, None, 0, RouteTab::IntraSystem, None);
[INFO] [stdout]     |                          ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: a local variable with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 834 -             rank_routes(&routes, &commodities, 96, None, 0, RouteTab::IntraSystem, None);
[INFO] [stdout] 834 +             rank_routes(&route, &commodities, 96, None, 0, RouteTab::IntraSystem, None);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ApiResponse`
[INFO] [stdout]   --> src/api.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::models::{ApiResponse, Commodity, FuelEntry, Route, StarSystem};
[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: `SYSTEM_NAME_PYRO` and `SYSTEM_NAME_STANTON`
[INFO] [stdout]   --> src/calculation.rs:15:24
[INFO] [stdout]    |
[INFO] [stdout] 15 |     SYSTEM_ID_STANTON, SYSTEM_NAME_PYRO, SYSTEM_NAME_STANTON,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |     let mut expanded_route: Option<u8> = None;
[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/main.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |     let mut expanded_route: Option<u8> = None;
[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] error[E0560]: struct `models::Route` has no field named `destination_terminal_code`
[INFO] [stdout]    --> src/calculation.rs:801:13
[INFO] [stdout]     |
[INFO] [stdout] 801 |             destination_terminal_code: Some("ORI".into()),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 801 -             destination_terminal_code: Some("ORI".into()),
[INFO] [stdout] 801 +             terminal_destination_code: Some("ORI".into()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_interstellar`
[INFO] [stdout]   --> src/calculation.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     is_interstellar: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_interstellar`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commodities`
[INFO] [stdout]    --> src/calculation.rs:310:5
[INFO] [stdout]     |
[INFO] [stdout] 310 |     commodities: &[Commodity],
[INFO] [stdout]     |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commodities`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term_a`
[INFO] [stdout]    --> src/calculation.rs:578:26
[INFO] [stdout]     |
[INFO] [stdout] 578 |         let TerminalPair(term_a, term_b) = *pair;
[INFO] [stdout]     |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_term_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term_b`
[INFO] [stdout]    --> src/calculation.rs:578:34
[INFO] [stdout]     |
[INFO] [stdout] 578 |         let TerminalPair(term_a, term_b) = *pair;
[INFO] [stdout]     |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_term_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_interstellar`
[INFO] [stdout]   --> src/calculation.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     is_interstellar: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_interstellar`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commodities`
[INFO] [stdout]    --> src/calculation.rs:310:5
[INFO] [stdout]     |
[INFO] [stdout] 310 |     commodities: &[Commodity],
[INFO] [stdout]     |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commodities`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term_a`
[INFO] [stdout]    --> src/calculation.rs:578:26
[INFO] [stdout]     |
[INFO] [stdout] 578 |         let TerminalPair(term_a, term_b) = *pair;
[INFO] [stdout]     |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_term_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term_b`
[INFO] [stdout]    --> src/calculation.rs:578:34
[INFO] [stdout]     |
[INFO] [stdout] 578 |         let TerminalPair(term_a, term_b) = *pair;
[INFO] [stdout]     |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_term_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `fuel_prices` and `star_systems` are never read
[INFO] [stdout]   --> src/api.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct ApiCache {
[INFO] [stdout]    |        -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fuel_prices: RwLock<Option<CacheEntry<Vec<FuelEntry>>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 32 |     star_systems: RwLock<Option<CacheEntry<Vec<StarSystem>>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_star_systems`, `get_fuel_prices`, and `average_hydrogen_price` are never used
[INFO] [stdout]    --> src/api.rs:123:18
[INFO] [stdout]     |
[INFO] [stdout]  55 | impl UexClient {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub async fn get_star_systems(&self) -> Result<Vec<StarSystem>, AppError> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub async fn get_fuel_prices(&self) -> Result<Vec<FuelEntry>, AppError> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub async fn average_hydrogen_price(&self) -> f64 {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `STANTON_JUMP_GATE_ORBITS` is never used
[INFO] [stdout]   --> src/calculation.rs:39:7
[INFO] [stdout]    |
[INFO] [stdout] 39 | const STANTON_JUMP_GATE_ORBITS: &[u32] = &[
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_jump_gate_route` is never used
[INFO] [stdout]    --> src/calculation.rs:129:4
[INFO] [stdout]     |
[INFO] [stdout] 129 | fn is_jump_gate_route(route: &Route) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `filter_by_tab` is never used
[INFO] [stdout]    --> src/calculation.rs:176:4
[INFO] [stdout]     |
[INFO] [stdout] 176 | fn filter_by_tab<'a>(routes: &'a [Route], tab: RouteTab) -> Vec<&'a Route> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_interstellar_profit` is never used
[INFO] [stdout]    --> src/calculation.rs:308:8
[INFO] [stdout]     |
[INFO] [stdout] 308 | pub fn compute_interstellar_profit(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `available_systems` is never used
[INFO] [stdout]    --> src/calculation.rs:692:8
[INFO] [stdout]     |
[INFO] [stdout] 692 | pub fn available_systems() -> Vec<(u32, &'static str)> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ApiUnreachable`, `InvalidResponse`, `NoRoutesFound`, and `InvalidInput` are never constructed
[INFO] [stdout]   --> src/error.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub enum AppError {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 12 |     ApiUnreachable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     InvalidResponse(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     NoRoutesFound(u32),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     InvalidInput(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_retryable` is never used
[INFO] [stdout]   --> src/error.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl AppError {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 51 |     pub fn is_retryable(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ApiResponse` is never constructed
[INFO] [stdout]   --> src/models.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ApiResponse<T> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/models.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Commodity {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub parent_id: Option<u32>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 24 |     pub name: String,
[INFO] [stdout] 25 |     pub code: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 26 |     pub kind: Option<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 27 |     #[serde(rename = "weight_scu")]
[INFO] [stdout] 28 |     pub weight_scu: Option<f64>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 29 |     #[serde(rename = "price_buy")]
[INFO] [stdout] 30 |     pub price_buy: Option<f64>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub is_available: Option<i32>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 35 |     #[serde(rename = "is_available_live")]
[INFO] [stdout] 36 |     pub is_available_live: Option<i32>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 37 |     #[serde(rename = "is_visible")]
[INFO] [stdout] 38 |     pub is_visible: Option<i32>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 39 |     #[serde(rename = "is_buyable")]
[INFO] [stdout] 40 |     pub is_buyable: Option<i32>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 41 |     #[serde(rename = "is_sellable")]
[INFO] [stdout] 42 |     pub is_sellable: Option<i32>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 43 |     #[serde(rename = "is_illegal")]
[INFO] [stdout] 44 |     pub is_illegal: Option<i32>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 45 |     #[serde(rename = "is_fuel")]
[INFO] [stdout] 46 |     pub is_fuel: Option<i32>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Commodity` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/models.rs:57:9
[INFO] [stdout]     |
[INFO] [stdout]  54 | pub struct Route {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  57 |     pub commodity_id: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub planet_origin_id: Option<u32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]  64 |     #[serde(rename = "id_planet_destination")]
[INFO] [stdout]  65 |     pub planet_destination_id: Option<u32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  66 |     #[serde(rename = "id_orbit_origin")]
[INFO] [stdout]  67 |     pub orbit_origin_id: Option<u32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]  68 |     #[serde(rename = "id_orbit_destination")]
[INFO] [stdout]  69 |     pub orbit_destination_id: Option<u32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  75 |     pub faction_origin_id: Option<u32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]  76 |     #[serde(rename = "id_faction_destination")]
[INFO] [stdout]  77 |     pub faction_destination_id: Option<u32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  78 |     pub code: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub price_origin_users: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  82 |     pub price_destination_users: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  83 |     pub price_origin_users_rows: Option<f64>,
[INFO] [stdout]  84 |     pub price_destination_users_rows: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  85 |     pub price_margin: f64,
[INFO] [stdout]  86 |     pub price_roi: f64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]  87 |     pub scu_origin: Option<f64>,
[INFO] [stdout]  88 |     pub scu_origin_users: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]  89 |     pub scu_origin_users_rows: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  90 |     pub scu_destination: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]  91 |     pub scu_destination_users: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  92 |     pub scu_destination_users_rows: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  93 |     pub scu_margin: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]  94 |     pub scu_reachable: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]  95 |     pub volatility_origin: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]  96 |     pub volatility_destination: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  97 |     pub status_origin: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]  98 |     pub status_destination: Option<i32>,
[INFO] [stdout]  99 |     pub investment: f64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 100 |     pub profit: f64,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub container_sizes_origin: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub has_docking_port_origin: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 109 |     #[serde(rename = "has_docking_port_destination")]
[INFO] [stdout] 110 |     pub has_docking_port_destination: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 111 |     #[serde(rename = "has_freight_elevator_origin")]
[INFO] [stdout] 112 |     pub has_freight_elevator_origin: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 113 |     #[serde(rename = "has_freight_elevator_destination")]
[INFO] [stdout] 114 |     pub has_freight_elevator_destination: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 115 |     #[serde(rename = "has_loading_dock_origin")]
[INFO] [stdout] 116 |     pub has_loading_dock_origin: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 117 |     #[serde(rename = "has_loading_dock_destination")]
[INFO] [stdout] 118 |     pub has_loading_dock_destination: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 119 |     #[serde(rename = "has_refuel_origin")]
[INFO] [stdout] 120 |     pub has_refuel_origin: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 121 |     #[serde(rename = "has_refuel_destination")]
[INFO] [stdout] 122 |     pub has_refuel_destination: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 123 |     #[serde(rename = "has_cargo_center_origin")]
[INFO] [stdout] 124 |     pub has_cargo_center_origin: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 125 |     #[serde(rename = "has_cargo_center_destination")]
[INFO] [stdout] 126 |     pub has_cargo_center_destination: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 127 |     #[serde(rename = "has_quantum_marker_origin")]
[INFO] [stdout] 128 |     pub has_quantum_marker_origin: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 129 |     #[serde(rename = "has_quantum_marker_destination")]
[INFO] [stdout] 130 |     pub has_quantum_marker_destination: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 131 |     #[serde(rename = "is_monitored_origin")]
[INFO] [stdout] 132 |     pub is_monitored_origin: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 133 |     #[serde(rename = "is_monitored_destination")]
[INFO] [stdout] 134 |     pub is_monitored_destination: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 135 |     #[serde(rename = "is_space_station_origin")]
[INFO] [stdout] 136 |     pub is_space_station_origin: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 137 |     #[serde(rename = "is_space_station_destination")]
[INFO] [stdout] 138 |     pub is_space_station_destination: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 139 |     #[serde(rename = "is_on_ground_origin")]
[INFO] [stdout] 140 |     pub is_on_ground_origin: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 141 |     #[serde(rename = "is_on_ground_destination")]
[INFO] [stdout] 142 |     pub is_on_ground_destination: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub commodity_code: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub origin_star_system_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 151 |     #[serde(rename = "origin_planet_name")]
[INFO] [stdout] 152 |     pub origin_planet_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 153 |     #[serde(rename = "origin_orbit_name")]
[INFO] [stdout] 154 |     pub origin_orbit_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub terminal_origin_code: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 159 |     #[serde(rename = "origin_terminal_slug")]
[INFO] [stdout] 160 |     pub terminal_origin_slug: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub origin_faction_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub destination_planet_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 169 |     #[serde(rename = "destination_orbit_name")]
[INFO] [stdout] 170 |     pub destination_orbit_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub terminal_destination_code: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub destination_terminal_is_player_owned: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 179 |     #[serde(rename = "destination_faction_name")]
[INFO] [stdout] 180 |     pub destination_faction_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 181 |     #[serde(rename = "game_version_origin")]
[INFO] [stdout] 182 |     pub game_version_origin: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 183 |     #[serde(rename = "game_version_destination")]
[INFO] [stdout] 184 |     pub game_version_destination: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Route` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/models.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub struct FuelEntry {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] 195 |     pub id: u32,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 196 |     #[serde(rename = "id_commodity")]
[INFO] [stdout] 197 |     pub commodity_id: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 198 |     #[serde(rename = "id_star_system")]
[INFO] [stdout] 199 |     pub star_system_id: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 200 |     #[serde(rename = "id_orbit")]
[INFO] [stdout] 201 |     pub orbit_id: Option<u32>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 202 |     #[serde(rename = "id_terminal")]
[INFO] [stdout] 203 |     pub terminal_id: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 204 |     pub price_buy: f64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 205 |     pub price_buy_avg: Option<f64>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 206 |     #[serde(rename = "commodity_name")]
[INFO] [stdout] 207 |     pub commodity_name: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 208 |     #[serde(rename = "star_system_name")]
[INFO] [stdout] 209 |     pub star_system_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 210 |     #[serde(rename = "orbit_name")]
[INFO] [stdout] 211 |     pub orbit_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 212 |     #[serde(rename = "terminal_name")]
[INFO] [stdout] 213 |     pub terminal_name: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FuelEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `effective_price` is never used
[INFO] [stdout]    --> src/models.rs:218:12
[INFO] [stdout]     |
[INFO] [stdout] 216 | impl FuelEntry {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] 217 |     /// Returns the effective hydrogen fuel price (avg if available, else spot).
[INFO] [stdout] 218 |     pub fn effective_price(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Terminal` is never constructed
[INFO] [stdout]    --> src/models.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct Terminal {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/models.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 273 | pub struct StarSystem {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 274 |     pub id: u32,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 275 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 276 |     pub code: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 277 |     #[serde(rename = "is_available")]
[INFO] [stdout] 278 |     pub is_available: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 279 |     #[serde(rename = "is_available_live")]
[INFO] [stdout] 280 |     pub is_available_live: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 281 |     #[serde(rename = "is_visible")]
[INFO] [stdout] 282 |     pub is_visible: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 283 |     #[serde(rename = "is_default")]
[INFO] [stdout] 284 |     pub is_default: Option<i32>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 285 |     #[serde(rename = "faction_name")]
[INFO] [stdout] 286 |     pub faction_name: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StarSystem` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SYSTEM_ID_PYRO` is never used
[INFO] [stdout]    --> src/models.rs:291:11
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub const SYSTEM_ID_PYRO: u32 = 64;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SYSTEM_ID_NYX` is never used
[INFO] [stdout]    --> src/models.rs:292:11
[INFO] [stdout]     |
[INFO] [stdout] 292 | pub const SYSTEM_ID_NYX: u32 = 55;
[INFO] [stdout]     |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SYSTEM_NAME_STANTON` is never used
[INFO] [stdout]    --> src/models.rs:295:11
[INFO] [stdout]     |
[INFO] [stdout] 295 | pub const SYSTEM_NAME_STANTON: &str = "Stanton";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SYSTEM_NAME_PYRO` is never used
[INFO] [stdout]    --> src/models.rs:296:11
[INFO] [stdout]     |
[INFO] [stdout] 296 | pub const SYSTEM_NAME_PYRO: &str = "Pyro";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SYSTEM_NAME_NYX` is never used
[INFO] [stdout]    --> src/models.rs:297:11
[INFO] [stdout]     |
[INFO] [stdout] 297 | pub const SYSTEM_NAME_NYX: &str = "Nyx";
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AVAILABLE_SYSTEMS` is never used
[INFO] [stdout]    --> src/models.rs:300:11
[INFO] [stdout]     |
[INFO] [stdout] 300 | pub const AVAILABLE_SYSTEMS: &[(u32, &str)] = &[
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LAGRANGE_STANTON_TERRA_GATEWAY` is never used
[INFO] [stdout]    --> src/models.rs:308:11
[INFO] [stdout]     |
[INFO] [stdout] 308 | pub const LAGRANGE_STANTON_TERRA_GATEWAY: u32 = 361; // Terra Gateway in Stanton
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LAGRANGE_STANTON_MICROTECH_L1` is never used
[INFO] [stdout]    --> src/models.rs:309:11
[INFO] [stdout]     |
[INFO] [stdout] 309 | pub const LAGRANGE_STANTON_MICROTECH_L1: u32 = 339; // microTech Lagrange Point 1
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LAGRANGE_STANTON_ARCCORP_L1` is never used
[INFO] [stdout]    --> src/models.rs:310:11
[INFO] [stdout]     |
[INFO] [stdout] 310 | pub const LAGRANGE_STANTON_ARCCORP_L1: u32 = 326;   // ArcCorp Lagrange Point 1
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LAGRANGE_STANTON_CRUSAHER_L5` is never used
[INFO] [stdout]    --> src/models.rs:311:11
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub const LAGRANGE_STANTON_CRUSAHER_L5: u32 = 333;  // Crusader Lagrange Point 5
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `STANTON_GATEWAY_TO_PYRO` is never used
[INFO] [stdout]    --> src/models.rs:312:11
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub const STANTON_GATEWAY_TO_PYRO: u32 = 398;       // Stanton Gateway (Pyro system) → in Stanton view
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PYRO_GATEWAY_STANTON` is never used
[INFO] [stdout]    --> src/models.rs:313:11
[INFO] [stdout]     |
[INFO] [stdout] 313 | pub const PYRO_GATEWAY_STANTON: u32 = 398;          // Same orbit, different system perspective
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OrbitDistance` is never constructed
[INFO] [stdout]    --> src/models.rs:320:12
[INFO] [stdout]     |
[INFO] [stdout] 320 | pub struct OrbitDistance {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `JumpCount` is never used
[INFO] [stdout]    --> src/models.rs:428:10
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub enum JumpCount {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `as_u8` and `as_str` are never used
[INFO] [stdout]    --> src/models.rs:435:12
[INFO] [stdout]     |
[INFO] [stdout] 434 | impl JumpCount {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 435 |     pub fn as_u8(&self) -> u8 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 443 |     pub fn as_str(&self) -> &'static str {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ship` is never constructed
[INFO] [stdout]    --> src/models.rs:499:12
[INFO] [stdout]     |
[INFO] [stdout] 499 | pub struct Ship {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SHIPS` is never used
[INFO] [stdout]    --> src/models.rs:505:11
[INFO] [stdout]     |
[INFO] [stdout] 505 | pub const SHIPS: &[Ship] = &[
[INFO] [stdout]     |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0560.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `starcitizen-freight` (bin "freight" test) due to 2 previous errors; 7 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "ebf7f965d70ae0ccb47b91e47a120d496adcc1aaca6c7b78ac01d93430ab3e52", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ebf7f965d70ae0ccb47b91e47a120d496adcc1aaca6c7b78ac01d93430ab3e52", kill_on_drop: false }`
[INFO] [stdout] ebf7f965d70ae0ccb47b91e47a120d496adcc1aaca6c7b78ac01d93430ab3e52
