[INFO] cloning repository https://github.com/jelilat/benchfi
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jelilat/benchfi" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjelilat%2Fbenchfi", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjelilat%2Fbenchfi'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d33f48feabe0f9e8108482c99a90436490982131
[INFO] checking jelilat/benchfi against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjelilat%2Fbenchfi" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jelilat/benchfi
[INFO] finished tweaking git repo https://github.com/jelilat/benchfi
[INFO] tweaked toml for git repo https://github.com/jelilat/benchfi written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jelilat/benchfi 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 git repo https://github.com/jelilat/benchfi 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]  Downloading crates ...
[INFO] [stderr]   Downloaded serde v1.0.223
[INFO] [stderr]   Downloaded wasi v0.14.5+wasi-0.2.4
[INFO] [stderr]   Downloaded protobuf-support v3.7.2
[INFO] [stderr]   Downloaded serde_path_to_error v0.1.19
[INFO] [stderr]   Downloaded cc v1.2.37
[INFO] [stderr]   Downloaded axum-macros v0.5.0
[INFO] [stderr]   Downloaded clap v4.5.47
[INFO] [stderr]   Downloaded comfy-table v7.2.1
[INFO] [stderr]   Downloaded wasip2 v1.0.0+wasi-0.2.4
[INFO] [stderr]   Downloaded prometheus v0.14.0
[INFO] [stderr]   Downloaded rustls-webpki v0.103.5
[INFO] [stderr]   Downloaded indexmap v2.11.1
[INFO] [stderr]   Downloaded clap_builder v4.5.47
[INFO] [stderr]   Downloaded serde_derive v1.0.223
[INFO] [stderr]   Downloaded protobuf v3.7.2
[INFO] [stderr]   Downloaded serde_core v1.0.223
[INFO] [stderr]   Downloaded tempfile v3.22.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] a621c3c639844775faed1f14203c18feee720a2f5c0575ffee9b9dbd37d53f50
[INFO] running `Command { std: "docker" "start" "-a" "a621c3c639844775faed1f14203c18feee720a2f5c0575ffee9b9dbd37d53f50", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a621c3c639844775faed1f14203c18feee720a2f5c0575ffee9b9dbd37d53f50", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a621c3c639844775faed1f14203c18feee720a2f5c0575ffee9b9dbd37d53f50", kill_on_drop: false }`
[INFO] [stdout] a621c3c639844775faed1f14203c18feee720a2f5c0575ffee9b9dbd37d53f50
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 06e32e1b04995656ad5d2b1743a6aae12ec6dd7424a999c6227ff675505c974f
[INFO] running `Command { std: "docker" "start" "-a" "06e32e1b04995656ad5d2b1743a6aae12ec6dd7424a999c6227ff675505c974f", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.19
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]     Checking socket2 v0.6.0
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling find-msvc-tools v0.1.1
[INFO] [stderr]     Checking http v1.3.1
[INFO] [stderr]     Checking tracing-core v0.1.34
[INFO] [stderr]    Compiling cc v1.2.37
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]    Compiling serde_core v1.0.223
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]     Checking bitflags v2.9.4
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking writeable v0.6.1
[INFO] [stderr]     Checking litemap v0.8.0
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]     Checking percent-encoding v2.3.2
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]    Compiling serde v1.0.223
[INFO] [stderr]     Checking tower-service v0.3.3
[INFO] [stderr]     Checking futures-sink v0.3.31
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking slab v0.4.11
[INFO] [stderr]     Checking atomic-waker v1.1.2
[INFO] [stderr]     Checking try-lock v0.2.5
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]     Checking icu_properties_data v2.0.1
[INFO] [stderr]     Checking icu_normalizer_data v2.0.0
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]     Checking tower-layer v0.3.3
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking indexmap v2.11.1
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]     Checking openssl-probe v0.1.6
[INFO] [stderr]     Checking ipnet v2.11.0
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking mime v0.3.17
[INFO] [stderr]    Compiling thiserror v2.0.16
[INFO] [stderr]     Checking utf8_iter v1.0.4
[INFO] [stderr]    Compiling protobuf v3.7.2
[INFO] [stderr]    Compiling litrs v0.4.2
[INFO] [stderr]     Checking zeroize v1.8.1
[INFO] [stderr]    Compiling prometheus v0.14.0
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]     Checking iri-string v0.7.8
[INFO] [stderr]     Checking rustls-pki-types v1.12.0
[INFO] [stderr]     Checking clap_builder v4.5.47
[INFO] [stderr]    Compiling document-features v0.2.11
[INFO] [stderr]    Compiling anyhow v1.0.99
[INFO] [stderr]     Checking axum-core v0.5.2
[INFO] [stderr]     Checking csv-core v0.1.12
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking serde_path_to_error v0.1.19
[INFO] [stderr]     Checking matchit v0.8.4
[INFO] [stderr]     Checking comfy-table v7.2.1
[INFO] [stderr]     Checking dotenv v0.15.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[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 tokio-macros v2.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.223
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror-impl v2.0.16
[INFO] [stderr]     Checking tokio v1.47.1
[INFO] [stderr]    Compiling clap_derive v4.5.47
[INFO] [stderr]    Compiling axum-macros v0.5.0
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking protobuf-support v3.7.2
[INFO] [stderr]     Checking zerovec v0.11.4
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.3
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking clap v4.5.47
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking csv v1.3.1
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking tokio-util v0.7.16
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]     Checking h2 v0.4.12
[INFO] [stderr]     Checking hyper v1.7.0
[INFO] [stderr]     Checking hyper-util v0.1.16
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking axum v0.8.4
[INFO] [stderr]     Checking reqwest v0.12.23
[INFO] [stderr]     Checking benchfi v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `OdosQuoteResponse`
[INFO] [stdout]  --> src/aggregators/odos.rs:2:68
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Aggregator, OdosInputToken, OdosOutputToken, OdosQuoteRequest, OdosQuoteResponse,
[INFO] [stdout]   |                                                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RouteHop`
[INFO] [stdout]  --> src/output/table.rs:1:28
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::models::{Quote, RouteHop};
[INFO] [stdout]   |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/aggregators/matcha.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OdosQuoteResponse`
[INFO] [stdout]  --> src/aggregators/odos.rs:2:68
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Aggregator, OdosInputToken, OdosOutputToken, OdosQuoteRequest, OdosQuoteResponse,
[INFO] [stdout]   |                                                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/aggregators/odos.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/aggregators/one_inch.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RouteHop`
[INFO] [stdout]  --> src/output/table.rs:1:28
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::models::{Quote, RouteHop};
[INFO] [stdout]   |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_address`
[INFO] [stdout]   --> src/aggregators/matcha.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         wallet_address: Option<&str>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_address`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_address`
[INFO] [stdout]   --> src/aggregators/odos.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         wallet_address: Option<&str>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_decimals`
[INFO] [stdout]   --> src/aggregators/odos.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |             let output_decimals = json_response["pathViz"]["nodes"]
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_decimals`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_address`
[INFO] [stdout]   --> src/aggregators/one_inch.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         wallet_address: Option<&str>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_address`
[INFO] [stdout]   --> src/aggregators/matcha.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         wallet_address: Option<&str>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_address`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_address`
[INFO] [stdout]   --> src/aggregators/odos.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         wallet_address: Option<&str>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_decimals`
[INFO] [stdout]   --> src/aggregators/odos.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |             let output_decimals = json_response["pathViz"]["nodes"]
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_decimals`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `matcha`
[INFO] [stdout]   --> src/lib.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let matcha = Matcha::new(env::var("MATCHA_API_KEY").unwrap());
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_matcha`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXQuoteResponse` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct ZeroXQuoteResponse {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXRoute` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct ZeroXRoute {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXFill` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct ZeroXFill {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXToken` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | struct ZeroXToken {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `api_key` is never read
[INFO] [stdout]   --> src/aggregators/odos.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Odos {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     api_key: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_address`
[INFO] [stdout]   --> src/aggregators/one_inch.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         wallet_address: Option<&str>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXQuoteResponse` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct ZeroXQuoteResponse {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXRoute` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct ZeroXRoute {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXFill` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct ZeroXFill {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXToken` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | struct ZeroXToken {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `api_key` is never read
[INFO] [stdout]   --> src/aggregators/odos.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Odos {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     api_key: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/aggregators/matcha.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OdosQuoteResponse`
[INFO] [stdout]  --> src/aggregators/odos.rs:2:68
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Aggregator, OdosInputToken, OdosOutputToken, OdosQuoteRequest, OdosQuoteResponse,
[INFO] [stdout]   |                                                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/aggregators/odos.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/aggregators/one_inch.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RouteHop`
[INFO] [stdout]  --> src/output/table.rs:1:28
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::models::{Quote, RouteHop};
[INFO] [stdout]   |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OdosQuoteResponse`
[INFO] [stdout]  --> src/aggregators/odos.rs:2:68
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Aggregator, OdosInputToken, OdosOutputToken, OdosQuoteRequest, OdosQuoteResponse,
[INFO] [stdout]   |                                                                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RouteHop`
[INFO] [stdout]  --> src/output/table.rs:1:28
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::models::{Quote, RouteHop};
[INFO] [stdout]   |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_address`
[INFO] [stdout]   --> src/aggregators/matcha.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         wallet_address: Option<&str>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_address`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_address`
[INFO] [stdout]   --> src/aggregators/matcha.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         wallet_address: Option<&str>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_address`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_address`
[INFO] [stdout]   --> src/aggregators/odos.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         wallet_address: Option<&str>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_decimals`
[INFO] [stdout]   --> src/aggregators/odos.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |             let output_decimals = json_response["pathViz"]["nodes"]
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_decimals`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_address`
[INFO] [stdout]   --> src/aggregators/odos.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         wallet_address: Option<&str>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_decimals`
[INFO] [stdout]   --> src/aggregators/odos.rs:92:17
[INFO] [stdout]    |
[INFO] [stdout] 92 |             let output_decimals = json_response["pathViz"]["nodes"]
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_decimals`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_address`
[INFO] [stdout]   --> src/aggregators/one_inch.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         wallet_address: Option<&str>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet_address`
[INFO] [stdout]   --> src/aggregators/one_inch.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         wallet_address: Option<&str>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_address`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXQuoteResponse` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct ZeroXQuoteResponse {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXRoute` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct ZeroXRoute {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXFill` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct ZeroXFill {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXToken` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | struct ZeroXToken {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `api_key` is never read
[INFO] [stdout]   --> src/aggregators/odos.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Odos {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     api_key: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/models.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct TokenInfo {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 29 |     pub address: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 30 |     pub symbol: String,
[INFO] [stdout] 31 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 32 |     pub decimals: u8,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 33 |     #[serde(rename = "logoURI")]
[INFO] [stdout] 34 |     pub logo_uri: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 35 |     #[serde(rename = "domainVersion")]
[INFO] [stdout] 36 |     pub domain_version: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 37 |     pub eip2612: Option<bool>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 38 |     #[serde(rename = "isFoT")]
[INFO] [stdout] 39 |     pub is_fot: Option<bool>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 40 |     pub tags: Option<Vec<String>>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TokenInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `part`, `from_token_id`, and `to_token_id` are never read
[INFO] [stdout]   --> src/models.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct TokenHop {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 52 |     pub part: f64,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub from_token_id: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 56 |     #[serde(rename = "toTokenId")]
[INFO] [stdout] 57 |     pub to_token_id: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TokenHop` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `status_code`, `request_id`, and `meta` are never read
[INFO] [stdout]   --> src/models.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct OneInchError {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub status_code: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 84 |     #[serde(rename = "requestId")]
[INFO] [stdout] 85 |     pub request_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 86 |     pub meta: Option<Vec<serde_json::Value>>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OneInchError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OdosQuoteResponse` is never constructed
[INFO] [stdout]    --> src/models.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub struct OdosQuoteResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `loc` is never read
[INFO] [stdout]    --> src/models.rs:177:9
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub struct OdosValidationDetail {
[INFO] [stdout]     |            -------------------- field in this struct
[INFO] [stdout] 177 |     pub loc: Vec<serde_json::Value>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OdosValidationDetail` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXQuoteResponse` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct ZeroXQuoteResponse {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXRoute` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct ZeroXRoute {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXFill` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct ZeroXFill {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZeroXToken` is never constructed
[INFO] [stdout]   --> src/aggregators/matcha.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | struct ZeroXToken {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `api_key` is never read
[INFO] [stdout]   --> src/aggregators/odos.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Odos {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     api_key: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/models.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct TokenInfo {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 29 |     pub address: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 30 |     pub symbol: String,
[INFO] [stdout] 31 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 32 |     pub decimals: u8,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 33 |     #[serde(rename = "logoURI")]
[INFO] [stdout] 34 |     pub logo_uri: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 35 |     #[serde(rename = "domainVersion")]
[INFO] [stdout] 36 |     pub domain_version: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 37 |     pub eip2612: Option<bool>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 38 |     #[serde(rename = "isFoT")]
[INFO] [stdout] 39 |     pub is_fot: Option<bool>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 40 |     pub tags: Option<Vec<String>>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TokenInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `part`, `from_token_id`, and `to_token_id` are never read
[INFO] [stdout]   --> src/models.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct TokenHop {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 52 |     pub part: f64,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub from_token_id: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 56 |     #[serde(rename = "toTokenId")]
[INFO] [stdout] 57 |     pub to_token_id: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TokenHop` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `status_code`, `request_id`, and `meta` are never read
[INFO] [stdout]   --> src/models.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct OneInchError {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub status_code: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 84 |     #[serde(rename = "requestId")]
[INFO] [stdout] 85 |     pub request_id: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 86 |     pub meta: Option<Vec<serde_json::Value>>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OneInchError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OdosQuoteResponse` is never constructed
[INFO] [stdout]    --> src/models.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub struct OdosQuoteResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `loc` is never read
[INFO] [stdout]    --> src/models.rs:177:9
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub struct OdosValidationDetail {
[INFO] [stdout]     |            -------------------- field in this struct
[INFO] [stdout] 177 |     pub loc: Vec<serde_json::Value>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OdosValidationDetail` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 23s
[INFO] running `Command { std: "docker" "inspect" "06e32e1b04995656ad5d2b1743a6aae12ec6dd7424a999c6227ff675505c974f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "06e32e1b04995656ad5d2b1743a6aae12ec6dd7424a999c6227ff675505c974f", kill_on_drop: false }`
[INFO] [stdout] 06e32e1b04995656ad5d2b1743a6aae12ec6dd7424a999c6227ff675505c974f
