Add PostgreSQL provider and EF Core 10 support

Introduce Jellyfin.Database.Providers.Postgres project, enabling PostgreSQL as a database backend using Entity Framework Core 10 and Npgsql. Add custom value converters and model builder extensions for PostgreSQL compatibility. Update solution-wide dependencies to Microsoft.EntityFrameworkCore 10.0.3 and Npgsql.EntityFrameworkCore.PostgreSQL 9.0.2 (as a temporary workaround until 10.x is released). Regenerate all relevant NuGet, build, and cache files. Add new and updated binaries, debug symbols, and XML documentation for affected projects. No application source code changes outside of the new provider and supporting infrastructure.
This commit is contained in:
2026-02-20 16:52:36 -05:00
parent ae274053a8
commit fd03e1f564
261 changed files with 1678 additions and 107 deletions
@@ -136,6 +136,7 @@
"Microsoft.CodeAnalysis.Common": "5.0.0",
"Microsoft.CodeAnalysis.CSharp": "5.0.0",
"Microsoft.Data.Sqlite": "10.0.3",
"Microsoft.EntityFrameworkCore": "10.0.3",
"Microsoft.EntityFrameworkCore.Design": "10.0.3",
"Microsoft.EntityFrameworkCore.Relational": "10.0.3",
"Microsoft.EntityFrameworkCore.Sqlite": "10.0.3",
@@ -156,6 +157,7 @@
"Morestachio": "5.0.1.631",
"NEbml": "1.1.0.5",
"Newtonsoft.Json": "13.0.4",
"Npgsql.EntityFrameworkCore.PostgreSQL": "9.0.2",
"PlaylistsNET": "1.4.1",
"Polly": "8.6.5",
"prometheus-net": "8.2.1",
@@ -617,6 +619,7 @@
"Microsoft.CodeAnalysis.Common": "5.0.0",
"Microsoft.CodeAnalysis.CSharp": "5.0.0",
"Microsoft.Data.Sqlite": "10.0.3",
"Microsoft.EntityFrameworkCore": "10.0.3",
"Microsoft.EntityFrameworkCore.Design": "10.0.3",
"Microsoft.EntityFrameworkCore.Relational": "10.0.3",
"Microsoft.EntityFrameworkCore.Sqlite": "10.0.3",
@@ -637,6 +640,7 @@
"Morestachio": "5.0.1.631",
"NEbml": "1.1.0.5",
"Newtonsoft.Json": "13.0.4",
"Npgsql.EntityFrameworkCore.PostgreSQL": "9.0.2",
"PlaylistsNET": "1.4.1",
"Polly": "8.6.5",
"prometheus-net": "8.2.1",
@@ -1093,6 +1097,7 @@
"Microsoft.CodeAnalysis.Common": "5.0.0",
"Microsoft.CodeAnalysis.CSharp": "5.0.0",
"Microsoft.Data.Sqlite": "10.0.3",
"Microsoft.EntityFrameworkCore": "10.0.3",
"Microsoft.EntityFrameworkCore.Design": "10.0.3",
"Microsoft.EntityFrameworkCore.Relational": "10.0.3",
"Microsoft.EntityFrameworkCore.Sqlite": "10.0.3",
@@ -1113,6 +1118,7 @@
"Morestachio": "5.0.1.631",
"NEbml": "1.1.0.5",
"Newtonsoft.Json": "13.0.4",
"Npgsql.EntityFrameworkCore.PostgreSQL": "9.0.2",
"PlaylistsNET": "1.4.1",
"Polly": "8.6.5",
"prometheus-net": "8.2.1",
@@ -1731,6 +1737,7 @@
"Microsoft.CodeAnalysis.Common": "5.0.0",
"Microsoft.CodeAnalysis.CSharp": "5.0.0",
"Microsoft.Data.Sqlite": "10.0.3",
"Microsoft.EntityFrameworkCore": "10.0.3",
"Microsoft.EntityFrameworkCore.Design": "10.0.3",
"Microsoft.EntityFrameworkCore.Relational": "10.0.3",
"Microsoft.EntityFrameworkCore.Sqlite": "10.0.3",
@@ -1751,6 +1758,7 @@
"Morestachio": "5.0.1.631",
"NEbml": "1.1.0.5",
"Newtonsoft.Json": "13.0.4",
"Npgsql.EntityFrameworkCore.PostgreSQL": "9.0.2",
"PlaylistsNET": "1.4.1",
"Polly": "8.6.5",
"prometheus-net": "8.2.1",
@@ -2217,6 +2225,7 @@
"Microsoft.CodeAnalysis.Common": "5.0.0",
"Microsoft.CodeAnalysis.CSharp": "5.0.0",
"Microsoft.Data.Sqlite": "10.0.3",
"Microsoft.EntityFrameworkCore": "10.0.3",
"Microsoft.EntityFrameworkCore.Design": "10.0.3",
"Microsoft.EntityFrameworkCore.Relational": "10.0.3",
"Microsoft.EntityFrameworkCore.Sqlite": "10.0.3",
@@ -2237,6 +2246,7 @@
"Morestachio": "5.0.1.631",
"NEbml": "1.1.0.5",
"Newtonsoft.Json": "13.0.4",
"Npgsql.EntityFrameworkCore.PostgreSQL": "9.0.2",
"PlaylistsNET": "1.4.1",
"Polly": "8.6.5",
"prometheus-net": "8.2.1",
@@ -2847,6 +2857,7 @@
"Microsoft.CodeAnalysis.Common": "5.0.0",
"Microsoft.CodeAnalysis.CSharp": "5.0.0",
"Microsoft.Data.Sqlite": "10.0.3",
"Microsoft.EntityFrameworkCore": "10.0.3",
"Microsoft.EntityFrameworkCore.Design": "10.0.3",
"Microsoft.EntityFrameworkCore.Relational": "10.0.3",
"Microsoft.EntityFrameworkCore.Sqlite": "10.0.3",
@@ -2867,6 +2878,7 @@
"Morestachio": "5.0.1.631",
"NEbml": "1.1.0.5",
"Newtonsoft.Json": "13.0.4",
"Npgsql.EntityFrameworkCore.PostgreSQL": "9.0.2",
"PlaylistsNET": "1.4.1",
"Polly": "8.6.5",
"prometheus-net": "8.2.1",
@@ -3060,6 +3072,7 @@
"Microsoft.CodeAnalysis.Common": "5.0.0",
"Microsoft.CodeAnalysis.CSharp": "5.0.0",
"Microsoft.Data.Sqlite": "10.0.3",
"Microsoft.EntityFrameworkCore": "10.0.3",
"Microsoft.EntityFrameworkCore.Design": "10.0.3",
"Microsoft.EntityFrameworkCore.Relational": "10.0.3",
"Microsoft.EntityFrameworkCore.Sqlite": "10.0.3",
@@ -3080,6 +3093,7 @@
"Morestachio": "5.0.1.631",
"NEbml": "1.1.0.5",
"Newtonsoft.Json": "13.0.4",
"Npgsql.EntityFrameworkCore.PostgreSQL": "9.0.2",
"PlaylistsNET": "1.4.1",
"Polly": "8.6.5",
"prometheus-net": "8.2.1",
@@ -3546,6 +3560,7 @@
"Microsoft.CodeAnalysis.Common": "5.0.0",
"Microsoft.CodeAnalysis.CSharp": "5.0.0",
"Microsoft.Data.Sqlite": "10.0.3",
"Microsoft.EntityFrameworkCore": "10.0.3",
"Microsoft.EntityFrameworkCore.Design": "10.0.3",
"Microsoft.EntityFrameworkCore.Relational": "10.0.3",
"Microsoft.EntityFrameworkCore.Sqlite": "10.0.3",
@@ -3566,6 +3581,7 @@
"Morestachio": "5.0.1.631",
"NEbml": "1.1.0.5",
"Newtonsoft.Json": "13.0.4",
"Npgsql.EntityFrameworkCore.PostgreSQL": "9.0.2",
"PlaylistsNET": "1.4.1",
"Polly": "8.6.5",
"prometheus-net": "8.2.1",
@@ -4024,6 +4040,7 @@
"Microsoft.CodeAnalysis.Common": "5.0.0",
"Microsoft.CodeAnalysis.CSharp": "5.0.0",
"Microsoft.Data.Sqlite": "10.0.3",
"Microsoft.EntityFrameworkCore": "10.0.3",
"Microsoft.EntityFrameworkCore.Design": "10.0.3",
"Microsoft.EntityFrameworkCore.Relational": "10.0.3",
"Microsoft.EntityFrameworkCore.Sqlite": "10.0.3",
@@ -4044,6 +4061,7 @@
"Morestachio": "5.0.1.631",
"NEbml": "1.1.0.5",
"Newtonsoft.Json": "13.0.4",
"Npgsql.EntityFrameworkCore.PostgreSQL": "9.0.2",
"PlaylistsNET": "1.4.1",
"Polly": "8.6.5",
"prometheus-net": "8.2.1",
@@ -4498,6 +4516,7 @@
"Microsoft.CodeAnalysis.Common": "5.0.0",
"Microsoft.CodeAnalysis.CSharp": "5.0.0",
"Microsoft.Data.Sqlite": "10.0.3",
"Microsoft.EntityFrameworkCore": "10.0.3",
"Microsoft.EntityFrameworkCore.Design": "10.0.3",
"Microsoft.EntityFrameworkCore.Relational": "10.0.3",
"Microsoft.EntityFrameworkCore.Sqlite": "10.0.3",
@@ -4518,6 +4537,7 @@
"Morestachio": "5.0.1.631",
"NEbml": "1.1.0.5",
"Newtonsoft.Json": "13.0.4",
"Npgsql.EntityFrameworkCore.PostgreSQL": "9.0.2",
"PlaylistsNET": "1.4.1",
"Polly": "8.6.5",
"prometheus-net": "8.2.1",
@@ -1837,6 +1837,7 @@
"Microsoft.CodeAnalysis.Common": "5.0.0",
"Microsoft.CodeAnalysis.CSharp": "5.0.0",
"Microsoft.Data.Sqlite": "10.0.3",
"Microsoft.EntityFrameworkCore": "10.0.3",
"Microsoft.EntityFrameworkCore.Design": "10.0.3",
"Microsoft.EntityFrameworkCore.Relational": "10.0.3",
"Microsoft.EntityFrameworkCore.Sqlite": "10.0.3",
@@ -1857,6 +1858,7 @@
"Morestachio": "5.0.1.631",
"NEbml": "1.1.0.5",
"Newtonsoft.Json": "13.0.4",
"Npgsql.EntityFrameworkCore.PostgreSQL": "9.0.2",
"PlaylistsNET": "1.4.1",
"Polly": "8.6.5",
"prometheus-net": "8.2.1",
@@ -1,6 +1,6 @@
{
"version": 2,
"dgSpecHash": "4Kz1nL9XahU=",
"dgSpecHash": "J24x11LX12A=",
"success": true,
"projectFilePath": "E:\\Projects\\pgsql-jellyfin\\src\\Jellyfin.Networking\\Jellyfin.Networking.csproj",
"expectedPackageFiles": [