Releases: getsentry/unity
2.0.2
Fixes
- The SDK no longer throws
InvalidOperationExceptionson platforms that rely on theUnityWebRequestTransport(i.e. Switch, Hololens) (#1587)
Dependencies
2.0.1
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_exceededby the transaction. This is now handled by the Relay.- Customers self hosting Sentry must use verion 22.12.0 or later (#3013)
- The
User.IpAddressis 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
DiagnosticLoggersignature forLogWarningchanged to take theexceptionas 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.AttachmenttoSentry.SentryAttachment(#3116) - Class renamed from
Sentry.ConstantstoSentry.SentryConstants(#3125) - Class renamed from
Sentry.ContexttoSentry.SentryContext(#3121) - Class renamed from
Sentry.HinttoSentry.SentryHint(#3116) - Class renamed from
Sentry.PackagetoSentry.SentryPackage(#3121) - Class renamed from
Sentry.RequesttoSentry.SentryRequest(#3121) - Class renamed from
Sentry.RuntimetoSentry.SentryRuntime(#3016) - Class renamed from
Sentry.SessiontoSentry.SentrySession(#3110) - Class renamed from
Sentry.SpantoSentry.SentrySpan(#3021) - Class renamed from
Sentry.TransactiontoSentry.SentryTransaction(#3023) - Class renamed from
Sentry.UsertoSentry.SentryUser(#3015) - Interface renamed from
Sentry.IJsonSerializabletoSentry.ISentryJsonSerializable(#3116) - Interface renamed from
Sentry.ISessiontoSentry.ISentrySession(#3110) SentryClient.Disposeis no longer obsolete (#2842)ISentryClient.CaptureEventoverloads have been replaced by a single method accepting optionalHintandScopeparameters. You will need to passhintas a named parameter from code that callsCaptureEventwithout passing ascopeargument. (#2749)ITransactionhas been renamed toITransactionTracer. You will need to update any references to these interfaces in your code to use the new interface names (#2731, #2870)TransactionContextandSpanContextconstructors 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
DiagnosticLoggersignature forLogErrorandLogFatalchanged to take theexceptionas the first parameter. That way it no longer gets mixed up with the TArgs. TheDiagnosticLoggernow also receives an overload forLogErrorandLogFatalthat accepts a message only. (#2715) Distributionadded toIEventLike. (#2660)StackFrame'sImageAddress,InstructionAddress, andFunctionIdchanged tolong?. (#2691)DebugImageandDebugMetamoved toSentry.Protocolnamespace. (#2815)DebugImage.ImageAddresschanged tolong?. (#2725)- Contexts now inherit from
IDictionaryrather thanConcurrentDictionary. 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.Sentryextension methods instead. (#2902) -
A number of
[Obsolete]options have been removed (#2841)BeforeSend- useSetBeforeSendinstead.BeforeSendTransaction- useSetBeforeSendTransactioninstead.BeforeBreadcrumb- useSetBeforeBreadcrumbinstead.CreateHttpClientHandler- useCreateHttpMessageHandlerinstead.DisableTaskUnobservedTaskExceptionCapturemethod has been renamed toDisableUnobservedTaskExceptionCapture.DebugDiagnosticLogger- useTraceDiagnosticLoggerinstead.KeepAggregateException- this property is no longer used and has no replacement.ReportAssemblies- useReportAssembliesModeinstead.
-
Obsolete
SystemClockconstructor removed, useSystemClock.Clockinstead. (#2856) -
Obsolete
Runtime.Clone()removed, this shouldn't have been public in the past and has no replacement. (#2856) -
Obsolete
SentryException.Dataremoved, useSentryException.Mechanism.Datainstead. (#2856) -
Obsolete
AssemblyExtensionsremoved, 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, useSpanproperty instead. (#2856) -
Obsolete
IUserFactoryremoved, useISentryUserFactoryinstead. (#2856, #2840) -
IHasMeasurementshas been removed, useISpanDatainstead. (#2659) -
IHasBreadcrumbshas been removed, useIEventLikeinstead. (#2670) -
ISpanContexthas been removed, useITraceContextinstead. (#2668) -
IHasTransactionNameSourcehas been removed, useITransactionContextinstead. (#2654) -
(#2694)
-
The unused
StackFrame.InstructionOffsethas been removed. (#2691) -
The unused
Scope.Platformproperty has been removed. (#2695) -
The obsolete setter
Sentry.PlatformAbstractions.Runtime.Identifierhas been removed (2764) -
Sentry.Values<T>is now internal as it is never exposed in the public API (#2771) -
The
TracePropagationTargetclass has been removed, use theSubstringOrRegexPatternclass instead. (#2763) -
The
WithScopeandWithScopeAsyncmethods 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 ofWithScopewith overloads ofCapture*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
1.8.0
Features
- The static
SentryMonoBehaviournow has it'sUpdatePauseStatuspublic, 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
CaptureFailedRequestsand the statuscode ranges via the editor. These also apply to the native SDK oniOS(#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.1-beta.1
1.7.0
Various fixes & improvements
- feat: Dedicated Server support (#1468) by @bitsandfoxes
- chore: update modules/sentry-cocoa to 8.15.0 (#1479) by @github-actions
- chore: update modules/sentry-cocoa to 8.14.2 (#1473) by @github-actions
- chore: update modules/sentry-cocoa to 8.14.1 (#1472) by @github-actions
- chore(deps): update .NET SDK to v3.40.1 (#1464) by @github-actions
- chore: update modules/sentry-cocoa to 8.13.1 (#1466) by @github-actions
- chore: update modules/sentry-cli.properties to 2.21.2 (#1454) by @github-actions
- chore: update modules/sentry-native to 0.6.6 (#1457) by @github-actions
1.6.0
Feature
- The SDK now surfaces options to opt out of the Android
NDK integrationandNDK 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
1.5.1
Fixes
- Resolved the internal dependency issue with the Android SDK that lead to build time issues like
runtime.jar is missingandClassNotFoundExceptionduring runtime (#1417) - The SDK now handles proguardfiles sections indicated by both
consumerProguardFilesandproguardFiles(#1401)
Dependencies
- Bump CLI from v2.19.1 to v2.20.4 (#1387, #1388, #1405, #1408, #1410, #1412)
- Bump Java SDK from v6.24.0 to v6.27.0 (#1390, #1396, #1400, #1403, #1407)
- Bump Native SDK from v0.6.4 to v0.6.5 (#1392)
- Bump Cocoa SDK from v8.8.0 to v8.9.4 (#1397, #1399, #1404, #1406, #1413)
- Bump .NET SDK from v3.33.1 to v3.35.0 (#1398, #1418)