Skip to content

Latest commit

 

History

History
1709 lines (1240 loc) · 112 KB

CHANGELOG.md

File metadata and controls

1709 lines (1240 loc) · 112 KB

Changelog

3.0.0-beta.0

API Changes

  • The native layer on mobile platforms (iOS and Android) no longer self-initializes before the Unity game starts. Previously, the SDK would use the options at build-time and bake them into the native layer. Instead, the SDK will now take the options passed into the Configure callback and use those to initialize the native SDKs. This allows users to modify the native SDK's options at runtime programmatically. The initialization behaviour is controlled by IosNativeInitializationType and AndroidNativeInitializationType options. These can be set from Runtime (default) to BuildTime to restore the previous flow and bake the options into the native projects. (#1915, #1924)

Fixes

  • On Android, the SDK not longer freezes the game when failing to sync with the native SDK (#1927)

Dependencies

2.4.0

API Changes

  • The Runtime- and BuildTime-Configuration have been merged into a single OptionsConfiguration script. This allows for programmatic configuration of the SDK in one place using precompile directives. Note, that the current limitation of options for Android and iOS being baked into the project at build time still remains. (#1888) This is part of a larger effort to simplify the configuration of the native SDKs and enable users to modify their options at runtime. For more information see #1907

Features

  • The SDK now provides a dedicated sentry-cli scriptable config, available on the Debug Symbols tab. This allows for programmatic configuration of the used cli-options during build. (#1887)

Fixes

  • Fix potential NullReferenceException when trying to attach a view hierarchy to an event (#1919)
  • The SDK no longer sends events when it fails to initialize the native SDK on Windows and Linux and logs those instead. It also suppresses EntryPointNotFoundException if sentry-native is not available at runtime. Native crashes won't get capture but it'll continue to capture C# errors. (#1898)
  • The SDK no longer closes the underlying native SDK during the games shutdown if native support has not been enabled. This allows the SDK to support and capture errors in case of building the game as a library on a mobile (Android or iOS) game. (#1897)

Dependencies

2.3.0

Fixes

  • Fixed an issue where the SDK would write the SampleRate as an int instead of a float to the Android Manifest, causing issues during the Android SDK's initialization (#1872)
  • The SDK no longer calls into Application.persistentDataPath on unknown platforms. This prevents crashes during startup on platforms with restricted disk access like the Nintendo Switch (#1870)
  • sentry-native DLL is now statically linked against Windows CRT. This allows the SDK to provide native support on some Windows systems that do not have CRT installed locally (#1875)

Features

  • The SDK now also supports capturing native crashes via the WER handler on Windows (#1873)

Dependencies

2.2.2

Fixes

  • The SDK no longer fails to report contexts like device and gpu (#1850)

Dependencies

2.2.1

Dependencies

2.2.0

API Changes

Fixes

  • The SDK now uses the .NET SDK's Options.FileWriteDisabled to opt-out on any writing operations on 'unknown' platforms such as the Nintendo Switch (1814)
  • The SDK no longer freezes the game during shutdown when targeting WebGL (#3619)
  • The SDK no longer passes a mangled gpu.vendorId to the Android native layer (#1813)
  • Access to the StackTraceMode was intended to be restricted due to incompatibility between IL2CPP and StackTraceMode.Enhanced. The access modifier has been changed to private to avoid pitfall and potential crashes (#1806)

Features

  • Contexts, such as device and gpu that the SDK retrieves during the game's startup is now available even earlier and irrespective whether an error was captured on the main or on a background thread (#1802)
  • Added an ApplicationNotRespondingException type that allows filtering of ANR events (#1800)

Dependencies

2.1.5

Fixes

  • The update of the Cocoa dependency resolves various crashes on Apple platforms

Dependencies

2.1.4

Fixes

  • The SDK no longer deadlocks during the game shutting down when targeting WebGL (#1771)
  • The SDK no longer fails to report errors after switching scenes when targeting WebGL (#1754)

Dependencies

2.1.3

Fixes

  • The SDK no longer throws System.DllNotFoundException during initialization when running a headless Linux server build (#1748)
  • The SDK now correctly uses forward slashes when modifying the gradle project when setting up debug symbol and mapping upload (#1747)

Dependencies

2.1.2

Fixes

  • The SDK no longer causes games to crash out of the box on platforms that have disk access restrictions (i.e. Nintendo Switch) (#1728)
  • The SDK no longer causes crashes on Unity 6 in an attempt to provide line numbers (#1735)

Dependencies

2.1.1

Fixes

  • Added a fallback for user.id on Android and iOS in case none could be extracted from the native layer (#1710)
  • The IL2CPP exception processor no longer fails when the native support has been disabled (#1708)
  • The SDK now checks whether the Android SDK is available before attempting to initialize it. This prevents AndroidJavaException: java.lang.ClassNotFoundException: io.sentry.Sentry from being thrown (#1714)

Dependencies

2.1.0

Fixes

  • The SDK no longer throws an exception when failing to initialize the native SDK (#1693)
  • On iOS, UnityWebRequests no longer break due to the native SDK appending the request URL a second time (#1699)
  • The SDKs loglevel now also applies to sentry-cli logging (#1693)
  • When targeting Android, sentry-cli will now log to the editor console (#1693)
  • Fixed an issue with the SDK failing to automatically uploading debug symbols when exporting an .aab when targeting Android (#1698)

Features

  • Added an IgnoreCliErrors to the Sentry-CLI options, allowing you to ignore errors during symbol and mapping upload (#1687)

Fixes

  • When exporting Android projects, the SDK will now correctly add the symbol upload at the end of bundling (#1692)

Dependencies

2.0.7

Fixes

  • The SDK no longer causes deadlocks during synchronization with the native layer on Android (#1679)
  • When targeting Android, builds no longer fail due to errors during symbol upload. These get logged to the console instead (#1672)

Dependencies

2.0.6

Fixes

  • For Android, we updated the debug symbol upload task on Gradle, to be guaranteed to run last (#1657)
  • The SDK now has improved stacktraces for C++ exceptions on iOS (#1655)
  • The SDK no longer crashes on Android versions 5 and 6 with native support enabled (#1652)

Dependencies

2.0.5

Fixes

  • The automatic debug symbol upload for Android builds now also picks up the ProGuard mapping file. (#1626)

Dependencies

2.0.4

Fixes

  • Tweaked the SDK reinstalling the backend to capture native crashes on Windows. C++ exceptions are now getting properly captured again (#1622)

Fixes

  • Added options to control the order of the SDK's PostGeneratedGradle callback (#1624)
  • The SDK now has a more robust way of dealing with custom gradle templates (#1624)

Dependencies

2.0.3

Fixes

  • The SDK no longer fails to capture native crashes on Windows. It now properly reinstalls the capturing backend during the initialization (#1603)
  • When building for iOS, the SDK no longer adds its dependencies multiple times (#1558) (#1595)

Dependencies

2.0.2

Fixes

  • The SDK no longer throws InvalidOperationExceptions on platforms that rely on the UnityWebRequestTransport (i.e. Switch, Hololens) (#1587)

Dependencies

2.0.1

Fixes

  • Fixed potential crashes on Android devices by removing the use of the persistent scope observer (#1555)

Dependencies

2.0.0

This major release is based on the .NET 4.0 release and includes features like Metrics(preview) and Spotlight.

Significant change in behavior

  • Transactions' spans are no longer automatically finished with the status deadline_exceeded by the transaction. This is now handled by the Relay.
    • Customers self hosting Sentry must use verion 22.12.0 or later (#3013)
  • The User.IpAddress is now set to {{auto}} by default, even when sendDefaultPII is disabled (#2981)
    • The "Prevent Storing of IP Addresses" option in the "Security & Privacy" project settings on sentry.io can be used to control this instead
  • The DiagnosticLogger signature for LogWarning changed to take the exception as the first parameter. That way it no longer gets mixed up with the TArgs. (#2987)

API breaking Changes

If you have compilation errors you can find the affected types or overloads missing in the changelog entries below.

Changed APIs

  • Class renamed from Sentry.Attachment to Sentry.SentryAttachment (#3116)
  • Class renamed from Sentry.Constants to Sentry.SentryConstants (#3125)
  • Class renamed from Sentry.Context to Sentry.SentryContext (#3121)
  • Class renamed from Sentry.Hint to Sentry.SentryHint (#3116)
  • Class renamed from Sentry.Package to Sentry.SentryPackage (#3121)
  • Class renamed from Sentry.Request to Sentry.SentryRequest (#3121)
  • Class renamed from Sentry.Runtime to Sentry.SentryRuntime (#3016)
  • Class renamed from Sentry.Session to Sentry.SentrySession (#3110)
  • Class renamed from Sentry.Span to Sentry.SentrySpan (#3021)
  • Class renamed from Sentry.Transaction to Sentry.SentryTransaction (#3023)
  • Class renamed from Sentry.User to Sentry.SentryUser (#3015)
  • Interface renamed from Sentry.IJsonSerializable to Sentry.ISentryJsonSerializable (#3116)
  • Interface renamed from Sentry.ISession to Sentry.ISentrySession (#3110)
  • SentryClient.Dispose is no longer obsolete (#2842)
  • ISentryClient.CaptureEvent overloads have been replaced by a single method accepting optional Hint and Scope parameters. You will need to pass hint as a named parameter from code that calls CaptureEvent without passing a scope argument. (#2749)
  • ITransaction has been renamed to ITransactionTracer. You will need to update any references to these interfaces in your code to use the new interface names (#2731, #2870)
  • TransactionContext and SpanContext constructors were updated. If you're constructing instances of these classes, you will need to adjust the order in which you pass parameters to these. (#2694, #2696)
  • The DiagnosticLogger signature for LogError and LogFatal changed to take the exception as the first parameter. That way it no longer gets mixed up with the TArgs. The DiagnosticLogger now also receives an overload for LogError and LogFatal that accepts a message only. (#2715)
  • Distribution added to IEventLike. (#2660)
  • StackFrame's ImageAddress, InstructionAddress, and FunctionId changed to long?. (#2691)
  • DebugImage and DebugMeta moved to Sentry.Protocol namespace. (#2815)
  • DebugImage.ImageAddress changed to long?. (#2725)
  • Contexts now inherit from IDictionary rather than ConcurrentDictionary. The specific dictionary being used is an implementation detail. (#2729)

Removed APIs

  • SentrySinkExtensions.ConfigureSentrySerilogOptions is now internal. If you were using this method, please use one of the SentrySinkExtensions.Sentry extension methods instead. (#2902)

  • A number of [Obsolete] options have been removed (#2841)

    • BeforeSend - use SetBeforeSend instead.
    • BeforeSendTransaction - use SetBeforeSendTransaction instead.
    • BeforeBreadcrumb - use SetBeforeBreadcrumb instead.
    • CreateHttpClientHandler - use CreateHttpMessageHandler instead.
    • DisableTaskUnobservedTaskExceptionCapture method has been renamed to DisableUnobservedTaskExceptionCapture.
    • DebugDiagnosticLogger - use TraceDiagnosticLogger instead.
    • KeepAggregateException - this property is no longer used and has no replacement.
    • ReportAssemblies - use ReportAssembliesMode instead.
  • Obsolete SystemClock constructor removed, use SystemClock.Clock instead. (#2856)

  • Obsolete Runtime.Clone() removed, this shouldn't have been public in the past and has no replacement. (#2856)

  • Obsolete SentryException.Data removed, use SentryException.Mechanism.Data instead. (#2856)

  • Obsolete AssemblyExtensions removed, this shouldn't have been public in the past and has no replacement. (#2856)

  • Obsolete SentryDatabaseLogging.UseBreadcrumbs() removed, it is called automatically and has no replacement. (#2856)

  • Obsolete Scope.GetSpan() removed, use Span property instead. (#2856)

  • Obsolete IUserFactory removed, use ISentryUserFactory instead. (#2856, #2840)

  • IHasMeasurements has been removed, use ISpanData instead. (#2659)

  • IHasBreadcrumbs has been removed, use IEventLike instead. (#2670)

  • ISpanContext has been removed, use ITraceContext instead. (#2668)

  • IHasTransactionNameSource has been removed, use ITransactionContext instead. (#2654)

  • (#2694)

  • The unused StackFrame.InstructionOffset has been removed. (#2691)

  • The unused Scope.Platform property has been removed. (#2695)

  • The obsolete setter Sentry.PlatformAbstractions.Runtime.Identifier has been removed (2764)

  • Sentry.Values<T> is now internal as it is never exposed in the public API (#2771)

  • The TracePropagationTarget class has been removed, use the SubstringOrRegexPattern class instead. (#2763)

  • The WithScope and WithScopeAsync methods have been removed. We have discovered that these methods didn't work correctly in certain desktop contexts, especially when using a global scope. (#2717) Replace your usage of WithScope with overloads of Capture* methods:

    • SentrySdk.CaptureEvent(SentryEvent @event, Action<Scope> scopeCallback)
    • SentrySdk.CaptureMessage(string message, Action<Scope> scopeCallback)
    • SentrySdk.CaptureException(Exception exception, Action<Scope> scopeCallback)
    // Before
    SentrySdk.WithScope(scope =>
    {
      scope.SetTag("key", "value");
      SentrySdk.CaptureEvent(new SentryEvent());
    });
    
    // After
    SentrySdk.CaptureEvent(new SentryEvent(), scope =>
    {
      // Configure your scope here
      scope.SetTag("key", "value");
    });

Features

  • Experimental pre-release availability of Metrics. We're exploring the use of Metrics in Sentry. The API will very likely change and we don't yet have any documentation. (#2949)
    • SentrySdk.Metrics.Set now additionally accepts string as value (#3092)
    • Timing metrics can now be captured with SentrySdk.Metrics.StartTimer (#3075)
  • Support for Spotlight, a debug tool for local development. (#2961)
    • Enable it with the option EnableSpotlight
    • Optionally configure the URL to connect via SpotlightUrl. Defaults to http://localhost:8969/stream.

Dependencies

1.8.0

Features

  • The static SentryMonoBehaviour now has it's UpdatePauseStatus public, allowing users to manually update the SDK's internal pause status. This helps work around false positive ANR events when using plugins that take away control from the game i.e. ad frameworks like AppLovin or Ironsource (#1529)
  • It's now possible enable to CaptureFailedRequests and the statuscode ranges via the editor. These also apply to the native SDK on iOS (#1514)

Fixes

  • The SDK no longer fails to resolve the debug symbol type on dedicated server builds (#1522)
  • Fixed screenshots not being attached to iOS native crashes (#1517)

Dependencies

1.7.1

Fixes

  • Fix SIGSEV, SIGABRT and SIGBUS crashes happening after/around the August Google Play System update, see #2955 for more details (fix provided by Native SDK bump) (#1491)
  • Fixed an issue with the SDK failing to properly detect application pause and focus lost events and creating false positive ANR events (specifically on Android) (#1484)

Dependencies

1.7.0

Feature

  • Added the dedicated server platforms to the known platforms to prevent the SDK from interpreting them as restricted platforms (i.e. disabling offline caching, session tracking) (#1468)

Dependencies

1.6.0

Feature

  • The SDK now surfaces options to opt out of the Android NDK integration and NDK Scope Sync(#1452)

Fixes

  • Fixed IL2CPP line number processor to no longer crash in Unity 2023 builds (#1450)
  • Fixed an issue with the Android dependency setup when using a custom mainTemplate.gradle (#1446)

Dependencies

1.5.2

Fixes

  • The SDK no longer creates transactions with their start date set to Jan 01, 001 #1423
  • The screenshot capture no longer leaks memory (#1427)

Dependencies

1.5.1

Fixes

  • Resolved the internal dependency issue with the Android SDK that lead to build time issues like runtime.jar is missing and ClassNotFoundException during runtime (#1417)
  • The SDK now handles proguardfiles sections indicated by both consumerProguardFiles and proguardFiles (#1401)

Dependencies

1.5.0

Fixes

  • Fixed an Android build issue where Sentry options would be cached with the first build until Editor restart (#1379)
  • Adding a remote repository filter to the gradle project (#1367)
  • Setting Android SDK version explicit to prevent version conflicts with remote repositories (#1378)
  • Set debug symbol upload logging to debug verbosity (#1373)
  • The SDK no longer causes an exception during initialiation on Android API level 32 and newer (#1365)
  • Suspending Android native support for Mono builds to prevent C# exceptions form causing crashes (#1362)
  • Fixed an issue where the debug image UUID normalization would malform the UUID leading to a failed symbolication (#1361)

Feature

  • When building for iOS, the debug symbol upload now works irrespective of whether Bitcode is enabled or not (#1381)

Dependencies

1.4.1

Fixes

  • Fixed Xcode linking error with the SDK disabled (#1352)
  • Fixed an issue triggering an error Failed to find the closing bracket when using custom gradle files (#1359)
  • Fixed the Android native integration for builds with Unity 2022.3 and newer (#1354)

Dependencies

1.4.0

Fixes

  • Updated sample configure callback to use the new BeforeSendmethods that allow the use of Hints (#1341)
  • Updated the Sentry CLI command to upload debug symbols (#1336)

Feature

  • Added automatic filtering of BadGatewayExceptions originating from Unity telemetry on the native iOS layer (#1345)

Dependencies

1.3.0

Fixes

  • Fixed native support build integration for Android (#1318)
  • The SDK filters System.Net.WebException and System.Net.Sockets.SocketException by default (#1294)
  • The SDK no longer runs performance auto instrumentation with the SDK disabled (#1314)
  • Fixed an issue where the SDK would throw a NullReferenceException when trying to capture a log message (#1309)
  • Fixed the BreadcrumbsForErrors checkbox on the config window (#1306)
  • The SDK filters Bad Gateway Exceptions of type Exception by default (#1293)

Features

  • Surfaced debounce times to the options (#1310)

Dependencies

1.2.0

Fixes

  • Resolved the Microsoft.Extensions.FileSystemGlobbing.dll dependency conflict (#1253)
  • Sentry CLI integration when exporting an Android project (#1242)

Features

  • The SDK now supports exporting the project to iOS without any modifications to Xcode (#1233)
  • The SDK now supports exporting the project to Android without any modifications to gradle (#1263)

Dependencies

1.1.0

Fixes

  • Fixed missing debug file upload for assembly definitions for Mono builds (#1226)
  • The ANR detection is now unaffected by changes to Time.timescale (#1225)

Features

  • Added View Hierarchy as an opt-in attachment. This will capture the scene hierarchy at the moment an event occurs and send it to Sentry (#1169)

Dependencies

1.0.0

Breaking Changes

  • Renamed OptionsConfiguration to RuntimeOptionsConfiguration on the ScriptableSentryOptions (#1196)
    If you make use of programmatic runtime options configuration, you will need to reassign the scriptable object in the configuration tab
  • Renamed SentryBuildtimeOptionsConfiguration to SentryBuildTimeOptionsConfiguration (#1187)
    If you make use of the programmatic build time configuration, you will need to update your implementation with the base class
  • Removed Override Sentry URL from editor window (#1188)
    The option is still available from within the SentryBuildTimeOptionsConfiguration

Fixes

  • The SDK no longer logs a warning due to a missing log file on non-windows player platforms (#1195)
  • Preventing LoggingIntegration from registering multiple times (#1178)
  • Fixed the logging integration only capturing tags and missing the message (#1150)

Features

  • Added Performance Integration options to editor window (#1198)
  • Much improved line numbers for IL2CPP builds by setting the instruction_addr_adjustment appropriately (#1165)
  • Added ANR options to the editor window and made ANR timeout accessible on the options object (#1181)

Dependencies

0.28.1

Fixes

  • Fixed conflicting default name for scriptable options configuration scripts (#1146)
  • Made inlined helpers on the macOS bridge static (#1148)

Dependencies

0.28.0

Breaking Changes

  • Fixed the SDK creating warnings before initializing when loading the options.
    • Sentry.Unity.ScriptableOptionsConfiguration changed to SentryRuntimeOptionsConfiguration
    • and Sentry.Unity.Editor.ScriptableOptionsConfiguration changed to SentryBuildtimeOptionsConfiguration If you make use of the programmatic configuration, you will need to update your implementation with those base classes (#1128)

Fixes

  • Removed build GUID from automated release creation to keep events from different layers in the same release (#1127)
  • Fixed an issue related to the IL2CPP line number feature where a C# exception could lead to a crash (#1126)
  • No longer log warnings about missing IL2CPP methods when running in the Editor (#1132)

Features

  • Mono PDB files upload during build (#1106)

Dependencies

0.27.0

Features

  • Added missing SDK closing functionality (#1092)

Fixes

  • Fixed logging for automated debug symbol upload for iOS (#1091)

Dependencies

0.26.0

Features

  • Added Unity version to event context (#1072)
  • Add build-time ScriptableOptionsConfiguration scripting interface to support changing settings for native integrations and CLI (#1046)

Fixes

  • Auto Instrumentation now correctly resolves prebuilt assemblies (#1066)
  • Newly created ScriptableOptionsConfiguration script not being set in editor window UI (#1046)

Dependencies

0.25.1

Fixes

  • Resolved conflicting dependencies for Mono.Cecil (#1064)

Dependencies

0.25.0

Fixes

  • Removing Sentry.framework from being copied as ResourceBundle (#1056)

Features

  • Automated Performance Instrumentation for MonoBehaviour.Awake methods (#998)

Dependencies

0.24.0

Fixes

  • Disabled Android lifecycle breadcrumbs (#1038)
  • Additional IL2CPP arguments get added only once (#997)
  • Releasing temp render texture after capturing a screenshot (#983)
  • Automatic screenshot mirroring on select devices. (#1019)
  • Hide StackTraceMode from options to avoid accidental errors when used with IL2CPP (#1033)

Features

  • Added flags per LogType for automatically adding breadcrumbs (#1030)
  • The Cocoa SDK is now bundled as .xcframework (#1002)
  • Automated Performance Instrumentation for Runtime Initialization (#991)
  • Automated Performance Instrumentation for Scene Loading (#768)

Dependencies

0.23.1

Fixes

  • Don't access Unity AnalyticsSessionInfo.userId on unknown platforms (#971)
  • Keep previously set IL2CPP compiler arguments (i.e append instead of overwriting) (#972)
  • Add transaction processor (#978)

Dependencies

0.23.0

Fixes

  • Fixed a crash during startup due in connection to the Google Ads Unity package (#953)
  • The SDK failing to reinstall the backend will no longer lead to events being sent to Sentry (#962)
  • Don't access Unity AnalyticsSessionInfo.userId on unknown platforms (#971)

Features

  • IL2CPP line number support is enabled by default (#963)

Dependencies

0.22.2

Fixes

  • Fixed an 'Undefined symbols' issue within the Sentry Native Bridge when building for iOS (#932)
  • ANR detection no longer creates an error by trying to capture a screenshot from a background thread (#937)
  • Screenshots quality no longer scales off of current resolution but tries match thresholds instead (#939)

Features

0.22.1

Fixes

  • iOS samples were missing the Objective-C plugin (#921)
  • Save SampleRate to Options.asset (#916)
  • Increase CLI file upload limit to 10 MiB (#922)

Features

0.22.0

Fixes

  • Correctly byte-swap ELF build-ids (#872)
  • Wizard autoselects with only one option available (#891)
  • Reenabled IL2CPP line number support for mobile (#902)

Features

0.21.0

Fixes

  • Fix ProGuard setup if build.gradle uses CRLF (Windows) line breaks (#885)

Features

0.20.1

Fixes

  • Explicitly disable Windows x86 native-error tracking and IL2CPP processing integration (#871)

0.20.0

Features

Fixes

  • Only use application-not-responding detection in C#, disable in native plugins (#852)
  • The SDK no longer accesses the disk on unknown platforms (e.g. Switch) (#865)

0.19.0

Features

  • Add rich context info to native crashes (#747)
  • Include build ID in an event release info (#795)

Fixes

  • Don't report Application-Not-Responding while the app is in the background (#796)

0.18.0

Features

  • Capture Native Instruction Addrs for Exceptions (#683)
  • Enable native crash support with Mono scripting backend on Android, Windows and Linux (#751)
  • Application-Not-Responding detection (#771)
  • Allow uploading sources for debug files (#773)
  • Bump Sentry Java SDK to v6.0.0 (#787)

0.17.0

Features

  • The SDK now uses the Unity Log Handler to capture errors, instead of manually parsing events received on Application.logMessageReceived (#731)
  • Linux native crash support (#734)
  • Collect context information synchronously during init to capture it for very early events (#744)
  • Automatic user IDs on native crashes & .NET events (#728)
  • Use single-threaded HTTP transport on unknown platforms (#756)
  • Disable offline caching on unknown platforms (#770)
  • Bump Sentry Cocoa SDK to v7.16.0 (#725)
  • Bump Sentry Java SDK to v6.0.0-rc.1 (#725)

0.16.0

Features

  • macOS native crash support (#710)
  • The SentryUnityOptions now provide a method to disable the UnityLoggingIntegration (#724)

Fixes

  • The automated debug symbol upload now works with Unity 2021.2 and newer (#730)
  • Dropped support for Sentry options as Json (#709)
    • If you're migrating from version 0.3.0 or older, make sure to upgrade to 0.15.0 first, as it is the last version supporting the automated conversion of the options as Json file to a Scriptable Object.
  • Bump Sentry .NET SDK 3.17.0 (#726)

0.15.0

Features

  • WebGL - .NET support (#657)

Fixes

  • The SDK no longer creates a custom link.xml (#707)
  • Fixed DebugOnlyInEditor only applying to the Unity logger (#706)
  • Sentry no longer fails to send events in Unity 2019.4 IL2CPP builds for macOS (#701)
  • Bump Sentry Cocoa SDK 7.13.0 (#697)

0.14.0

Features

  • Capture Debug.LogError() and Debug.LogException() also on background threads (#673)
  • Adding override for Sentry CLI URL (#666)
  • Option to automatically attach screenshots to all events (#670)

Fixes

  • Refactor InApp logic from Stack Traces (#661)
  • Whitespaces no longer cause issues when uploading symbols for Windows native (#655)
  • AndroidManifest update removes previous io.sentry entries (#652)
  • Bump Sentry .NET SDK 3.16.0 (#678)
  • Bump Sentry Java SDK to v6.0.0-alpha.4 (#653)

0.13.0

Features

  • Windows - include sentry.dll & .pdb in debug symbol upload (#641)

Fixes

  • Resolved issue of the SDK accessing the same cache directory with multiple game instances running (#643)
  • Bump Sentry .NET SDK 3.15.0 (#639)

0.12.0

Features

  • The SDK no longer depends on Unity's iOS module for non iOS builds (#601)
  • Update native SDK to v0.4.16 (pre-release) (#615)
  • Windows native support (64-bit)
    • native crash handler (#380)
    • configuration & log forwarding (#577)
    • scope synchronization (#546)
    • symbol upload while building through Unity (#607)

Fixes

  • iOS builds no longer break when native support disabled or not available (#592)
  • Close sentry instance when quitting the app (#608)
  • iOS options.CrashedLastRun() reported an incorrect value (#615)

0.11.0

Features

  • Config window support for programmatic options configuration (#569)

0.10.1

Features

  • Samples include programmatic options configuration snippet (#568)
  • Support for programmatic options configuration (#564)

Fixes

0.10.0

Features

  • Updated native samples to only display buttons for the currently active platform (#551)
  • Unity logged exceptions are marked as unhandled by default (#542)

Fixes

  • Sentry.Unity.Editor.iOS.dll no longer breaks builds on Windows when the iOS module has not been installed (#559)
  • Importing the link.xml when opening the config window no longer causes an infinite loop (#539)
  • Bump Sentry .NET SDK 3.14.0 (#561)

0.9.4

Fixes

  • Android Native Support no longer crashes when built with Mono while trying to capture a crash (#524)
  • Bump Sentry CLI 1.72.0 (#526)
  • Bump Sentry .NET SDK 3.13.0 (#503)

0.9.3

Fixes

  • Automated Android symbols upload now uses valid paths on Windows (#509)

0.9.2

Features

  • Tag whether event was created in the UI thread (#495)

Fixes

  • Fix missing Sentry/Sentry.h (#504)
  • Automated Android symbols upload now correctly escapes sentry-cli executable path (#507)

0.9.1

Fixes

  • Suppress errors when adding attachments (#485)

0.9.0

Features

  • Sample scene with custom context and screenshot (#472)

Fixes

  • Initializing the SDK with an options object won't bypass default option values (#469)
  • Fixed overwriting Xcode build properties (#466)
  • Xcode exports no longer break with sentry-cli already added (#457)
  • Explicitly set false (#470). So that Sentry.dll is not strong named when consumed inside Unity.
  • Bump Sentry .NET SDK 3.12.3 (#484)
  • Bump Sentry Cocoa SDK 7.7.0 (#481)
  • Bump Sentry Android SDK 5.5.0 (#474)

0.8.0

Features

  • ScriptableSentryUnityOptions is now public (#419)
  • Automated symbols upload for iOS builds when bitcode is enabled (#444)
  • Automated symbols upload for iOS builds when bitcode is disabled (#443)

Fixes

  • Android: Automated symbol upload no longer breaks non IL2CPP builds (#450)
  • Config window now saves changes to sentry-cli options (#454)
  • Sentry no longer requires Xcode projects to be exported on macOS (#442)

0.7.0

Features

  • Added automated symbols upload support for Android (#408)
  • Avoid DLL conflict with other Unity packages (#425)

0.6.2

  • fix release packaging (#417)

0.6.1

Features

  • Added sentry-cli to Unity package (#414)

Fixes

  • Added missing release string validation (#389)
  • Sentry internal logs no longer show up as breadcrumbs (#377)
  • Fixed missing context data when initializing SDK programmatically (#376)
  • Fixed CaptureInEditor flag when initializing SDK programmatically (#370)
  • Preventing numeric options to be set negative in the editor window (#364)
  • Bump Sentry .NET SDK 3.11.1 (#407)
  • Bump Sentry Cocoa SDK 7.5.2 (#407)
  • Bump Sentry Android SDK 5.4.0 (#411)

0.6.0

Features

  • Added iOS simulator support (#358)
  • Android Native Support (#307)
  • Android mark sessions as crashed (#347)
  • Android native bridge for scope sync (#308)
  • iOS native bridge for scope sync (#296)
  • Sample: Throw exceptions in C++ and Objective-C. C++ segfault (#342)
  • Update Unity from 2019.4.21f to 2019.4.30f (#350)

Fixes

  • Fixed Xcode generation with invalid or disabled SentryOptions (#330)
  • Fixed iOS support related reference resolution issue for Windows (#325)
  • Import link.xml caused an infinite loop (#315)
  • Removed unused .asmdefs which clears a warning from console (#316)
  • Don't send negative line number (#317)
  • Android SDK: re-installation of native backend through C# (#339)
  • Bump Sentry .NET SDK 3.9.3 (#328)
  • Bump Sentry Cocoa SDK 7.3.0 (#328)
  • Bump Sentry Android SDK 5.2.1 (#359)

0.5.2

Features

  • Operating System reported as raw_description and parsed by Sentry (#305)
  • Release & Environment now sync with native options (#298)
  • Bump Sentry .NET SDK 3.9.0 (#299)

0.5.1

Fixes

  • Removed editor flag checks from options validation during build process (#295)
  • By default, don't block Sentry.Init up to 2 seconds to flush events (#291)

0.5.0

Features

  • iOS native support (#254)
  • Compile Initialization with the game (#272)
  • Native crash in sample (#270)
  • Cache, background threads and data for UnityEventProcessor (#268)

Fixes

  • Bump Sentry Cocoa SDK 7.2.2 (#289)
  • Included NativeExample.c in sample project (#288)
  • Added attribute to SentryInitialization to prevent codestripping of Init (#285)
  • Fixed passing Sentry diagnostic level to iOS native layer (#281)
  • Fixed stuck traces sample rate slider (#276)
  • Fixed selected input field tab glitches (#276)
  • Bump Sentry .NET SDK 3.8.3 (#269)

0.4.3

Features

  • Log in single line (#262)

Fixes

0.4.2

Features

  • Added IsGlobalModeEnabled to SetDefaults (#260)

0.4.1

Fixes

0.4.0

Features

0.3.3

Fixes

  • Release process cleanup

0.3.2

Fixes

  • Link.xml file exist check (#248)

0.3.1

Fixes

  • Logger now attaching again (#244)

0.3.0

Features

  • Sentry config is now a scriptable object (#220)
  • Unity protocol (#234)
  • Release health integration & Event-listener (#225)

Fixes

  • Default options values (#241)
  • Un-embedding the link.xml to fix code stripping (#237)
  • Setting IsEnvironmentUser to false by default (#230)

0.2.0

Features

Fixes

  • Force 'Auto' from sentry window (#219)
  • Hub.IsEnabled check in logging integration (#210)

0.1.1

Fixes

  • Fallback for missing/empty product name (#205)
  • Add product name to release as default (#202)
  • normalize line endings (#204)

0.1.0

Features

  • Simplified scene breadcrumbs messages (#197)
  • Embedded link.xml in assembly (#194)
  • Transition scene to test scene loading events (breadcrumbs) (#185)

Fixes

  • Check/create directory before saving (#196)
  • Exclude SentryOptions.json from release package (#195)
  • default env and version (#199)
  • SentryEvent.ServerName forced to 'null' (#201)

0.0.14

Features

  • Simulator is set only when Application.isEditor is true (#190)
  • Sentry UnityLogger aligned to Unity Debug API (#163)
  • Scene manager integration for breadcrumbs (#170)

Fixes

  • Flag simulator based on Application.isEditor (#184)
  • il2cpp remove zeroes from path (#179)
  • SDK version format correction (#120)
  • Auto compression option is part of drop down (no extra checkbox) (#160)
  • Rename DiagnosticsLogger to DiagnosticLogger (#168)
  • SentryOptions config proper check (#176)
  • Diagnostic logger writes to console that it was disabled (#183)

0.0.13

Fixes

  • Missing meta files warnings (#146)

0.0.12

Fixes

  • Release process improvements

0.0.11

Feature

  • Craft Release

0.0.10

Fixes

  • Add missing meta files (cd9c7fd)

0.0.9

Features

  • Unity Sentry SDK programmatic setup (#130)
    • SentryWindow updated

Fixes

0.0.8

Fixes

  • Bump sentry-dotnet to 8ca0906 - fix IL2CPP crash (#122)
  • IL2CPP players crash due to startup time detection (#123)

0.0.7

Features

  • Strip zeroes for ill2cpp builds (#108)
  • Proper sdk name reporting for sentry event (#111)
  • Bump .NET SDK to 3.3.1 (#115)
  • Release package samples (#113)

0.0.6

First release through UPM

  • .NET SDK setup for Unity with Unity editor configuration.