diff --git a/.craft.yml b/.craft.yml
index 8a60141731..cade1b38f6 100644
--- a/.craft.yml
+++ b/.craft.yml
@@ -8,6 +8,7 @@ targets:
nuget:Sentry:
nuget:Sentry.AspNetCore:
nuget:Sentry.AspNetCore.Grpc:
+ nuget:Sentry.AspNetCore.Blazor.WebAssembly:
nuget:Sentry.AspNet:
nuget:Sentry.Azure.Functions.Worker:
nuget:Sentry.DiagnosticSource:
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index b288942db1..f238206072 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -35,7 +35,7 @@ jobs:
uses: ./.github/actions/environment
- name: Initialize CodeQL
- uses: github/codeql-action/init@6db8d6351fd0be61f9ed8ebd12ccd35dcec51fea # pin@v2
+ uses: github/codeql-action/init@f779452ac5af1c261dce0346a8f964149f49322b # pin@v2
with:
languages: csharp
@@ -46,6 +46,6 @@ jobs:
run: dotnet build Sentry-CI-CodeQL.slnf --no-restore --nologo
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@6db8d6351fd0be61f9ed8ebd12ccd35dcec51fea # pin@v2
+ uses: github/codeql-action/analyze@f779452ac5af1c261dce0346a8f964149f49322b # pin@v2
with:
category: '/language:csharp'
diff --git a/.github/workflows/device-tests-android.yml b/.github/workflows/device-tests-android.yml
index 806847ecd1..87c629548c 100644
--- a/.github/workflows/device-tests-android.yml
+++ b/.github/workflows/device-tests-android.yml
@@ -81,7 +81,7 @@ jobs:
- name: Run Tests
timeout-minutes: 40
- uses: reactivecircus/android-emulator-runner@f0d1ed2dcad93c7479e8b2f2226c83af54494915 # Tag: v2.32.0
+ uses: reactivecircus/android-emulator-runner@62dbb605bba737720e10b196cb4220d374026a6d # Tag: v2.33.0
with:
api-level: ${{ matrix.api-level }}
# We don't need the Google APIs, but the default images are not available for 32+
diff --git a/.github/workflows/format-code.yml b/.github/workflows/format-code.yml
index fad41e3cb5..9a867477be 100644
--- a/.github/workflows/format-code.yml
+++ b/.github/workflows/format-code.yml
@@ -10,6 +10,8 @@ on:
jobs:
format-code:
name: Format Code
+ # Running on 'macos' because Linux is missing the `ios` workload
+ # See: https://github.com/dotnet/runtime/issues/85505
runs-on: macos-latest
steps:
- name: Checkout
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 26604cfe3e..bd2a79c3cf 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -13,6 +13,22 @@
- `Scope.Transaction` is now always stored as an `AsyncLocal` also in [Global Mode](https://docs.sentry.io/platforms/dotnet/configuration/options/#is-global-mode-enabled), to prevent auto-instrumented spans from the UI ending up parented to transactions from a background task (or vice versa). ([#3596](https://github.com/getsentry/sentry-dotnet/pull/3596))
- Heap dumps can be captured automatically when memory usage exceeds a configurable threshold ([#3667](https://github.com/getsentry/sentry-dotnet/pull/3667))
+## Unreleased
+
+### Features
+
+- Make `Sentry.AspNetCore.Blazor.WebAssembly` generally available. ([#3674](https://github.com/getsentry/sentry-dotnet/pull/3674))
+
+### Fixes
+
+- Events from NDK on Android will report sdk.name `sentry.native.android.dotnet` ([#3682](https://github.com/getsentry/sentry-dotnet/pull/3682))
+
+### Dependencies
+
+- Bump Java SDK from v7.14.0 to v7.15.0 ([#3670](https://github.com/getsentry/sentry-dotnet/pull/3670))
+ - [changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#7150)
+ - [diff](https://github.com/getsentry/sentry-java/compare/7.14.0...7.15.0)
+
## 4.12.1
### Fixes
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 4d19f28d98..560fd84716 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -3,6 +3,16 @@
We love receiving PRs from the community with features and fixed.
For big feature it's advised to raise an issue to discuss it first.
+# Guidelines
+
+* Please avoid mixing changes needed for a feature with other changes such as refactors, automated IDE changes like adding BOM characters, empty lines, etc.
+* Feel free to start with a draft PR, while you work on it. You can ask pointed questoins by reviewing your own code this way, while signaling to the reviewer that the PR isn't ready for review just yet.
+* Mark the PR ready for review once you've completed the change, including:
+ * The description should link to relevant context such as tickets, discussions or previous PRs. Consider screenshots of the events in Sentry or other relevant visual things.
+ * Add tests that excercise your change. The repo has lots of examples of Unit and integration tests. Including device tests that run on Android and iOS.
+ * CI should be green.
+ * The ideal state is where a reviewer approves it, and merges immediately. But on more complex changes, some back and forth through reviews is expected.
+
## TLDR
* Install the .NET SDKs
diff --git a/README.md b/README.md
index 7cb89e7324..da7fb8c6e8 100644
--- a/README.md
+++ b/README.md
@@ -19,10 +19,10 @@ Sentry SDK for .NET
|-----------------------------------|:---------:|:------------:|:-------------:|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|
| **Sentry** | [![Downloads](https://img.shields.io/nuget/dt/Sentry.svg)](https://www.nuget.org/packages/Sentry) | [![NuGet](https://img.shields.io/nuget/v/Sentry.svg)](https://www.nuget.org/packages/Sentry) | [![NuGet](https://img.shields.io/nuget/vpre/Sentry.svg)](https://www.nuget.org/packages/Sentry) | [![Documentation](https://img.shields.io/badge/documentation-sentry.io-green.svg)](https://docs.sentry.io/platforms/dotnet/) |
| **Sentry.AspNetCore** | [![Downloads](https://img.shields.io/nuget/dt/Sentry.AspNetCore.svg)](https://www.nuget.org/packages/Sentry.AspNetCore) | [![NuGet](https://img.shields.io/nuget/v/Sentry.AspNetCore.svg)](https://www.nuget.org/packages/Sentry.AspNetCore) | [![NuGet](https://img.shields.io/nuget/vpre/Sentry.AspNetCore.svg)](https://www.nuget.org/packages/Sentry.AspNetCore) | [![Documentation](https://img.shields.io/badge/documentation-sentry.io-green.svg)](https://docs.sentry.io/platforms/dotnet/guides/aspnetcore/) |
+| **Sentry.AspNetCore.Blazor.WebAssembly** | [![Downloads](https://img.shields.io/nuget/dt/Sentry.AspNetCore.Blazor.WebAssembly.svg)](https://www.nuget.org/packages/Sentry.AspNetCore.Blazor.WebAssembly) | [![NuGet](https://img.shields.io/nuget/v/Sentry.AspNetCore.Blazor.WebAssembly.svg)](https://www.nuget.org/packages/Sentry.AspNetCore.Blazor.WebAssembly) | [![NuGet](https://img.shields.io/nuget/vpre/Sentry.AspNetCore.Blazor.WebAssembly.svg)](https://www.nuget.org/packages/Sentry.AspNetCore.Blazor.WebAssembly) | [![Documentation](https://img.shields.io/badge/documentation-sentry.io-green.svg)](https://docs.sentry.io/platforms/dotnet/guides/blazor-webassembly/) |
| **Sentry.AspNetCore.Grpc** | [![Downloads](https://img.shields.io/nuget/dt/Sentry.AspNetCore.Grpc.svg)](https://www.nuget.org/packages/Sentry.AspNetCore.Grpc) | [![NuGet](https://img.shields.io/nuget/v/Sentry.AspNetCore.Grpc.svg)](https://www.nuget.org/packages/Sentry.AspNetCore.Grpc) | [![NuGet](https://img.shields.io/nuget/vpre/Sentry.AspNetCore.Grpc.svg)](https://www.nuget.org/packages/Sentry.AspNetCore.Grpc) | [![Documentation](https://img.shields.io/badge/documentation-sentry.io-green.svg)](https://docs.sentry.io/platforms/dotnet/guides/aspnetcore/) |
| **Sentry.AspNet** | [![Downloads](https://img.shields.io/nuget/dt/Sentry.AspNet.svg)](https://www.nuget.org/packages/Sentry.AspNet) | [![NuGet](https://img.shields.io/nuget/v/Sentry.AspNet.svg)](https://www.nuget.org/packages/Sentry.AspNet) | [![NuGet](https://img.shields.io/nuget/vpre/Sentry.AspNet.svg)](https://www.nuget.org/packages/Sentry.AspNet) | [![Documentation](https://img.shields.io/badge/documentation-sentry.io-green.svg)](https://docs.sentry.io/platforms/dotnet/guides/aspnet) |
| **Sentry.Azure.Functions.Worker** | [![Downloads](https://img.shields.io/nuget/dt/Sentry.Azure.Functions.Worker.svg)](https://www.nuget.org/packages/Sentry.Azure.Functions.Worker) | [![NuGet](https://img.shields.io/nuget/v/Sentry.Azure.Functions.Worker.svg)](https://www.nuget.org/packages/Sentry.Azure.Functions.Worker) | [![NuGet](https://img.shields.io/nuget/vpre/Sentry.Azure.Functions.Worker.svg)](https://www.nuget.org/packages/Sentry.Azure.Functions.Worker) | [![Documentation](https://img.shields.io/badge/documentation-sentry.io-green.svg)](https://docs.sentry.io/platforms/dotnet/guides/azure-functions-worker/) |
-| **Sentry.AspNetCore.Blazor.WebAssembly** | [![Downloads](https://img.shields.io/nuget/dt/Sentry.AspNetCore.Blazor.WebAssembly.svg)](https://www.nuget.org/packages/Sentry.AspNetCore.Blazor.WebAssembly) | [![NuGet](https://img.shields.io/nuget/v/Sentry.AspNetCore.Blazor.WebAssembly.svg)](https://www.nuget.org/packages/Sentry.AspNetCore.Blazor.WebAssembly) | [![NuGet](https://img.shields.io/nuget/vpre/Sentry.AspNetCore.Blazor.WebAssembly.svg)](https://www.nuget.org/packages/Sentry.AspNetCore.Blazor.WebAssembly) | [![Documentation](https://img.shields.io/badge/documentation-sentry.io-green.svg)](https://docs.sentry.io/platforms/dotnet/guides/blazor-webassembly/) |
| **Sentry.DiagnosticSource** | [![Downloads](https://img.shields.io/nuget/dt/Sentry.DiagnosticSource.svg)](https://www.nuget.org/packages/Sentry.DiagnosticSource) | [![NuGet](https://img.shields.io/nuget/v/Sentry.DiagnosticSource.svg)](https://www.nuget.org/packages/Sentry.DiagnosticSource) | [![NuGet](https://img.shields.io/nuget/vpre/Sentry.DiagnosticSource.svg)](https://www.nuget.org/packages/Sentry.DiagnosticSource) | [![Documentation](https://img.shields.io/badge/documentation-sentry.io-green.svg)](https://docs.sentry.io/platforms/dotnet/performance/instrumentation/automatic-instrumentation/#diagnosticsource-integration) |
| **Sentry.EntityFramework** | [![Downloads](https://img.shields.io/nuget/dt/Sentry.EntityFramework.svg)](https://www.nuget.org/packages/Sentry.EntityFramework) | [![NuGet](https://img.shields.io/nuget/v/Sentry.EntityFramework.svg)](https://www.nuget.org/packages/Sentry.EntityFramework) | [![NuGet](https://img.shields.io/nuget/vpre/Sentry.EntityFramework.svg)](https://www.nuget.org/packages/Sentry.EntityFramework) | [![Documentation](https://img.shields.io/badge/documentation-sentry.io-green.svg)](https://docs.sentry.io/platforms/dotnet/guides/entityframework) |
| **Sentry.Google.Cloud.Functions** | [![Downloads](https://img.shields.io/nuget/dt/Sentry.Google.Cloud.Functions.svg)](https://www.nuget.org/packages/Sentry.Google.Cloud.Functions) | [![NuGet](https://img.shields.io/nuget/v/Sentry.Google.Cloud.Functions.svg)](https://www.nuget.org/packages/Sentry.Google.Cloud.Functions) | [![NuGet](https://img.shields.io/nuget/vpre/Sentry.Google.Cloud.Functions.svg)](https://www.nuget.org/packages/Sentry.Google.Cloud.Functions) | [![Documentation](https://img.shields.io/badge/documentation-sentry.io-green.svg)](https://docs.sentry.io/platforms/dotnet/guides/google-cloud-functions/) |
diff --git a/samples/Sentry.Samples.Maui/Sentry.Samples.Maui.csproj b/samples/Sentry.Samples.Maui/Sentry.Samples.Maui.csproj
index cf01a98dc5..5e6c4cb102 100644
--- a/samples/Sentry.Samples.Maui/Sentry.Samples.Maui.csproj
+++ b/samples/Sentry.Samples.Maui/Sentry.Samples.Maui.csproj
@@ -7,7 +7,7 @@
On Windows, we'll also build for Windows 10.
-->
net8.0-android
- $(TargetFrameworks);net8.0-windows10.0.19041.0
+ $(TargetFrameworks);net8.0-windows10.0.19041.0;net8.0-ios;net8.0-maccatalyst
$(TargetFrameworks);net8.0-ios;net8.0-maccatalyst
Exe
Sentry.Samples.Maui
diff --git a/src/Sentry.AspNetCore.Blazor.WebAssembly/Sentry.AspNetCore.Blazor.WebAssembly.csproj b/src/Sentry.AspNetCore.Blazor.WebAssembly/Sentry.AspNetCore.Blazor.WebAssembly.csproj
index 8eccfecd69..a47f53b5f6 100644
--- a/src/Sentry.AspNetCore.Blazor.WebAssembly/Sentry.AspNetCore.Blazor.WebAssembly.csproj
+++ b/src/Sentry.AspNetCore.Blazor.WebAssembly/Sentry.AspNetCore.Blazor.WebAssembly.csproj
@@ -2,7 +2,6 @@
net6.0;net8.0
- preview.1
Sentry.AspNetCore.Blazor.WebAssembly
diff --git a/src/Sentry.Bindings.Android/Sentry.Bindings.Android.csproj b/src/Sentry.Bindings.Android/Sentry.Bindings.Android.csproj
index c851373a32..cc3a9c82aa 100644
--- a/src/Sentry.Bindings.Android/Sentry.Bindings.Android.csproj
+++ b/src/Sentry.Bindings.Android/Sentry.Bindings.Android.csproj
@@ -3,7 +3,7 @@
net7.0-android
$(NoWarn);BG8605;BG8606
- 7.14.0
+ 7.15.0
$(BaseIntermediateOutputPath)sdks\Sentry\Android\$(SentryAndroidSdkVersion)\
.NET Bindings for the Sentry Android SDK
diff --git a/src/Sentry/Platforms/Android/SentrySdk.cs b/src/Sentry/Platforms/Android/SentrySdk.cs
index 5c12bdaec9..d2454fc396 100644
--- a/src/Sentry/Platforms/Android/SentrySdk.cs
+++ b/src/Sentry/Platforms/Android/SentrySdk.cs
@@ -137,7 +137,7 @@ private static void InitSentryAndroidSdk(SentryOptions options)
o.EnableExternalConfiguration = false;
o.EnableDeduplication = false;
o.AttachServerName = false;
- o.NativeSdkName = "sentry.native.dotnet";
+ o.NativeSdkName = "sentry.native.android.dotnet";
// These options are intentionally not expose or modified
//o.MaxRequestBodySize // N/A for Android apps