Files
GopherGate/target/debug/.fingerprint/llm-proxy-8773edbc452ce029/output-bin-llm-proxy
2026-02-26 12:47:43 -05:00

10 lines
21 KiB
Plaintext

{"$message_type":"diagnostic","message":"unresolved import `async_openai::Client`","code":{"code":"E0432","explanation":"An import was unresolved.\n\nErroneous code example:\n\n```compile_fail,E0432\nuse something::Foo; // error: unresolved import `something::Foo`.\n```\n\nIn Rust 2015, paths in `use` statements are relative to the crate root. To\nimport items relative to the current and parent modules, use the `self::` and\n`super::` prefixes, respectively.\n\nIn Rust 2018 or later, paths in `use` statements are relative to the current\nmodule unless they begin with the name of a crate or a literal `crate::`, in\nwhich case they start from the crate root. As in Rust 2015 code, the `self::`\nand `super::` prefixes refer to the current and parent modules respectively.\n\nAlso verify that you didn't misspell the import name and that the import exists\nin the module from where you tried to import it. Example:\n\n```\nuse self::something::Foo; // Ok.\n\nmod something {\n pub struct Foo;\n}\n# fn main() {}\n```\n\nIf you tried to use a module from an external crate and are using Rust 2015,\nyou may have missed the `extern crate` declaration (which is usually placed in\nthe crate root):\n\n```edition2015\nextern crate core; // Required to use the `core` crate in Rust 2015.\n\nuse core::any;\n# fn main() {}\n```\n\nSince Rust 2018 the `extern crate` declaration is not required and\nyou can instead just `use` it:\n\n```edition2018\nuse core::any; // No extern crate required in Rust 2018.\n# fn main() {}\n```\n"},"level":"error","spans":[{"file_name":"src/providers/openai.rs","byte_start":54,"byte_end":74,"line_start":3,"line_end":3,"column_start":5,"column_end":25,"is_primary":true,"text":[{"text":"use async_openai::Client;","highlight_start":5,"highlight_end":25}],"label":"no `Client` in the root","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"found an item that was configured out","code":null,"level":"note","spans":[{"file_name":"/home/newkirk/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/async-openai-0.33.0/src/lib.rs","byte_start":10004,"byte_end":10020,"line_start":332,"line_end":332,"column_start":7,"column_end":23,"is_primary":false,"text":[{"text":"#[cfg(feature = \"_api\")]","highlight_start":7,"highlight_end":23}],"label":"the item is gated behind the `_api` feature","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/home/newkirk/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/async-openai-0.33.0/src/lib.rs","byte_start":10039,"byte_end":10045,"line_start":333,"line_end":333,"column_start":17,"column_end":23,"is_primary":true,"text":[{"text":"pub use client::Client;","highlight_start":17,"highlight_end":23}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":null},{"message":"consider importing this struct instead","code":null,"level":"help","spans":[{"file_name":"src/providers/openai.rs","byte_start":54,"byte_end":74,"line_start":3,"line_end":3,"column_start":5,"column_end":25,"is_primary":true,"text":[{"text":"use async_openai::Client;","highlight_start":5,"highlight_end":25}],"label":null,"suggested_replacement":"reqwest::Client","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"\u001b[1m\u001b[91merror[E0432]\u001b[0m\u001b[1m: unresolved import `async_openai::Client`\u001b[0m\n \u001b[1m\u001b[94m--> \u001b[0msrc/providers/openai.rs:3:5\n \u001b[1m\u001b[94m|\u001b[0m\n \u001b[1m\u001b[94m3\u001b[0m \u001b[1m\u001b[94m|\u001b[0m use async_openai::Client;\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[91m^^^^^^^^^^^^^^^^^^^^\u001b[0m \u001b[1m\u001b[91mno `Client` in the root\u001b[0m\n \u001b[1m\u001b[94m|\u001b[0m\n\u001b[1m\u001b[92mnote\u001b[0m: found an item that was configured out\n \u001b[1m\u001b[94m--> \u001b[0m/home/newkirk/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/async-openai-0.33.0/src/lib.rs:333:17\n \u001b[1m\u001b[94m|\u001b[0m\n\u001b[1m\u001b[94m332\u001b[0m \u001b[1m\u001b[94m|\u001b[0m #[cfg(feature = \"_api\")]\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[94m----------------\u001b[0m \u001b[1m\u001b[94mthe item is gated behind the `_api` feature\u001b[0m\n\u001b[1m\u001b[94m333\u001b[0m \u001b[1m\u001b[94m|\u001b[0m pub use client::Client;\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[92m^^^^^^\u001b[0m\n\u001b[1m\u001b[96mhelp\u001b[0m: consider importing this struct instead\n \u001b[1m\u001b[94m|\u001b[0m\n \u001b[1m\u001b[94m3\u001b[0m \u001b[91m- \u001b[0muse \u001b[91masync_openai::Client\u001b[0m;\n \u001b[1m\u001b[94m3\u001b[0m \u001b[92m+ \u001b[0muse \u001b[92mreqwest::Client\u001b[0m;\n \u001b[1m\u001b[94m|\u001b[0m\n\n"}
{"$message_type":"diagnostic","message":"unresolved import `async_openai::Client`","code":{"code":"E0432","explanation":"An import was unresolved.\n\nErroneous code example:\n\n```compile_fail,E0432\nuse something::Foo; // error: unresolved import `something::Foo`.\n```\n\nIn Rust 2015, paths in `use` statements are relative to the crate root. To\nimport items relative to the current and parent modules, use the `self::` and\n`super::` prefixes, respectively.\n\nIn Rust 2018 or later, paths in `use` statements are relative to the current\nmodule unless they begin with the name of a crate or a literal `crate::`, in\nwhich case they start from the crate root. As in Rust 2015 code, the `self::`\nand `super::` prefixes refer to the current and parent modules respectively.\n\nAlso verify that you didn't misspell the import name and that the import exists\nin the module from where you tried to import it. Example:\n\n```\nuse self::something::Foo; // Ok.\n\nmod something {\n pub struct Foo;\n}\n# fn main() {}\n```\n\nIf you tried to use a module from an external crate and are using Rust 2015,\nyou may have missed the `extern crate` declaration (which is usually placed in\nthe crate root):\n\n```edition2015\nextern crate core; // Required to use the `core` crate in Rust 2015.\n\nuse core::any;\n# fn main() {}\n```\n\nSince Rust 2018 the `extern crate` declaration is not required and\nyou can instead just `use` it:\n\n```edition2018\nuse core::any; // No extern crate required in Rust 2018.\n# fn main() {}\n```\n"},"level":"error","spans":[{"file_name":"src/providers/deepseek.rs","byte_start":54,"byte_end":74,"line_start":3,"line_end":3,"column_start":5,"column_end":25,"is_primary":true,"text":[{"text":"use async_openai::Client;","highlight_start":5,"highlight_end":25}],"label":"no `Client` in the root","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"found an item that was configured out","code":null,"level":"note","spans":[{"file_name":"/home/newkirk/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/async-openai-0.33.0/src/lib.rs","byte_start":10004,"byte_end":10020,"line_start":332,"line_end":332,"column_start":7,"column_end":23,"is_primary":false,"text":[{"text":"#[cfg(feature = \"_api\")]","highlight_start":7,"highlight_end":23}],"label":"the item is gated behind the `_api` feature","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/home/newkirk/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/async-openai-0.33.0/src/lib.rs","byte_start":10039,"byte_end":10045,"line_start":333,"line_end":333,"column_start":17,"column_end":23,"is_primary":true,"text":[{"text":"pub use client::Client;","highlight_start":17,"highlight_end":23}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":null},{"message":"consider importing this struct instead","code":null,"level":"help","spans":[{"file_name":"src/providers/deepseek.rs","byte_start":54,"byte_end":74,"line_start":3,"line_end":3,"column_start":5,"column_end":25,"is_primary":true,"text":[{"text":"use async_openai::Client;","highlight_start":5,"highlight_end":25}],"label":null,"suggested_replacement":"reqwest::Client","suggestion_applicability":"MaybeIncorrect","expansion":null}],"children":[],"rendered":null}],"rendered":"\u001b[1m\u001b[91merror[E0432]\u001b[0m\u001b[1m: unresolved import `async_openai::Client`\u001b[0m\n \u001b[1m\u001b[94m--> \u001b[0msrc/providers/deepseek.rs:3:5\n \u001b[1m\u001b[94m|\u001b[0m\n \u001b[1m\u001b[94m3\u001b[0m \u001b[1m\u001b[94m|\u001b[0m use async_openai::Client;\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[91m^^^^^^^^^^^^^^^^^^^^\u001b[0m \u001b[1m\u001b[91mno `Client` in the root\u001b[0m\n \u001b[1m\u001b[94m|\u001b[0m\n\u001b[1m\u001b[92mnote\u001b[0m: found an item that was configured out\n \u001b[1m\u001b[94m--> \u001b[0m/home/newkirk/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/async-openai-0.33.0/src/lib.rs:333:17\n \u001b[1m\u001b[94m|\u001b[0m\n\u001b[1m\u001b[94m332\u001b[0m \u001b[1m\u001b[94m|\u001b[0m #[cfg(feature = \"_api\")]\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[94m----------------\u001b[0m \u001b[1m\u001b[94mthe item is gated behind the `_api` feature\u001b[0m\n\u001b[1m\u001b[94m333\u001b[0m \u001b[1m\u001b[94m|\u001b[0m pub use client::Client;\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[92m^^^^^^\u001b[0m\n\u001b[1m\u001b[96mhelp\u001b[0m: consider importing this struct instead\n \u001b[1m\u001b[94m|\u001b[0m\n \u001b[1m\u001b[94m3\u001b[0m \u001b[91m- \u001b[0muse \u001b[91masync_openai::Client\u001b[0m;\n \u001b[1m\u001b[94m3\u001b[0m \u001b[92m+ \u001b[0muse \u001b[92mreqwest::Client\u001b[0m;\n \u001b[1m\u001b[94m|\u001b[0m\n\n"}
{"$message_type":"diagnostic","message":"unused import: `Environment`","code":{"code":"unused_imports","explanation":null},"level":"warning","spans":[{"file_name":"src/config/mod.rs","byte_start":41,"byte_end":52,"line_start":2,"line_end":2,"column_start":22,"column_end":33,"is_primary":true,"text":[{"text":"use config::{Config, Environment, File, FileFormat};","highlight_start":22,"highlight_end":33}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"remove the unused import","code":null,"level":"help","spans":[{"file_name":"src/config/mod.rs","byte_start":39,"byte_end":52,"line_start":2,"line_end":2,"column_start":20,"column_end":33,"is_primary":true,"text":[{"text":"use config::{Config, Environment, File, FileFormat};","highlight_start":20,"highlight_end":33}],"label":null,"suggested_replacement":"","suggestion_applicability":"MachineApplicable","expansion":null}],"children":[],"rendered":null}],"rendered":"\u001b[1m\u001b[33mwarning\u001b[0m\u001b[1m: unused import: `Environment`\u001b[0m\n \u001b[1m\u001b[94m--> \u001b[0msrc/config/mod.rs:2:22\n \u001b[1m\u001b[94m|\u001b[0m\n\u001b[1m\u001b[94m2\u001b[0m \u001b[1m\u001b[94m|\u001b[0m use config::{Config, Environment, File, FileFormat};\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[33m^^^^^^^^^^^\u001b[0m\n \u001b[1m\u001b[94m|\u001b[0m\n \u001b[1m\u001b[94m= \u001b[0m\u001b[1mnote\u001b[0m: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default\n\n"}
{"$message_type":"diagnostic","message":"unused import: `UnifiedMessage`","code":{"code":"unused_imports","explanation":null},"level":"warning","spans":[{"file_name":"src/providers/mod.rs","byte_start":107,"byte_end":121,"line_start":5,"line_end":5,"column_start":37,"column_end":51,"is_primary":true,"text":[{"text":"use crate::models::{UnifiedRequest, UnifiedMessage};","highlight_start":37,"highlight_end":51}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"remove the unused import","code":null,"level":"help","spans":[{"file_name":"src/providers/mod.rs","byte_start":105,"byte_end":121,"line_start":5,"line_end":5,"column_start":35,"column_end":51,"is_primary":true,"text":[{"text":"use crate::models::{UnifiedRequest, UnifiedMessage};","highlight_start":35,"highlight_end":51}],"label":null,"suggested_replacement":"","suggestion_applicability":"MachineApplicable","expansion":null},{"file_name":"src/providers/mod.rs","byte_start":90,"byte_end":91,"line_start":5,"line_end":5,"column_start":20,"column_end":21,"is_primary":true,"text":[{"text":"use crate::models::{UnifiedRequest, UnifiedMessage};","highlight_start":20,"highlight_end":21}],"label":null,"suggested_replacement":"","suggestion_applicability":"MachineApplicable","expansion":null},{"file_name":"src/providers/mod.rs","byte_start":121,"byte_end":122,"line_start":5,"line_end":5,"column_start":51,"column_end":52,"is_primary":true,"text":[{"text":"use crate::models::{UnifiedRequest, UnifiedMessage};","highlight_start":51,"highlight_end":52}],"label":null,"suggested_replacement":"","suggestion_applicability":"MachineApplicable","expansion":null}],"children":[],"rendered":null}],"rendered":"\u001b[1m\u001b[33mwarning\u001b[0m\u001b[1m: unused import: `UnifiedMessage`\u001b[0m\n \u001b[1m\u001b[94m--> \u001b[0msrc/providers/mod.rs:5:37\n \u001b[1m\u001b[94m|\u001b[0m\n\u001b[1m\u001b[94m5\u001b[0m \u001b[1m\u001b[94m|\u001b[0m use crate::models::{UnifiedRequest, UnifiedMessage};\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[33m^^^^^^^^^^^^^^\u001b[0m\n\n"}
{"$message_type":"diagnostic","message":"lifetime parameters or bounds on associated function `from_request_parts` do not match the trait declaration","code":{"code":"E0195","explanation":"The lifetime parameters of the method do not match the trait declaration.\n\nErroneous code example:\n\n```compile_fail,E0195\ntrait Trait {\n fn bar<'a,'b:'a>(x: &'a str, y: &'b str);\n}\n\nstruct Foo;\n\nimpl Trait for Foo {\n fn bar<'a,'b>(x: &'a str, y: &'b str) {\n // error: lifetime parameters or bounds on method `bar`\n // do not match the trait declaration\n }\n}\n```\n\nThe lifetime constraint `'b` for `bar()` implementation does not match the\ntrait declaration. Ensure lifetime declarations match exactly in both trait\ndeclaration and implementation. Example:\n\n```\ntrait Trait {\n fn t<'a,'b:'a>(x: &'a str, y: &'b str);\n}\n\nstruct Foo;\n\nimpl Trait for Foo {\n fn t<'a,'b:'a>(x: &'a str, y: &'b str) { // ok!\n }\n}\n```\n"},"level":"error","spans":[{"file_name":"src/auth/mod.rs","byte_start":453,"byte_end":501,"line_start":21,"line_end":21,"column_start":14,"column_end":62,"is_primary":true,"text":[{"text":" async fn from_request_parts(parts: &mut Parts, state: &S) -> Result<Self, Self::Rejection> {","highlight_start":14,"highlight_end":62}],"label":"lifetimes do not match associated function in trait","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"/home/newkirk/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-core-0.5.6/src/extract/mod.rs","byte_start":1815,"byte_end":1952,"line_start":59,"line_end":62,"column_start":5,"column_end":69,"is_primary":false,"text":[{"text":" fn from_request_parts(","highlight_start":5,"highlight_end":1},{"text":" parts: &mut Parts,","highlight_start":1,"highlight_end":1},{"text":" state: &S,","highlight_start":1,"highlight_end":1},{"text":" ) -> impl Future<Output = Result<Self, Self::Rejection>> + Send;","highlight_start":1,"highlight_end":69}],"label":"lifetimes in impl do not match this associated function in trait","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[1m\u001b[91merror[E0195]\u001b[0m\u001b[1m: lifetime parameters or bounds on associated function `from_request_parts` do not match the trait declaration\u001b[0m\n \u001b[1m\u001b[94m--> \u001b[0msrc/auth/mod.rs:21:14\n \u001b[1m\u001b[94m|\u001b[0m\n\u001b[1m\u001b[94m21\u001b[0m \u001b[1m\u001b[94m|\u001b[0m async fn from_request_parts(parts: &mut Parts, state: &S) -> Result<Self, Self::Rejection> {\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[91m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m \u001b[1m\u001b[91mlifetimes do not match associated function in trait\u001b[0m\n \u001b[1m\u001b[94m|\u001b[0m\n \u001b[1m\u001b[94m::: \u001b[0m/home/newkirk/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-core-0.5.6/src/extract/mod.rs:59:5\n \u001b[1m\u001b[94m|\u001b[0m\n\u001b[1m\u001b[94m59\u001b[0m \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[94m/\u001b[0m fn from_request_parts(\n\u001b[1m\u001b[94m60\u001b[0m \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[94m|\u001b[0m parts: &mut Parts,\n\u001b[1m\u001b[94m61\u001b[0m \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[94m|\u001b[0m state: &S,\n\u001b[1m\u001b[94m62\u001b[0m \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[94m|\u001b[0m ) -> impl Future<Output = Result<Self, Self::Rejection>> + Send;\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[94m|____________________________________________________________________-\u001b[0m \u001b[1m\u001b[94mlifetimes in impl do not match this associated function in trait\u001b[0m\n\n"}
{"$message_type":"diagnostic","message":"mismatched types","code":{"code":"E0308","explanation":"Expected type did not match the received type.\n\nErroneous code examples:\n\n```compile_fail,E0308\nfn plus_one(x: i32) -> i32 {\n x + 1\n}\n\nplus_one(\"Not a number\");\n// ^^^^^^^^^^^^^^ expected `i32`, found `&str`\n\nif \"Not a bool\" {\n// ^^^^^^^^^^^^ expected `bool`, found `&str`\n}\n\nlet x: f32 = \"Not a float\";\n// --- ^^^^^^^^^^^^^ expected `f32`, found `&str`\n// |\n// expected due to this\n```\n\nThis error occurs when an expression was used in a place where the compiler\nexpected an expression of a different type. It can occur in several cases, the\nmost common being when calling a function and passing an argument which has a\ndifferent type than the matching type in the function declaration.\n"},"level":"error","spans":[{"file_name":"src/main.rs","byte_start":2763,"byte_end":2770,"line_start":82,"line_end":82,"column_start":21,"column_end":28,"is_primary":true,"text":[{"text":" .with_state(db_pool);","highlight_start":21,"highlight_end":28}],"label":"expected `()`, found `Pool<Sqlite>`","suggested_replacement":null,"suggestion_applicability":null,"expansion":null},{"file_name":"src/main.rs","byte_start":2752,"byte_end":2762,"line_start":82,"line_end":82,"column_start":10,"column_end":20,"is_primary":false,"text":[{"text":" .with_state(db_pool);","highlight_start":10,"highlight_end":20}],"label":"arguments to this method are incorrect","suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"expected unit type `()`\n found struct `Pool<Sqlite>`","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"method defined here","code":null,"level":"note","spans":[{"file_name":"/home/newkirk/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.8/src/routing/mod.rs","byte_start":13521,"byte_end":13531,"line_start":408,"line_end":408,"column_start":12,"column_end":22,"is_primary":true,"text":[{"text":" pub fn with_state<S2>(self, state: S) -> Router<S2> {","highlight_start":12,"highlight_end":22}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":null}],"rendered":"\u001b[1m\u001b[91merror[E0308]\u001b[0m\u001b[1m: mismatched types\u001b[0m\n \u001b[1m\u001b[94m--> \u001b[0msrc/main.rs:82:21\n \u001b[1m\u001b[94m|\u001b[0m\n \u001b[1m\u001b[94m82\u001b[0m \u001b[1m\u001b[94m|\u001b[0m .with_state(db_pool);\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[94m----------\u001b[0m \u001b[1m\u001b[91m^^^^^^^\u001b[0m \u001b[1m\u001b[91mexpected `()`, found `Pool<Sqlite>`\u001b[0m\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[94m|\u001b[0m\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[94marguments to this method are incorrect\u001b[0m\n \u001b[1m\u001b[94m|\u001b[0m\n \u001b[1m\u001b[94m= \u001b[0m\u001b[1mnote\u001b[0m: expected unit type `\u001b[1m\u001b[35m()\u001b[0m`\n found struct `\u001b[1m\u001b[35mPool<Sqlite>\u001b[0m`\n\u001b[1m\u001b[92mnote\u001b[0m: method defined here\n \u001b[1m\u001b[94m--> \u001b[0m/home/newkirk/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.8.8/src/routing/mod.rs:408:12\n \u001b[1m\u001b[94m|\u001b[0m\n\u001b[1m\u001b[94m408\u001b[0m \u001b[1m\u001b[94m|\u001b[0m pub fn with_state<S2>(self, state: S) -> Router<S2> {\n \u001b[1m\u001b[94m|\u001b[0m \u001b[1m\u001b[92m^^^^^^^^^^\u001b[0m\n\n"}
{"$message_type":"diagnostic","message":"aborting due to 4 previous errors; 2 warnings emitted","code":null,"level":"error","spans":[],"children":[],"rendered":"\u001b[1m\u001b[91merror\u001b[0m\u001b[1m: aborting due to 4 previous errors; 2 warnings emitted\u001b[0m\n\n"}
{"$message_type":"diagnostic","message":"Some errors have detailed explanations: E0195, E0308, E0432.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"\u001b[1mSome errors have detailed explanations: E0195, E0308, E0432.\u001b[0m\n"}
{"$message_type":"diagnostic","message":"For more information about an error, try `rustc --explain E0195`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"\u001b[1mFor more information about an error, try `rustc --explain E0195`.\u001b[0m\n"}