vincent-herlemont / native_db

Drop-in embedded database in Rust
MIT License
362 stars 14 forks source link

fix(deps): update rust crate thiserror to 1.0.61 #176

Closed renovate[bot] closed 1 month ago

renovate[bot] commented 1 month ago

Mend Renovate

This PR contains the following updates:

Package Type Update Change
thiserror dependencies patch 1.0 -> 1.0.61

Release Notes

dtolnay/thiserror (thiserror) ### [`v1.0.61`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.61) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.60...1.0.61) - Use `core::fmt` and `core::panic` to facilitate `error_in_core` support ([#​299](https://togithub.com/dtolnay/thiserror/issues/299), thanks [@​jordens](https://togithub.com/jordens)) ### [`v1.0.60`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.60) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.59...1.0.60) - Resolve unexpected_cfgs warning ([#​298](https://togithub.com/dtolnay/thiserror/issues/298)) ### [`v1.0.59`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.59) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.58...1.0.59) - Unblock testing of rustc `debug-fmt-detail` option ([#​297](https://togithub.com/dtolnay/thiserror/issues/297)) ### [`v1.0.58`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.58) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.57...1.0.58) - Make backtrace support available when using -Dwarnings ([#​292](https://togithub.com/dtolnay/thiserror/issues/292)) ### [`v1.0.57`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.57) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.56...1.0.57) - Generate more efficient `Display` impl for error message which do not contain any interpolated value ([#​286](https://togithub.com/dtolnay/thiserror/issues/286), thanks [@​nyurik](https://togithub.com/nyurik)) ### [`v1.0.56`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.56) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.55...1.0.56) - Update proc-macro2 to fix caching issue when using a rustc-wrapper such as sccache ### [`v1.0.55`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.55) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.54...1.0.55) - Work around improperly cached build script result by sccache – second attempt ([#​280](https://togithub.com/dtolnay/thiserror/issues/280)) ### [`v1.0.54`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.54) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.53...1.0.54) - Work around improperly cached build script result by sccache – first attempt ([#​279](https://togithub.com/dtolnay/thiserror/issues/279)) ### [`v1.0.53`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.53) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.52...1.0.53) - Reduce spurious rebuilds under RustRover IDE when using a nightly toolchain ([#​270](https://togithub.com/dtolnay/thiserror/issues/270)) ### [`v1.0.52`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.52) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.51...1.0.52) - Fix interaction with RUSTC_BOOTSTRAP ([#​269](https://togithub.com/dtolnay/thiserror/issues/269)) ### [`v1.0.51`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.51) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.50...1.0.51) - Improve diagnostics when an invalid attribute previously caused thiserror to generate no `Error` impl ([#​266](https://togithub.com/dtolnay/thiserror/issues/266)) ### [`v1.0.50`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.50) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.49...1.0.50) - Improve diagnostic when a #\[source], #\[from], or #\[transparant] attribute refers to a type that has no std::error::Error impl ([#​258](https://togithub.com/dtolnay/thiserror/issues/258), thanks [@​de-vri-es](https://togithub.com/de-vri-es)) ### [`v1.0.49`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.49) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.48...1.0.49) - Access libcore types through `::core` in generated code ([#​255](https://togithub.com/dtolnay/thiserror/issues/255), thanks [@​mina86](https://togithub.com/mina86)) ### [`v1.0.48`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.48) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.47...1.0.48) - Improve implementation of displaying Path values in a generated Display impl ([#​251](https://togithub.com/dtolnay/thiserror/issues/251), thanks [@​mina86](https://togithub.com/mina86)) ### [`v1.0.47`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.47) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.46...1.0.47) - Work around rust-analyzer bug ([https://github.com/rust-lang/rust-analyzer/issues/9911](https://togithub.com/rust-lang/rust-analyzer/issues/9911)) ### [`v1.0.46`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.46) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.45...1.0.46) - Add bootstrap workaround to allow rustc to depend on thiserror ([#​248](https://togithub.com/dtolnay/thiserror/issues/248), thanks [@​RalfJung](https://togithub.com/RalfJung)) ### [`v1.0.45`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.45) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.44...1.0.45) - Update backtrace support to nightly's new Error::provide API ([https://github.com/rust-lang/rust/pull/113464](https://togithub.com/rust-lang/rust/pull/113464), [#​246](https://togithub.com/dtolnay/thiserror/issues/246)) ### [`v1.0.44`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.44) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.43...1.0.44) - Documentation improvements ### [`v1.0.43`](https://togithub.com/dtolnay/thiserror/compare/1.0.42...1.0.43) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.42...1.0.43) ### [`v1.0.42`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.42) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.41...1.0.42) - Fix compile error in derived Display impl if there was a nonstandard `write!` macro in scope ([#​239](https://togithub.com/dtolnay/thiserror/issues/239)) ### [`v1.0.41`](https://togithub.com/dtolnay/thiserror/compare/1.0.40...1.0.41) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.40...1.0.41) ### [`v1.0.40`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.40) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.39...1.0.40) - Update syn dependency to 2.x ### [`v1.0.39`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.39) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.38...1.0.39) - Set html_root_url attribute ### [`v1.0.38`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.38) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.37...1.0.38) - Documentation improvements ### [`v1.0.37`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.37) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.36...1.0.37) - Documentation improvements ### [`v1.0.36`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.36) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.35...1.0.36) - Documentation improvements ([#​195](https://togithub.com/dtolnay/thiserror/issues/195), thanks [@​matklad](https://togithub.com/matklad)) ### [`v1.0.35`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.35) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.34...1.0.35) - More work on integrating [std::any::Provider](https://doc.rust-lang.org/std/any/trait.Provider.html) for backtrace support - Fix *"Multiple applicable `provide` methods in scope"* error when the caller has both std::error::Error and std::any::Provide traits in scope ([#​185](https://togithub.com/dtolnay/thiserror/issues/185)) ### [`v1.0.34`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.34) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.33...1.0.34) - Tweak "generic member access" based Backtrace implementation ([#​184](https://togithub.com/dtolnay/thiserror/issues/184)) ### [`v1.0.33`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.33) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.32...1.0.33) - Expose backtraces via the new "generic member access" API on the Error trait ([https://github.com/rust-lang/rust/issues/99301](https://togithub.com/rust-lang/rust/issues/99301), [https://github.com/rust-lang/rust/issues/96024](https://togithub.com/rust-lang/rust/issues/96024)) ### [`v1.0.32`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.32) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.31...1.0.32) - Add keywords to crates.io metadata ### [`v1.0.31`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.31) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.30...1.0.31) - Improve diagnostic when there is an enum variant containing `#[from] #[backtrace] Error, Backtrace` ([#​163](https://togithub.com/dtolnay/thiserror/issues/163)) ### [`v1.0.30`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.30) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.29...1.0.30) - Make `#[source]` attribute usable on a field of type `Box` ([#​155](https://togithub.com/dtolnay/thiserror/issues/155), thanks [@​cosmicexplorer](https://togithub.com/cosmicexplorer)) ### [`v1.0.29`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.29) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.28...1.0.29) - Support error types containing generic type parameters ([#​148](https://togithub.com/dtolnay/thiserror/issues/148), [#​149](https://togithub.com/dtolnay/thiserror/issues/149), [#​150](https://togithub.com/dtolnay/thiserror/issues/150), [#​151](https://togithub.com/dtolnay/thiserror/issues/151)) ```rust use thiserror::Error; #[derive(Error, Debug)] pub enum MyError { #[error("thing {0} ({0:?})")] Variant(E), #[error("some error")] Delegate(#[source] SomeError), #[error("err 0o{val:o}")] Octal { val: G }, } ``` In the above example, thiserror would automatically generate the following pair of generic trait impls. ```rust impl std::error::Error for MyError where SomeError: std::error::Error + 'static, Self: std::fmt::Debug + std::fmt::Display; impl std::fmt::Display for MyError where E: std::fmt::Debug + std::fmt::Display, G: std::fmt::Octal; ``` ### [`v1.0.28`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.28) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.27...1.0.28) - Make `?` work with error types that hold an optional source ([#​147](https://togithub.com/dtolnay/thiserror/issues/147)) ### [`v1.0.27`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.27) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.26...1.0.27) - Support forwarding backtrace method to source's backtrace method ([#​137](https://togithub.com/dtolnay/thiserror/issues/137), [#​146](https://togithub.com/dtolnay/thiserror/issues/146), thanks [@​astraw](https://togithub.com/astraw)) ### [`v1.0.26`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.26) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.25...1.0.26) - Work around bug in Clippy nonstandard_macro_braces lint ([https://github.com/rust-lang/rust-clippy/issues/7422](https://togithub.com/rust-lang/rust-clippy/issues/7422), [`245e7cf`](https://togithub.com/dtolnay/thiserror/commit/245e7cfd149140806ecef89d44b14e9557b297b1)) ### [`v1.0.25`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.25) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.24...1.0.25) - Support `error(transparent)` on errors containing a non-`'static` inner error ([#​113](https://togithub.com/dtolnay/thiserror/issues/113)) ### [`v1.0.24`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.24) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.23...1.0.24) - Hygiene fixes in generated `source` method of error types originating inside of a macro definition to unblock [https://github.com/rust-lang/rust/pull/80689#issuecomment-781493634](https://togithub.com/rust-lang/rust/pull/80689#issuecomment-781493634) ([#​121](https://togithub.com/dtolnay/thiserror/issues/121), thanks [@​Aaron1011](https://togithub.com/Aaron1011)) ### [`v1.0.23`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.23) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.22...1.0.23) - Better diagnostic when putting non-static lifetimes into the source type of an error ([#​115](https://togithub.com/dtolnay/thiserror/issues/115), [#​116](https://togithub.com/dtolnay/thiserror/issues/116)) ### [`v1.0.22`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.22) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.21...1.0.22) - Fix raw identifier fields in format arguments ([#​108](https://togithub.com/dtolnay/thiserror/issues/108), thanks [@​ninevra](https://togithub.com/ninevra)) ```rust #[derive(Error, Debug)] #[error("raw identifier: {r#type}")] pub struct Error { r#type: i32, } ``` - Fix Rust keyword named format arguments ([#​109](https://togithub.com/dtolnay/thiserror/issues/109)) ```rust #[derive(Error, Debug)] #[error("keyword: {type}", type = 1)] pub struct Error; ``` ### [`v1.0.21`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.21) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.20...1.0.21) - Support capturing backtraces inside of Arc from a From impl, which makes it possible for errors having backtraces to be clonable ([#​102](https://togithub.com/dtolnay/thiserror/issues/102)) ```rust use std::backtrace::Backtrace; use std::sync::Arc; use thiserror::Error; #[derive(Error, Debug, Clone)] #[error("...")] pub struct ClonableErrorWithBacktrace { #[from] source: Inner, #[backtrace] backtrace: Arc, } ``` ### [`v1.0.20`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.20) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.19...1.0.20) - Resolve unused_qualifications lint in generated code ([#​91](https://togithub.com/dtolnay/thiserror/issues/91)) ### [`v1.0.19`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.19) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.18...1.0.19) - Avoid triggering `used_underscore_binding` pedantic Clippy lint in generated code of #\[error(transparent)] attribute ([#​88](https://togithub.com/dtolnay/thiserror/issues/88)) ### [`v1.0.18`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.18) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.17...1.0.18) - Fix compiler error in some cases when derive(Error) is invoked from inside of a macro_rules macro ([#​86](https://togithub.com/dtolnay/thiserror/issues/86)) ### [`v1.0.17`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.17) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.16...1.0.17) - Documentation improvements ### [`v1.0.16`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.16) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.15...1.0.16) - Catch misplaced #\[error(transparent)] attributes ([#​80](https://togithub.com/dtolnay/thiserror/issues/80), [#​81](https://togithub.com/dtolnay/thiserror/issues/81)) ### [`v1.0.15`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.15) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.14...1.0.15) - Improve error message when an error type is missing a Display impl ([#​75](https://togithub.com/dtolnay/thiserror/issues/75)) ### [`v1.0.14`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.14) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.13...1.0.14) - Avoid triggering deprecation warnings when an error enum has deprecated variants ### [`v1.0.13`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.13) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.12...1.0.13) - Fix failure to compile Display impl if a format string contained more than 1 named interpolated variable and a trailing comma, as in `#[error("{v1} {v2}",)]` ### [`v1.0.12`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.12) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.11...1.0.12) - Produce a better error message if a #\[source] or #\[from] field contains a non-'static lifetime ([#​68](https://togithub.com/dtolnay/thiserror/issues/68)) ### [`v1.0.11`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.11) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.10...1.0.11) - Ship license files in thiserror-impl subcrate also ([#​63](https://togithub.com/dtolnay/thiserror/issues/63)) ### [`v1.0.10`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.10) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.9...1.0.10) - Improve parsing of `.0` and `.var`-style format arguments ([#​54](https://togithub.com/dtolnay/thiserror/issues/54)) For example the one here as the argument to the `match` expression would now be recognized correctly: ```rust #[derive(Error, Debug)] pub enum MyError { #[error("{}: {0}", match .1 { Some(n) => format!("a variant error occurred with n={}", n), None => format!("there was an empty variant error"), })] Variant(String, Option), } ``` ### [`v1.0.9`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.9) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.8...1.0.9) - Fix bug affecting display attributes of the form `#[error("{}", some_expression)]` (where the format string is `"{}"` and nothing else, and the value formatted is not just one of the fields from the error) [#​53](https://togithub.com/dtolnay/thiserror/issues/53) ### [`v1.0.8`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.8) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.7...1.0.8) - Documentation improvements ### [`v1.0.7`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.7) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.6...1.0.7) - Support mixing shorthand and non-shorthand format args ([#​47](https://togithub.com/dtolnay/thiserror/issues/47)) ```rust #[derive(Error, Debug)] pub enum Error { #[error("first letter must be lowercase but was {:?}", first_char(.0))] WrongCase(String), #[error("invalid index {idx}, expected at least {} and at most {}", .limits.lo, .limits.hi)] OutOfBounds { idx: usize, limits: Limits }, } ``` - Add #\[error(transparent)] attribute for delegating Error impl to one field ([#​50](https://togithub.com/dtolnay/thiserror/issues/50)) This is useful for hiding error variants from a library's public error type: ```rust #[derive(Error, Debug)] #[error(transparent)] // source and Display delegate to ErrorKind pub struct Error(ErrorKind); #[derive(Error, Debug)] /*private*/ enum ErrorKind { #[error("...")] E0, #[error("...")] E1(#[source] io::Error), } ``` And also for enums that need an "anything else" variant; such variants tend not to have their own Display message but just forward through to the underlying error's Display and source: ```rust #[derive(Error, Debug)] pub enum MyError { ... #[error(transparent)] Other(#[from] anyhow::Error), // source and Display delegate to anyhow::Error } ``` ### [`v1.0.6`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.6) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.5...1.0.6) - Support Box\ as a #\[source] ([#​41](https://togithub.com/dtolnay/thiserror/issues/41), thanks [@​mathstuf](https://togithub.com/mathstuf)) ### [`v1.0.5`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.5) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.4...1.0.5) - Support interpolating `Path` and `PathBuf` fields as if they had a Display impl ```rust use std::io; use std::path::PathBuf; use thiserror::Error; #[derive(Error, Debug)] pub enum Error { #[error("failed to load {1}")] Read(#[source] io::Error, PathBuf), } ``` In previous releases this would fail to compile with: ```console error[E0277]: `std::path::PathBuf` doesn't implement `std::fmt::Display` --> src/main.rs:7:13 | 7 | #[error("failed to load {1}")] | ^^^^^^^^^^^^^^^^^^^^ `std::path::PathBuf` cannot be formatted with the default formatter ``` ### [`v1.0.4`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.4) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.3...1.0.4) - Avoid generated variable name collision with an enum member named `formatter` ([#​36](https://togithub.com/dtolnay/thiserror/issues/36), thanks [@​mathstuf](https://togithub.com/mathstuf)) ### [`v1.0.3`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.3) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.2...1.0.3) - Fix `#[error("{v0}")]` where an interpolated identifier contains number digits ([#​34](https://togithub.com/dtolnay/thiserror/issues/34)) ### [`v1.0.2`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.2) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.1...1.0.2) - Add a `#[from]` attribute to request an implementation of `std::convert::From` from your error's source error types, making it easy to build your error via the `?` operator. ```rust use thiserror::Error; #[derive(Error, Debug)] pub enum Error { Io(#[from] io::Error), Json(#[from] serde_json::Error), Regex(#[from] regex::Error), Other(#[from] anyhow::Error), } ``` We only permit `From` to be derived from the error's source field, not any arbitrary other field. Notice that this allows `#[from]` to imply `#[source]` so you don't need to also specify `#[source]` explicitly. The variant must not contain any other fields beyond the source error and possibly a backtrace. A backtrace is captured from within the `From` impl if there is a field for it. ```rust #[derive(Error, Debug)] pub enum MyError { Io { #[from] source: io::Error, backtrace: Backtrace, }, } ``` - Named fields with the name `source` are assumed to be the error source and so no longer require an explicit `#[source]` attribute. - Enum variants now inherit the `#[error(...)]` attribute from atop the enum if there is one. ```rust use thiserror::Error; #[derive(Error, Debug)] #[error("{0}")] // applies to every variant without its own attr pub enum Error { Io(io::Error), Json(serde_json::Error), Regex(regex::Error), #[error("unknown error")] Unknown, } ``` ### [`v1.0.1`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.1) [Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.0...1.0.1) - Documentation improvements

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR has been generated by Mend Renovate. View repository job log here.

vincent-herlemont commented 3 weeks ago

:tada: This PR is included in version 0.7.0 :tada:

The release is available on:

Your semantic-release bot :package::rocket: