Skip to content

Commit d0c6462

Browse files
authored
Support .NET 10 (#1676)
* Making solution, workflow and package version changes to support .NET 10 --------- Signed-off-by: Whit Waldo <[email protected]>
1 parent ae31323 commit d0c6462

File tree

18 files changed

+254
-305
lines changed

18 files changed

+254
-305
lines changed

.github/workflows/itests.yml

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,26 +10,31 @@ jobs:
1010
strategy:
1111
fail-fast: false
1212
matrix:
13-
dotnet-version: ['8.0', '9.0']
13+
dotnet-version: ['8.0', '9.0', '10.0']
1414
include:
1515
- dotnet-version: '8.0'
1616
display-name: '.NET 8.0'
17-
framework: 'net8'
17+
framework: 'net8.0'
1818
prefix: 'net8'
1919
install-version: '8.0.x'
2020
- dotnet-version: '9.0'
2121
display-name: '.NET 9.0'
22-
framework: 'net9'
22+
framework: 'net9.0'
2323
prefix: 'net9'
2424
install-version: '9.0.x'
25+
- dotnet-version: '10.0'
26+
display-name: '.NET 10.0'
27+
framework: 'net10.0'
28+
prefix: 'net10'
29+
install-version: '10.0.x'
2530
env:
2631
NUPKG_OUTDIR: bin/Release/nugets
2732
GOVER: 1.20.3
2833
GOOS: linux
2934
GOARCH: amd64
3035
GOPROXY: https://proxy.golang.org
31-
DAPR_CLI_VER: 1.15.2
32-
DAPR_RUNTIME_VER: 1.16.0-rc.6
36+
DAPR_CLI_VER: 1.16.3
37+
DAPR_RUNTIME_VER: 1.16.6
3338
DAPR_INSTALL_URL: https://raw.githubusercontent.com/dapr/cli/release-1.16/install/install.sh
3439
DAPR_CLI_REF: ''
3540
steps:
@@ -104,6 +109,12 @@ jobs:
104109
with:
105110
dotnet-version: '9.0.x'
106111
dotnet-quality: 'ga'
112+
- name: Setup .NET 10 (required)
113+
uses: actions/setup-dotnet@v3
114+
if: ${{ matrix.install-version != '10.0.x' }}
115+
with:
116+
dotnet-version: '10.0.x'
117+
dotnet-quality: 'ga'
107118
- name: Restore dependencies
108119
run: dotnet restore
109120
- name: Build

.github/workflows/sdk_build.yml

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -72,20 +72,25 @@ jobs:
7272
strategy:
7373
fail-fast: false
7474
matrix:
75-
dotnet-version: [ '8.0', '9.0' ]
75+
dotnet-version: [ '8.0', '9.0', '10.0' ]
7676
os: [ubuntu-latest]
7777
project: ${{ fromJson(needs.discover-integration-v2-tests.outputs.matrix) }}
7878
include:
7979
- dotnet-version: '8.0'
8080
display-name: '.NET 8.0'
81-
framework: 'net8'
81+
framework: 'net8.0'
8282
prefix: 'net8'
8383
install-version: '8.0.x'
8484
- dotnet-version: '9.0'
8585
display-name: '.NET 9.0'
86-
framework: 'net9'
86+
framework: 'net9.0'
8787
prefix: 'net9'
8888
install-version: '9.0.x'
89+
- dotnet-version: '10.0'
90+
display-name: '.NET 10.0'
91+
framework: 'net10.0'
92+
prefix: 'net10'
93+
install-version: '10.0.x'
8994
steps:
9095
- uses: actions/checkout@v1
9196
- name: Parse release version
@@ -133,19 +138,24 @@ jobs:
133138
strategy:
134139
fail-fast: false
135140
matrix:
136-
dotnet-version: ['8.0', '9.0']
141+
dotnet-version: ['8.0', '9.0', '10.0']
137142
project: ${{ fromJson(needs.discover-unit-test-projects.outputs.matrix) }}
138143
include:
139144
- dotnet-version: '8.0'
140145
display-name: '.NET 8.0'
141-
framework: 'net8'
146+
framework: 'net8.0'
142147
prefix: 'net8'
143148
install-version: '8.0.x'
144149
- dotnet-version: '9.0'
145150
display-name: '.NET 9.0'
146-
framework: 'net9'
151+
framework: 'net9.0'
147152
prefix: 'net9'
148153
install-version: '9.0.x'
154+
- dotnet-version: '10.0'
155+
display-name: '.NET 10.0'
156+
framework: 'net10.0'
157+
prefix: 'net10'
158+
install-version: '10.0.x'
149159
steps:
150160
- uses: actions/checkout@v1
151161
- name: Parse release version

Directory.Packages.props

Lines changed: 38 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -5,56 +5,56 @@
55
</PropertyGroup>
66
<ItemGroup>
77
<PackageVersion Include="A2A" Version="0.1.0-preview.2" />
8-
<PackageVersion Include="BenchmarkDotNet" Version="0.15.2" />
8+
<PackageVersion Include="BenchmarkDotNet" Version="0.15.8" />
99
<PackageVersion Include="coverlet.collector" Version="6.0.4" />
1010
<PackageVersion Include="coverlet.msbuild" Version="6.0.4" />
11-
<PackageVersion Include="Dapr.DurableTask.Client.Grpc" Version="1.16.6" />
12-
<PackageVersion Include="Dapr.DurableTask.Worker.Grpc" Version="1.16.6" />
13-
<PackageVersion Include="GitHubActionsTestLogger" Version="2.4.1" />
11+
<PackageVersion Include="GitHubActionsTestLogger" Version="3.0.1" />
1412
<PackageVersion Include="Google.Api.CommonProtos" Version="2.17.0" />
15-
<PackageVersion Include="Google.Protobuf" Version="3.32.0" />
16-
<PackageVersion Include="Grpc.AspNetCore" Version="2.71.0" />
13+
<PackageVersion Include="Google.Protobuf" Version="3.33.4" />
14+
<PackageVersion Include="Grpc.AspNetCore" Version="2.76.0" />
1715
<PackageVersion Include="Grpc.Core.Testing" Version="2.46.6" />
18-
<PackageVersion Include="Grpc.Net.Client" Version="2.71.0" />
19-
<PackageVersion Include="Grpc.Net.ClientFactory" Version="2.71.0" />
20-
<PackageVersion Include="Grpc.Tools" Version="2.72.0" />
21-
<PackageVersion Include="Microsoft.AspNetCore.Mvc.Testing" Version="8.0.19" Condition="'$(TargetFramework)' == 'net8.0' Or '$(TargetFramework)' == 'net8'" />
22-
<PackageVersion Include="Microsoft.AspNetCore.Mvc.Testing" Version="9.0.8" Condition="'$(TargetFramework)' == 'net9.0' Or '$(TargetFramework)' == 'net9'" />
23-
<PackageVersion Include="Microsoft.AspNetCore.TestHost" Version="8.0.19" Condition="'$(TargetFramework)' == 'net8.0' Or '$(TargetFramework)' == 'net8'" />
24-
<PackageVersion Include="Microsoft.AspNetCore.TestHost" Version="9.0.8" Condition="'$(TargetFramework)' == 'net9.0' Or '$(TargetFramework)' == 'net9'" />
25-
<PackageVersion Include="Microsoft.CodeAnalysis.Analyzers" Version="4.14.0" />
26-
<PackageVersion Include="Microsoft.CodeAnalysis.Common" Version="4.14.0" />
27-
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="4.14.0" />
28-
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.Analyzer.Testing" Version="1.1.2" />
16+
<PackageVersion Include="Grpc.Net.Client" Version="2.76.0" />
17+
<PackageVersion Include="Grpc.Net.ClientFactory" Version="2.76.0" />
18+
<PackageVersion Include="Grpc.Tools" Version="2.76.0" />
19+
<PackageVersion Include="Microsoft.AspNetCore.Mvc.Testing" Version="8.0.23" Condition="'$(TargetFramework)' == 'net8.0'" />
20+
<PackageVersion Include="Microsoft.AspNetCore.Mvc.Testing" Version="9.0.12" Condition="'$(TargetFramework)' == 'net9.0'" />
21+
<PackageVersion Include="Microsoft.AspNetCore.Mvc.Testing" Version="10.0.2" Condition="'$(TargetFramework)' == 'net10.0'" />
22+
<PackageVersion Include="Microsoft.AspNetCore.TestHost" Version="8.0.23" Condition="'$(TargetFramework)' == 'net8.0'" />
23+
<PackageVersion Include="Microsoft.AspNetCore.TestHost" Version="9.0.12" Condition="'$(TargetFramework)' == 'net9.0'" />
24+
<PackageVersion Include="Microsoft.AspNetCore.TestHost" Version="10.0.2" Condition="'$(TargetFramework)' == 'net10.0'" />
25+
<PackageVersion Include="Microsoft.CodeAnalysis.Analyzers" Version="3.11.0" />
26+
<PackageVersion Include="Microsoft.CodeAnalysis.Common" Version="5.0.0" />
27+
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="5.0.0" />
28+
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.Analyzer.Testing" Version="1.1.3" />
2929
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.Analyzer.Testing.XUnit" Version="1.1.2" />
30-
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.SourceGenerators.Testing" Version="1.1.2" />
30+
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.SourceGenerators.Testing" Version="1.1.3" />
3131
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.SourceGenerators.Testing.XUnit" Version="1.1.2" />
32-
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="4.14.0" />
33-
<PackageVersion Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="4.14.0" />
34-
<PackageVersion Include="Microsoft.Extensions.AI.Abstractions" Version="9.8.0" />
35-
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="9.0.8" />
36-
<PackageVersion Include="Microsoft.Extensions.Configuration.Abstractions" Version="9.0.8" />
37-
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="9.0.8" />
38-
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="9.0.8" />
39-
<PackageVersion Include="Microsoft.Extensions.Logging" Version="9.0.8" />
40-
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="9.0.8" />
41-
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="9.0.8" />
42-
<PackageVersion Include="Microsoft.Extensions.Http" Version="9.0.8" />
43-
<PackageVersion Include="Microsoft.Extensions.Options" Version="9.0.8" />
44-
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.14.1" />
45-
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="8.0.0" />
46-
<PackageVersion Include="MinVer" Version="6.0.0" />
32+
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="5.0.0" />
33+
<PackageVersion Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="5.0.0" />
34+
<PackageVersion Include="Microsoft.Extensions.AI.Abstractions" Version="10.2.0" />
35+
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="10.0.2" />
36+
<PackageVersion Include="Microsoft.Extensions.Configuration.Abstractions" Version="10.0.2" />
37+
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="10.0.2" />
38+
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="10.0.2" />
39+
<PackageVersion Include="Microsoft.Extensions.Logging" Version="10.0.2" />
40+
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="10.0.2" />
41+
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="10.0.2" />
42+
<PackageVersion Include="Microsoft.Extensions.Http" Version="10.0.2" />
43+
<PackageVersion Include="Microsoft.Extensions.Options" Version="10.0.2" />
44+
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.0.1" />
45+
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="10.0.102" />
46+
<PackageVersion Include="MinVer" Version="7.0.0" />
4747
<PackageVersion Include="Moq" Version="4.20.72" />
4848
<PackageVersion Include="protobuf-net.Grpc.AspNetCore" Version="1.2.2" />
49-
<PackageVersion Include="Serilog.AspNetCore" Version="9.0.0" />
50-
<PackageVersion Include="Serilog.Sinks.Console" Version="6.0.0" />
49+
<PackageVersion Include="Serilog.AspNetCore" Version="10.0.0" />
50+
<PackageVersion Include="Serilog.Sinks.Console" Version="6.1.1" />
5151
<PackageVersion Include="Serilog.Sinks.File" Version="7.0.0" />
5252
<PackageVersion Include="Shouldly" Version="4.3.0" />
53-
<PackageVersion Include="System.Net.ServerSentEvents" Version="9.0.8" />
54-
<PackageVersion Include="System.Text.Json" Version="9.0.8" />
53+
<PackageVersion Include="System.Net.ServerSentEvents" Version="10.0.2" />
54+
<PackageVersion Include="System.Text.Json" Version="10.0.2" />
5555
<PackageVersion Include="Testcontainers" Version="4.9.0" />
5656
<PackageVersion Include="xunit" Version="2.9.3" />
5757
<PackageVersion Include="xunit.extensibility.core" Version="2.9.3" />
58-
<PackageVersion Include="xunit.runner.visualstudio" Version="3.1.4" />
58+
<PackageVersion Include="xunit.runner.visualstudio" Version="3.1.5" />
5959
</ItemGroup>
6060
</Project>

examples/Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<Import Project="$(MSBuildThisFileDirectory)..\properties\dapr_managed_netcore.props" />
33

44
<PropertyGroup>
5-
<TargetFrameworks>net8;net9</TargetFrameworks>
5+
<TargetFrameworks>net8.0;net9.0;net10.0</TargetFrameworks>
66
<!-- Set Output Path for samples-->
77
<OutputPath>$(RepoRoot)bin\$(Configuration)\examples\$(MSBuildProjectName)\</OutputPath>
88

examples/Hosting/Aspire/ServiceInvocationDemo/FrontendApp/FrontendApp.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
</PropertyGroup>
99

1010
<ItemGroup>
11-
<PackageReference Include="Dapr.AspNetCore" Version="1.15.4" />
11+
<PackageReference Include="Dapr.AspNetCore" Version="1.16.1" />
1212
</ItemGroup>
1313

1414
<ItemGroup>

global.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
2-
"_comment": "This policy allows the 9.0.100 SDK or patches in that family.",
2+
"_comment": "This policy allows the 10.0.100 SDK or patches in that family.",
33
"sdk": {
4-
"version": "9.0.100",
4+
"version": "10.0.100",
55
"rollForward": "latestFeature"
66
}
77
}

src/Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<Import Project="$(MSBuildThisFileDirectory)..\properties\dapr_nuget.props" />
44

55
<PropertyGroup>
6-
<TargetFrameworks>net8;net9</TargetFrameworks>
6+
<TargetFrameworks>net8.0;net9.0;net10.0</TargetFrameworks>
77
<OutputPath>$(RepoRoot)bin\$(Configuration)\prod\$(MSBuildProjectName)\</OutputPath>
88

99
<DocumentationFile>$(OutputPath)$(MSBuildProjectName).xml</DocumentationFile>

test/Dapr.Actors.Analyzers.Test/TimerCallbackMethodPresentAnalyzerTests.cs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,16 @@ public class TimerCallbackMethodPresentAnalyzerTests
2323
private static readonly ReferenceAssemblies assemblies = ReferenceAssemblies.Net.Net80;
2424
#elif NET9_0
2525
private static readonly ReferenceAssemblies assemblies = ReferenceAssemblies.Net.Net90;
26+
#elif NET10_0
27+
private static readonly ReferenceAssemblies assemblies = ReferenceAssemblies.Net.Net100;
2628
#endif
2729

2830
[Fact]
2931
public async Task TestActor_TimerRegistration_NotPresent()
3032
{
3133
var context = new CSharpAnalyzerTest<TimerCallbackMethodPresentAnalyzer, DefaultVerifier>();
3234
context.ReferenceAssemblies = assemblies.AddPackages([
33-
new ("Dapr.Actors", "1.15.3")
35+
new ("Dapr.Actors", "1.16.1")
3436
]);
3537

3638
context.TestCode = """
@@ -55,7 +57,7 @@ public async Task TestActor_TimerRegistration_NameOfCallbackPresent()
5557
{
5658
var context = new CSharpAnalyzerTest<TimerCallbackMethodPresentAnalyzer, DefaultVerifier>();
5759
context.ReferenceAssemblies = assemblies.AddPackages([
58-
new ("Dapr.Actors", "1.15.3")
60+
new ("Dapr.Actors", "1.16.1")
5961
]);
6062

6163

@@ -86,7 +88,7 @@ public async Task TestActor_TimerRegistration_LiteralCallbackPresent()
8688
{
8789
var context = new CSharpAnalyzerTest<TimerCallbackMethodPresentAnalyzer, DefaultVerifier>();
8890
context.ReferenceAssemblies = assemblies.AddPackages([
89-
new ("Dapr.Actors", "1.15.3")
91+
new ("Dapr.Actors", "1.16.1")
9092
]);
9193

9294

@@ -117,7 +119,7 @@ public async Task TestActor_TimerRegistration_CallbackNotPresent()
117119
{
118120
var context = new CSharpAnalyzerTest<TimerCallbackMethodPresentAnalyzer, DefaultVerifier>();
119121
context.ReferenceAssemblies = assemblies.AddPackages([
120-
new ("Dapr.Actors", "1.15.3")
122+
new ("Dapr.Actors", "1.16.1")
121123
]);
122124

123125
context.TestCode = """

test/Dapr.Actors.Generators.Test/CSharpSourceGeneratorVerifier.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ public Test()
3636
8;
3737
#elif NET9_0
3838
9;
39+
#elif NET10_0
40+
10;
3941
#endif
4042

4143
//

test/Dapr.Analyzers.Common/TestUtilities.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ internal static class TestUtilities
3535
var referenceAssemblies = ReferenceAssemblies.Net.Net80;
3636
#elif NET9_0
3737
var referenceAssemblies = ReferenceAssemblies.Net.Net90;
38+
#elif NET10_0
39+
var referenceAssemblies = ReferenceAssemblies.Net.Net100;
3840
#endif
3941

4042
// Create a new project with necessary references

0 commit comments

Comments
 (0)