aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.config/dotnet-tools.json2
-rw-r--r--Directory.Packages.props36
-rw-r--r--Emby.Server.Implementations/Localization/Core/vi.json3
-rw-r--r--Emby.Server.Implementations/Session/SessionManager.cs4
-rw-r--r--Jellyfin.Api/Controllers/ArtistsController.cs3
-rw-r--r--Jellyfin.Server.Implementations/Item/PeopleRepository.cs6
-rw-r--r--src/Jellyfin.Database/Jellyfin.Database.Implementations/JellyfinDbContext.cs5
7 files changed, 31 insertions, 28 deletions
diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json
index 9b44eff4c6..5fc7834fcc 100644
--- a/.config/dotnet-tools.json
+++ b/.config/dotnet-tools.json
@@ -3,7 +3,7 @@
"isRoot": true,
"tools": {
"dotnet-ef": {
- "version": "10.0.7",
+ "version": "10.0.8",
"commands": [
"dotnet-ef"
]
diff --git a/Directory.Packages.props b/Directory.Packages.props
index e8901b4a1d..e722bed973 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -26,27 +26,27 @@
<PackageVersion Include="libse" Version="4.0.12" />
<PackageVersion Include="LrcParser" Version="2025.623.0" />
<PackageVersion Include="MetaBrainz.MusicBrainz" Version="8.0.1" />
- <PackageVersion Include="Microsoft.AspNetCore.Authorization" Version="10.0.7" />
- <PackageVersion Include="Microsoft.AspNetCore.Mvc.Testing" Version="10.0.7" />
+ <PackageVersion Include="Microsoft.AspNetCore.Authorization" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.AspNetCore.Mvc.Testing" Version="10.0.8" />
<PackageVersion Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="4.14.0" />
<PackageVersion Include="Microsoft.CodeAnalysis.Common" Version="5.3.0" />
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="5.3.0" />
<PackageVersion Include="Microsoft.CodeAnalysis.Analyzers" Version="5.3.0" />
- <PackageVersion Include="Microsoft.Data.Sqlite" Version="10.0.7" />
- <PackageVersion Include="Microsoft.EntityFrameworkCore.Design" Version="10.0.7" />
- <PackageVersion Include="Microsoft.EntityFrameworkCore.Relational" Version="10.0.7" />
- <PackageVersion Include="Microsoft.EntityFrameworkCore.Sqlite" Version="10.0.7" />
- <PackageVersion Include="Microsoft.EntityFrameworkCore.Tools" Version="10.0.7" />
- <PackageVersion Include="Microsoft.Extensions.Caching.Abstractions" Version="10.0.7" />
- <PackageVersion Include="Microsoft.Extensions.Caching.Memory" Version="10.0.7" />
- <PackageVersion Include="Microsoft.Extensions.Configuration.Abstractions" Version="10.0.7" />
- <PackageVersion Include="Microsoft.Extensions.Configuration.Binder" Version="10.0.7" />
- <PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="10.0.7" />
- <PackageVersion Include="Microsoft.Extensions.Diagnostics.HealthChecks.EntityFrameworkCore" Version="10.0.7" />
- <PackageVersion Include="Microsoft.Extensions.Hosting.Abstractions" Version="10.0.7" />
- <PackageVersion Include="Microsoft.Extensions.Http" Version="10.0.7" />
- <PackageVersion Include="Microsoft.Extensions.Logging" Version="10.0.7" />
- <PackageVersion Include="Microsoft.Extensions.Options" Version="10.0.7" />
+ <PackageVersion Include="Microsoft.Data.Sqlite" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.EntityFrameworkCore.Design" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.EntityFrameworkCore.Relational" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.EntityFrameworkCore.Sqlite" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.EntityFrameworkCore.Tools" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.Extensions.Caching.Abstractions" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.Extensions.Caching.Memory" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.Extensions.Configuration.Abstractions" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.Extensions.Configuration.Binder" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.Extensions.Diagnostics.HealthChecks.EntityFrameworkCore" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.Extensions.Hosting.Abstractions" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.Extensions.Http" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.Extensions.Logging" Version="10.0.8" />
+ <PackageVersion Include="Microsoft.Extensions.Options" Version="10.0.8" />
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.5.1" />
<PackageVersion Include="MimeTypes" Version="2.5.2" />
<PackageVersion Include="Morestachio" Version="5.0.1.670" />
@@ -77,7 +77,7 @@
<PackageVersion Include="Svg.Skia" Version="3.4.1" />
<PackageVersion Include="Swashbuckle.AspNetCore.ReDoc" Version="10.1.7" />
<PackageVersion Include="Swashbuckle.AspNetCore" Version="10.1.7" />
- <PackageVersion Include="System.Text.Json" Version="10.0.7" />
+ <PackageVersion Include="System.Text.Json" Version="10.0.8" />
<PackageVersion Include="TagLibSharp" Version="2.3.0" />
<PackageVersion Include="z440.atl.core" Version="7.13.0" />
<PackageVersion Include="TMDbLib" Version="3.0.0" />
diff --git a/Emby.Server.Implementations/Localization/Core/vi.json b/Emby.Server.Implementations/Localization/Core/vi.json
index 947a2c80de..831ec62fb3 100644
--- a/Emby.Server.Implementations/Localization/Core/vi.json
+++ b/Emby.Server.Implementations/Localization/Core/vi.json
@@ -135,5 +135,6 @@
"TaskMoveTrickplayImagesDescription": "Di chuyển các tập tin trickplay hiện có theo cài đặt thư viện.",
"TaskExtractMediaSegments": "Quét Phân Đoạn Phương Tiện",
"CleanupUserDataTask": "Tác vụ dọn dẹp dữ liệu người dùng",
- "CleanupUserDataTaskDescription": "Làm sạch tất cả dữ liệu người dùng (trạng thái xem, trạng thái yêu thích, v.v.) từ phương tiện không còn có mặt trong ít nhất 90 ngày."
+ "CleanupUserDataTaskDescription": "Làm sạch tất cả dữ liệu người dùng (trạng thái xem, trạng thái yêu thích, v.v.) từ phương tiện không còn có mặt trong ít nhất 90 ngày.",
+ "Original": "Gốc"
}
diff --git a/Emby.Server.Implementations/Session/SessionManager.cs b/Emby.Server.Implementations/Session/SessionManager.cs
index 1782b53e10..2885b89e3a 100644
--- a/Emby.Server.Implementations/Session/SessionManager.cs
+++ b/Emby.Server.Implementations/Session/SessionManager.cs
@@ -271,9 +271,9 @@ namespace Emby.Server.Implementations.Session
user.LastActivityDate = activityDate;
await _userManager.UpdateUserAsync(user).ConfigureAwait(false);
}
- catch (DbUpdateConcurrencyException e)
+ catch (DbUpdateConcurrencyException)
{
- _logger.LogDebug(e, "Error updating user's last activity date.");
+ _logger.LogDebug("Error updating user's last activity date due to concurrency conflict. This is an expected event.");
}
}
}
diff --git a/Jellyfin.Api/Controllers/ArtistsController.cs b/Jellyfin.Api/Controllers/ArtistsController.cs
index f97ab414ce..f19ca77818 100644
--- a/Jellyfin.Api/Controllers/ArtistsController.cs
+++ b/Jellyfin.Api/Controllers/ArtistsController.cs
@@ -87,6 +87,7 @@ public class ArtistsController : BaseJellyfinApiController
/// <returns>An <see cref="OkResult"/> containing the artists.</returns>
[HttpGet]
[ProducesResponseType(StatusCodes.Status200OK)]
+ [Obsolete("Use GetPersons")]
public ActionResult<QueryResult<BaseItemDto>> GetArtists(
[FromQuery] double? minCommunityRating,
[FromQuery] int? startIndex,
@@ -258,6 +259,7 @@ public class ArtistsController : BaseJellyfinApiController
/// <returns>An <see cref="OkResult"/> containing the album artists.</returns>
[HttpGet("AlbumArtists")]
[ProducesResponseType(StatusCodes.Status200OK)]
+ [Obsolete("Use GetPersons")]
public ActionResult<QueryResult<BaseItemDto>> GetAlbumArtists(
[FromQuery] double? minCommunityRating,
[FromQuery] int? startIndex,
@@ -399,6 +401,7 @@ public class ArtistsController : BaseJellyfinApiController
/// <returns>An <see cref="OkResult"/> containing the artist.</returns>
[HttpGet("{name}")]
[ProducesResponseType(StatusCodes.Status200OK)]
+ [Obsolete("Use GetPerson")]
public ActionResult<BaseItemDto> GetArtistByName([FromRoute, Required] string name, [FromQuery] Guid? userId)
{
userId = RequestHelpers.GetUserId(User, userId);
diff --git a/Jellyfin.Server.Implementations/Item/PeopleRepository.cs b/Jellyfin.Server.Implementations/Item/PeopleRepository.cs
index a0ffe9aea0..8f8741d00f 100644
--- a/Jellyfin.Server.Implementations/Item/PeopleRepository.cs
+++ b/Jellyfin.Server.Implementations/Item/PeopleRepository.cs
@@ -119,7 +119,6 @@ public class PeopleRepository(IDbContextFactory<JellyfinDbContext> dbProvider, I
.ToArray();
var toAdd = people
- .Where(e => e.Type is not PersonKind.Artist && e.Type is not PersonKind.AlbumArtist)
.Where(e => !existingPersons.Any(f => string.Equals(f.Name, e.Name, StringComparison.OrdinalIgnoreCase) && f.PersonType == e.Type.ToString()))
.Select(Map);
context.Peoples.AddRange(toAdd);
@@ -133,11 +132,6 @@ public class PeopleRepository(IDbContextFactory<JellyfinDbContext> dbProvider, I
foreach (var person in people)
{
- if (person.Type == PersonKind.Artist || person.Type == PersonKind.AlbumArtist)
- {
- continue;
- }
-
var entityPerson = personsEntities.First(e => string.Equals(e.Name, person.Name, StringComparison.OrdinalIgnoreCase) && e.PersonType == person.Type.ToString());
var existingMap = existingMaps.FirstOrDefault(e => string.Equals(e.People.Name, person.Name, StringComparison.OrdinalIgnoreCase) && e.People.PersonType == person.Type.ToString() && e.Role == person.Role);
if (existingMap is null)
diff --git a/src/Jellyfin.Database/Jellyfin.Database.Implementations/JellyfinDbContext.cs b/src/Jellyfin.Database/Jellyfin.Database.Implementations/JellyfinDbContext.cs
index f6fce7279a..83c15aa647 100644
--- a/src/Jellyfin.Database/Jellyfin.Database.Implementations/JellyfinDbContext.cs
+++ b/src/Jellyfin.Database/Jellyfin.Database.Implementations/JellyfinDbContext.cs
@@ -273,6 +273,11 @@ public class JellyfinDbContext(DbContextOptions<JellyfinDbContext> options, ILog
}).ConfigureAwait(false);
return result;
}
+ catch (DbUpdateConcurrencyException)
+ {
+ // a concurrency exception is supposed to be always handled by the invoker of the method, logging it here is only causing log bloat.
+ throw;
+ }
catch (Exception e)
{
logger.LogError(e, "Error trying to save changes.");