Skip to content

fixed: Thread safety in AssemblyStoreReader when sending events on Android#4814

Merged
Flash0ver merged 7 commits intomainfrom
storestream-threadsafe
Jan 23, 2026
Merged

fixed: Thread safety in AssemblyStoreReader when sending events on Android#4814
Flash0ver merged 7 commits intomainfrom
storestream-threadsafe

Conversation

@jamescrosswell
Copy link
Collaborator

@jamescrosswell jamescrosswell commented Dec 16, 2025

@codecov
Copy link

codecov bot commented Dec 16, 2025

Codecov Report

❌ Patch coverage is 75.45455% with 27 lines in your changes missing coverage. Please review.
✅ Project coverage is 73.85%. Comparing base (ac83d8e) to head (3b9a8b9).
⚠️ Report is 7 commits behind head on main.

Files with missing lines Patch % Lines
...rc/Sentry.Android.AssemblyReader/V2/StoreReader.cs 72.82% 19 Missing and 6 partials ⚠️
...y.Android.AssemblyReader/V2/AssemblyStoreReader.cs 88.88% 1 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4814      +/-   ##
==========================================
+ Coverage   73.79%   73.85%   +0.06%     
==========================================
  Files         483      483              
  Lines       17551    17559       +8     
  Branches     3461     3461              
==========================================
+ Hits        12951    12968      +17     
+ Misses       3748     3739       -9     
  Partials      852      852              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jamescrosswell jamescrosswell changed the title fixed: Thread safety in AssemblyStoreReader fixed: Thread safety in AssemblyStoreReader when sending events on Android Jan 19, 2026
@jamescrosswell jamescrosswell marked this pull request as ready for review January 19, 2026 06:29
github-merge-queue bot pushed a commit to DFE-Digital/teaching-record-system that referenced this pull request Feb 24, 2026
Updated
[Sentry.Extensions.Logging](https://github.com/getsentry/sentry-dotnet)
from 5.16.2 to 6.1.0.

<details>
<summary>Release notes</summary>

_Sourced from [Sentry.Extensions.Logging's
releases](https://github.com/getsentry/sentry-dotnet/releases)._

## 6.1.0

### Features

- Add _experimental_ support for [Sentry trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/)
([#​4834](getsentry/sentry-dotnet#4834))
- Extended `SentryThread` by `Main` to allow indication whether the
thread is considered the current main thread
([#​4807](getsentry/sentry-dotnet#4807))

### Fixes

- User Feedback now contains additional Context and Tags, like
`Environment` and `Release`
([#​4883](getsentry/sentry-dotnet#4883))
- Allow Sentry failures from the Sentry CLI when SENTRY_ALLOW_FAILURE is
set ([#​4852](getsentry/sentry-dotnet#4852))
- The SDK now logs a specific error message when envelopes are rejected
due to size limits (HTTP 413)
([#​4863](getsentry/sentry-dotnet#4863))
- Fixed thread-safety issue on Android when multiple events are captured
concurrently
([#​4814](getsentry/sentry-dotnet#4814))

### Dependencies

- Bump Native SDK from v0.12.2 to v0.12.6
([#​4832](getsentry/sentry-dotnet#4832),
[#​4875](getsentry/sentry-dotnet#4875),
[#​4892](getsentry/sentry-dotnet#4892),
[#​4897](getsentry/sentry-dotnet#4897))
-
[changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#​0126)
-
[diff](getsentry/sentry-native@0.12.2...0.12.6)
- Bump Java SDK from v8.28.0 to v8.29.0
([#​4817](getsentry/sentry-dotnet#4817))
-
[changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#​8290)
-
[diff](getsentry/sentry-java@8.28.0...8.29.0)

## 6.1.0-alpha.2

### BREAKING CHANGES

- Rename [Trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/) APIs to avoid
implying aggregation
([#​4834](getsentry/sentry-dotnet#4834))
  - from `AddCounter` to `EmitCounter`
  - from `RecordDistribution` to `EmitDistribution`
  - from `RecordGauge` to `EmitGauge`

### Features

- Validate [Trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/)
([#​4834](getsentry/sentry-dotnet#4834))

### Fixes

- Attributes for [Trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/) set via
`SetBeforeSendLog` callback
([#​4834](getsentry/sentry-dotnet#4834))
- Disallow unsupported 128-bit floating point numbers (i.e. `decimal`)
for [Trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/)
([#​4834](getsentry/sentry-dotnet#4834))

## 6.1.0-alpha.1

### Features

- Extended `SentryThread` by `Main` to allow indication whether the
thread is considered the current main thread
([#​4807](getsentry/sentry-dotnet#4807))
- Add _experimental_ support for [Sentry trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/)
([#​4834](getsentry/sentry-dotnet#4834))

### Dependencies

- Bump Native SDK from v0.12.2 to v0.12.3
([#​4832](getsentry/sentry-dotnet#4832))
-
[changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#​0123)
-
[diff](getsentry/sentry-native@0.12.2...0.12.3)
- Bump Java SDK from v8.28.0 to v8.29.0
([#​4817](getsentry/sentry-dotnet#4817))
-
[changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#​8290)
-
[diff](getsentry/sentry-java@8.28.0...8.29.0)

## 6.0.0

### BREAKING CHANGES

- This release adds support for .NET 10 and drops support for
net8.0-android, net8.0-ios, net8.0-maccatalyst and
net8.0-windows10.0.19041.0
([#​4461](getsentry/sentry-dotnet#4461))
- Backpressure handling is now enabled by default, meaning that the SDK
will monitor system health and reduce the sampling rate of events and
transactions when the system is under load. When the system is
determined to be healthy again, the sampling rates are returned to their
original levels.
([#​4615](getsentry/sentry-dotnet#4615))
- Remove `SentryLoggingOptions.ExperimentalLogging.MinimumLogLevel`.
_Structured Logs_ can now be configured via the `"Sentry"` logging
provider (e.g. in `appsettings.json` and
`appsettings.{HostEnvironment}.json`)
([#​4700](getsentry/sentry-dotnet#4700))
- All logging provider types are _internal_ now in order to ensure
configuration as intended
([#​4700](getsentry/sentry-dotnet#4700))
- Rename `SentryLog.ParentSpanId` to `SentryLog.SpanId` reflecting the
protocol change
([#​4778](getsentry/sentry-dotnet#4778))
- QOL improvement: Spans and Transactions now implement `IDisposable` so
that they can be used with `using` statements/declarations that will
automatically finish the span with a status of OK when it passes out of
scope, if it has not already been finished, to be consistent with
`Activity` classes when using OpenTelemetry
([#​4627](getsentry/sentry-dotnet#4627))
- SpanTracer and TransactionTracer are still public but these are now
`sealed` (see also
[#​4627](getsentry/sentry-dotnet#4627))
- The _Structured Logs_ APIs are now stable: removed `Experimental` from
`SentryOptions`
([#​4699](getsentry/sentry-dotnet#4699))
- Added support for v3 of the Android AssemblyStore format that is used
in .NET 10 and dropped support for v1 that was used in .NET 8
([#​4583](getsentry/sentry-dotnet#4583))
- CaptureFeedback now returns a `SentryId` and a `CaptureFeedbackResult`
out parameter that indicate whether feedback was captured successfully
and what the reason for failure was otherwise
([#​4613](getsentry/sentry-dotnet#4613))
- Deprecated `Sentry.Azure.Functions.Worker` as very few people were
using it and the functionality can easily be replaced with
OpenTelemetry. We've replaced our integration with a sample showing how
to do this using our OpenTelemetry package instead.
([#​4693](getsentry/sentry-dotnet#4693))
- UWP support has been dropped. Future efforts will likely focus on
WinUI 3, in line with Microsoft's recommendations for building Windows
UI apps.
([#​4686](getsentry/sentry-dotnet#4686))
- `BreadcrumbLevel.Critical` has been renamed to `BreadcrumbLevel.Fatal`
for consistency with the other Sentry SDKs
([#​4605](getsentry/sentry-dotnet#4605))
- SentryOptions.IsEnvironmentUser now defaults to false on MAUI. The
means the User.Name will no longer be set, by default, to the name of
the device
([#​4606](getsentry/sentry-dotnet#4606))
- Removed obsolete APIs
([#​4619](getsentry/sentry-dotnet#4619))
- Removed the unusual constructor from `Sentry.Maui.BreadcrumbEvent`
that had been marked as obsolete. That constructor expected a
`IEnumerable<(string Key, string Value)>[]` argument (i.e. an array of
IEnumerable of tuples). If you were using this constructor, you should
instead use the alternate constructor that expects just an IEnumerable
of tuples: `IEnumerable<(string Key, string Value)>`.
- Removed `SentrySdk.CaptureUserFeedback` and all associated members.
Use the newer `SentrySdk.CaptureFeedback` instead.
- ScopeExtensions.Populate is now internal
([#​4611](getsentry/sentry-dotnet#4611))

### Features

- Support for .NET 10
([#​4461](getsentry/sentry-dotnet#4461))
- Added a new SDK `Sentry.Extensions.AI` which allows LLM usage
instrumentation via `Microsoft.Extensions.AI`
([#​4657](getsentry/sentry-dotnet#4657))
- Added experimental support for Session Replay on iOS
([#​4664](getsentry/sentry-dotnet#4664))
- Add support for _Structured Logs_ in `Sentry.Google.Cloud.Functions`
([#​4700](getsentry/sentry-dotnet#4700))
- QOL features for Unity
- The SDK now provides a `IsSessionActive` to allow checking the session
state ([#​4662](getsentry/sentry-dotnet#4662))
- The SDK now makes use of the new SessionEndStatus `Unhandled` when
capturing an unhandled but non-terminal exception, i.e. through the
UnobservedTaskExceptionIntegration
([#​4633](getsentry/sentry-dotnet#4633),
[#​4653](getsentry/sentry-dotnet#4653))
- Extended the App context by `app_memory` that can hold the amount of
memory used by the application in bytes.
([#​4707](getsentry/sentry-dotnet#4707))
- Add support for W3C traceparent header for outgoing requests
([#​4661](getsentry/sentry-dotnet#4661))
- This feature is disabled by default. Set `PropagateTraceparent = true`
when initializing the SDK if to include the W3C traceparent header on
outgoing requests.
- See
https://develop.sentry.dev/sdk/telemetry/traces/distributed-tracing/#w3c-trace-context-header
for more details.

### Fixes

- Memory leak when finishing an unsampled Transaction that has started
unsampled Spans
([#​4717](getsentry/sentry-dotnet#4717))
- Sentry Tracing middleware crashed ASP.NET Core in .NET 10 in
6.0.0-rc.1 and earlier
([#​4747](getsentry/sentry-dotnet#4747))
- Captured [Http Client
Errors](https://docs.sentry.io/platforms/dotnet/guides/aspnet/configuration/http-client-errors/)
on .NET 5+ now include a full stack trace in order to improve Issue
grouping
([#​4724](getsentry/sentry-dotnet#4724))
- Deliver system breadcrumbs in the main thread on Android
([#​4671](getsentry/sentry-dotnet#4671))
- The `Serilog` integration captures _Structured Logs_ (when enabled)
independently of captured Events and added Breadcrumbs
([#​4691](getsentry/sentry-dotnet#4691))
- Minimum Log-Level for _Structured Logs_, _Breadcrumbs_ and _Events_ in
all Logging-Integrations
([#​4700](getsentry/sentry-dotnet#4700))
- for `Sentry.Extensions.Logging`, `Sentry.AspNetCore`, `Sentry.Maui`
and `Sentry.Google.Cloud.Functions`
- the Logger-Provider for _Breadcrumbs_ and _Events_ ignores
Logging-Configuration (e.g. via `appsettings.json`)
- use the intended `SentryLoggingOptions.MinimumBreadcrumbLevel`,
`SentryLoggingOptions.MinimumEventLevel`, or add filter functions via
`SentryLoggingOptionsExtensions.AddLogEntryFilter`
- the Logger-Provider for _Structured Logs_ respects
Logging-Configuration (e.g. via `appsettings.json`)
        - when enabled by `SentryOptions.EnableLogs`
- Avoid appending `/NODEFAULTLIB:MSVCRT` to NativeAOT linker arguments
on Windows when targetting non-Windows platforms (Android, Browser)
([#​4760](getsentry/sentry-dotnet#4760))
- The SDK avoids redundant scope sync after transaction finish
([#​4623](getsentry/sentry-dotnet#4623))
 ... (truncated)

## 6.0.0-rc.2

### Fixes

- Captured [Http Client
Errors](https://docs.sentry.io/platforms/dotnet/guides/aspnet/configuration/http-client-errors/)
on .NET 5+ now include a full stack trace in order to improve Issue
grouping
([#​4724](getsentry/sentry-dotnet#4724))
- Sentry Tracing middleware crashed ASP.NET Core in .NET 10 in
6.0.0-rc.1 and earlier
([#​4747](getsentry/sentry-dotnet#4747))

### Dependencies

- Bump Java SDK from v8.24.0 to v8.26.0
([#​4728](getsentry/sentry-dotnet#4728))
-
[changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#​8260)
-
[diff](getsentry/sentry-java@8.24.0...8.26.0)

## 6.0.0-rc.1

### BREAKING CHANGES

- This release adds support for .NET 10 and drops support for
net8.0-android, net8.0-ios, net8.0-maccatalyst and
net8.0-windows10.0.19041.0
([#​4461](getsentry/sentry-dotnet#4461))
- Backpressure handling is now enabled by default, meaning that the SDK
will monitor system health and reduce the sampling rate of events and
transactions when the system is under load. When the system is
determined to be healthy again, the sampling rates are returned to their
original levels.
([#​4615](getsentry/sentry-dotnet#4615))
- QOL improvement: Spans and Transactions now implement `IDisposable` so
that they can be used with `using` statements/declarations that will
automatically finish the span with a status of OK when it passes out of
scope, if it has not already been finished, to be consistent with
`Activity` classes when using OpenTelemetry
([#​4627](getsentry/sentry-dotnet#4627))
- Add support for W3C traceparent header for outgoing requests
([#​4661](getsentry/sentry-dotnet#4661))
This feature is disabled by default. Set `PropagateTraceparent = true`
when initializing the SDK if to include the W3C traceparent header on
outgoing requests.
- The _Structured Logs_ APIs are now stable: removed `Experimental` from
`SentryOptions`
([#​4699](getsentry/sentry-dotnet#4699))
- Added support for v3 of the Android AssemblyStore format that is used
in .NET 10 and dropped support for v1 that was used in .NET 8
([#​4583](getsentry/sentry-dotnet#4583))
- CaptureFeedback now returns a `SentryId` and a `CaptureFeedbackResult`
out parameter that indicate whether feedback was captured successfully
and what the reason for failure was otherwise
([#​4613](getsentry/sentry-dotnet#4613))
- Deprecated `Sentry.Azure.Functions.Worker` as very few people were
using it and the functionality can easily be replaced with
OpenTelemetry. We've replaced our integration with a sample showing how
to do this using our OpenTelemetry package instead.
([#​4693](getsentry/sentry-dotnet#4693))
- UWP support has been dropped. Future efforts will likely focus on
WinUI 3, in line with Microsoft's recommendations for building Windows
UI apps.
([#​4686](getsentry/sentry-dotnet#4686))
- `BreadcrumbLevel.Critical` has been renamed to `BreadcrumbLevel.Fatal`
for consistency with the other Sentry SDKs
([#​4605](getsentry/sentry-dotnet#4605))
- SentryOptions.IsEnvironmentUser now defaults to false on MAUI. The
means the User.Name will no longer be set, by default, to the name of
the device
([#​4606](getsentry/sentry-dotnet#4606))
- Remove unnecessary files from SentryCocoaFramework before packing
([#​4602](getsentry/sentry-dotnet#4602))
- Removed obsolete APIs
([#​4619](getsentry/sentry-dotnet#4619))
- Removed the unusual constructor from `Sentry.Maui.BreadcrumbEvent`
that had been marked as obsolete. That constructor expected a
`IEnumerable<(string Key, string Value)>[]` argument (i.e. an array of
IEnumerable of tuples). If you were using this constructor, you should
instead use the alternate constructor that expects just an IEnumerable
of tuples: `IEnumerable<(string Key, string Value)>`.
- Removed `SentrySdk.CaptureUserFeedback` and all associated members.
Use the newer `SentrySdk.CaptureFeedback` instead.
- SpanTracer and TransactionTracer are still public but these are now
`sealed` (see also
[#​4627](getsentry/sentry-dotnet#4627))
- ScopeExtensions.Populate is now internal
([#​4611](getsentry/sentry-dotnet#4611))

See
https://develop.sentry.dev/sdk/telemetry/traces/distributed-tracing/#w3c-trace-context-header
for more details.

### Features

- Support for .NET 10
([#​4461](getsentry/sentry-dotnet#4461))
- Added experimental support for Session Replay on iOS
([#​4664](getsentry/sentry-dotnet#4664))
- QOL features for Unity
- The SDK now provides a `IsSessionActive` to allow checking the session
state ([#​4662](getsentry/sentry-dotnet#4662))
- The SDK now makes use of the new SessionEndStatus `Unhandled` when
capturing an unhandled but non-terminal exception, i.e. through the
UnobservedTaskExceptionIntegration
([#​4633](getsentry/sentry-dotnet#4633),
[#​4653](getsentry/sentry-dotnet#4653))
- Implemented instance isolation so that multiple instances of the
Sentry SDK can be instantiated inside the same process when using the
Caching Transport
([#​4498](getsentry/sentry-dotnet#4498))
- Extended the App context by `app_memory` that can hold the amount of
memory used by the application in bytes.
([#​4707](getsentry/sentry-dotnet#4707))

### Fixes

- Memory leak when finishing an unsampled Transaction that has started
unsampled Spans
([#​4717](getsentry/sentry-dotnet#4717))
- Deliver system breadcrumbs in the main thread on Android
([#​4671](getsentry/sentry-dotnet#4671))
- The `Serilog` integration captures _Structured Logs_ (when enabled)
independently of captured Events and added Breadcrumbs
([#​4691](getsentry/sentry-dotnet#4691))
- The SDK avoids redundant scope sync after transaction finish
([#​4623](getsentry/sentry-dotnet#4623))
- sentry-native is now automatically disabled for WASM applications
([#​4631](getsentry/sentry-dotnet#4631))

### Dependencies

- Bump Java SDK from v8.24.0 to v8.25.0
([#​4679](getsentry/sentry-dotnet#4679))
-
[changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#​8250)
-
[diff](getsentry/sentry-java@8.24.0...8.25.0)
- Bump Native SDK from v0.12.0 to v0.12.1
([#​4690](getsentry/sentry-dotnet#4690),
[#​4737](getsentry/sentry-dotnet#4737))
-
[changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#​0121)
-
[diff](getsentry/sentry-native@0.12.0...0.12.1)
- Bump Cocoa SDK from v8.57.1 to v8.57.2
([#​4704](getsentry/sentry-dotnet#4704))
 ... (truncated)

## 6.0.0-preview.2

### BREAKING CHANGES

- `BreadcrumbLevel.Critical` has been renamed to `BreadcrumbLevel.Fatal`
for consistency with the other Sentry SDKs
([#​4605](getsentry/sentry-dotnet#4605))
- SentryOptions.IsEnvironmentUser now defaults to false on MAUI. The
means the User.Name will no longer be set, by default, to the name of
the device
([#​4606](getsentry/sentry-dotnet#4606))
- Remove unnecessary files from SentryCocoaFramework before packing
([#​4602](getsentry/sentry-dotnet#4602))
- Removed obsolete APIs
([#​4619](getsentry/sentry-dotnet#4619))
- Removed the unusual constructor from `Sentry.Maui.BreadcrumbEvent`
that had been marked as obsolete. That constructor expected a
`IEnumerable<(string Key, string Value)>[]` argument (i.e. an array of
IEnumerable of tuples). If you were using this constructor, you should
instead use the alternate constructor that expects just an IEnumerable
of tuples: `IEnumerable<(string Key, string Value)>`.
- Removed `SentrySdk.CaptureUserFeedback` and all associated members.
Use the newer `SentrySdk.CaptureFeedback` instead.
- Backpressure handling is now enabled by default, meaning that the SDK
will monitor system health and reduce the sampling rate of events and
transactions when the system is under load. When the system is
determined to be healthy again, the sampling rates are returned to their
original levels.
([#​4615](getsentry/sentry-dotnet#4615))
- ScopeExtensions.Populate is now internal
([#​4611](getsentry/sentry-dotnet#4611))
- Add support for W3C traceparent header for outgoing requests
([#​4661](getsentry/sentry-dotnet#4661))
This feature is disabled by default. When enabled, outgoing requests
will include the W3C traceparent header.
  ```csharp
  SentrySdk.Init(options =>
  {
      // ...
      options.PropagateTraceparent = true;
  });
  ```

See
https://develop.sentry.dev/sdk/telemetry/traces/distributed-tracing/#w3c-trace-context-header
for more details.

### Fixes

- The SDK avoids redundant scope sync after transaction finish
([#​4623](getsentry/sentry-dotnet#4623))
- sentry-native is now automatically disabled for WASM applications
([#​4631](getsentry/sentry-dotnet#4631))

## 6.0.0-preview.1

### BREAKING CHANGES

- This release adds support for .NET 10 and drops support for
net8.0-android, net8.0-ios, net8.0-maccatalyst and
net8.0-windows10.0.19041.0
([#​4461](getsentry/sentry-dotnet#4461))
- Added support for v3 of the Android AssemblyStore format that is used
in .NET 10 and dropped support for v1 that was used in .NET 8
([#​4583](getsentry/sentry-dotnet#4583))

## 5.16.3

### Fixes

- Memory leak when finishing an unsampled Transaction that has started
unsampled Spans
([#​4717](getsentry/sentry-dotnet#4717))
- backported via
([#​4853](getsentry/sentry-dotnet#4853))
- Deliver system breadcrumbs in the main thread on Android
([#​4671](getsentry/sentry-dotnet#4671))
- backported via
([#​4856](getsentry/sentry-dotnet#4856))

### Dependencies

- Bump Java SDK from v8.24.0 to v8.25.0
([#​4679](getsentry/sentry-dotnet#4679))
-
[changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#​8250)
-
[diff](getsentry/sentry-java@8.24.0...8.25.0)
- Bump Native SDK from v0.12.0 to v0.12.1
([#​4690](getsentry/sentry-dotnet#4690))
-
[changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#​0121)
-
[diff](getsentry/sentry-native@0.12.0...0.12.1)
- Bump Cocoa SDK from v8.57.1 to v8.57.2
([#​4704](getsentry/sentry-dotnet#4704))
-
[changelog](https://github.com/getsentry/sentry-cocoa/blob/main/CHANGELOG.md#​8572)
-
[diff](getsentry/sentry-cocoa@8.57.1...8.57.2)
- Bump CLI from v2.57.0 to v2.58.1
([#​4705](getsentry/sentry-dotnet#4705),
[#​4727](getsentry/sentry-dotnet#4727))
-
[changelog](https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md#​2581)
-
[diff](getsentry/sentry-cli@2.57.0...2.58.1)

Commits viewable in [compare
view](getsentry/sentry-dotnet@5.16.2...6.1.0).
</details>

[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=Sentry.Extensions.Logging&package-manager=nuget&previous-version=5.16.2&new-version=6.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: James Gunn <james@gunn.io>
github-merge-queue bot pushed a commit to DFE-Digital/teaching-record-system that referenced this pull request Feb 24, 2026
Updated [Sentry.AspNetCore](https://github.com/getsentry/sentry-dotnet)
from 6.0.0 to 6.1.0.

<details>
<summary>Release notes</summary>

_Sourced from [Sentry.AspNetCore's
releases](https://github.com/getsentry/sentry-dotnet/releases)._

## 6.1.0

### Features

- Add _experimental_ support for [Sentry trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/)
([#​4834](getsentry/sentry-dotnet#4834))
- Extended `SentryThread` by `Main` to allow indication whether the
thread is considered the current main thread
([#​4807](getsentry/sentry-dotnet#4807))

### Fixes

- User Feedback now contains additional Context and Tags, like
`Environment` and `Release`
([#​4883](getsentry/sentry-dotnet#4883))
- Allow Sentry failures from the Sentry CLI when SENTRY_ALLOW_FAILURE is
set ([#​4852](getsentry/sentry-dotnet#4852))
- The SDK now logs a specific error message when envelopes are rejected
due to size limits (HTTP 413)
([#​4863](getsentry/sentry-dotnet#4863))
- Fixed thread-safety issue on Android when multiple events are captured
concurrently
([#​4814](getsentry/sentry-dotnet#4814))

### Dependencies

- Bump Native SDK from v0.12.2 to v0.12.6
([#​4832](getsentry/sentry-dotnet#4832),
[#​4875](getsentry/sentry-dotnet#4875),
[#​4892](getsentry/sentry-dotnet#4892),
[#​4897](getsentry/sentry-dotnet#4897))
-
[changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#​0126)
-
[diff](getsentry/sentry-native@0.12.2...0.12.6)
- Bump Java SDK from v8.28.0 to v8.29.0
([#​4817](getsentry/sentry-dotnet#4817))
-
[changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#​8290)
-
[diff](getsentry/sentry-java@8.28.0...8.29.0)

## 6.1.0-alpha.2

### BREAKING CHANGES

- Rename [Trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/) APIs to avoid
implying aggregation
([#​4834](getsentry/sentry-dotnet#4834))
  - from `AddCounter` to `EmitCounter`
  - from `RecordDistribution` to `EmitDistribution`
  - from `RecordGauge` to `EmitGauge`

### Features

- Validate [Trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/)
([#​4834](getsentry/sentry-dotnet#4834))

### Fixes

- Attributes for [Trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/) set via
`SetBeforeSendLog` callback
([#​4834](getsentry/sentry-dotnet#4834))
- Disallow unsupported 128-bit floating point numbers (i.e. `decimal`)
for [Trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/)
([#​4834](getsentry/sentry-dotnet#4834))

## 6.1.0-alpha.1

### Features

- Extended `SentryThread` by `Main` to allow indication whether the
thread is considered the current main thread
([#​4807](getsentry/sentry-dotnet#4807))
- Add _experimental_ support for [Sentry trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/)
([#​4834](getsentry/sentry-dotnet#4834))

### Dependencies

- Bump Native SDK from v0.12.2 to v0.12.3
([#​4832](getsentry/sentry-dotnet#4832))
-
[changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#​0123)
-
[diff](getsentry/sentry-native@0.12.2...0.12.3)
- Bump Java SDK from v8.28.0 to v8.29.0
([#​4817](getsentry/sentry-dotnet#4817))
-
[changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#​8290)
-
[diff](getsentry/sentry-java@8.28.0...8.29.0)

Commits viewable in [compare
view](getsentry/sentry-dotnet@6.0.0...6.1.0).
</details>

Updated [Sentry.Serilog](https://github.com/getsentry/sentry-dotnet)
from 5.16.2 to 6.1.0.

<details>
<summary>Release notes</summary>

_Sourced from [Sentry.Serilog's
releases](https://github.com/getsentry/sentry-dotnet/releases)._

## 6.1.0

### Features

- Add _experimental_ support for [Sentry trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/)
([#​4834](getsentry/sentry-dotnet#4834))
- Extended `SentryThread` by `Main` to allow indication whether the
thread is considered the current main thread
([#​4807](getsentry/sentry-dotnet#4807))

### Fixes

- User Feedback now contains additional Context and Tags, like
`Environment` and `Release`
([#​4883](getsentry/sentry-dotnet#4883))
- Allow Sentry failures from the Sentry CLI when SENTRY_ALLOW_FAILURE is
set ([#​4852](getsentry/sentry-dotnet#4852))
- The SDK now logs a specific error message when envelopes are rejected
due to size limits (HTTP 413)
([#​4863](getsentry/sentry-dotnet#4863))
- Fixed thread-safety issue on Android when multiple events are captured
concurrently
([#​4814](getsentry/sentry-dotnet#4814))

### Dependencies

- Bump Native SDK from v0.12.2 to v0.12.6
([#​4832](getsentry/sentry-dotnet#4832),
[#​4875](getsentry/sentry-dotnet#4875),
[#​4892](getsentry/sentry-dotnet#4892),
[#​4897](getsentry/sentry-dotnet#4897))
-
[changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#​0126)
-
[diff](getsentry/sentry-native@0.12.2...0.12.6)
- Bump Java SDK from v8.28.0 to v8.29.0
([#​4817](getsentry/sentry-dotnet#4817))
-
[changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#​8290)
-
[diff](getsentry/sentry-java@8.28.0...8.29.0)

## 6.1.0-alpha.2

### BREAKING CHANGES

- Rename [Trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/) APIs to avoid
implying aggregation
([#​4834](getsentry/sentry-dotnet#4834))
  - from `AddCounter` to `EmitCounter`
  - from `RecordDistribution` to `EmitDistribution`
  - from `RecordGauge` to `EmitGauge`

### Features

- Validate [Trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/)
([#​4834](getsentry/sentry-dotnet#4834))

### Fixes

- Attributes for [Trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/) set via
`SetBeforeSendLog` callback
([#​4834](getsentry/sentry-dotnet#4834))
- Disallow unsupported 128-bit floating point numbers (i.e. `decimal`)
for [Trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/)
([#​4834](getsentry/sentry-dotnet#4834))

## 6.1.0-alpha.1

### Features

- Extended `SentryThread` by `Main` to allow indication whether the
thread is considered the current main thread
([#​4807](getsentry/sentry-dotnet#4807))
- Add _experimental_ support for [Sentry trace-connected
Metrics](https://docs.sentry.io/product/explore/metrics/)
([#​4834](getsentry/sentry-dotnet#4834))

### Dependencies

- Bump Native SDK from v0.12.2 to v0.12.3
([#​4832](getsentry/sentry-dotnet#4832))
-
[changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#​0123)
-
[diff](getsentry/sentry-native@0.12.2...0.12.3)
- Bump Java SDK from v8.28.0 to v8.29.0
([#​4817](getsentry/sentry-dotnet#4817))
-
[changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#​8290)
-
[diff](getsentry/sentry-java@8.28.0...8.29.0)

## 6.0.0

### BREAKING CHANGES

- This release adds support for .NET 10 and drops support for
net8.0-android, net8.0-ios, net8.0-maccatalyst and
net8.0-windows10.0.19041.0
([#​4461](getsentry/sentry-dotnet#4461))
- Backpressure handling is now enabled by default, meaning that the SDK
will monitor system health and reduce the sampling rate of events and
transactions when the system is under load. When the system is
determined to be healthy again, the sampling rates are returned to their
original levels.
([#​4615](getsentry/sentry-dotnet#4615))
- Remove `SentryLoggingOptions.ExperimentalLogging.MinimumLogLevel`.
_Structured Logs_ can now be configured via the `"Sentry"` logging
provider (e.g. in `appsettings.json` and
`appsettings.{HostEnvironment}.json`)
([#​4700](getsentry/sentry-dotnet#4700))
- All logging provider types are _internal_ now in order to ensure
configuration as intended
([#​4700](getsentry/sentry-dotnet#4700))
- Rename `SentryLog.ParentSpanId` to `SentryLog.SpanId` reflecting the
protocol change
([#​4778](getsentry/sentry-dotnet#4778))
- QOL improvement: Spans and Transactions now implement `IDisposable` so
that they can be used with `using` statements/declarations that will
automatically finish the span with a status of OK when it passes out of
scope, if it has not already been finished, to be consistent with
`Activity` classes when using OpenTelemetry
([#​4627](getsentry/sentry-dotnet#4627))
- SpanTracer and TransactionTracer are still public but these are now
`sealed` (see also
[#​4627](getsentry/sentry-dotnet#4627))
- The _Structured Logs_ APIs are now stable: removed `Experimental` from
`SentryOptions`
([#​4699](getsentry/sentry-dotnet#4699))
- Added support for v3 of the Android AssemblyStore format that is used
in .NET 10 and dropped support for v1 that was used in .NET 8
([#​4583](getsentry/sentry-dotnet#4583))
- CaptureFeedback now returns a `SentryId` and a `CaptureFeedbackResult`
out parameter that indicate whether feedback was captured successfully
and what the reason for failure was otherwise
([#​4613](getsentry/sentry-dotnet#4613))
- Deprecated `Sentry.Azure.Functions.Worker` as very few people were
using it and the functionality can easily be replaced with
OpenTelemetry. We've replaced our integration with a sample showing how
to do this using our OpenTelemetry package instead.
([#​4693](getsentry/sentry-dotnet#4693))
- UWP support has been dropped. Future efforts will likely focus on
WinUI 3, in line with Microsoft's recommendations for building Windows
UI apps.
([#​4686](getsentry/sentry-dotnet#4686))
- `BreadcrumbLevel.Critical` has been renamed to `BreadcrumbLevel.Fatal`
for consistency with the other Sentry SDKs
([#​4605](getsentry/sentry-dotnet#4605))
- SentryOptions.IsEnvironmentUser now defaults to false on MAUI. The
means the User.Name will no longer be set, by default, to the name of
the device
([#​4606](getsentry/sentry-dotnet#4606))
- Removed obsolete APIs
([#​4619](getsentry/sentry-dotnet#4619))
- Removed the unusual constructor from `Sentry.Maui.BreadcrumbEvent`
that had been marked as obsolete. That constructor expected a
`IEnumerable<(string Key, string Value)>[]` argument (i.e. an array of
IEnumerable of tuples). If you were using this constructor, you should
instead use the alternate constructor that expects just an IEnumerable
of tuples: `IEnumerable<(string Key, string Value)>`.
- Removed `SentrySdk.CaptureUserFeedback` and all associated members.
Use the newer `SentrySdk.CaptureFeedback` instead.
- ScopeExtensions.Populate is now internal
([#​4611](getsentry/sentry-dotnet#4611))

### Features

- Support for .NET 10
([#​4461](getsentry/sentry-dotnet#4461))
- Added a new SDK `Sentry.Extensions.AI` which allows LLM usage
instrumentation via `Microsoft.Extensions.AI`
([#​4657](getsentry/sentry-dotnet#4657))
- Added experimental support for Session Replay on iOS
([#​4664](getsentry/sentry-dotnet#4664))
- Add support for _Structured Logs_ in `Sentry.Google.Cloud.Functions`
([#​4700](getsentry/sentry-dotnet#4700))
- QOL features for Unity
- The SDK now provides a `IsSessionActive` to allow checking the session
state ([#​4662](getsentry/sentry-dotnet#4662))
- The SDK now makes use of the new SessionEndStatus `Unhandled` when
capturing an unhandled but non-terminal exception, i.e. through the
UnobservedTaskExceptionIntegration
([#​4633](getsentry/sentry-dotnet#4633),
[#​4653](getsentry/sentry-dotnet#4653))
- Extended the App context by `app_memory` that can hold the amount of
memory used by the application in bytes.
([#​4707](getsentry/sentry-dotnet#4707))
- Add support for W3C traceparent header for outgoing requests
([#​4661](getsentry/sentry-dotnet#4661))
- This feature is disabled by default. Set `PropagateTraceparent = true`
when initializing the SDK if to include the W3C traceparent header on
outgoing requests.
- See
https://develop.sentry.dev/sdk/telemetry/traces/distributed-tracing/#w3c-trace-context-header
for more details.

### Fixes

- Memory leak when finishing an unsampled Transaction that has started
unsampled Spans
([#​4717](getsentry/sentry-dotnet#4717))
- Sentry Tracing middleware crashed ASP.NET Core in .NET 10 in
6.0.0-rc.1 and earlier
([#​4747](getsentry/sentry-dotnet#4747))
- Captured [Http Client
Errors](https://docs.sentry.io/platforms/dotnet/guides/aspnet/configuration/http-client-errors/)
on .NET 5+ now include a full stack trace in order to improve Issue
grouping
([#​4724](getsentry/sentry-dotnet#4724))
- Deliver system breadcrumbs in the main thread on Android
([#​4671](getsentry/sentry-dotnet#4671))
- The `Serilog` integration captures _Structured Logs_ (when enabled)
independently of captured Events and added Breadcrumbs
([#​4691](getsentry/sentry-dotnet#4691))
- Minimum Log-Level for _Structured Logs_, _Breadcrumbs_ and _Events_ in
all Logging-Integrations
([#​4700](getsentry/sentry-dotnet#4700))
- for `Sentry.Extensions.Logging`, `Sentry.AspNetCore`, `Sentry.Maui`
and `Sentry.Google.Cloud.Functions`
- the Logger-Provider for _Breadcrumbs_ and _Events_ ignores
Logging-Configuration (e.g. via `appsettings.json`)
- use the intended `SentryLoggingOptions.MinimumBreadcrumbLevel`,
`SentryLoggingOptions.MinimumEventLevel`, or add filter functions via
`SentryLoggingOptionsExtensions.AddLogEntryFilter`
- the Logger-Provider for _Structured Logs_ respects
Logging-Configuration (e.g. via `appsettings.json`)
        - when enabled by `SentryOptions.EnableLogs`
- Avoid appending `/NODEFAULTLIB:MSVCRT` to NativeAOT linker arguments
on Windows when targetting non-Windows platforms (Android, Browser)
([#​4760](getsentry/sentry-dotnet#4760))
- The SDK avoids redundant scope sync after transaction finish
([#​4623](getsentry/sentry-dotnet#4623))
 ... (truncated)

## 6.0.0-rc.2

### Fixes

- Captured [Http Client
Errors](https://docs.sentry.io/platforms/dotnet/guides/aspnet/configuration/http-client-errors/)
on .NET 5+ now include a full stack trace in order to improve Issue
grouping
([#​4724](getsentry/sentry-dotnet#4724))
- Sentry Tracing middleware crashed ASP.NET Core in .NET 10 in
6.0.0-rc.1 and earlier
([#​4747](getsentry/sentry-dotnet#4747))

### Dependencies

- Bump Java SDK from v8.24.0 to v8.26.0
([#​4728](getsentry/sentry-dotnet#4728))
-
[changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#​8260)
-
[diff](getsentry/sentry-java@8.24.0...8.26.0)

## 6.0.0-rc.1

### BREAKING CHANGES

- This release adds support for .NET 10 and drops support for
net8.0-android, net8.0-ios, net8.0-maccatalyst and
net8.0-windows10.0.19041.0
([#​4461](getsentry/sentry-dotnet#4461))
- Backpressure handling is now enabled by default, meaning that the SDK
will monitor system health and reduce the sampling rate of events and
transactions when the system is under load. When the system is
determined to be healthy again, the sampling rates are returned to their
original levels.
([#​4615](getsentry/sentry-dotnet#4615))
- QOL improvement: Spans and Transactions now implement `IDisposable` so
that they can be used with `using` statements/declarations that will
automatically finish the span with a status of OK when it passes out of
scope, if it has not already been finished, to be consistent with
`Activity` classes when using OpenTelemetry
([#​4627](getsentry/sentry-dotnet#4627))
- Add support for W3C traceparent header for outgoing requests
([#​4661](getsentry/sentry-dotnet#4661))
This feature is disabled by default. Set `PropagateTraceparent = true`
when initializing the SDK if to include the W3C traceparent header on
outgoing requests.
- The _Structured Logs_ APIs are now stable: removed `Experimental` from
`SentryOptions`
([#​4699](getsentry/sentry-dotnet#4699))
- Added support for v3 of the Android AssemblyStore format that is used
in .NET 10 and dropped support for v1 that was used in .NET 8
([#​4583](getsentry/sentry-dotnet#4583))
- CaptureFeedback now returns a `SentryId` and a `CaptureFeedbackResult`
out parameter that indicate whether feedback was captured successfully
and what the reason for failure was otherwise
([#​4613](getsentry/sentry-dotnet#4613))
- Deprecated `Sentry.Azure.Functions.Worker` as very few people were
using it and the functionality can easily be replaced with
OpenTelemetry. We've replaced our integration with a sample showing how
to do this using our OpenTelemetry package instead.
([#​4693](getsentry/sentry-dotnet#4693))
- UWP support has been dropped. Future efforts will likely focus on
WinUI 3, in line with Microsoft's recommendations for building Windows
UI apps.
([#​4686](getsentry/sentry-dotnet#4686))
- `BreadcrumbLevel.Critical` has been renamed to `BreadcrumbLevel.Fatal`
for consistency with the other Sentry SDKs
([#​4605](getsentry/sentry-dotnet#4605))
- SentryOptions.IsEnvironmentUser now defaults to false on MAUI. The
means the User.Name will no longer be set, by default, to the name of
the device
([#​4606](getsentry/sentry-dotnet#4606))
- Remove unnecessary files from SentryCocoaFramework before packing
([#​4602](getsentry/sentry-dotnet#4602))
- Removed obsolete APIs
([#​4619](getsentry/sentry-dotnet#4619))
- Removed the unusual constructor from `Sentry.Maui.BreadcrumbEvent`
that had been marked as obsolete. That constructor expected a
`IEnumerable<(string Key, string Value)>[]` argument (i.e. an array of
IEnumerable of tuples). If you were using this constructor, you should
instead use the alternate constructor that expects just an IEnumerable
of tuples: `IEnumerable<(string Key, string Value)>`.
- Removed `SentrySdk.CaptureUserFeedback` and all associated members.
Use the newer `SentrySdk.CaptureFeedback` instead.
- SpanTracer and TransactionTracer are still public but these are now
`sealed` (see also
[#​4627](getsentry/sentry-dotnet#4627))
- ScopeExtensions.Populate is now internal
([#​4611](getsentry/sentry-dotnet#4611))

See
https://develop.sentry.dev/sdk/telemetry/traces/distributed-tracing/#w3c-trace-context-header
for more details.

### Features

- Support for .NET 10
([#​4461](getsentry/sentry-dotnet#4461))
- Added experimental support for Session Replay on iOS
([#​4664](getsentry/sentry-dotnet#4664))
- QOL features for Unity
- The SDK now provides a `IsSessionActive` to allow checking the session
state ([#​4662](getsentry/sentry-dotnet#4662))
- The SDK now makes use of the new SessionEndStatus `Unhandled` when
capturing an unhandled but non-terminal exception, i.e. through the
UnobservedTaskExceptionIntegration
([#​4633](getsentry/sentry-dotnet#4633),
[#​4653](getsentry/sentry-dotnet#4653))
- Implemented instance isolation so that multiple instances of the
Sentry SDK can be instantiated inside the same process when using the
Caching Transport
([#​4498](getsentry/sentry-dotnet#4498))
- Extended the App context by `app_memory` that can hold the amount of
memory used by the application in bytes.
([#​4707](getsentry/sentry-dotnet#4707))

### Fixes

- Memory leak when finishing an unsampled Transaction that has started
unsampled Spans
([#​4717](getsentry/sentry-dotnet#4717))
- Deliver system breadcrumbs in the main thread on Android
([#​4671](getsentry/sentry-dotnet#4671))
- The `Serilog` integration captures _Structured Logs_ (when enabled)
independently of captured Events and added Breadcrumbs
([#​4691](getsentry/sentry-dotnet#4691))
- The SDK avoids redundant scope sync after transaction finish
([#​4623](getsentry/sentry-dotnet#4623))
- sentry-native is now automatically disabled for WASM applications
([#​4631](getsentry/sentry-dotnet#4631))

### Dependencies

- Bump Java SDK from v8.24.0 to v8.25.0
([#​4679](getsentry/sentry-dotnet#4679))
-
[changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#​8250)
-
[diff](getsentry/sentry-java@8.24.0...8.25.0)
- Bump Native SDK from v0.12.0 to v0.12.1
([#​4690](getsentry/sentry-dotnet#4690),
[#​4737](getsentry/sentry-dotnet#4737))
-
[changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#​0121)
-
[diff](getsentry/sentry-native@0.12.0...0.12.1)
- Bump Cocoa SDK from v8.57.1 to v8.57.2
([#​4704](getsentry/sentry-dotnet#4704))
 ... (truncated)

## 6.0.0-preview.2

### BREAKING CHANGES

- `BreadcrumbLevel.Critical` has been renamed to `BreadcrumbLevel.Fatal`
for consistency with the other Sentry SDKs
([#​4605](getsentry/sentry-dotnet#4605))
- SentryOptions.IsEnvironmentUser now defaults to false on MAUI. The
means the User.Name will no longer be set, by default, to the name of
the device
([#​4606](getsentry/sentry-dotnet#4606))
- Remove unnecessary files from SentryCocoaFramework before packing
([#​4602](getsentry/sentry-dotnet#4602))
- Removed obsolete APIs
([#​4619](getsentry/sentry-dotnet#4619))
- Removed the unusual constructor from `Sentry.Maui.BreadcrumbEvent`
that had been marked as obsolete. That constructor expected a
`IEnumerable<(string Key, string Value)>[]` argument (i.e. an array of
IEnumerable of tuples). If you were using this constructor, you should
instead use the alternate constructor that expects just an IEnumerable
of tuples: `IEnumerable<(string Key, string Value)>`.
- Removed `SentrySdk.CaptureUserFeedback` and all associated members.
Use the newer `SentrySdk.CaptureFeedback` instead.
- Backpressure handling is now enabled by default, meaning that the SDK
will monitor system health and reduce the sampling rate of events and
transactions when the system is under load. When the system is
determined to be healthy again, the sampling rates are returned to their
original levels.
([#​4615](getsentry/sentry-dotnet#4615))
- ScopeExtensions.Populate is now internal
([#​4611](getsentry/sentry-dotnet#4611))
- Add support for W3C traceparent header for outgoing requests
([#​4661](getsentry/sentry-dotnet#4661))
This feature is disabled by default. When enabled, outgoing requests
will include the W3C traceparent header.
  ```csharp
  SentrySdk.Init(options =>
  {
      // ...
      options.PropagateTraceparent = true;
  });
  ```

See
https://develop.sentry.dev/sdk/telemetry/traces/distributed-tracing/#w3c-trace-context-header
for more details.

### Fixes

- The SDK avoids redundant scope sync after transaction finish
([#​4623](getsentry/sentry-dotnet#4623))
- sentry-native is now automatically disabled for WASM applications
([#​4631](getsentry/sentry-dotnet#4631))

## 6.0.0-preview.1

### BREAKING CHANGES

- This release adds support for .NET 10 and drops support for
net8.0-android, net8.0-ios, net8.0-maccatalyst and
net8.0-windows10.0.19041.0
([#​4461](getsentry/sentry-dotnet#4461))
- Added support for v3 of the Android AssemblyStore format that is used
in .NET 10 and dropped support for v1 that was used in .NET 8
([#​4583](getsentry/sentry-dotnet#4583))

## 5.16.3

### Fixes

- Memory leak when finishing an unsampled Transaction that has started
unsampled Spans
([#​4717](getsentry/sentry-dotnet#4717))
- backported via
([#​4853](getsentry/sentry-dotnet#4853))
- Deliver system breadcrumbs in the main thread on Android
([#​4671](getsentry/sentry-dotnet#4671))
- backported via
([#​4856](getsentry/sentry-dotnet#4856))

### Dependencies

- Bump Java SDK from v8.24.0 to v8.25.0
([#​4679](getsentry/sentry-dotnet#4679))
-
[changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#​8250)
-
[diff](getsentry/sentry-java@8.24.0...8.25.0)
- Bump Native SDK from v0.12.0 to v0.12.1
([#​4690](getsentry/sentry-dotnet#4690))
-
[changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#​0121)
-
[diff](getsentry/sentry-native@0.12.0...0.12.1)
- Bump Cocoa SDK from v8.57.1 to v8.57.2
([#​4704](getsentry/sentry-dotnet#4704))
-
[changelog](https://github.com/getsentry/sentry-cocoa/blob/main/CHANGELOG.md#​8572)
-
[diff](getsentry/sentry-cocoa@8.57.1...8.57.2)
- Bump CLI from v2.57.0 to v2.58.1
([#​4705](getsentry/sentry-dotnet#4705),
[#​4727](getsentry/sentry-dotnet#4727))
-
[changelog](https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md#​2581)
-
[diff](getsentry/sentry-cli@2.57.0...2.58.1)

Commits viewable in [compare
view](getsentry/sentry-dotnet@5.16.2...6.1.0).
</details>

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: James Gunn <james@gunn.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Running several SentrySdk.CaptureMessage in parallel freezes the MAUI Android app

3 participants