Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,11 +60,12 @@ jobs:
--logger "console;verbosity=normal"

test-mysql:
# Pomelo.EntityFrameworkCore.MySql has no net10.0 build yet; MySql tests cap at net9.0.
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
dotnet: ['8.0.x', '9.0.x', '10.0.x']
dotnet: ['8.0.x', '9.0.x']

steps:
- uses: actions/checkout@v4
Expand All @@ -81,7 +82,7 @@ jobs:
run: >
dotnet test tests/EntityFrameworkCore.Locking.MySql.Tests
--no-restore --configuration Release
--framework net${{ matrix.dotnet == '10.0.x' && '10.0' || matrix.dotnet == '9.0.x' && '9.0' || '8.0' }}
--framework net${{ matrix.dotnet == '9.0.x' && '9.0' || '8.0' }}
--logger "console;verbosity=normal"

test-sqlserver:
Expand Down
1 change: 0 additions & 1 deletion Directory.Build.props
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
<Project>
<PropertyGroup>
<TargetFrameworks>net8.0;net9.0;net10.0</TargetFrameworks>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
Expand Down
13 changes: 10 additions & 3 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,18 @@
<PackageVersion Include="Testcontainers.PostgreSql" Version="3.10.0" />
<PackageVersion Include="Testcontainers.MySql" Version="3.10.0" />
<PackageVersion Include="Testcontainers.MsSql" Version="3.10.0" />
<!-- Provider versions for test projects — latest 8.x patches with no known CVEs -->
<PackageVersion Include="Microsoft.Data.SqlClient" Version="5.2.2" />
</ItemGroup>

<!-- EF provider package versions. Each project uses VersionOverride per TFM so the compiled
assembly matches the EF major it ships against (see Directory.Build.props for TFMs).
The default versions below are net8.0 baselines — used directly on net8.0 targets and
overridden on net9.0/net10.0 via VersionOverride in individual csproj files.
Pomelo.EntityFrameworkCore.MySql has no net10.0 build yet; MySql projects cap at net9.0. -->
<ItemGroup>
<PackageVersion Include="Microsoft.EntityFrameworkCore.Relational" Version="8.0.14" />
<PackageVersion Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="8.0.10" />
<PackageVersion Include="Pomelo.EntityFrameworkCore.MySql" Version="8.0.2" />
<PackageVersion Include="Pomelo.EntityFrameworkCore.MySql" Version="8.0.3" />
<PackageVersion Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.14" />
<PackageVersion Include="Microsoft.Data.SqlClient" Version="5.2.2" />
</ItemGroup>
</Project>
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net10.0</TargetFramework>
<!-- Pomelo.EntityFrameworkCore.MySql has no net10.0 build yet; benchmarks exercise all providers so cap at net9.0. -->
<TargetFramework>net9.0</TargetFramework>
<IsPackable>false</IsPackable>
<GenerateDocumentationFile>false</GenerateDocumentationFile>
<ServerGarbageCollection>true</ServerGarbageCollection>
Expand All @@ -11,9 +12,9 @@

<ItemGroup>
<PackageReference Include="BenchmarkDotNet" />
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" />
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" VersionOverride="9.0.4" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" VersionOverride="9.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" VersionOverride="9.0.6" />
</ItemGroup>

<ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion samples/InventoryApi/InventoryApi.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="9.0.4" />
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="10.0.1" />
<PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="10.0.0" />
<PackageReference Include="Scalar.AspNetCore" Version="2.6.0" />
</ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion samples/QueueProcessor/QueueProcessor.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="9.0.4" />
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="10.0.1" />
</ItemGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,19 @@
<PackageId>EntityFrameworkCore.Locking.MySql</PackageId>
<Description>MySQL (Pomelo) provider for EntityFrameworkCore.Locking.</Description>
<ManagePackageVersionsCentrally>false</ManagePackageVersionsCentrally>
<!-- Pomelo.EntityFrameworkCore.MySql has no net10.0 build yet; cap at net9.0. -->
<TargetFrameworks>net8.0;net9.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
<ProjectReference Include="..\EntityFrameworkCore.Locking\EntityFrameworkCore.Locking.csproj" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="[8.0.0, )" />
</ItemGroup>

<ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="[8.0.0, 9.0.0)" />
</ItemGroup>

<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="[9.0.0, 10.0.0)" />
</ItemGroup>
</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
<PackageId>EntityFrameworkCore.Locking.PostgreSQL</PackageId>
<Description>PostgreSQL (Npgsql) provider for EntityFrameworkCore.Locking.</Description>
<ManagePackageVersionsCentrally>false</ManagePackageVersionsCentrally>
<TargetFrameworks>net8.0;net9.0;net10.0</TargetFrameworks>
</PropertyGroup>

<PropertyGroup>
Expand All @@ -12,7 +13,18 @@

<ItemGroup>
<ProjectReference Include="..\EntityFrameworkCore.Locking\EntityFrameworkCore.Locking.csproj" />
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="[8.0.0, )" />
<PackageReference Include="System.IO.Hashing" Version="8.0.0" />
</ItemGroup>

<ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="[8.0.0, 9.0.0)" />
</ItemGroup>

<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="[9.0.0, 10.0.0)" />
</ItemGroup>

<ItemGroup Condition="'$(TargetFramework)' == 'net10.0'">
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="[10.0.0, 11.0.0)" />
</ItemGroup>
</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,25 @@
<PackageId>EntityFrameworkCore.Locking.SqlServer</PackageId>
<Description>SQL Server provider for EntityFrameworkCore.Locking.</Description>
<ManagePackageVersionsCentrally>false</ManagePackageVersionsCentrally>
<TargetFrameworks>net8.0;net9.0;net10.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
<ProjectReference Include="..\EntityFrameworkCore.Locking\EntityFrameworkCore.Locking.csproj" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="[8.0.0, )" />
</ItemGroup>

<ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="[8.0.0, 9.0.0)" />
</ItemGroup>

<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="[9.0.0, 10.0.0)" />
</ItemGroup>

<ItemGroup Condition="'$(TargetFramework)' == 'net10.0'">
<PackageReference
Include="Microsoft.EntityFrameworkCore.SqlServer"
Version="[10.0.0, 11.0.0)"
/>
</ItemGroup>
</Project>
19 changes: 17 additions & 2 deletions src/EntityFrameworkCore.Locking/EntityFrameworkCore.Locking.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,29 @@
<PackageId>EntityFrameworkCore.Locking</PackageId>
<Description>Row-level locking for EF Core via ForUpdate() and ForShare() LINQ extension methods.</Description>
<ManagePackageVersionsCentrally>false</ManagePackageVersionsCentrally>
<TargetFrameworks>net8.0;net9.0;net10.0</TargetFrameworks>
</PropertyGroup>

<PropertyGroup>
<!-- EF1001: intentional use of EF Core internal APIs (IDbContextOptionsExtension infrastructure) -->
<NoWarn>$(NoWarn);EF1001</NoWarn>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="[8.0.0, )" />
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="[8.0.0, 9.0.0)" />
</ItemGroup>

<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<PackageReference
Include="Microsoft.EntityFrameworkCore.Relational"
Version="[9.0.0, 10.0.0)"
/>
</ItemGroup>

<ItemGroup Condition="'$(TargetFramework)' == 'net10.0'">
<PackageReference
Include="Microsoft.EntityFrameworkCore.Relational"
Version="[10.0.0, 11.0.0)"
/>
</ItemGroup>
</Project>
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<NoWarn>$(NoWarn);EF1001</NoWarn>
<!-- Pomelo.EntityFrameworkCore.MySql has no net10.0 build yet; cap at net9.0. -->
<TargetFrameworks>net8.0;net9.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<NoWarn>$(NoWarn);EF1001</NoWarn>
<TargetFrameworks>net8.0;net9.0;net10.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<NoWarn>$(NoWarn);EF1001</NoWarn>
<TargetFrameworks>net8.0;net9.0;net10.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
<PropertyGroup>
<NoWarn>$(NoWarn);EF1001</NoWarn>
<IsPackable>false</IsPackable>
<TargetFrameworks>net8.0;net9.0;net10.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
<ProjectReference Include="..\..\src\EntityFrameworkCore.Locking\EntityFrameworkCore.Locking.csproj" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" />
<PackageReference Include="xunit" />
<PackageReference Include="AwesomeAssertions" />
</ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,25 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<NoWarn>$(NoWarn);EF1001</NoWarn>
<TargetFrameworks>net8.0;net9.0;net10.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
<ProjectReference Include="..\..\src\EntityFrameworkCore.Locking\EntityFrameworkCore.Locking.csproj" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" />
<PackageReference Include="xunit" />
<PackageReference Include="xunit.runner.visualstudio" />
<PackageReference Include="Microsoft.NET.Test.Sdk" />
<PackageReference Include="coverlet.collector" />
<PackageReference Include="AwesomeAssertions" />
</ItemGroup>

<ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" VersionOverride="9.0.6" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net10.0'">
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" VersionOverride="10.0.7" />
</ItemGroup>
</Project>
Loading