diff --git a/.github/workflows/package.yaml b/.github/workflows/package.yaml index 1bf7695..6034d0b 100644 --- a/.github/workflows/package.yaml +++ b/.github/workflows/package.yaml @@ -21,8 +21,12 @@ jobs: - name: Package | Setup uses: actions/setup-dotnet@v3 with: - dotnet-version: 8.0.x - dotnet-quality: 'preview' + dotnet-version: | + 6.0.x + 7.0.x + 9.0.x + 8.0.x + 10.0.x - name: Package | Publish run: dotnet pack -c Release -o ./pack /p:Version=$VERSION $PROJECT @@ -41,7 +45,7 @@ jobs: env: PROJECT: src/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.csproj VERSION: ${{ steps.release.outputs.tag }} - + - name: Package | Publish | SQLite run: dotnet pack -c Release -o ./pack /p:Version=$VERSION $PROJECT env: diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index e904c30..2c230d3 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -20,8 +20,12 @@ jobs: - name: Tests | Setup uses: actions/setup-dotnet@v3 with: - dotnet-version: 8.0.x - dotnet-quality: 'preview' + dotnet-version: | + 6.0.x + 7.0.x + 9.0.x + 8.0.x + 10.0.x - name: Tests run: dotnet test /p:CollectCoverage=true /p:CoverletOutputFormat=lcov diff --git a/src/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.csproj b/src/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.csproj index 8da5402..3055a6e 100644 --- a/src/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.csproj +++ b/src/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.csproj @@ -1,7 +1,7 @@ - net6.0;net7.0;net8.0 + net6.0;net7.0;net8.0;net10.0 enable 12 true @@ -33,6 +33,10 @@ + + + + true diff --git a/src/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL.csproj b/src/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL.csproj index 3211f4d..dcb2c4d 100644 --- a/src/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL.csproj +++ b/src/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL.csproj @@ -1,7 +1,7 @@ - net6.0;net7.0;net8.0 + net6.0;net7.0;net8.0;net10.0 enable 12 true @@ -33,6 +33,10 @@ + + + + true diff --git a/src/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite.csproj b/src/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite.csproj index c9737d3..7310750 100644 --- a/src/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite.csproj +++ b/src/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite.csproj @@ -1,7 +1,7 @@ - net6.0;net7.0;net8.0 + net6.0;net7.0;net8.0;net10.0 enable enable 12 @@ -34,6 +34,10 @@ + + + + true diff --git a/src/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer.csproj b/src/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer.csproj index a88f443..cc938e4 100644 --- a/src/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer.csproj +++ b/src/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer.csproj @@ -1,7 +1,7 @@ - net6.0;net7.0;net8.0 + net6.0;net7.0;net8.0;net10.0 enable 12 true @@ -23,27 +23,32 @@ - + - + - + + + + + + true false - + true false - + diff --git a/src/AppAny.Quartz.EntityFrameworkCore.Migrations/AppAny.Quartz.EntityFrameworkCore.Migrations.csproj b/src/AppAny.Quartz.EntityFrameworkCore.Migrations/AppAny.Quartz.EntityFrameworkCore.Migrations.csproj index 561a9b2..8c8a673 100644 --- a/src/AppAny.Quartz.EntityFrameworkCore.Migrations/AppAny.Quartz.EntityFrameworkCore.Migrations.csproj +++ b/src/AppAny.Quartz.EntityFrameworkCore.Migrations/AppAny.Quartz.EntityFrameworkCore.Migrations.csproj @@ -1,7 +1,7 @@ - net6.0;net7.0;net8.0 + net6.0;net7.0;net8.0;net10.0 enable 12 true @@ -29,6 +29,10 @@ + + + + true diff --git a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests.csproj b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests.csproj index 42fca0f..3e285da 100644 --- a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests.csproj +++ b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests.csproj @@ -1,25 +1,23 @@ - net6.0;net7.0;net8.0 + net6.0;net7.0;net8.0;net10.0 enable false true - + all runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - - - - + + + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive @@ -30,6 +28,8 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive + + @@ -37,6 +37,18 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + diff --git a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests/MySqlIntegrationDbContextIntegrationTests.cs b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests/MySqlIntegrationDbContextIntegrationTests.cs index ddff111..cdb7586 100644 --- a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests/MySqlIntegrationDbContextIntegrationTests.cs +++ b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests/MySqlIntegrationDbContextIntegrationTests.cs @@ -15,11 +15,19 @@ public MySqlIntegrationDbContextIntegrationTests(DatabaseFixture fixture) { this._connectionString = fixture.ConnectionString; +#if NET10_0_OR_GREATER + // Oracle MySQL provider uses UseMySQL (capital SQL) and doesn't require ServerVersion parameter + var options = new DbContextOptionsBuilder() + .UseMySQL(this._connectionString) + .Options; +#else + // Pomelo provider uses UseMySql and requires ServerVersion parameter (NET8_0) var options = new DbContextOptionsBuilder() .UseMySql( this._connectionString, ServerVersion.AutoDetect(fixture.ConnectionString)) .Options; +#endif this._dbContext = new MySqlIntegrationDbContext(options); } diff --git a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests/QuartzTriggerModelMappingTests.cs b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests/QuartzTriggerModelMappingTests.cs index 56d0205..336d152 100644 --- a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests/QuartzTriggerModelMappingTests.cs +++ b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.MySql.Tests/QuartzTriggerModelMappingTests.cs @@ -9,11 +9,19 @@ public class QuartzTriggerModelMappingTests [Fact] public void ShouldMapMisfireOriginalFireTimeColumn() { +#if NET10_0_OR_GREATER + // Oracle MySQL provider uses UseMySQL (capital SQL) and doesn't require ServerVersion parameter + var options = new DbContextOptionsBuilder() + .UseMySQL("Server=localhost;Port=3306;Database=quartz_mapping_tests;User=root;Password=password") + .Options; +#else + // Pomelo provider uses UseMySql and requires ServerVersion parameter (NET8_0) var options = new DbContextOptionsBuilder() .UseMySql( "Server=localhost;Port=3306;Database=quartz_mapping_tests;User=root;Password=password", ServerVersion.Parse("8.0.36-mysql")) .Options; +#endif using var dbContext = new MySqlIntegrationDbContext(options); var entityType = dbContext.Model.FindEntityType(typeof(QuartzTrigger)); diff --git a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL.Tests.csproj b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL.Tests.csproj index 8509f9e..88d1ddf 100644 --- a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL.Tests.csproj +++ b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.PostgreSQL.Tests.csproj @@ -1,24 +1,23 @@ - net6.0;net7.0;net8.0 + net6.0;net7.0;net8.0;net10.0 enable false true - + all runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - - - + + + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive @@ -29,6 +28,7 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive + @@ -36,6 +36,15 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + diff --git a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite.Tests.csproj b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite.Tests.csproj index 6ec7112..a4db5b8 100644 --- a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite.Tests.csproj +++ b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SQLite.Tests.csproj @@ -1,22 +1,21 @@ - net6.0;net7.0;net8.0 + net6.0;net7.0;net8.0;net10.0 enable false true - + all runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive @@ -27,6 +26,7 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive + @@ -34,6 +34,15 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + diff --git a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer.Tests.csproj b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer.Tests.csproj index 68c5d90..515b6b0 100644 --- a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer.Tests.csproj +++ b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.SqlServer.Tests.csproj @@ -1,24 +1,23 @@ - net6.0;net7.0;net8.0 + net6.0;net7.0;net8.0;net10.0 enable false true - + all runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - - - + + + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive @@ -29,6 +28,7 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive + @@ -36,6 +36,16 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + diff --git a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.Tests.csproj b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.Tests.csproj index 0f2d4ff..e8dd128 100644 --- a/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.Tests.csproj +++ b/tests/AppAny.Quartz.EntityFrameworkCore.Migrations.Tests/AppAny.Quartz.EntityFrameworkCore.Migrations.Tests.csproj @@ -1,25 +1,24 @@ - + - net6.0;net7.0;net8.0 + net6.0;net7.0;net8.0;net10.0 enable false true - - - - - - - - + + + + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive - + all runtime; build; native; contentfiles; analyzers; buildtransitive @@ -30,6 +29,8 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive + + @@ -37,6 +38,18 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + +