diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index af4aa748d7..bd2f29bd33 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "jetbrains.resharper.globaltools": { - "version": "2024.2.6", + "version": "2024.3.0-eap04", "commands": [ "jb" ], diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index da0993c185..574bf9a83e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -48,6 +48,12 @@ jobs: dotnet-version: | 6.0.x 8.0.x + - name: Setup .NET 9 (unstable) + uses: actions/setup-dotnet@v4 + with: + dotnet-version: | + 9.0.x + dotnet-quality: 'preview' - name: Show installed versions shell: pwsh run: | @@ -166,6 +172,12 @@ jobs: dotnet-version: | 6.0.x 8.0.x + - name: Setup .NET 9 (unstable) + uses: actions/setup-dotnet@v4 + with: + dotnet-version: | + 9.0.x + dotnet-quality: 'preview' - name: Git checkout uses: actions/checkout@v4 - name: Restore tools @@ -221,6 +233,12 @@ jobs: dotnet-version: | 6.0.x 8.0.x + - name: Setup .NET 9 (unstable) + uses: actions/setup-dotnet@v4 + with: + dotnet-version: | + 9.0.x + dotnet-quality: 'preview' - name: Git checkout uses: actions/checkout@v4 with: diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index eb0375769e..2f8ebe747d 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -29,6 +29,12 @@ jobs: dotnet-version: | 6.0.x 8.0.x + - name: Setup .NET 9 (unstable) + uses: actions/setup-dotnet@v4 + with: + dotnet-version: | + 9.0.x + dotnet-quality: 'preview' - name: Git checkout uses: actions/checkout@v4 - name: Initialize CodeQL diff --git a/Directory.Build.props b/Directory.Build.props index 6c68a15073..7d51f982cb 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -24,6 +24,14 @@ $(NoWarn);$(UseCollectionExpressionRules) + + + preview + true + direct + $(NoWarn);NU1608;NETSDK1215 + + $(NoWarn);AV2210 diff --git a/NuGet.config b/NuGet.config new file mode 100644 index 0000000000..ffc65557fc --- /dev/null +++ b/NuGet.config @@ -0,0 +1,11 @@ + + + + + + + + + + diff --git a/package-versions.props b/package-versions.props index ed9b06b1aa..a6c3cb31aa 100644 --- a/package-versions.props +++ b/package-versions.props @@ -20,6 +20,18 @@ 2.8.* + + + N/A + + + 9.0.*-* + 9.0.0-rtm.24508.5 + 9.0.0-rc.2-ci.20240930T080442 + 9.0.0-* + $(AspNetCoreVersion) + + 8.0.0 @@ -27,6 +39,8 @@ 8.0.* 8.0.* + $(EntityFrameworkCoreVersion) + $(EntityFrameworkCoreVersion) $(AspNetCoreVersion) @@ -38,6 +52,8 @@ 6.0.* 2.1.* 7.0.* + $(EntityFrameworkCoreVersion) + $(EntityFrameworkCoreVersion) 8.0.* diff --git a/src/Examples/DapperExample/DapperExample.csproj b/src/Examples/DapperExample/DapperExample.csproj index f49c3e4b40..3b065969f8 100644 --- a/src/Examples/DapperExample/DapperExample.csproj +++ b/src/Examples/DapperExample/DapperExample.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 @@ -14,8 +14,12 @@ + + + + - - + + diff --git a/src/Examples/DapperExample/Program.cs b/src/Examples/DapperExample/Program.cs index f7bf198af9..31e5814e5b 100644 --- a/src/Examples/DapperExample/Program.cs +++ b/src/Examples/DapperExample/Program.cs @@ -31,8 +31,13 @@ } case DatabaseProvider.MySql: { - builder.Services.AddMySql(connectionString, ServerVersion.AutoDetect(connectionString), - optionsAction: options => SetDbContextDebugOptions(options)); +#if NET9_0_OR_GREATER + ServerVersion serverVersion = await ServerVersion.AutoDetectAsync(connectionString); +#else + ServerVersion serverVersion = ServerVersion.AutoDetect(connectionString); +#endif + + builder.Services.AddMySql(connectionString, serverVersion, optionsAction: options => SetDbContextDebugOptions(options)); break; } diff --git a/src/Examples/DatabasePerTenantExample/DatabasePerTenantExample.csproj b/src/Examples/DatabasePerTenantExample/DatabasePerTenantExample.csproj index 0ccb4bbc5f..f6f17920ac 100644 --- a/src/Examples/DatabasePerTenantExample/DatabasePerTenantExample.csproj +++ b/src/Examples/DatabasePerTenantExample/DatabasePerTenantExample.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 @@ -13,6 +13,6 @@ - + diff --git a/src/Examples/GettingStarted/GettingStarted.csproj b/src/Examples/GettingStarted/GettingStarted.csproj index 1f4645f323..22fc0529b1 100644 --- a/src/Examples/GettingStarted/GettingStarted.csproj +++ b/src/Examples/GettingStarted/GettingStarted.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 diff --git a/src/Examples/JsonApiDotNetCoreExample/JsonApiDotNetCoreExample.csproj b/src/Examples/JsonApiDotNetCoreExample/JsonApiDotNetCoreExample.csproj index 0ccb4bbc5f..f6f17920ac 100644 --- a/src/Examples/JsonApiDotNetCoreExample/JsonApiDotNetCoreExample.csproj +++ b/src/Examples/JsonApiDotNetCoreExample/JsonApiDotNetCoreExample.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 @@ -13,6 +13,6 @@ - + diff --git a/src/Examples/MultiDbContextExample/MultiDbContextExample.csproj b/src/Examples/MultiDbContextExample/MultiDbContextExample.csproj index 1f4645f323..22fc0529b1 100644 --- a/src/Examples/MultiDbContextExample/MultiDbContextExample.csproj +++ b/src/Examples/MultiDbContextExample/MultiDbContextExample.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 diff --git a/src/Examples/NoEntityFrameworkExample/NoEntityFrameworkExample.csproj b/src/Examples/NoEntityFrameworkExample/NoEntityFrameworkExample.csproj index c5b18320f0..c45552dc2d 100644 --- a/src/Examples/NoEntityFrameworkExample/NoEntityFrameworkExample.csproj +++ b/src/Examples/NoEntityFrameworkExample/NoEntityFrameworkExample.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 diff --git a/src/Examples/ReportsExample/ReportsExample.csproj b/src/Examples/ReportsExample/ReportsExample.csproj index bff4909317..3f2c288b23 100644 --- a/src/Examples/ReportsExample/ReportsExample.csproj +++ b/src/Examples/ReportsExample/ReportsExample.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 diff --git a/test/AnnotationTests/AnnotationTests.csproj b/test/AnnotationTests/AnnotationTests.csproj index 081046adb0..7c5e5f3ae0 100644 --- a/test/AnnotationTests/AnnotationTests.csproj +++ b/test/AnnotationTests/AnnotationTests.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0;netstandard2.0 + net9.0;net8.0;net6.0;netstandard2.0 diff --git a/test/DapperTests/DapperTests.csproj b/test/DapperTests/DapperTests.csproj index 45d9c6a88d..1420e0dd60 100644 --- a/test/DapperTests/DapperTests.csproj +++ b/test/DapperTests/DapperTests.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 diff --git a/test/DiscoveryTests/DiscoveryTests.csproj b/test/DiscoveryTests/DiscoveryTests.csproj index a64d3be689..295d5340fa 100644 --- a/test/DiscoveryTests/DiscoveryTests.csproj +++ b/test/DiscoveryTests/DiscoveryTests.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 diff --git a/test/JsonApiDotNetCoreTests/JsonApiDotNetCoreTests.csproj b/test/JsonApiDotNetCoreTests/JsonApiDotNetCoreTests.csproj index 38d665aa5b..95a623d0f9 100644 --- a/test/JsonApiDotNetCoreTests/JsonApiDotNetCoreTests.csproj +++ b/test/JsonApiDotNetCoreTests/JsonApiDotNetCoreTests.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 diff --git a/test/MultiDbContextTests/MultiDbContextTests.csproj b/test/MultiDbContextTests/MultiDbContextTests.csproj index 54497bfada..6466d8d75f 100644 --- a/test/MultiDbContextTests/MultiDbContextTests.csproj +++ b/test/MultiDbContextTests/MultiDbContextTests.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 diff --git a/test/NoEntityFrameworkTests/NoEntityFrameworkTests.csproj b/test/NoEntityFrameworkTests/NoEntityFrameworkTests.csproj index 080666d491..968d798be3 100644 --- a/test/NoEntityFrameworkTests/NoEntityFrameworkTests.csproj +++ b/test/NoEntityFrameworkTests/NoEntityFrameworkTests.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 diff --git a/test/SourceGeneratorTests/SourceGeneratorTests.csproj b/test/SourceGeneratorTests/SourceGeneratorTests.csproj index e28bdc20d1..3f6487aec1 100644 --- a/test/SourceGeneratorTests/SourceGeneratorTests.csproj +++ b/test/SourceGeneratorTests/SourceGeneratorTests.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 @@ -15,6 +15,10 @@ + + + + diff --git a/test/TestBuildingBlocks/CapturingLoggerProvider.cs b/test/TestBuildingBlocks/CapturingLoggerProvider.cs index 3996b1c9e2..38ec60ed3a 100644 --- a/test/TestBuildingBlocks/CapturingLoggerProvider.cs +++ b/test/TestBuildingBlocks/CapturingLoggerProvider.cs @@ -10,7 +10,11 @@ public sealed class CapturingLoggerProvider : ILoggerProvider private static readonly Func DefaultFilter = (_, _) => true; private readonly Func _filter; +#if NET9_0_OR_GREATER + private readonly Lock _lockObject = new(); +#else private readonly object _lockObject = new(); +#endif private readonly List _messages = []; public CapturingLoggerProvider() diff --git a/test/TestBuildingBlocks/TestBuildingBlocks.csproj b/test/TestBuildingBlocks/TestBuildingBlocks.csproj index 40e10eb297..7a983627a5 100644 --- a/test/TestBuildingBlocks/TestBuildingBlocks.csproj +++ b/test/TestBuildingBlocks/TestBuildingBlocks.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 @@ -17,7 +17,7 @@ - + diff --git a/test/UnitTests/UnitTests.csproj b/test/UnitTests/UnitTests.csproj index 99fc7ce781..e977ac0c8c 100644 --- a/test/UnitTests/UnitTests.csproj +++ b/test/UnitTests/UnitTests.csproj @@ -1,6 +1,6 @@ - net8.0;net6.0 + net9.0;net8.0;net6.0 diff --git a/tests.runsettings b/tests.runsettings index 14974e19f3..036b7d7044 100644 --- a/tests.runsettings +++ b/tests.runsettings @@ -1,7 +1,6 @@ - aggressive true