Skip to content

Releases: getsentry/sentry-native

0.12.1

03 Nov 12:19

Choose a tag to compare

Fixes:

  • PS5/Switch compilation regression (sentry__process_spawn signature change) (#1436)

0.12.0

29 Oct 15:58

Choose a tag to compare

Breaking changes:

  • If you use a narrow string path interface (for instance, sentry_options_set_database_path()) on Windows rather than one of the wide string variants (sentry_options_set_database_pathw()), then the expected encoding is now UTF-8. (#1413)

Features:

  • Add an option to use the stack pointer as an upper limit for the stack capture range in crashpad on Windows. This is useful for targets like Proton/Wine, where one can't rely on the TEB-derived upper bound being correctly maintained by the system, leading to overly large stack captures per thread. (#1427, crashpad#137)

Fixes:

  • Add logs flush on crash. This is not available for macOS with the crashpad backend. (#1404)
  • Make narrow UTF-8 the canonical path encoding on Windows. (#1413)
  • Re-add setting thread name for Windows transport. (#1424)
  • Fix AOT interop with managed .NET runtimes. (#1392)

Internal:

0.11.3

14 Oct 15:34

Choose a tag to compare

Features:

  • Add support for outgoing W3C traceparent header propagation with the propagate_traceparent option. (#1394)
  • Add sentry_options_set_external_crash_reporter_path to allow specifying an external crash reporter. (#1303)

Fixes:

  • Use proper SDK name determination for structured logs sdk.name attribute. (#1399)
  • Serialize uint64 values as numerical instead of string. (#1408)

0.11.2

02 Oct 08:54

Choose a tag to compare

Fixes:

  • Windows: Make symbolication and the modulefinder independent of the system ANSI code page. (#1389)

0.11.1

23 Sep 16:14

Choose a tag to compare

Features:

  • Add support for structured logs. It is currently experimental, and one can enable it by setting sentry_options_set_enable_logs. When enabled, you can capture a log using sentry_log_info() (or another log level). Logs can be filtered by setting the before_send_log hook. (#1271)

0.11.0

18 Sep 17:54

Choose a tag to compare

Breaking changes:

  • Add user_data parameter to traces_sampler. (#1346)

Fixes:

  • Include stddef.h explicitly in crashpad since future libc++ revisions will stop providing this include transitively. (#1375, crashpad#132)
  • Fall back on JWASM in the MinGW crashpad build only if no CMAKE_ASM_MASM_COMPILER has been defined. (#1375, crashpad#133)
  • Prevent crashpad from leaking Objective-C ARC compile options into any parent target linkage. (#1375, crashpad#134)
  • Fixed a TOCTOU race between session init/shutdown and event capture. (#1377)
  • Make the Windows resource generation aware of config-specific output paths for multi-config generators. (#1383)
  • Remove the ASM language from the top-level CMake project, as this triggered CMake policy CMP194 which isn't applicable to the top-level. (#1384)

Features:

  • Add a configuration to disable logging after a crash has been detected - sentry_options_set_logger_enabled_when_crashed(). (#1371)

Internal:

  • Support downstream Xbox SDK specifying networking initialization mechanism. (#1359)
  • Added crashpad support infrastructure for the external crash reporter feature. (#1375, crashpad#131)

Docs:

  • Document the CMake 4 requirement on macOS SDKROOT due to its empty default for CMAKE_OSX_SYSROOT in the README. (#1368)

Thank you:

0.10.1

02 Sep 13:21

Choose a tag to compare

Internal:

  • Correctly apply dynamic mutex initialization in unit-tests (fixes running unit-tests in downstream console SDKs) (#1337)

0.10.0

08 Aug 12:24

Choose a tag to compare

Breaking changes:

  • By using transactions as automatic trace boundaries, transactions will, by default, no longer be part of the same singular trace. This is not the case when setting trace boundaries explicitly (sentry_regenerate_trace() or sentry_set_trace()), which turns off the automatic management of trace boundaries. (#1270)
  • Change transaction sampling to be trace-based. This does not affect you when transactions are used for automatic trace boundaries (as described above), since every transaction is part of a new trace. However, if you manage trace boundaries manually (using sentry_regenerate_trace()) or run the Native SDK inside a downstream SDK like the Unity SDK, where these SDKs will manage the trace boundaries, for a given traces_sample_rate, either all transactions in a trace get sampled or none do with probability equal to that sample rate. (#1254)
  • Moved Xbox toolchains to an Xbox-specific repository sentry-xbox. You can request access to the repository by following the instructions in Xbox documentation. (#1329)

Features:

  • Add sentry_clear_attachments() to allow clearing all previously added attachments in the global scope. (#1290)
  • Automatically set trace boundaries with every transaction. (#1270)
  • Provide sentry_regenerate_trace() to allow users to set manual trace boundaries. (#1293)
  • Add Dynamic Sampling Context (DSC) to events. (#1254)
  • Add sentry_value_new_feedback and sentry_capture_feedback to allow capturing User Feedback. (#1304)
    • Deprecate sentry_value_new_user_feedback and sentry_capture_user_feedback in favor of the new API.
  • Add sentry_envelope_read_from_file, sentry_envelope_get_header, and sentry_capture_envelope. (#1320)
  • Add (u)int64 sentry_value_t type. (#1326)

Meta:

  • Marked deprecated functions with SENTRY_DEPRECATED(msg). (#1308)

Internal:

  • Crash events from Crashpad now have event_id defined similarly to other backends. This makes it possible to associate feedback at the time of crash. (#1319)

0.9.1

25 Jun 11:02

Choose a tag to compare

Features:

  • The sentry_attach_file/bytes, sentry_scope_attach_file/bytes (and their wide-string variants), and sentry_remove_attachment have been added to modify the list of attachments that are sent along with sentry events after a call to sentry_init. (#1266, #1275)
    • NOTE: When using the crashpad backend on macOS, the list of attachments that will be added at the time of a hard crash will be frozen at the time of sentry_init, and later modifications will not be reflected.
  • Add sentry_attachment_set_content_type to allow specifying the content type of attachments. (#1276)
  • Add sentry_attachment_set_filename to allow specifying the filename of attachments displayed in the Sentry WebUI. (#1285)

Meta:

  • Identify Xbox as a separate SDK name sentry.native.xbox. (#1287)

Internal:

0.9.0

05 Jun 17:29

Choose a tag to compare

Breaking changes:

  • Limiting the proguard rules in the NDK package moves the burden of the configuration to its users. Please ensure to configure proguard in your project so native methods in your namespace can be symbolicated if they appear in stack traces. (#1250)
  • When tags, contexts, and extra data are applied to events, the event data now takes precedence over the scope data as outlined in the Hub & Scope Refactoring developer document and the linked RFC code example. (#1253)

Features:

  • Provide before_send_transaction callback. (#1236)
  • Add support for capturing events with local scopes. (#1248)
  • Add Windows support for the crashpad_wait_for_upload flag. (#1255, crashpad#126)

Fixes:

  • Reduce the scope of the proguard rules in the NDK package to local namespaces. (#1250)
  • Close the file and return 0 on success when writing raw envelopes. (#1260)
  • Fix event tags, contexts, and extra data to take precedence when applying scope data. (#1253)

Docs:

  • Document convenience PowerShell runners for formatting and tests on Windows. (#1247)