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 @@ - - - - -