[INFO] fetching crate simple-open-ai 0.1.0...
[INFO] testing simple-open-ai-0.1.0 against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151
[INFO] extracting crate simple-open-ai 0.1.0 into /workspace/builds/worker-4-tc1/source
[INFO] validating manifest of crates.io crate simple-open-ai 0.1.0 on toolchain 1871252fc8bb672d40787e67404e6eaae7059369
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate simple-open-ai 0.1.0
[INFO] finished tweaking crates.io crate simple-open-ai 0.1.0
[INFO] tweaked toml for crates.io crate simple-open-ai 0.1.0 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate crates.io crate simple-open-ai 0.1.0 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" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 47ebbaa15bf53ee3abb2f4321d98f012d3ac28e58240178c4ba204bf3f2c89f0
[INFO] running `Command { std: "docker" "start" "-a" "47ebbaa15bf53ee3abb2f4321d98f012d3ac28e58240178c4ba204bf3f2c89f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "47ebbaa15bf53ee3abb2f4321d98f012d3ac28e58240178c4ba204bf3f2c89f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "47ebbaa15bf53ee3abb2f4321d98f012d3ac28e58240178c4ba204bf3f2c89f0", kill_on_drop: false }`
[INFO] [stdout] 47ebbaa15bf53ee3abb2f4321d98f012d3ac28e58240178c4ba204bf3f2c89f0
[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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a4cac4d268d6860c42a25b61c623b4152c80091184a87b722bff338613a39de6
[INFO] running `Command { std: "docker" "start" "-a" "a4cac4d268d6860c42a25b61c623b4152c80091184a87b722bff338613a39de6", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.69
[INFO] [stderr]    Compiling libc v0.2.150
[INFO] [stderr]    Compiling pkg-config v0.3.27
[INFO] [stderr]    Compiling futures-core v0.3.29
[INFO] [stderr]    Compiling bytes v1.5.0
[INFO] [stderr]    Compiling smallvec v1.11.1
[INFO] [stderr]    Compiling futures-task v0.3.29
[INFO] [stderr]    Compiling tracing-core v0.1.32
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling openssl v0.10.59
[INFO] [stderr]    Compiling unicase v2.7.0
[INFO] [stderr]    Compiling futures-util v0.3.29
[INFO] [stderr]    Compiling bitflags v2.4.1
[INFO] [stderr]    Compiling futures-sink v0.3.29
[INFO] [stderr]    Compiling serde v1.0.192
[INFO] [stderr]    Compiling futures-channel v0.3.29
[INFO] [stderr]    Compiling try-lock v0.2.4
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling percent-encoding v2.3.0
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling unicode-normalization v0.1.22
[INFO] [stderr]    Compiling form_urlencoded v1.2.0
[INFO] [stderr]    Compiling unicode-bidi v0.3.13
[INFO] [stderr]    Compiling rustversion v1.0.14
[INFO] [stderr]    Compiling http v0.2.9
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling serde_json v1.0.108
[INFO] [stderr]    Compiling mime_guess v2.0.4
[INFO] [stderr]    Compiling encoding_rs v0.8.33
[INFO] [stderr]    Compiling base64 v0.21.5
[INFO] [stderr]    Compiling dotenv v0.15.0
[INFO] [stderr]    Compiling idna v0.4.0
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling syn v2.0.39
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling socket2 v0.5.5
[INFO] [stderr]    Compiling mio v0.8.9
[INFO] [stderr]    Compiling signal-hook-registry v1.4.1
[INFO] [stderr]    Compiling socket2 v0.4.10
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling http-body v0.4.5
[INFO] [stderr]    Compiling url v2.4.1
[INFO] [stderr]    Compiling openssl-sys v0.9.95
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]    Compiling tokio-macros v2.1.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.192
[INFO] [stderr]    Compiling strum_macros v0.25.3
[INFO] [stderr]    Compiling tokio v1.33.0
[INFO] [stderr]    Compiling tokio-util v0.7.10
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling h2 v0.3.21
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling hyper v0.14.27
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling reqwest v0.11.22
[INFO] [stderr]    Compiling simple-open-ai v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/stt.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> src/stt.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct OpenAiResponse {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 58 |     pub text: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_response_format`, `with_language`, `with_prompt`, and `with_temperature` are never used
[INFO] [stdout]    --> src/stt.rs:79:12
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl Request {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 79  |     pub fn new(content: Vec<u8>) -> Request {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     pub fn with_language(mut self, language: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97  |     pub fn with_prompt(mut self, prompt: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_temperature(mut self, temperature: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_text_from_voice` is never used
[INFO] [stdout]    --> src/stt.rs:106:14
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub async fn get_text_from_voice(api_key: &str, req: Request) -> Result<String, ApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_response` is never used
[INFO] [stdout]    --> src/stt.rs:138:10
[INFO] [stdout]     |
[INFO] [stdout] 138 | async fn get_response(response_fromat: ResponseFormat, response: Response) -> String {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/tts.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/speech";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mp3`, `Opus`, `Aac`, and `Flac` are never constructed
[INFO] [stdout]   --> src/tts.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum ResponseFormat {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 44 |     #[serde(rename = "mp3")]
[INFO] [stdout] 45 |     Mp3,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 46 |     #[serde(rename = "opus")]
[INFO] [stdout] 47 |     Opus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 48 |     #[serde(rename = "aac")]
[INFO] [stdout] 49 |     Aac,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 50 |     #[serde(rename = "flac")]
[INFO] [stdout] 51 |     Flac,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Alloy`, `Echo`, `Fable`, `Onyx`, `Nova`, and `Shimmer` are never constructed
[INFO] [stdout]   --> src/tts.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub enum Voice {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 55 |     #[serde(rename = "alloy")]
[INFO] [stdout] 56 |     Alloy,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 57 |     #[serde(rename = "echo")]
[INFO] [stdout] 58 |     Echo,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 59 |     #[serde(rename = "fable")]
[INFO] [stdout] 60 |     Fable,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 61 |     #[serde(rename = "onyx")]
[INFO] [stdout] 62 |     Onyx,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     #[serde(rename = "nova")]
[INFO] [stdout] 64 |     Nova,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 65 |     #[serde(rename = "shimmer")]
[INFO] [stdout] 66 |     Shimmer,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `with_response_format` are never used
[INFO] [stdout]   --> src/tts.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl Request {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 69 |     pub fn new(model: String, input: String, voice: Voice) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_voice_from_text` is never used
[INFO] [stdout]   --> src/tts.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub async fn get_voice_from_text(req: Request, api_key: &str) -> Result<Bytes, ApiError> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout]    |     ----- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RequestError` is never constructed
[INFO] [stdout]   --> src/error.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum ApiError {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout] 34 |     RequestError(reqwest::Error),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ApiError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/chat.rs:50:7
[INFO] [stdout]    |
[INFO] [stdout] 50 | const ENDPOINT: &str = "https://api.openai.com/v1/chat/completions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `object`, `created`, `model`, `choices`, and `usage` are never read
[INFO] [stdout]   --> src/chat.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ChatCompletionResponse {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] 60 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 61 |     pub object: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 62 |     pub created: u64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 63 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 64 |     // pub system_fingerprint: String,
[INFO] [stdout] 65 |     pub choices: Vec<Choice>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 66 |     pub usage: Usage,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_text` is never used
[INFO] [stdout]   --> src/chat.rs:88:14
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub async fn send_text<'a>(
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 15 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stt::get_text_from_voice`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use stt::get_text_from_voice;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncWriteExt`, `fs::File`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fs::File,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 12 |     io::{AsyncReadExt, AsyncWriteExt},
[INFO] [stdout]    |          ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Request`, `Voice`, `get_voice_from_text`
[INFO] [stdout]   --> src/main.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tts::{get_voice_from_text, Request, Voice};
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `object`, `created`, `model`, and `usage` are never read
[INFO] [stdout]   --> src/chat.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ChatCompletionResponse {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] 60 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 61 |     pub object: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 62 |     pub created: u64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 63 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub usage: Usage,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout]    |     ----- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:34:18
[INFO] [stdout]    |
[INFO] [stdout] 34 |     RequestError(reqwest::Error),
[INFO] [stdout]    |     ------------ ^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 |     RequestError(()),
[INFO] [stdout]    |                  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/stt.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> src/stt.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct OpenAiResponse {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 58 |     pub text: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_response_format`, `with_language`, `with_prompt`, and `with_temperature` are never used
[INFO] [stdout]    --> src/stt.rs:79:12
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl Request {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 79  |     pub fn new(content: Vec<u8>) -> Request {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     pub fn with_language(mut self, language: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97  |     pub fn with_prompt(mut self, prompt: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_temperature(mut self, temperature: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_text_from_voice` is never used
[INFO] [stdout]    --> src/stt.rs:106:14
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub async fn get_text_from_voice(api_key: &str, req: Request) -> Result<String, ApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_response` is never used
[INFO] [stdout]    --> src/stt.rs:138:10
[INFO] [stdout]     |
[INFO] [stdout] 138 | async fn get_response(response_fromat: ResponseFormat, response: Response) -> String {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/tts.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/speech";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mp3`, `Opus`, `Aac`, and `Flac` are never constructed
[INFO] [stdout]   --> src/tts.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum ResponseFormat {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 44 |     #[serde(rename = "mp3")]
[INFO] [stdout] 45 |     Mp3,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 46 |     #[serde(rename = "opus")]
[INFO] [stdout] 47 |     Opus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 48 |     #[serde(rename = "aac")]
[INFO] [stdout] 49 |     Aac,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 50 |     #[serde(rename = "flac")]
[INFO] [stdout] 51 |     Flac,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Alloy`, `Echo`, `Fable`, `Onyx`, `Nova`, and `Shimmer` are never constructed
[INFO] [stdout]   --> src/tts.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub enum Voice {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 55 |     #[serde(rename = "alloy")]
[INFO] [stdout] 56 |     Alloy,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 57 |     #[serde(rename = "echo")]
[INFO] [stdout] 58 |     Echo,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 59 |     #[serde(rename = "fable")]
[INFO] [stdout] 60 |     Fable,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 61 |     #[serde(rename = "onyx")]
[INFO] [stdout] 62 |     Onyx,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     #[serde(rename = "nova")]
[INFO] [stdout] 64 |     Nova,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 65 |     #[serde(rename = "shimmer")]
[INFO] [stdout] 66 |     Shimmer,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `with_response_format` are never used
[INFO] [stdout]   --> src/tts.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl Request {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 69 |     pub fn new(model: String, input: String, voice: Voice) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_voice_from_text` is never used
[INFO] [stdout]   --> src/tts.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub async fn get_voice_from_text(req: Request, api_key: &str) -> Result<Bytes, ApiError> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.96s
[INFO] running `Command { std: "docker" "inspect" "a4cac4d268d6860c42a25b61c623b4152c80091184a87b722bff338613a39de6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a4cac4d268d6860c42a25b61c623b4152c80091184a87b722bff338613a39de6", kill_on_drop: false }`
[INFO] [stdout] a4cac4d268d6860c42a25b61c623b4152c80091184a87b722bff338613a39de6
[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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bb60a32a9b427008a69e303914ad130a3fdb57705e4ed22804317b60a56348e2
[INFO] running `Command { std: "docker" "start" "-a" "bb60a32a9b427008a69e303914ad130a3fdb57705e4ed22804317b60a56348e2", kill_on_drop: false }`
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/stt.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> src/stt.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct OpenAiResponse {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 58 |     pub text: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_response_format`, `with_language`, `with_prompt`, and `with_temperature` are never used
[INFO] [stdout]    --> src/stt.rs:79:12
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl Request {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 79  |     pub fn new(content: Vec<u8>) -> Request {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     pub fn with_language(mut self, language: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97  |     pub fn with_prompt(mut self, prompt: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_temperature(mut self, temperature: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_text_from_voice` is never used
[INFO] [stdout]    --> src/stt.rs:106:14
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub async fn get_text_from_voice(api_key: &str, req: Request) -> Result<String, ApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_response` is never used
[INFO] [stdout]    --> src/stt.rs:138:10
[INFO] [stdout]     |
[INFO] [stdout] 138 | async fn get_response(response_fromat: ResponseFormat, response: Response) -> String {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/tts.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/speech";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mp3`, `Opus`, `Aac`, and `Flac` are never constructed
[INFO] [stdout]   --> src/tts.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum ResponseFormat {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 44 |     #[serde(rename = "mp3")]
[INFO] [stdout] 45 |     Mp3,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 46 |     #[serde(rename = "opus")]
[INFO] [stdout] 47 |     Opus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 48 |     #[serde(rename = "aac")]
[INFO] [stdout] 49 |     Aac,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 50 |     #[serde(rename = "flac")]
[INFO] [stdout] 51 |     Flac,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Alloy`, `Echo`, `Fable`, `Onyx`, `Nova`, and `Shimmer` are never constructed
[INFO] [stdout]   --> src/tts.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub enum Voice {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 55 |     #[serde(rename = "alloy")]
[INFO] [stdout] 56 |     Alloy,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 57 |     #[serde(rename = "echo")]
[INFO] [stdout] 58 |     Echo,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 59 |     #[serde(rename = "fable")]
[INFO] [stdout] 60 |     Fable,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 61 |     #[serde(rename = "onyx")]
[INFO] [stdout] 62 |     Onyx,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     #[serde(rename = "nova")]
[INFO] [stdout] 64 |     Nova,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 65 |     #[serde(rename = "shimmer")]
[INFO] [stdout] 66 |     Shimmer,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `with_response_format` are never used
[INFO] [stdout]   --> src/tts.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl Request {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 69 |     pub fn new(model: String, input: String, voice: Voice) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_voice_from_text` is never used
[INFO] [stdout]   --> src/tts.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub async fn get_voice_from_text(req: Request, api_key: &str) -> Result<Bytes, ApiError> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout]    |     ----- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RequestError` is never constructed
[INFO] [stdout]   --> src/error.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum ApiError {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout] 34 |     RequestError(reqwest::Error),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ApiError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/chat.rs:50:7
[INFO] [stdout]    |
[INFO] [stdout] 50 | const ENDPOINT: &str = "https://api.openai.com/v1/chat/completions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `object`, `created`, `model`, `choices`, and `usage` are never read
[INFO] [stdout]   --> src/chat.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ChatCompletionResponse {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] 60 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 61 |     pub object: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 62 |     pub created: u64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 63 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 64 |     // pub system_fingerprint: String,
[INFO] [stdout] 65 |     pub choices: Vec<Choice>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 66 |     pub usage: Usage,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_text` is never used
[INFO] [stdout]   --> src/chat.rs:88:14
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub async fn send_text<'a>(
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling simple-open-ai v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: 15 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stt::get_text_from_voice`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use stt::get_text_from_voice;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncWriteExt`, `fs::File`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fs::File,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 12 |     io::{AsyncReadExt, AsyncWriteExt},
[INFO] [stdout]    |          ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Request`, `Voice`, `get_voice_from_text`
[INFO] [stdout]   --> src/main.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tts::{get_voice_from_text, Request, Voice};
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/stt.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> src/stt.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct OpenAiResponse {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 58 |     pub text: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_response_format`, `with_language`, `with_prompt`, and `with_temperature` are never used
[INFO] [stdout]    --> src/stt.rs:79:12
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl Request {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 79  |     pub fn new(content: Vec<u8>) -> Request {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     pub fn with_language(mut self, language: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97  |     pub fn with_prompt(mut self, prompt: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_temperature(mut self, temperature: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_text_from_voice` is never used
[INFO] [stdout]    --> src/stt.rs:106:14
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub async fn get_text_from_voice(api_key: &str, req: Request) -> Result<String, ApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_response` is never used
[INFO] [stdout]    --> src/stt.rs:138:10
[INFO] [stdout]     |
[INFO] [stdout] 138 | async fn get_response(response_fromat: ResponseFormat, response: Response) -> String {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/tts.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/speech";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mp3`, `Opus`, `Aac`, and `Flac` are never constructed
[INFO] [stdout]   --> src/tts.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum ResponseFormat {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 44 |     #[serde(rename = "mp3")]
[INFO] [stdout] 45 |     Mp3,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 46 |     #[serde(rename = "opus")]
[INFO] [stdout] 47 |     Opus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 48 |     #[serde(rename = "aac")]
[INFO] [stdout] 49 |     Aac,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 50 |     #[serde(rename = "flac")]
[INFO] [stdout] 51 |     Flac,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Alloy`, `Echo`, `Fable`, `Onyx`, `Nova`, and `Shimmer` are never constructed
[INFO] [stdout]   --> src/tts.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub enum Voice {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 55 |     #[serde(rename = "alloy")]
[INFO] [stdout] 56 |     Alloy,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 57 |     #[serde(rename = "echo")]
[INFO] [stdout] 58 |     Echo,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 59 |     #[serde(rename = "fable")]
[INFO] [stdout] 60 |     Fable,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 61 |     #[serde(rename = "onyx")]
[INFO] [stdout] 62 |     Onyx,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     #[serde(rename = "nova")]
[INFO] [stdout] 64 |     Nova,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 65 |     #[serde(rename = "shimmer")]
[INFO] [stdout] 66 |     Shimmer,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `with_response_format` are never used
[INFO] [stdout]   --> src/tts.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl Request {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 69 |     pub fn new(model: String, input: String, voice: Voice) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_voice_from_text` is never used
[INFO] [stdout]   --> src/tts.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub async fn get_voice_from_text(req: Request, api_key: &str) -> Result<Bytes, ApiError> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout]    |     ----- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RequestError` is never constructed
[INFO] [stdout]   --> src/error.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum ApiError {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout] 34 |     RequestError(reqwest::Error),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ApiError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/chat.rs:50:7
[INFO] [stdout]    |
[INFO] [stdout] 50 | const ENDPOINT: &str = "https://api.openai.com/v1/chat/completions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `object`, `created`, `model`, `choices`, and `usage` are never read
[INFO] [stdout]   --> src/chat.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ChatCompletionResponse {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] 60 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 61 |     pub object: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 62 |     pub created: u64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 63 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 64 |     // pub system_fingerprint: String,
[INFO] [stdout] 65 |     pub choices: Vec<Choice>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 66 |     pub usage: Usage,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_text` is never used
[INFO] [stdout]   --> src/chat.rs:88:14
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub async fn send_text<'a>(
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `object`, `created`, `model`, and `usage` are never read
[INFO] [stdout]   --> src/chat.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ChatCompletionResponse {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] 60 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 61 |     pub object: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 62 |     pub created: u64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 63 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub usage: Usage,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout]    |     ----- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:34:18
[INFO] [stdout]    |
[INFO] [stdout] 34 |     RequestError(reqwest::Error),
[INFO] [stdout]    |     ------------ ^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 |     RequestError(()),
[INFO] [stdout]    |                  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/stt.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> src/stt.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct OpenAiResponse {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 58 |     pub text: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_response_format`, `with_language`, `with_prompt`, and `with_temperature` are never used
[INFO] [stdout]    --> src/stt.rs:79:12
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl Request {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 79  |     pub fn new(content: Vec<u8>) -> Request {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     pub fn with_language(mut self, language: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97  |     pub fn with_prompt(mut self, prompt: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_temperature(mut self, temperature: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_text_from_voice` is never used
[INFO] [stdout]    --> src/stt.rs:106:14
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub async fn get_text_from_voice(api_key: &str, req: Request) -> Result<String, ApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_response` is never used
[INFO] [stdout]    --> src/stt.rs:138:10
[INFO] [stdout]     |
[INFO] [stdout] 138 | async fn get_response(response_fromat: ResponseFormat, response: Response) -> String {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/tts.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/speech";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mp3`, `Opus`, `Aac`, and `Flac` are never constructed
[INFO] [stdout]   --> src/tts.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum ResponseFormat {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 44 |     #[serde(rename = "mp3")]
[INFO] [stdout] 45 |     Mp3,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 46 |     #[serde(rename = "opus")]
[INFO] [stdout] 47 |     Opus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 48 |     #[serde(rename = "aac")]
[INFO] [stdout] 49 |     Aac,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 50 |     #[serde(rename = "flac")]
[INFO] [stdout] 51 |     Flac,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Alloy`, `Echo`, `Fable`, `Onyx`, `Nova`, and `Shimmer` are never constructed
[INFO] [stdout]   --> src/tts.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub enum Voice {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 55 |     #[serde(rename = "alloy")]
[INFO] [stdout] 56 |     Alloy,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 57 |     #[serde(rename = "echo")]
[INFO] [stdout] 58 |     Echo,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 59 |     #[serde(rename = "fable")]
[INFO] [stdout] 60 |     Fable,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 61 |     #[serde(rename = "onyx")]
[INFO] [stdout] 62 |     Onyx,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     #[serde(rename = "nova")]
[INFO] [stdout] 64 |     Nova,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 65 |     #[serde(rename = "shimmer")]
[INFO] [stdout] 66 |     Shimmer,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `with_response_format` are never used
[INFO] [stdout]   --> src/tts.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl Request {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 69 |     pub fn new(model: String, input: String, voice: Voice) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_voice_from_text` is never used
[INFO] [stdout]   --> src/tts.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub async fn get_voice_from_text(req: Request, api_key: &str) -> Result<Bytes, ApiError> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 15 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.43s
[INFO] running `Command { std: "docker" "inspect" "bb60a32a9b427008a69e303914ad130a3fdb57705e4ed22804317b60a56348e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bb60a32a9b427008a69e303914ad130a3fdb57705e4ed22804317b60a56348e2", kill_on_drop: false }`
[INFO] [stdout] bb60a32a9b427008a69e303914ad130a3fdb57705e4ed22804317b60a56348e2
[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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 90ce985490c9aa58643dcb87d2d9e4749715a5c55cd3468a270cf5e12ce02754
[INFO] running `Command { std: "docker" "start" "-a" "90ce985490c9aa58643dcb87d2d9e4749715a5c55cd3468a270cf5e12ce02754", kill_on_drop: false }`
[INFO] [stderr] warning: constant `ENDPOINT` is never used
[INFO] [stderr]   --> src/stt.rs:46:7
[INFO] [stderr]    |
[INFO] [stderr] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stderr]    |       ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `text` is never read
[INFO] [stderr]   --> src/stt.rs:58:9
[INFO] [stderr]    |
[INFO] [stderr] 57 | pub struct OpenAiResponse {
[INFO] [stderr]    |            -------------- field in this struct
[INFO] [stderr] 58 |     pub text: String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `with_response_format`, `with_language`, `with_prompt`, and `with_temperature` are never used
[INFO] [stderr]    --> src/stt.rs:79:12
[INFO] [stderr]     |
[INFO] [stderr] 78  | impl Request {
[INFO] [stderr]     | ------------ associated items in this implementation
[INFO] [stderr] 79  |     pub fn new(content: Vec<u8>) -> Request {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 89  |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 93  |     pub fn with_language(mut self, language: String) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 97  |     pub fn with_prompt(mut self, prompt: String) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 101 |     pub fn with_temperature(mut self, temperature: f32) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_text_from_voice` is never used
[INFO] [stderr]    --> src/stt.rs:106:14
[INFO] [stderr]     |
[INFO] [stderr] 106 | pub async fn get_text_from_voice(api_key: &str, req: Request) -> Result<String, ApiError> {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_response` is never used
[INFO] [stderr]    --> src/stt.rs:138:10
[INFO] [stderr]     |
[INFO] [stderr] 138 | async fn get_response(response_fromat: ResponseFormat, response: Response) -> String {
[INFO] [stderr]     |          ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ENDPOINT` is never used
[INFO] [stderr]   --> src/tts.rs:34:7
[INFO] [stderr]    |
[INFO] [stderr] 34 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/speech";
[INFO] [stderr]    |       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Mp3`, `Opus`, `Aac`, and `Flac` are never constructed
[INFO] [stderr]   --> src/tts.rs:45:5
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub enum ResponseFormat {
[INFO] [stderr]    |          -------------- variants in this enum
[INFO] [stderr] 44 |     #[serde(rename = "mp3")]
[INFO] [stderr] 45 |     Mp3,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 46 |     #[serde(rename = "opus")]
[INFO] [stderr] 47 |     Opus,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 48 |     #[serde(rename = "aac")]
[INFO] [stderr] 49 |     Aac,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 50 |     #[serde(rename = "flac")]
[INFO] [stderr] 51 |     Flac,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Alloy`, `Echo`, `Fable`, `Onyx`, `Nova`, and `Shimmer` are never constructed
[INFO] [stderr]   --> src/tts.rs:56:5
[INFO] [stderr]    |
[INFO] [stderr] 54 | pub enum Voice {
[INFO] [stderr]    |          ----- variants in this enum
[INFO] [stderr] 55 |     #[serde(rename = "alloy")]
[INFO] [stderr] 56 |     Alloy,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 57 |     #[serde(rename = "echo")]
[INFO] [stderr] 58 |     Echo,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 59 |     #[serde(rename = "fable")]
[INFO] [stderr] 60 |     Fable,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 61 |     #[serde(rename = "onyx")]
[INFO] [stderr] 62 |     Onyx,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 63 |     #[serde(rename = "nova")]
[INFO] [stderr] 64 |     Nova,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 65 |     #[serde(rename = "shimmer")]
[INFO] [stderr] 66 |     Shimmer,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new` and `with_response_format` are never used
[INFO] [stderr]   --> src/tts.rs:69:12
[INFO] [stderr]    |
[INFO] [stderr] 68 | impl Request {
[INFO] [stderr]    | ------------ associated items in this implementation
[INFO] [stderr] 69 |     pub fn new(model: String, input: String, voice: Voice) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 77 |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_voice_from_text` is never used
[INFO] [stderr]   --> src/tts.rs:82:14
[INFO] [stderr]    |
[INFO] [stderr] 82 | pub async fn get_voice_from_text(req: Request, api_key: &str) -> Result<Bytes, ApiError> {
[INFO] [stderr]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/error.rs:33:11
[INFO] [stderr]    |
[INFO] [stderr] 33 |     Error(String),
[INFO] [stderr]    |     ----- ^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 33 |     Error(()),
[INFO] [stderr]    |           ~~
[INFO] [stderr] 
[INFO] [stderr] warning: variant `RequestError` is never constructed
[INFO] [stderr]   --> src/error.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub enum ApiError {
[INFO] [stderr]    |          -------- variant in this enum
[INFO] [stderr] 33 |     Error(String),
[INFO] [stderr] 34 |     RequestError(reqwest::Error),
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ApiError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ENDPOINT` is never used
[INFO] [stderr]   --> src/chat.rs:50:7
[INFO] [stderr]    |
[INFO] [stderr] 50 | const ENDPOINT: &str = "https://api.openai.com/v1/chat/completions";
[INFO] [stderr]    |       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `id`, `object`, `created`, `model`, `choices`, and `usage` are never read
[INFO] [stderr]   --> src/chat.rs:60:9
[INFO] [stderr]    |
[INFO] [stderr] 59 | pub struct ChatCompletionResponse {
[INFO] [stderr]    |            ---------------------- fields in this struct
[INFO] [stderr] 60 |     pub id: String,
[INFO] [stderr]    |         ^^
[INFO] [stderr] 61 |     pub object: String,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 62 |     pub created: u64,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 63 |     pub model: String,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr] 64 |     // pub system_fingerprint: String,
[INFO] [stderr] 65 |     pub choices: Vec<Choice>,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 66 |     pub usage: Usage,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `send_text` is never used
[INFO] [stderr]   --> src/chat.rs:88:14
[INFO] [stderr]    |
[INFO] [stderr] 88 | pub async fn send_text<'a>(
[INFO] [stderr]    |              ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `simple-open-ai` (lib) generated 15 warnings
[INFO] [stderr] warning: `simple-open-ai` (lib test) generated 15 warnings (15 duplicates)
[INFO] [stderr] warning: unused import: `stt::get_text_from_voice`
[INFO] [stderr]  --> src/main.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use stt::get_text_from_voice;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncReadExt`, `AsyncWriteExt`, `fs::File`
[INFO] [stderr]   --> src/main.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 |     fs::File,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 12 |     io::{AsyncReadExt, AsyncWriteExt},
[INFO] [stderr]    |          ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Request`, `Voice`, `get_voice_from_text`
[INFO] [stderr]   --> src/main.rs:14:11
[INFO] [stderr]    |
[INFO] [stderr] 14 | use tts::{get_voice_from_text, Request, Voice};
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `id`, `object`, `created`, `model`, and `usage` are never read
[INFO] [stderr]   --> src/chat.rs:60:9
[INFO] [stderr]    |
[INFO] [stderr] 59 | pub struct ChatCompletionResponse {
[INFO] [stderr]    |            ---------------------- fields in this struct
[INFO] [stderr] 60 |     pub id: String,
[INFO] [stderr]    |         ^^
[INFO] [stderr] 61 |     pub object: String,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 62 |     pub created: u64,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 63 |     pub model: String,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 66 |     pub usage: Usage,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/error.rs:34:18
[INFO] [stderr]    |
[INFO] [stderr] 34 |     RequestError(reqwest::Error),
[INFO] [stderr]    |     ------------ ^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 34 |     RequestError(()),
[INFO] [stderr]    |                  ~~
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ENDPOINT` is never used
[INFO] [stderr]   --> src/stt.rs:46:7
[INFO] [stderr]    |
[INFO] [stderr] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stderr]    |       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `simple-open-ai` (bin "simple-open-ai" test) generated 16 warnings (10 duplicates) (run `cargo fix --bin "simple-open-ai" --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/simple_open_ai-4624401208754c26)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/simple_open_ai-23c33a805e7b886b)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests simple_open_ai
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test src/stt.rs - stt::ApiError (line 20) ... FAILED
[INFO] [stdout] test src/chat.rs - chat::Client (line 23) ... FAILED
[INFO] [stdout] test src/error.rs - error::ApiError (line 21) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/stt.rs - stt::ApiError (line 20) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `crate::stt`
[INFO] [stdout]  --> src/stt.rs:21:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::stt::{Request, OpenAiResponse};
[INFO] [stdout]   |            ^^^ could not find `stt` in the crate root
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `ENDPOINT` in this scope
[INFO] [stdout]   --> src/stt.rs:30:17
[INFO] [stdout]    |
[INFO] [stdout] 12 |     client.post(ENDPOINT)
[INFO] [stdout]    |                 ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0432.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/chat.rs - chat::Client (line 23) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `crate::chat`
[INFO] [stdout]  --> src/chat.rs:24:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::chat::{ChatCompletionRequest, ChatCompletionResponse};
[INFO] [stdout]   |            ^^^^ could not find `chat` in the crate root
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `ENDPOINT` in this scope
[INFO] [stdout]   --> src/chat.rs:35:17
[INFO] [stdout]    |
[INFO] [stdout] 14 |     client.post(ENDPOINT)
[INFO] [stdout]    |                 ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0432.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/error.rs - error::ApiError (line 21) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `ApiError` in this scope
[INFO] [stdout]  --> src/error.rs:22:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn example() -> Result<(), ApiError> {
[INFO] [stdout]   |                            ^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn example<ApiError>() -> Result<(), ApiError> {
[INFO] [stdout]   |           ++++++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]  --> src/error.rs:24:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn example() -> Result<(), ApiError> {
[INFO] [stdout]   | ------------------------------------ this is not `async`
[INFO] [stdout] 4 |     let result = reqwest::get("https://example.com")
[INFO] [stdout] 5 |         .await
[INFO] [stdout]   |          ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ApiError`
[INFO] [stdout]  --> src/error.rs:25:18
[INFO] [stdout]   |
[INFO] [stdout] 6 |         .map_err(ApiError::from)?;
[INFO] [stdout]   |                  ^^^^^^^^ use of undeclared type `ApiError`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0433, E0728.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/chat.rs - chat::Client (line 23)
[INFO] [stdout]     src/error.rs - error::ApiError (line 21)
[INFO] [stdout]     src/stt.rs - stt::ApiError (line 20)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "90ce985490c9aa58643dcb87d2d9e4749715a5c55cd3468a270cf5e12ce02754", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "90ce985490c9aa58643dcb87d2d9e4749715a5c55cd3468a270cf5e12ce02754", kill_on_drop: false }`
[INFO] [stdout] 90ce985490c9aa58643dcb87d2d9e4749715a5c55cd3468a270cf5e12ce02754
[INFO] testing simple-open-ai-0.1.0 against try#b642703cf9526da1e72c0b6755753b939a9c6b6d for pr-125151
[INFO] extracting crate simple-open-ai 0.1.0 into /workspace/builds/worker-4-tc2/source
[INFO] validating manifest of crates.io crate simple-open-ai 0.1.0 on toolchain b642703cf9526da1e72c0b6755753b939a9c6b6d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate simple-open-ai 0.1.0
[INFO] finished tweaking crates.io crate simple-open-ai 0.1.0
[INFO] tweaked toml for crates.io crate simple-open-ai 0.1.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] crate crates.io crate simple-open-ai 0.1.0 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" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a37ed7e4ba5a2aa0583f20777c96ff73c6e9edc62b5ac35d55ca5b160041d837
[INFO] running `Command { std: "docker" "start" "-a" "a37ed7e4ba5a2aa0583f20777c96ff73c6e9edc62b5ac35d55ca5b160041d837", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a37ed7e4ba5a2aa0583f20777c96ff73c6e9edc62b5ac35d55ca5b160041d837", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a37ed7e4ba5a2aa0583f20777c96ff73c6e9edc62b5ac35d55ca5b160041d837", kill_on_drop: false }`
[INFO] [stdout] a37ed7e4ba5a2aa0583f20777c96ff73c6e9edc62b5ac35d55ca5b160041d837
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 091fa30d9e37813f595521adc7ebb98921fcdfb170b31380e5b388f2a6bdc0db
[INFO] running `Command { std: "docker" "start" "-a" "091fa30d9e37813f595521adc7ebb98921fcdfb170b31380e5b388f2a6bdc0db", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.69
[INFO] [stderr]    Compiling libc v0.2.150
[INFO] [stderr]    Compiling pkg-config v0.3.27
[INFO] [stderr]    Compiling futures-core v0.3.29
[INFO] [stderr]    Compiling bytes v1.5.0
[INFO] [stderr]    Compiling smallvec v1.11.1
[INFO] [stderr]    Compiling futures-task v0.3.29
[INFO] [stderr]    Compiling tracing-core v0.1.32
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling openssl v0.10.59
[INFO] [stderr]    Compiling unicase v2.7.0
[INFO] [stderr]    Compiling futures-util v0.3.29
[INFO] [stderr]    Compiling futures-channel v0.3.29
[INFO] [stderr]    Compiling futures-sink v0.3.29
[INFO] [stderr]    Compiling bitflags v2.4.1
[INFO] [stderr]    Compiling serde v1.0.192
[INFO] [stderr]    Compiling percent-encoding v2.3.0
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling try-lock v0.2.4
[INFO] [stderr]    Compiling unicode-normalization v0.1.22
[INFO] [stderr]    Compiling rustversion v1.0.14
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling form_urlencoded v1.2.0
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling unicode-bidi v0.3.13
[INFO] [stderr]    Compiling http v0.2.9
[INFO] [stderr]    Compiling serde_json v1.0.108
[INFO] [stderr]    Compiling mime_guess v2.0.4
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]    Compiling encoding_rs v0.8.33
[INFO] [stderr]    Compiling base64 v0.21.5
[INFO] [stderr]    Compiling ipnet v2.9.0
[INFO] [stderr]    Compiling dotenv v0.15.0
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling idna v0.4.0
[INFO] [stderr]    Compiling syn v2.0.39
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling socket2 v0.5.5
[INFO] [stderr]    Compiling signal-hook-registry v1.4.1
[INFO] [stderr]    Compiling mio v0.8.9
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling socket2 v0.4.10
[INFO] [stderr]    Compiling http-body v0.4.5
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling url v2.4.1
[INFO] [stderr]    Compiling openssl-sys v0.9.95
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]    Compiling tokio-macros v2.1.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.192
[INFO] [stderr]    Compiling strum_macros v0.25.3
[INFO] [stderr]    Compiling tokio v1.33.0
[INFO] [stderr]    Compiling tokio-util v0.7.10
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling h2 v0.3.21
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling hyper v0.14.27
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling reqwest v0.11.22
[INFO] [stderr]    Compiling simple-open-ai v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/stt.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> src/stt.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct OpenAiResponse {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 58 |     pub text: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_response_format`, `with_language`, `with_prompt`, and `with_temperature` are never used
[INFO] [stdout]    --> src/stt.rs:79:12
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl Request {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 79  |     pub fn new(content: Vec<u8>) -> Request {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     pub fn with_language(mut self, language: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97  |     pub fn with_prompt(mut self, prompt: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_temperature(mut self, temperature: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_text_from_voice` is never used
[INFO] [stdout]    --> src/stt.rs:106:14
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub async fn get_text_from_voice(api_key: &str, req: Request) -> Result<String, ApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_response` is never used
[INFO] [stdout]    --> src/stt.rs:138:10
[INFO] [stdout]     |
[INFO] [stdout] 138 | async fn get_response(response_fromat: ResponseFormat, response: Response) -> String {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/tts.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/speech";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mp3`, `Opus`, `Aac`, and `Flac` are never constructed
[INFO] [stdout]   --> src/tts.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum ResponseFormat {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 44 |     #[serde(rename = "mp3")]
[INFO] [stdout] 45 |     Mp3,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 46 |     #[serde(rename = "opus")]
[INFO] [stdout] 47 |     Opus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 48 |     #[serde(rename = "aac")]
[INFO] [stdout] 49 |     Aac,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 50 |     #[serde(rename = "flac")]
[INFO] [stdout] 51 |     Flac,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Alloy`, `Echo`, `Fable`, `Onyx`, `Nova`, and `Shimmer` are never constructed
[INFO] [stdout]   --> src/tts.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub enum Voice {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 55 |     #[serde(rename = "alloy")]
[INFO] [stdout] 56 |     Alloy,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 57 |     #[serde(rename = "echo")]
[INFO] [stdout] 58 |     Echo,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 59 |     #[serde(rename = "fable")]
[INFO] [stdout] 60 |     Fable,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 61 |     #[serde(rename = "onyx")]
[INFO] [stdout] 62 |     Onyx,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     #[serde(rename = "nova")]
[INFO] [stdout] 64 |     Nova,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 65 |     #[serde(rename = "shimmer")]
[INFO] [stdout] 66 |     Shimmer,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `with_response_format` are never used
[INFO] [stdout]   --> src/tts.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl Request {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 69 |     pub fn new(model: String, input: String, voice: Voice) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_voice_from_text` is never used
[INFO] [stdout]   --> src/tts.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub async fn get_voice_from_text(req: Request, api_key: &str) -> Result<Bytes, ApiError> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout]    |     ----- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RequestError` is never constructed
[INFO] [stdout]   --> src/error.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum ApiError {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout] 34 |     RequestError(reqwest::Error),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ApiError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/chat.rs:50:7
[INFO] [stdout]    |
[INFO] [stdout] 50 | const ENDPOINT: &str = "https://api.openai.com/v1/chat/completions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `object`, `created`, `model`, `choices`, and `usage` are never read
[INFO] [stdout]   --> src/chat.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ChatCompletionResponse {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] 60 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 61 |     pub object: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 62 |     pub created: u64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 63 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 64 |     // pub system_fingerprint: String,
[INFO] [stdout] 65 |     pub choices: Vec<Choice>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 66 |     pub usage: Usage,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_text` is never used
[INFO] [stdout]   --> src/chat.rs:88:14
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub async fn send_text<'a>(
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 15 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stt::get_text_from_voice`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use stt::get_text_from_voice;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncWriteExt`, `fs::File`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fs::File,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 12 |     io::{AsyncReadExt, AsyncWriteExt},
[INFO] [stdout]    |          ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Request`, `Voice`, `get_voice_from_text`
[INFO] [stdout]   --> src/main.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tts::{get_voice_from_text, Request, Voice};
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `object`, `created`, `model`, and `usage` are never read
[INFO] [stdout]   --> src/chat.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ChatCompletionResponse {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] 60 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 61 |     pub object: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 62 |     pub created: u64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 63 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub usage: Usage,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout]    |     ----- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:34:18
[INFO] [stdout]    |
[INFO] [stdout] 34 |     RequestError(reqwest::Error),
[INFO] [stdout]    |     ------------ ^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 |     RequestError(()),
[INFO] [stdout]    |                  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/stt.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> src/stt.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct OpenAiResponse {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 58 |     pub text: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_response_format`, `with_language`, `with_prompt`, and `with_temperature` are never used
[INFO] [stdout]    --> src/stt.rs:79:12
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl Request {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 79  |     pub fn new(content: Vec<u8>) -> Request {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     pub fn with_language(mut self, language: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97  |     pub fn with_prompt(mut self, prompt: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_temperature(mut self, temperature: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_text_from_voice` is never used
[INFO] [stdout]    --> src/stt.rs:106:14
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub async fn get_text_from_voice(api_key: &str, req: Request) -> Result<String, ApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_response` is never used
[INFO] [stdout]    --> src/stt.rs:138:10
[INFO] [stdout]     |
[INFO] [stdout] 138 | async fn get_response(response_fromat: ResponseFormat, response: Response) -> String {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/tts.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/speech";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mp3`, `Opus`, `Aac`, and `Flac` are never constructed
[INFO] [stdout]   --> src/tts.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum ResponseFormat {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 44 |     #[serde(rename = "mp3")]
[INFO] [stdout] 45 |     Mp3,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 46 |     #[serde(rename = "opus")]
[INFO] [stdout] 47 |     Opus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 48 |     #[serde(rename = "aac")]
[INFO] [stdout] 49 |     Aac,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 50 |     #[serde(rename = "flac")]
[INFO] [stdout] 51 |     Flac,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Alloy`, `Echo`, `Fable`, `Onyx`, `Nova`, and `Shimmer` are never constructed
[INFO] [stdout]   --> src/tts.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub enum Voice {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 55 |     #[serde(rename = "alloy")]
[INFO] [stdout] 56 |     Alloy,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 57 |     #[serde(rename = "echo")]
[INFO] [stdout] 58 |     Echo,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 59 |     #[serde(rename = "fable")]
[INFO] [stdout] 60 |     Fable,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 61 |     #[serde(rename = "onyx")]
[INFO] [stdout] 62 |     Onyx,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     #[serde(rename = "nova")]
[INFO] [stdout] 64 |     Nova,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 65 |     #[serde(rename = "shimmer")]
[INFO] [stdout] 66 |     Shimmer,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `with_response_format` are never used
[INFO] [stdout]   --> src/tts.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl Request {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 69 |     pub fn new(model: String, input: String, voice: Voice) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_voice_from_text` is never used
[INFO] [stdout]   --> src/tts.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub async fn get_voice_from_text(req: Request, api_key: &str) -> Result<Bytes, ApiError> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.92s
[INFO] running `Command { std: "docker" "inspect" "091fa30d9e37813f595521adc7ebb98921fcdfb170b31380e5b388f2a6bdc0db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "091fa30d9e37813f595521adc7ebb98921fcdfb170b31380e5b388f2a6bdc0db", kill_on_drop: false }`
[INFO] [stdout] 091fa30d9e37813f595521adc7ebb98921fcdfb170b31380e5b388f2a6bdc0db
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8bb1cee2f16cb106b3039ae2401a5c4207bc7e79598e2001b1e776139e9ebba9
[INFO] running `Command { std: "docker" "start" "-a" "8bb1cee2f16cb106b3039ae2401a5c4207bc7e79598e2001b1e776139e9ebba9", kill_on_drop: false }`
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/stt.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> src/stt.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct OpenAiResponse {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 58 |     pub text: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_response_format`, `with_language`, `with_prompt`, and `with_temperature` are never used
[INFO] [stdout]    --> src/stt.rs:79:12
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl Request {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 79  |     pub fn new(content: Vec<u8>) -> Request {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     pub fn with_language(mut self, language: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97  |     pub fn with_prompt(mut self, prompt: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_temperature(mut self, temperature: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_text_from_voice` is never used
[INFO] [stdout]    --> src/stt.rs:106:14
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub async fn get_text_from_voice(api_key: &str, req: Request) -> Result<String, ApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling simple-open-ai v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `get_response` is never used
[INFO] [stdout]    --> src/stt.rs:138:10
[INFO] [stdout]     |
[INFO] [stdout] 138 | async fn get_response(response_fromat: ResponseFormat, response: Response) -> String {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/tts.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/speech";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mp3`, `Opus`, `Aac`, and `Flac` are never constructed
[INFO] [stdout]   --> src/tts.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum ResponseFormat {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 44 |     #[serde(rename = "mp3")]
[INFO] [stdout] 45 |     Mp3,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 46 |     #[serde(rename = "opus")]
[INFO] [stdout] 47 |     Opus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 48 |     #[serde(rename = "aac")]
[INFO] [stdout] 49 |     Aac,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 50 |     #[serde(rename = "flac")]
[INFO] [stdout] 51 |     Flac,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Alloy`, `Echo`, `Fable`, `Onyx`, `Nova`, and `Shimmer` are never constructed
[INFO] [stdout]   --> src/tts.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub enum Voice {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 55 |     #[serde(rename = "alloy")]
[INFO] [stdout] 56 |     Alloy,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 57 |     #[serde(rename = "echo")]
[INFO] [stdout] 58 |     Echo,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 59 |     #[serde(rename = "fable")]
[INFO] [stdout] 60 |     Fable,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 61 |     #[serde(rename = "onyx")]
[INFO] [stdout] 62 |     Onyx,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     #[serde(rename = "nova")]
[INFO] [stdout] 64 |     Nova,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 65 |     #[serde(rename = "shimmer")]
[INFO] [stdout] 66 |     Shimmer,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `with_response_format` are never used
[INFO] [stdout]   --> src/tts.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl Request {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 69 |     pub fn new(model: String, input: String, voice: Voice) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_voice_from_text` is never used
[INFO] [stdout]   --> src/tts.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub async fn get_voice_from_text(req: Request, api_key: &str) -> Result<Bytes, ApiError> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout]    |     ----- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RequestError` is never constructed
[INFO] [stdout]   --> src/error.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum ApiError {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout] 34 |     RequestError(reqwest::Error),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ApiError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/chat.rs:50:7
[INFO] [stdout]    |
[INFO] [stdout] 50 | const ENDPOINT: &str = "https://api.openai.com/v1/chat/completions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `object`, `created`, `model`, `choices`, and `usage` are never read
[INFO] [stdout]   --> src/chat.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ChatCompletionResponse {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] 60 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 61 |     pub object: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 62 |     pub created: u64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 63 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 64 |     // pub system_fingerprint: String,
[INFO] [stdout] 65 |     pub choices: Vec<Choice>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 66 |     pub usage: Usage,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_text` is never used
[INFO] [stdout]   --> src/chat.rs:88:14
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub async fn send_text<'a>(
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 15 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stt::get_text_from_voice`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use stt::get_text_from_voice;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncWriteExt`, `fs::File`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fs::File,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 12 |     io::{AsyncReadExt, AsyncWriteExt},
[INFO] [stdout]    |          ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Request`, `Voice`, `get_voice_from_text`
[INFO] [stdout]   --> src/main.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tts::{get_voice_from_text, Request, Voice};
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/stt.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> src/stt.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct OpenAiResponse {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 58 |     pub text: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_response_format`, `with_language`, `with_prompt`, and `with_temperature` are never used
[INFO] [stdout]    --> src/stt.rs:79:12
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl Request {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 79  |     pub fn new(content: Vec<u8>) -> Request {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     pub fn with_language(mut self, language: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97  |     pub fn with_prompt(mut self, prompt: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_temperature(mut self, temperature: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_text_from_voice` is never used
[INFO] [stdout]    --> src/stt.rs:106:14
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub async fn get_text_from_voice(api_key: &str, req: Request) -> Result<String, ApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_response` is never used
[INFO] [stdout]    --> src/stt.rs:138:10
[INFO] [stdout]     |
[INFO] [stdout] 138 | async fn get_response(response_fromat: ResponseFormat, response: Response) -> String {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/tts.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/speech";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mp3`, `Opus`, `Aac`, and `Flac` are never constructed
[INFO] [stdout]   --> src/tts.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum ResponseFormat {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 44 |     #[serde(rename = "mp3")]
[INFO] [stdout] 45 |     Mp3,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 46 |     #[serde(rename = "opus")]
[INFO] [stdout] 47 |     Opus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 48 |     #[serde(rename = "aac")]
[INFO] [stdout] 49 |     Aac,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 50 |     #[serde(rename = "flac")]
[INFO] [stdout] 51 |     Flac,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Alloy`, `Echo`, `Fable`, `Onyx`, `Nova`, and `Shimmer` are never constructed
[INFO] [stdout]   --> src/tts.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub enum Voice {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 55 |     #[serde(rename = "alloy")]
[INFO] [stdout] 56 |     Alloy,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 57 |     #[serde(rename = "echo")]
[INFO] [stdout] 58 |     Echo,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 59 |     #[serde(rename = "fable")]
[INFO] [stdout] 60 |     Fable,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 61 |     #[serde(rename = "onyx")]
[INFO] [stdout] 62 |     Onyx,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     #[serde(rename = "nova")]
[INFO] [stdout] 64 |     Nova,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 65 |     #[serde(rename = "shimmer")]
[INFO] [stdout] 66 |     Shimmer,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `with_response_format` are never used
[INFO] [stdout]   --> src/tts.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl Request {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 69 |     pub fn new(model: String, input: String, voice: Voice) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_voice_from_text` is never used
[INFO] [stdout]   --> src/tts.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub async fn get_voice_from_text(req: Request, api_key: &str) -> Result<Bytes, ApiError> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout]    |     ----- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RequestError` is never constructed
[INFO] [stdout]   --> src/error.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum ApiError {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout] 34 |     RequestError(reqwest::Error),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ApiError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/chat.rs:50:7
[INFO] [stdout]    |
[INFO] [stdout] 50 | const ENDPOINT: &str = "https://api.openai.com/v1/chat/completions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `object`, `created`, `model`, `choices`, and `usage` are never read
[INFO] [stdout]   --> src/chat.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ChatCompletionResponse {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] 60 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 61 |     pub object: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 62 |     pub created: u64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 63 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 64 |     // pub system_fingerprint: String,
[INFO] [stdout] 65 |     pub choices: Vec<Choice>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 66 |     pub usage: Usage,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_text` is never used
[INFO] [stdout]   --> src/chat.rs:88:14
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub async fn send_text<'a>(
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `object`, `created`, `model`, and `usage` are never read
[INFO] [stdout]   --> src/chat.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ChatCompletionResponse {
[INFO] [stdout]    |            ---------------------- fields in this struct
[INFO] [stdout] 60 |     pub id: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 61 |     pub object: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 62 |     pub created: u64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 63 |     pub model: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub usage: Usage,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(String),
[INFO] [stdout]    |     ----- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Error(()),
[INFO] [stdout]    |           ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:34:18
[INFO] [stdout]    |
[INFO] [stdout] 34 |     RequestError(reqwest::Error),
[INFO] [stdout]    |     ------------ ^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 |     RequestError(()),
[INFO] [stdout]    |                  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/stt.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `text` is never read
[INFO] [stdout]   --> src/stt.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct OpenAiResponse {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 58 |     pub text: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_response_format`, `with_language`, `with_prompt`, and `with_temperature` are never used
[INFO] [stdout]    --> src/stt.rs:79:12
[INFO] [stdout]     |
[INFO] [stdout] 78  | impl Request {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 79  |     pub fn new(content: Vec<u8>) -> Request {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93  |     pub fn with_language(mut self, language: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97  |     pub fn with_prompt(mut self, prompt: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn with_temperature(mut self, temperature: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_text_from_voice` is never used
[INFO] [stdout]    --> src/stt.rs:106:14
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub async fn get_text_from_voice(api_key: &str, req: Request) -> Result<String, ApiError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_response` is never used
[INFO] [stdout]    --> src/stt.rs:138:10
[INFO] [stdout]     |
[INFO] [stdout] 138 | async fn get_response(response_fromat: ResponseFormat, response: Response) -> String {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENDPOINT` is never used
[INFO] [stdout]   --> src/tts.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/speech";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mp3`, `Opus`, `Aac`, and `Flac` are never constructed
[INFO] [stdout]   --> src/tts.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum ResponseFormat {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] 44 |     #[serde(rename = "mp3")]
[INFO] [stdout] 45 |     Mp3,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 46 |     #[serde(rename = "opus")]
[INFO] [stdout] 47 |     Opus,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 48 |     #[serde(rename = "aac")]
[INFO] [stdout] 49 |     Aac,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 50 |     #[serde(rename = "flac")]
[INFO] [stdout] 51 |     Flac,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Alloy`, `Echo`, `Fable`, `Onyx`, `Nova`, and `Shimmer` are never constructed
[INFO] [stdout]   --> src/tts.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub enum Voice {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 55 |     #[serde(rename = "alloy")]
[INFO] [stdout] 56 |     Alloy,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 57 |     #[serde(rename = "echo")]
[INFO] [stdout] 58 |     Echo,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 59 |     #[serde(rename = "fable")]
[INFO] [stdout] 60 |     Fable,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 61 |     #[serde(rename = "onyx")]
[INFO] [stdout] 62 |     Onyx,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     #[serde(rename = "nova")]
[INFO] [stdout] 64 |     Nova,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 65 |     #[serde(rename = "shimmer")]
[INFO] [stdout] 66 |     Shimmer,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `with_response_format` are never used
[INFO] [stdout]   --> src/tts.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | impl Request {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 69 |     pub fn new(model: String, input: String, voice: Voice) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_voice_from_text` is never used
[INFO] [stdout]   --> src/tts.rs:82:14
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub async fn get_voice_from_text(req: Request, api_key: &str) -> Result<Bytes, ApiError> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 15 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.55s
[INFO] running `Command { std: "docker" "inspect" "8bb1cee2f16cb106b3039ae2401a5c4207bc7e79598e2001b1e776139e9ebba9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8bb1cee2f16cb106b3039ae2401a5c4207bc7e79598e2001b1e776139e9ebba9", kill_on_drop: false }`
[INFO] [stdout] 8bb1cee2f16cb106b3039ae2401a5c4207bc7e79598e2001b1e776139e9ebba9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 292748648d67980a99b475cec080e2f0f9da00d5468f9cdd0d12606963f3492f
[INFO] running `Command { std: "docker" "start" "-a" "292748648d67980a99b475cec080e2f0f9da00d5468f9cdd0d12606963f3492f", kill_on_drop: false }`
[INFO] [stderr] warning: constant `ENDPOINT` is never used
[INFO] [stderr]   --> src/stt.rs:46:7
[INFO] [stderr]    |
[INFO] [stderr] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stderr]    |       ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `text` is never read
[INFO] [stderr]   --> src/stt.rs:58:9
[INFO] [stderr]    |
[INFO] [stderr] 57 | pub struct OpenAiResponse {
[INFO] [stderr]    |            -------------- field in this struct
[INFO] [stderr] 58 |     pub text: String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `with_response_format`, `with_language`, `with_prompt`, and `with_temperature` are never used
[INFO] [stderr]    --> src/stt.rs:79:12
[INFO] [stderr]     |
[INFO] [stderr] 78  | impl Request {
[INFO] [stderr]     | ------------ associated items in this implementation
[INFO] [stderr] 79  |     pub fn new(content: Vec<u8>) -> Request {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 89  |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 93  |     pub fn with_language(mut self, language: String) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 97  |     pub fn with_prompt(mut self, prompt: String) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 101 |     pub fn with_temperature(mut self, temperature: f32) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_text_from_voice` is never used
[INFO] [stderr]    --> src/stt.rs:106:14
[INFO] [stderr]     |
[INFO] [stderr] 106 | pub async fn get_text_from_voice(api_key: &str, req: Request) -> Result<String, ApiError> {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_response` is never used
[INFO] [stderr]    --> src/stt.rs:138:10
[INFO] [stderr]     |
[INFO] [stderr] 138 | async fn get_response(response_fromat: ResponseFormat, response: Response) -> String {
[INFO] [stderr]     |          ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ENDPOINT` is never used
[INFO] [stderr]   --> src/tts.rs:34:7
[INFO] [stderr]    |
[INFO] [stderr] 34 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/speech";
[INFO] [stderr]    |       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Mp3`, `Opus`, `Aac`, and `Flac` are never constructed
[INFO] [stderr]   --> src/tts.rs:45:5
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub enum ResponseFormat {
[INFO] [stderr]    |          -------------- variants in this enum
[INFO] [stderr] 44 |     #[serde(rename = "mp3")]
[INFO] [stderr] 45 |     Mp3,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 46 |     #[serde(rename = "opus")]
[INFO] [stderr] 47 |     Opus,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 48 |     #[serde(rename = "aac")]
[INFO] [stderr] 49 |     Aac,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 50 |     #[serde(rename = "flac")]
[INFO] [stderr] 51 |     Flac,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Alloy`, `Echo`, `Fable`, `Onyx`, `Nova`, and `Shimmer` are never constructed
[INFO] [stderr]   --> src/tts.rs:56:5
[INFO] [stderr]    |
[INFO] [stderr] 54 | pub enum Voice {
[INFO] [stderr]    |          ----- variants in this enum
[INFO] [stderr] 55 |     #[serde(rename = "alloy")]
[INFO] [stderr] 56 |     Alloy,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 57 |     #[serde(rename = "echo")]
[INFO] [stderr] 58 |     Echo,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 59 |     #[serde(rename = "fable")]
[INFO] [stderr] 60 |     Fable,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 61 |     #[serde(rename = "onyx")]
[INFO] [stderr] 62 |     Onyx,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 63 |     #[serde(rename = "nova")]
[INFO] [stderr] 64 |     Nova,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 65 |     #[serde(rename = "shimmer")]
[INFO] [stderr] 66 |     Shimmer,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new` and `with_response_format` are never used
[INFO] [stderr]   --> src/tts.rs:69:12
[INFO] [stderr]    |
[INFO] [stderr] 68 | impl Request {
[INFO] [stderr]    | ------------ associated items in this implementation
[INFO] [stderr] 69 |     pub fn new(model: String, input: String, voice: Voice) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 77 |     pub fn with_response_format(mut self, response_format: ResponseFormat) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_voice_from_text` is never used
[INFO] [stderr]   --> src/tts.rs:82:14
[INFO] [stderr]    |
[INFO] [stderr] 82 | pub async fn get_voice_from_text(req: Request, api_key: &str) -> Result<Bytes, ApiError> {
[INFO] [stderr]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/error.rs:33:11
[INFO] [stderr]    |
[INFO] [stderr] 33 |     Error(String),
[INFO] [stderr]    |     ----- ^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 33 |     Error(()),
[INFO] [stderr]    |           ~~
[INFO] [stderr] 
[INFO] [stderr] warning: variant `RequestError` is never constructed
[INFO] [stderr]   --> src/error.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub enum ApiError {
[INFO] [stderr]    |          -------- variant in this enum
[INFO] [stderr] 33 |     Error(String),
[INFO] [stderr] 34 |     RequestError(reqwest::Error),
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ApiError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ENDPOINT` is never used
[INFO] [stderr]   --> src/chat.rs:50:7
[INFO] [stderr]    |
[INFO] [stderr] 50 | const ENDPOINT: &str = "https://api.openai.com/v1/chat/completions";
[INFO] [stderr]    |       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `id`, `object`, `created`, `model`, `choices`, and `usage` are never read
[INFO] [stderr]   --> src/chat.rs:60:9
[INFO] [stderr]    |
[INFO] [stderr] 59 | pub struct ChatCompletionResponse {
[INFO] [stderr]    |            ---------------------- fields in this struct
[INFO] [stderr] 60 |     pub id: String,
[INFO] [stderr]    |         ^^
[INFO] [stderr] 61 |     pub object: String,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 62 |     pub created: u64,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 63 |     pub model: String,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr] 64 |     // pub system_fingerprint: String,
[INFO] [stderr] 65 |     pub choices: Vec<Choice>,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 66 |     pub usage: Usage,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `send_text` is never used
[INFO] [stderr]   --> src/chat.rs:88:14
[INFO] [stderr]    |
[INFO] [stderr] 88 | pub async fn send_text<'a>(
[INFO] [stderr]    |              ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `simple-open-ai` (lib) generated 15 warnings
[INFO] [stderr] warning: `simple-open-ai` (lib test) generated 15 warnings (15 duplicates)
[INFO] [stderr] warning: unused import: `stt::get_text_from_voice`
[INFO] [stderr]  --> src/main.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use stt::get_text_from_voice;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncReadExt`, `AsyncWriteExt`, `fs::File`
[INFO] [stderr]   --> src/main.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 |     fs::File,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 12 |     io::{AsyncReadExt, AsyncWriteExt},
[INFO] [stderr]    |          ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Request`, `Voice`, `get_voice_from_text`
[INFO] [stderr]   --> src/main.rs:14:11
[INFO] [stderr]    |
[INFO] [stderr] 14 | use tts::{get_voice_from_text, Request, Voice};
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `id`, `object`, `created`, `model`, and `usage` are never read
[INFO] [stderr]   --> src/chat.rs:60:9
[INFO] [stderr]    |
[INFO] [stderr] 59 | pub struct ChatCompletionResponse {
[INFO] [stderr]    |            ---------------------- fields in this struct
[INFO] [stderr] 60 |     pub id: String,
[INFO] [stderr]    |         ^^
[INFO] [stderr] 61 |     pub object: String,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 62 |     pub created: u64,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 63 |     pub model: String,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 66 |     pub usage: Usage,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ChatCompletionResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/error.rs:34:18
[INFO] [stderr]    |
[INFO] [stderr] 34 |     RequestError(reqwest::Error),
[INFO] [stderr]    |     ------------ ^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 34 |     RequestError(()),
[INFO] [stderr]    |                  ~~
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ENDPOINT` is never used
[INFO] [stderr]   --> src/stt.rs:46:7
[INFO] [stderr]    |
[INFO] [stderr] 46 | const ENDPOINT: &str = "https://api.openai.com/v1/audio/transcriptions";
[INFO] [stderr]    |       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `simple-open-ai` (bin "simple-open-ai" test) generated 16 warnings (10 duplicates) (run `cargo fix --bin "simple-open-ai" --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/simple_open_ai-4624401208754c26)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/simple_open_ai-23c33a805e7b886b)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests simple_open_ai
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test src/chat.rs - chat::Client (line 23) ... FAILED
[INFO] [stdout] test src/stt.rs - stt::ApiError (line 20) ... FAILED
[INFO] [stdout] test src/error.rs - error::ApiError (line 21) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/chat.rs - chat::Client (line 23) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `crate::chat`
[INFO] [stdout]  --> src/chat.rs:24:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::chat::{ChatCompletionRequest, ChatCompletionResponse};
[INFO] [stdout]   |            ^^^^ could not find `chat` in the crate root
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `ENDPOINT` in this scope
[INFO] [stdout]   --> src/chat.rs:35:17
[INFO] [stdout]    |
[INFO] [stdout] 14 |     client.post(ENDPOINT)
[INFO] [stdout]    |                 ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0432.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/stt.rs - stt::ApiError (line 20) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `crate::stt`
[INFO] [stdout]  --> src/stt.rs:21:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::stt::{Request, OpenAiResponse};
[INFO] [stdout]   |            ^^^ could not find `stt` in the crate root
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `ENDPOINT` in this scope
[INFO] [stdout]   --> src/stt.rs:30:17
[INFO] [stdout]    |
[INFO] [stdout] 12 |     client.post(ENDPOINT)
[INFO] [stdout]    |                 ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0432.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/error.rs - error::ApiError (line 21) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `ApiError` in this scope
[INFO] [stdout]  --> src/error.rs:22:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn example() -> Result<(), ApiError> {
[INFO] [stdout]   |                            ^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn example<ApiError>() -> Result<(), ApiError> {
[INFO] [stdout]   |           ++++++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks
[INFO] [stdout]  --> src/error.rs:24:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn example() -> Result<(), ApiError> {
[INFO] [stdout]   | ------------------------------------ this is not `async`
[INFO] [stdout] 4 |     let result = reqwest::get("https://example.com")
[INFO] [stdout] 5 |         .await
[INFO] [stdout]   |          ^^^^^ only allowed inside `async` functions and blocks
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ApiError`
[INFO] [stdout]  --> src/error.rs:25:18
[INFO] [stdout]   |
[INFO] [stdout] 6 |         .map_err(ApiError::from)?;
[INFO] [stdout]   |                  ^^^^^^^^ use of undeclared type `ApiError`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0433, E0728.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/chat.rs - chat::Client (line 23)
[INFO] [stdout]     src/error.rs - error::ApiError (line 21)
[INFO] [stdout]     src/stt.rs - stt::ApiError (line 20)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "292748648d67980a99b475cec080e2f0f9da00d5468f9cdd0d12606963f3492f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "292748648d67980a99b475cec080e2f0f9da00d5468f9cdd0d12606963f3492f", kill_on_drop: false }`
[INFO] [stdout] 292748648d67980a99b475cec080e2f0f9da00d5468f9cdd0d12606963f3492f
