Releases: getsentry/sentry-unity
Releases · getsentry/sentry-unity
Release list
4.7.0
Features
- Added
options.AndroidNativeTombstoneEnabled(defaultfalse) andoptions.AndroidReportHistoricalTombstones(defaultfalse) to enable reporting of native crashes captured by Android'sApplicationExitInfoAPI as Tombstones (#2749)
Fixes
- Fixed an issue with the updated dependency resolution introduced in
4.6.0where usage of theMetricsAPI would cause Unity to error withThe type 'ReadOnlySpan<>' is defined in an assembly that is not referenced. (#2754) - When targeting Nintendo Switch, the SDK will now properly log the state of the native support instead of silently swallowing any configuration issues (#2753)
Dependencies
4.6.0
Features
- Updated the dependency resolution within the SDK. This enables .NET Standard 2.1 both for building the SDK from source and for setting the Api Compatibility Level in the Player Settings in your project. The assembly aliasing was originally intended to prevent dependency conflicts the SDK might introduce by deeply renaming its bundled dependencies. However, this prevented Unity from resolving these dependencies at build time, creating ambiguity for certain types. To resolve this, the SDK now excludes
System.Buffers,System.Memory,System.Numerics.Vectors, andSystem.Threading.Tasks.Extensionsfrom being aliased, letting the Unity build pipeline handle them. (#2726) - Added the experimental
options.Experimental.EnableNativeAppHangTracking(defaultfalse) to enable app hang detection viasentry-nativeon macOS, Windows, and Linux. On macOS, this requires the macOS backend to be switched toNativeinstead ofCocoain the Advanced -> Experimental settings.sentry-nativemonitors the main thread and produces an event including a stack trace for the hang, reusing the top-levelAppHangTimeout(default5s). When effective, the Unity SDK's C# watchdog is skipped to avoid duplicate reports. iOS app hang detection remains controlled by the top-levelEnableAppHangTracking. (#2709)
Dependencies
4.5.0
Fixes
- The SDK now also syncs breadcrumb data to the native layer so they are available on events coming from the native SDKs (#2720)
- Removed
LuminandStadiaplatforms from the package's assembly definition to resolve compilation errors. (#2716)
Features
- Extend the experimental
sentry-nativebackend to Linux. Opt in viaoptions.Experimental.LinuxBackend = LinuxBackend.Native. Thesentry-nativebackend uploads crashes immediately through an out-of-process handler and enables further updates such asAppHangTrackingsupport (#2708)
Dependencies
4.4.0
Features
- Introduce
sentry-nativeas an experimental backend on macOS and Windows. Opt in viaoptions.Experimental.MacosBackend = MacosBackend.Nativeoroptions.Experimental.WindowsBackend = WindowsBackend.Native. Thesentry-nativebackend uploads crashes immediately and enables further updates such asAppHangTrackingsupport (#2687, #2692)
Fixes
- The SDK now uses Gradle's built-in Exec task type when setting up the automated debug symbol upload. This resolves builds failing when targeting Android on Unity 6.4 (#2686)
- When targeting iOS, the SDK no longer crashes in
urlSessionTask:setState:when handling anAVAssetDownloadTask(#2677)
Features
- Added
EnableAppHangTracking(defaulttrue) andAppHangTimeout(default5s) to enable app hang detection via the native SDK. Currently effective on iOS throughsentry-cocoa, which monitors the main thread and produces a stack trace for the hang event. On other platforms this is a no-op until each platform's native hang detection lands. When enabled on iOS, the Unity SDK's C# watchdog is skipped to avoid duplicate reports (#2679) - Added
AndroidNativeAnrEnabled(defaulttrue) to enable ANR detection through thesentry-javaSDK. The native ANR integration monitors the Android UI thread. On API ≥ 30 this uses ANR v2 viaApplicationExitInfoto report OS-detected ANRs from prior runs; on API < 30 it falls back to an in-process watchdog. This is complementary to the Unity SDK's C# watchdog, which monitors the Unity player loop. (#2671)
Dependencies
4.3.1
4.3.0
4.2.0
Behavioral Changes
- The SDK no longer relies on UnityEngine.Analytics.AnalyticsSessionInfo to determine unique users but uses SDK-internal mechanisms instead. (#2625)
- Metrics are now enabled by default, matching the cross-SDK standard. The
EnableMetricssetting is now also synced to the native SDK on Windows, Linux, and consoles. (#2635)
Fixes
- When targeting iOS or macOS, the SDK now correctly passes on the
CaptureFailedRequestsflag and set status code ranged (#2619) - The SDK now correctly resolves the storage path on Xbox during initialization, enabling offline caching and native crash capturing without user setup out of the box. (#2617)
Features
- The Metrics APIs are now stable: removed
ExperimentalfromSentrySdkandSentryOptions(#2615) - Attachments added to the scope are now included in native crash reports on Android, Windows, and Linux (#2609)
Dependencies
4.1.2
⚠️ Note
The package version in this release incorrectly reports 4.1.0. Users updating from 4.1.0 may need to clear their UPM cache to ensure this release is picked up. This will be corrected starting with the next release.
Fixes
CaptureFeedbacknow returns aSentryIdand exposes aCaptureFeedbackResultout parameter to indicate whether feedback was captured successfully (#2589)- When exporting a NSP ROM File for Switch the SKD now correctly uploads the debug symbols (#2580)
- The SDK now also uses
.sentry-nativeas a subdirectory for native support on desktop platforms. It now also falls back toApplication.persistentDataPathinstead of the current working directory. Note:crashedLastRunmay reportfalsefor the first time after upgrading. (#2547) - The currently experimental Metrics are now opt-in by default (#2546)
- When targeting Android, the SDK now syncs
AppStartTimeandAppBuildTypeto the native layer (#2557) - When targeting Switch, the SDK will no longer cause the build to fail when native libraries are missing but log a warning instead (#2541)
- The SDK no longer wrongly disables the org slug field based on assumed the auth-tolken type (#2537)
Dependencies
- Bump Cocoa SDK from v9.4.0 to v9.7.0 (#2540, #2558, #2565, #2575, #2585)
- Bump Native SDK from v0.12.6 to v0.13.2 (#2543, #2550, #2560, #2567, #2579)
- Bump Java SDK from v8.32.0 to v8.36.0 (#2555, #2574, #2578, #2587, #2591)
- Bump CLI from v3.2.0 to v3.3.3 (#2561, #2563, #2568, #2576, #2586)
- Bump .NET SDK from v6.2.0-alpha.0-11-gf201b653 to v6.2.0 (#2588)
4.1.1
⚠️ Note
The package version in this release incorrectly reports 4.1.0. Users updating from 4.1.0 may need to clear their UPM cache to ensure this release is picked up. This will be corrected starting with the next release.
4.1.0
Deprecations
- The time-based log debouncing system (
TimeDebounceBase,LogTimeDebounce,ErrorTimeDebounce,WarningTimeDebounce) and related options (EnableLogDebouncing,DebounceTimeLog,DebounceTimeWarning,DebounceTimeError) are now marked as[Obsolete]. Use the new content-based event throttling instead. (#2479)
Behavioral Changes
- The SDK no longer refreshes the trace ID when changing active scene. This follows the changes to not do so based on lifecycle events, meaning that the trace ID persists from game start to game end, as intended in
4.0.0. (#2502)
Fixes
- When targeting Xbox, the SDK now properly includes
Sentry.Unity.Native(#2529) - Fixed IL2CPP line number support for 32-bit Windows and Linux (#2514)
- The SDK now specifies the files and directories targeted for debug symbol upload instead of pointing sentry-cli at the build output directory (#2485)
- The 'SceneManagerTracingIntegration' properly respects the
AutoSceneTracingflag again (#2496) - When targeting Android, the capturing native SDK now has its name correctly set (#2476)
- Automatically captured transactions and spans now have their
Origincorrectly set. (#2464)
Features
- Added Nintendo Switch Native Support. The SDK now automatically syncs the scope - tags, breadcrumbs, context - to the native layer, so native crashes have the same rich context as managed events. (#2503)
- Sentry trace-connected Metrics are now available as experimental. (#2533)
- Added content-based error event throttling to prevent repeated errors from consuming quota. The new
IThrottlerinterface andErrorEventThrottlerimplementation deduplicateLogError,LogException, andLogAssertionevents based on message + stacktrace fingerprinting. Configurable via the Editor window ("Enable Error Event Throttling" + "Dedupe Window"). Breadcrumbs and structured logs are not affected by default. (#2479)