Skip to content

Releases: getsentry/sentry-rust

0.23.0

08 Jul 08:02
Compare
Choose a tag to compare

Breaking Changes:

  • The minium supported Rust version was bumped to 1.46.0 due to requirements from dependencies.

Features:

  • Added support for pre-aggregated Sessions using the new SessionMode::Request option. This requires Sentry 21.2.
  • Added a new Client::flush method to explicitly flush the transport and use that to make sure events are flushed out when using panic=abort.
  • Added a new flush hook to the Transport trait.
  • Exposed a new RateLimiter utility that transport implementations can use to drop envelopes early when the DSN is being rate limited.
  • Optionally allow capturing backtraces from anyhow errors.
  • Added new crate sentry-tracing and feature tracing that enables support to capture Events and Breadcrumbs from tracing logs.

Fixes:

  • Honor the attach_stacktrace option correctly when capturing errors.
  • Added the missing addr_mode property to Frame.
  • Fixed extracting the error type from a anyhow::msg.

Thank you:

Features, fixes and improvements in this release have been contributed by:

0.22.0

13 Jan 21:58
Compare
Choose a tag to compare

Breaking Changes:

  • The minimum supported Rust version was bumped to 1.45.0.
  • The deprecated error-chain and failure integrations, features and crates were removed.

Features:

  • The slog integration now supports capturing slog::KV pairs for both breadcrumbs and events.
  • Preliminary support for attachments was added to sentry-types and the Envelope. However, deeper integration into the SDK is not yet complete.

Fixes:

  • Fix regression defaulting ClientOptions::environment from SENTRY_ENVIRONMENT.
  • The debug-images integration now captures the correct image_addr.
  • Do not send invalid exception events in the log and slog integrations. Both integrations no longer attach the location. To receive location information, set options.attach_stacktrace to true.
  • Process all event backtraces the same way.
  • Fix a panic in the session flusher.

Updates:

  • Updated reqwest to version 0.11, which is based on tokio 1.
  • Removed usage of the abandoned im crate, thus solving a transitive RUSTSEC advisory.

Thank you:

Features, fixes and improvements in this release have been contributed by:

0.21.0

12 Nov 13:44
1541cbf
Compare
Choose a tag to compare

Breaking Changes:

  • Bump the minimum required Rust version to 1.42.0.
  • The actix integration / middleware is now compatible with actix-web 3.
  • Removed all deprecated exports and deprecated feature flags.
  • The failure integration / feature is now off-by-default along with its deprecation.
  • The log and slog integrations were re-designed, they now offer types that wrap a log::Log or slog::Drain and forward log events to the currently active sentry Hub based on an optional filter and an optional mapper.
  • The new log integration will not implicitly call log::set_max_level_filter anymore, and users need to do so manually.

Features:

  • The SDK will now set a default environment based on debug_assertions.
  • Session updates are now sent lazily.
  • Add the new end_session_with_status global and Hub functions which allow ending a Release Health Session with an explicit SessionStatus.

Deprecations:

  • The error-chain and failure integration was officially deprecated and will be removed soon.

0.20.1

15 Sep 08:38
46e04c8
Compare
Choose a tag to compare

Fixes:

  • Fixed a deadlock when nesting configure_scope calls.
  • Improved transport shutdown logic and fixed a potential deadlock on shutdown.

0.20.0

09 Sep 11:37
c1e0824
Compare
Choose a tag to compare

Highlights:

  • The Rust SDK now has experimental support for Release Health Sessions using the start_session and end_session API (global and on the Hub).

Breaking Changes:

  • The Transport was changed to work on Envelopes instead of Events. The send_event trait function was removed in favor of send_envelope.

Features:

  • The Envelope, SessionUpdate, and other related types have been added to the sentry_types::protocol::v7 module.
  • A clear_breadcrumbs method was added to Scope.
  • sentry_contexts::utils is now public.

Fixes:

  • Panic events now have a proper mechanism.

Deprecations:

  • The Future and FutureExt exports have been renamed to SentryFuture and SentryFutureExt respectively.

Thank you:

Features, fixes and improvements in this release have been contributed by:

0.19.1

28 Aug 09:14
b9e0096
Compare
Choose a tag to compare

Fixes:

  • Better deal with concurrent Hub access.

0.19.0

18 Jun 13:55
Compare
Choose a tag to compare

Highlights:

The sentry crate has been split up into a sentry-core, and many smaller per-integration crates. Application users should continue using the sentry crate, but library users and integration/transport authors are encouraged to use the sentry-core crate instead.

Additionally, sentry can now be extended via Integrations.

Breaking Changes:

  • The utils module has been removed, and most utils have been moved into integrations.
  • The integrations module was completely rewritten.
  • When constructing a Client using a ClientOptions struct manually, it does not have any default integrations, and it does not resolve default options from environment variables any more. Please use the explicit apply_defaults function instead. The init function will automatically call apply_defaults.
  • The init function can’t be called with a Client anymore.

Features:

  • Sentry can now capture std::error::Error types, using the capture_error and Hub::capture_error functions, and an additional event_from_error utility function.
  • Sentry now has built-in support to bind a Hub to a Future.
  • Sentry can now be extended with Integrations.
  • The ClientInitGuard, Future and ScopeGuard structs and apply_defaults, capture_error, event_from_error, with_integration and parse_type_from_debug functions have been added to the root exports.
  • The FutureExt, Integration, IntoBreadcrumbs, IntoDsn, Transport and TransportFactory traits are now exported.
  • The types module now re-exports sentry-types.

Deprecations:

  • The internals module is deprecated. Please use items from the crate root or the types module instead.
  • All the feature flags have been renamed, the old names are still available but

0.18.1

14 May 13:52
0.18.1
8a45764
Compare
Choose a tag to compare
  • Fix potential segfault with with_debug_meta (#211).
  • Fix panic when running inside of tokio (#186).

0.18.0

19 Feb 16:27
Compare
Choose a tag to compare
  • Upgrade most dependencies to their current versions (#183):

    • env_logger 0.7
    • reqwest 0.10
    • error-chain 0.12
    • url 2.1
    • sentry-types 0.14
  • Remove the log and env_logger integration from default features (#183).

  • Fix backtraces for newer failure and backtrace versions (#183).

  • Fix compilation of the with_rust_info feature (#183).

  • Add "panics" sections to functions that may panic (#174).

  • Document all feature flags consistently.

0.17.0

27 Aug 13:51
Compare
Choose a tag to compare
  • Upgrade findshlibs (#153)