Skip to content

1.0.0-beta.1

Pre-release
Pre-release

Choose a tag to compare

@sentry-release-bot sentry-release-bot released this 09 Nov 20:56

Breaking / Important behavior changes:

  • The native backend is now the default on Linux, macOS, and Windows. (#2186)
  • macOS/Linux: shared libraries now use ABI-versioned filenames, such as libsentry.1.dylib or libsentry.so.1 for 1.x. Windows, Android, and static libraries remain unchanged. (#2103)
    • NOTE: Applications must package the real versioned library and its symlinks, including libsentry.1.dylib or libsentry.so.1, because they link to and load the ABI-versioned name.
  • Release archives now include the SDK version in the filename, such as sentry-native-1.0.0.zip. (#2105)
  • Remove deprecated APIs. Migrate to the following alternatives: (#2230)
    • sentry_new_function_transport: use sentry_transport_new and sentry_transport_set_state. The send callback now receives a mutable envelope, takes ownership of it, and must free it with sentry_envelope_free.
    • sentry_event_value_add_stacktrace: create a thread with sentry_value_new_thread, set its stack with sentry_value_set_stacktrace, and add it to the event with sentry_event_add_thread.
    • sentry_shutdown: use sentry_close.
    • sentry_sdk_name and sentry_sdk_user_agent: use sentry_options_get_sdk_name and sentry_options_get_user_agent, or SENTRY_SDK_NAME and SENTRY_SDK_USER_AGENT for build-time values.
    • sentry_options_set_http_proxy and sentry_options_set_http_proxy_n: use sentry_options_set_proxy and sentry_options_set_proxy_n.
    • sentry_value_new_user_feedback and sentry_value_new_user_feedback_n: use sentry_value_new_feedback and sentry_value_new_feedback_n. The constructor arguments are now message, contact email, name, and associated event ID, with lengths following each string in the _n variant.
    • sentry_capture_user_feedback: use sentry_capture_feedback.
    • sentry_options_add_view_hierarchy, sentry_options_add_view_hierarchy_n, sentry_options_add_view_hierarchyw, and sentry_options_add_view_hierarchyw_n: create an attachment with sentry_attachment_from_file or its _n/wide-string variants, set its type to SENTRY_ATTACHMENT_TYPE_VIEW_HIERARCHY with sentry_attachment_set_type, and add it with sentry_add_attachment. For startup configuration, use sentry_scope_add_attachment in a sentry_options_set_initial_scope callback.
    • sentry_capture_event_with_scope(event, scope): use sentry_scope_capture_event(scope, event, NULL).
    • sentry_clear_crashed_last_run: remove the call. sentry_init clears the crash marker automatically.
    • sentry_regenerate_trace: use sentry_start_new_trace.

Features:

  • Add sentry_scope_begin_read/sentry_scope_end_read and sentry_scope_begin_write/sentry_scope_end_write for consistent reads of multiple scope properties and applying multiple scope changes with a single scope flush. (#2107)
  • Add sentry_scope_acquire and sentry_scope_release to access the isolation scope. (#2160)
  • Native: Provide exception metadata, registers, and a basic crashing-thread stack to on_crash for crash identification. (#2174)
  • Native: reduce disk I/O on scope changes by sending incremental updates to the crash daemon over IPC. (#2155, #2157)
  • Add pkg-config support for shared builds. (#1411)
  • Native: install handlers for the daemon's own fatal signals and unhandled exceptions, allowing best-effort recovery actions such as dumping pending envelopes before termination. (#2220)
  • Linux: add RISC-V 64 support. (#2232)
  • Report the host OS in the OS context under Wine and Proton, instead of the Windows version that Wine emulates. On Linux, prefer the host os-release inside Steam Runtime and Flatpak containers, and report SteamOS and Bazzite as the OS name. (#2241)
  • Add sentry_scope_set_trace for per-scope traces. (#2236)
  • Add sentry_continue_trace to continue incoming traces without a transaction. (#2237)
  • Add sentry_iter_trace_propagation_headers to propagate traces without a span. (#2240)
  • Resume interrupted TUS attachment uploads from the server-provided upload offset. (#2058)
  • Compress TUS attachment uploads when SENTRY_TRANSPORT_COMPRESSION is enabled. (#2222)
  • Native: allow crash uploads up to 10 seconds by default in async crash upload mode, unless shutdown_timeout is set. (#2278)
  • Native: add Android support. (#1725)

Fixes:

  • Native/Inproc: provide debug_meta.images in events passed to on_crash. (#2184)
  • Native/Linux: reduce daemon stack usage during minidump creation to avoid stack overflows in environments with limited stack space. (#2211)
  • Native/Linux: reduce stack usage when unwinding the crashed thread. (#2212)
  • Native/Unix: Preserve existing alternate signal stacks to prevent ASan aborts when the initializing thread exits before SDK shutdown. (#2219)
  • Native/Linux: fix oversized debug_meta.images entries that overlapped other libraries when a file was mapped more than once. (#2228)
  • Fix const-correctness of sentry_options_get_*, sentry_span_iter_headers, and sentry_transaction_iter_headers. (#2277)
  • Native/Linux: back the crash context with a memfd to prevent SIGBUS during sentry_init when /dev/shm is full. (#1725)
  • Native/Unix: capture complete memory regions in SENTRY_MINIDUMP_MODE_FULL instead of truncating each region to 4 MB. (#2281)
  • Native: upload large minidumps separately if sentry_options_set_enable_large_attachments is enabled. (#2281)