Releases: getsentry/sentry-native
0.5.1
0.5.0
Features
- Provide
on_crash()
callback to allow clients to act on detected crashes.
Users often inquired about distinguishing between crashes and "normal" events in thebefore_send()
hook.on_crash()
can be considered a replacement forbefore_send()
for crash events, where the goal is to usebefore_send()
only for normal events, whileon_crash()
is only invoked for crashes. This change is backward compatible for current users ofbefore_send()
and allows gradual migration toon_crash()
(see the docs for details). (#724, #734)
Fixes
- Make Windows ModuleFinder more resilient to missing Debug Info (#732)
- Aligned pre-send event processing in
sentry_capture_event()
with the cross-SDK session filter order (#729) - Align the default value initialization for the
environment
payload attribute with the developer documentation (#739) - Iterate all debug directory entries when parsing PE modules for a valid CodeView record (#740)
Thank you:
Features, fixes and improvements in this release have been contributed by:
0.4.18
Features:
- The crashpad backend now captures thread names. (#725)
- The inproc backend now captures the context registers. (#714)
- A new set of APIs to get the sentry SDK version at runtime. (#726)
- Add more convenient APIs to attach stack traces to exception or thread values. (#723)
- Allow disabling the crash reporting backend at runtime. (#717)
Fixes:
- Improved heuristics flagging sessions as "crashed". (#719)
Internal:
- Updated Breakpad and Crashpad backends to 2022-06-14. (#725)
Thank you:
Features, fixes and improvements in this release have been contributed by:
0.4.17
Fixes:
- sentry-native now successfully builds when examples aren't included. (#702)
Thank you:
Features, fixes and improvements in this release have been contributed by:
0.4.16
Features:
- Removed the
SENTRY_PERFORMANCE_MONITORING
compile flag requirement to access performance monitoring in the Sentry SDK. Performance monitoring is now available to everybody who has opted into the experimental API. - New API to check whether the application has crashed in the previous run:
sentry_get_crashed_last_run()
andsentry_clear_crashed_last_run()
(#685). - Allow overriding the SDK name at build time - set the
SENTRY_SDK_NAME
CMake cache variable. - More aggressively prune the Crashpad database. (#698)
Internal:
- Project IDs are now treated as opaque strings instead of integer values. (#690)
- Updated Breakpad and Crashpad backends to 2022-04-12. (#696)
Fixes:
- Updated CI as well as list of supported platforms to reflect Windows Server 2016, and therefore MSVC 2017 losing active support.
- Correctly free Windows Mutexes in Crashpad backend.
Thank you:
Features, fixes and improvements in this release have been contributed by:
0.4.15
Fixes:
- Fix contexts from the scope not being attached to events correctly.
- Improve performance of event serialization.
0.4.14
Features
- The Sentry SDK now has experimental support for performance monitoring.
The performance monitoring API allows manually creating transactions and instrumenting spans, and offers APIs for distributed tracing.
The API is currently disabled by default and needs to be enabled via a compile-timeSENTRY_PERFORMANCE_MONITORING
flag.
For more information, take a look at the more detailed documentation of performance monitoring. - Sentry now has an explicit
sentry_flush
method that blocks the calling thread for the given time, waiting for the transport queue to be flushed. Custom transports need to implement a newflush_hook
for this to work.
Fixes
- Fix Sentry API deadlocking when the SDK was not initialized (or
sentry_init
failed). - The rate limit handling of the default transports was updated to match the expected behavior.
- The Windows OS version is now read from the Registry and is more accurate.
- The
SENTRY_LIBRARY_TYPE
CMake option is now correctly honored. - The Linux Modulefinder was once again improved to increase its memory safety and reliability.
Thank you:
Features, fixes and improvements in this release have been contributed by:
0.4.13
Features
- Add client-side stackwalking on Linux, Windows, and macOS (disabled by default).
- CMake: add ability to set solution folder name.
- Add AIX support.
Fixes
- CMake: check whether libcurl was already found.
- Increment CXX standard version to 14 to allow crashpad to build.
Internal:
- Update Crashpad and Breakpad submodules to 2021-12-03.
Thank you:
Features, fixes and improvements in this release have been contributed by:
0.4.12
Features:
- Make the shutdown timeout configurable via
sentry_options_set_shutdown_timeout
.
Fixes:
- The crashpad backend compiles with mingw again.
- Build System improvements.
Thank you:
Features, fixes and improvements in this release have been contributed by:
0.4.11
Fixes:
- The crashpad backend now respects the
max_breadcrumbs
setting. - Hanging HTTP requests will now be canceled on shutdown in the WinHTTP transport.
- The Modulefinder and Android unwinder now use safer memory access.
- Possible races and deadlocks have been fixed in
init
/close
, and in API related to sessions.
Thank you:
Features, fixes and improvements in this release have been contributed by: