diff --git a/CHANGELOG.md b/CHANGELOG.md index 88094a3b..28aa56a7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## Unreleased + +**Breaking Changes**: + +- The `backtrace` feature of `sentry-anyhow` is enabled by default. ([362](https://github.com/getsentry/sentry-rust/pull/362)) + ## 0.23.0 **Breaking Changes**: diff --git a/sentry-anyhow/Cargo.toml b/sentry-anyhow/Cargo.toml index 9a59a5ea..4ced1e24 100644 --- a/sentry-anyhow/Cargo.toml +++ b/sentry-anyhow/Cargo.toml @@ -12,6 +12,7 @@ Sentry integration for anyhow. edition = "2018" [features] +default = ["backtrace"] backtrace = ["anyhow/backtrace"] [dependencies] diff --git a/sentry-anyhow/README.md b/sentry-anyhow/README.md index edca1f5e..b013cbfb 100644 --- a/sentry-anyhow/README.md +++ b/sentry-anyhow/README.md @@ -1,12 +1,21 @@ -

- - - -

+# sentry-anyhow -# Sentry Rust SDK: sentry-anyhow +Adds support for capturing Sentry errors from [`anyhow::Error`]. -Adds support for capturing Sentry errors from `anyhow::Error`. +This integration adds a new event *source*, which allows you to create events directly +from an [`anyhow::Error`] struct. As it is only an event source it only needs to be +enabled using the `anyhow` cargo feature, it does not need to be enabled in the call to +[`sentry::init`](https://docs.rs/sentry/*/sentry/fn.init.html). + +This integration does not need to be installed, instead it provides an extra function to +capture [`anyhow::Error`], optionally exposing it as a method on the +[`sentry::Hub`](https://docs.rs/sentry/*/sentry/struct.Hub.html) using the +[`AnyhowHubExt`] trait. + +Like a plain [`std::error::Error`] being captured, [`anyhow::Error`] is captured with a +chain of all error sources, if present. See +[`sentry::capture_error`](https://docs.rs/sentry/*/sentry/fn.capture_error.html) for +details of this. ## Example @@ -22,9 +31,16 @@ if let Err(err) = function_that_might_fail() { } ``` -## Resources +## Features -License: Apache-2.0 +The `backtrace` feature will enable the corresponding feature in anyhow and allow you to +capture backtraces with your events. It is enabled by default. + +## Resources - [Discord](https://discord.gg/ez5KZN7) server for project discussions. -- Follow [@getsentry](https://twitter.com/getsentry) on Twitter for updates +- Follow [@getsentry](https://twitter.com/getsentry) on Twitter for updates. + +[`anyhow::Error`]: https://docs.rs/anyhow/*/anyhow/struct.Error.html + +License: Apache-2.0 diff --git a/sentry-anyhow/src/lib.rs b/sentry-anyhow/src/lib.rs index 1b6b4fce..c0a398b5 100644 --- a/sentry-anyhow/src/lib.rs +++ b/sentry-anyhow/src/lib.rs @@ -29,6 +29,11 @@ //! } //! ``` //! +//! # Features +//! +//! The `backtrace` feature will enable the corresponding feature in anyhow and allow you to +//! capture backtraces with your events. It is enabled by default. +//! //! [`anyhow::Error`]: https://docs.rs/anyhow/*/anyhow/struct.Error.html #![doc(html_favicon_url = "https://sentry-brand.storage.googleapis.com/favicon.ico")]