From f386eef61fb4aea51f6a353896ae87a900e5e429 Mon Sep 17 00:00:00 2001 From: Ed Page Date: Thu, 6 Nov 2025 07:42:13 -0600 Subject: [PATCH] docs(contrib): Link out to rustc diagnostic style guide --- src/doc/contrib/src/implementation/console.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/doc/contrib/src/implementation/console.md b/src/doc/contrib/src/implementation/console.md index 56c859eccd9..f55550498af 100644 --- a/src/doc/contrib/src/implementation/console.md +++ b/src/doc/contrib/src/implementation/console.md @@ -21,7 +21,17 @@ the [`JobQueue`] as it processes each message. [`drop_print`]: https://github.com/rust-lang/cargo/blob/e4b65bdc80f2a293447f2f6a808fa7c84bf9a357/src/cargo/util/config/mod.rs#L1820-L1848 [`JobQueue`]: https://github.com/rust-lang/cargo/blob/master/src/cargo/core/compiler/job_queue/mod.rs -## Errors +## Diagnostics + +See rustc's [Errors and lints] for: +- diagnostic structure +- hard diagnostics vs lints +- diagnostic style guide +- lint naming +- diagnostic levels +- suggestion style guide + +### Errors Cargo uses [`anyhow`] for managing errors. This makes it convenient to "chain" errors together, so that Cargo can report how an error originated, and what it @@ -56,3 +66,4 @@ Some guidelines for Cargo's output: future to be more structured. [`anyhow`]: https://docs.rs/anyhow +[Errors and lints]: https://rustc-dev-guide.rust-lang.org/diagnostics.html