diff --git a/.github/workflows/Component.BuildTest.yml b/.github/workflows/Component.BuildTest.yml
index 4aef74c5f2..3310e14fea 100644
--- a/.github/workflows/Component.BuildTest.yml
+++ b/.github/workflows/Component.BuildTest.yml
@@ -22,7 +22,7 @@ on:
required: false
type: string
tfm-list:
- default: '[ "net462", "net8.0", "net9.0" ]'
+ default: '[ "net462", "net8.0", "net9.0", "net10.0" ]'
required: false
type: string
test-case-filter:
diff --git a/.github/workflows/ci-Exporter.OneCollector-Integration.yml b/.github/workflows/ci-Exporter.OneCollector-Integration.yml
index 2a5faf1bd8..0aab766e79 100644
--- a/.github/workflows/ci-Exporter.OneCollector-Integration.yml
+++ b/.github/workflows/ci-Exporter.OneCollector-Integration.yml
@@ -29,7 +29,7 @@ jobs:
fail-fast: false # ensures the entire test matrix is run, even if one permutation fails
matrix:
os: [ windows-latest, ubuntu-22.04 ]
- version: [ net462, net8.0 ]
+ version: [ net462, net8.0, net10.0 ]
exclude:
- os: ubuntu-22.04
version: net462
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index b628064321..ea83513358 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -227,7 +227,7 @@ jobs:
with:
project-name: OpenTelemetry.Instrumentation.AspNetCore
code-cov-name: Instrumentation.AspNetCore
- tfm-list: '[ "net8.0", "net9.0" ]'
+ tfm-list: '[ "net8.0", "net9.0", "net10.0" ]'
build-test-instrumentation-aws:
needs: detect-changes
@@ -239,7 +239,7 @@ jobs:
with:
project-name: OpenTelemetry.Instrumentation.AWS
code-cov-name: Instrumentation.AWS
- tfm-list: '[ "net472", "net8.0", "net9.0" ]'
+ tfm-list: '[ "net472", "net8.0", "net9.0", "net10.0" ]'
build-test-instrumentation-cassandra:
needs: detect-changes
@@ -315,7 +315,7 @@ jobs:
with:
project-name: OpenTelemetry.Instrumentation.EventCounters
code-cov-name: Instrumentation.EventCounters
- tfm-list: '[ "net8.0", "net9.0" ]'
+ tfm-list: '[ "net8.0", "net9.0", "net10.0" ]'
build-test-instrumentation-grpccore:
needs: detect-changes
diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml
index 2cae700458..db2bffdc20 100644
--- a/.github/workflows/integration.yml
+++ b/.github/workflows/integration.yml
@@ -17,7 +17,7 @@ jobs:
strategy:
fail-fast: false
matrix:
- version: [net8.0]
+ version: [net8.0, net10.0]
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
@@ -30,7 +30,7 @@ jobs:
strategy:
fail-fast: false
matrix:
- version: [net8.0]
+ version: [net8.0, net10.0]
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
diff --git a/.github/workflows/verifyaotcompat.yml b/.github/workflows/verifyaotcompat.yml
index f3a3b7af62..2b78ececc6 100644
--- a/.github/workflows/verifyaotcompat.yml
+++ b/.github/workflows/verifyaotcompat.yml
@@ -13,7 +13,7 @@ jobs:
fail-fast: false # ensures the entire test matrix is run, even if one permutation fails
matrix:
os: [ ubuntu-22.04, windows-latest ]
- version: [ net8.0, net9.0 ]
+ version: [ net8.0, net9.0, net10.0 ]
runs-on: ${{ matrix.os }}
steps:
diff --git a/build/Common.nonprod.props b/build/Common.nonprod.props
index 1391862566..2b4d733fc7 100644
--- a/build/Common.nonprod.props
+++ b/build/Common.nonprod.props
@@ -32,7 +32,7 @@
[17.14.1,18.0)
$(OpenTelemetryCoreLatestVersion)
- net9.0;net8.0
+ net10.0;net9.0;net8.0
[2.8.2,3.0)
[2.9.3,3.0)
[1.7.0,2.0)
diff --git a/build/Common.targets b/build/Common.targets
index 37e016c07d..f4407d8101 100644
--- a/build/Common.targets
+++ b/build/Common.targets
@@ -14,10 +14,6 @@
-
-
diff --git a/build/docker-compose.net10.0.yml b/build/docker-compose.net10.0.yml
new file mode 100644
index 0000000000..02819dc476
--- /dev/null
+++ b/build/docker-compose.net10.0.yml
@@ -0,0 +1,9 @@
+version: '3.7'
+
+services:
+ tests:
+ build:
+ args:
+ PUBLISH_FRAMEWORK: net10.0
+ TEST_SDK_VERSION: "10.0"
+ BUILD_SDK_VERSION: "10.0"
diff --git a/build/docker-compose.net8.0.yml b/build/docker-compose.net8.0.yml
index b93fc24655..930c9f138f 100644
--- a/build/docker-compose.net8.0.yml
+++ b/build/docker-compose.net8.0.yml
@@ -4,4 +4,4 @@ services:
args:
PUBLISH_FRAMEWORK: net8.0
TEST_SDK_VERSION: "8.0"
- BUILD_SDK_VERSION: "9.0"
+ BUILD_SDK_VERSION: "10.0"
diff --git a/build/docker-compose.net9.0.yml b/build/docker-compose.net9.0.yml
index 94176258b2..10a6dc5cf2 100644
--- a/build/docker-compose.net9.0.yml
+++ b/build/docker-compose.net9.0.yml
@@ -4,4 +4,4 @@ services:
args:
PUBLISH_FRAMEWORK: net9.0
TEST_SDK_VERSION: "9.0"
- BUILD_SDK_VERSION: "9.0"
+ BUILD_SDK_VERSION: "10.0"
diff --git a/global.json b/global.json
index 2655d1a8a6..5deefcbcb0 100644
--- a/global.json
+++ b/global.json
@@ -1,7 +1,7 @@
{
"sdk": {
- "rollForward": "latestFeature",
+ "rollForward": "latestMajor",
"allowPrerelease": false,
- "version": "9.0.305"
+ "version": "10.0.100-rc.1.25451.107"
}
}
diff --git a/opentelemetry-dotnet-contrib.sln b/opentelemetry-dotnet-contrib.sln
index e5474a63d2..404979ebf0 100644
--- a/opentelemetry-dotnet-contrib.sln
+++ b/opentelemetry-dotnet-contrib.sln
@@ -57,6 +57,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{824BD1DE
build\debug.snk = build\debug.snk
build\docker-compose.net8.0.yml = build\docker-compose.net8.0.yml
build\docker-compose.net9.0.yml = build\docker-compose.net9.0.yml
+ build\docker-compose.net10.0.yml = build\docker-compose.net10.0.yml
build\opentelemetry-icon-color.png = build\opentelemetry-icon-color.png
build\OpenTelemetryContrib.prod.ruleset = build\OpenTelemetryContrib.prod.ruleset
build\OpenTelemetryContrib.test.ruleset = build\OpenTelemetryContrib.test.ruleset
diff --git a/src/OpenTelemetry.Instrumentation.Http/Implementation/HttpHandlerDiagnosticListener.cs b/src/OpenTelemetry.Instrumentation.Http/Implementation/HttpHandlerDiagnosticListener.cs
index 234cfa10ac..18794f671b 100644
--- a/src/OpenTelemetry.Instrumentation.Http/Implementation/HttpHandlerDiagnosticListener.cs
+++ b/src/OpenTelemetry.Instrumentation.Http/Implementation/HttpHandlerDiagnosticListener.cs
@@ -22,6 +22,7 @@ internal sealed class HttpHandlerDiagnosticListener : ListenerHandler
internal static readonly AssemblyName AssemblyName = typeof(HttpHandlerDiagnosticListener).Assembly.GetName();
internal static readonly bool IsNet7OrGreater = Environment.Version.Major >= 7;
internal static readonly bool IsNet9OrGreater = Environment.Version.Major >= 9;
+ internal static readonly bool IsNet10OrGreater = Environment.Version.Major >= 10;
// https://github.com/dotnet/runtime/blob/7d034ddbbbe1f2f40c264b323b3ed3d6b3d45e9a/src/libraries/System.Net.Http/src/System/Net/Http/DiagnosticsHandler.cs#L19
internal static readonly string ActivitySourceName = AssemblyName.Name + ".HttpClient";
@@ -178,7 +179,8 @@ public void OnStopActivity(Activity activity, object? payload)
var requestTaskStatus = GetRequestStatus(payload);
var currentStatusCode = activity.Status;
- if (requestTaskStatus != TaskStatus.RanToCompletion)
+
+ if (!IsNet10OrGreater && requestTaskStatus != TaskStatus.RanToCompletion)
{
if (requestTaskStatus == TaskStatus.Canceled)
{
diff --git a/test/OpenTelemetry.AotCompatibility.TestApp/OpenTelemetry.AotCompatibility.TestApp.csproj b/test/OpenTelemetry.AotCompatibility.TestApp/OpenTelemetry.AotCompatibility.TestApp.csproj
index 4cfe681ebe..7c7e65f047 100644
--- a/test/OpenTelemetry.AotCompatibility.TestApp/OpenTelemetry.AotCompatibility.TestApp.csproj
+++ b/test/OpenTelemetry.AotCompatibility.TestApp/OpenTelemetry.AotCompatibility.TestApp.csproj
@@ -13,11 +13,6 @@
-
-
-
-
-