aboutsummaryrefslogtreecommitdiff
path: root/Jellyfin.Server.Implementations
AgeCommit message (Collapse)Author
2 daysOnly treat series and seasons as resumable foldersShadowghost
3 daysMerge pull request #17456 from Shadowghost/fix-extrasCody Robibero
Fix extras naming and version assignment
3 daysMerge pull request #17503 from theguymadmax/fix-sortby-nameCody Robibero
Use CleanName when sorting by name
3 daysMerge pull request #17486 from Shadowghost/fix-adjacentCody Robibero
Fix AdjacentTo being ignored on non-recursive item queries
3 daysMerge pull request #17482 from Shadowghost/fix-stale-versionsCody Robibero
Fix video version links being read from stale serialised item data instead of the LinkedChildren table
3 daysMerge pull request #17147 from Shadowghost/tmdb-missing-episodesCody Robibero
Add Tmdb missing episode provider
4 daysMerge remote-tracking branch 'upstream/master' into tmdb-missing-episodesShadowghost
# Conflicts: # Jellyfin.Server.Implementations/Item/BaseItemRepository.QueryBuilding.cs
4 daysMerge pull request #17500 from theguymadmax/fix-storage-lookupCody Robibero
Fix storage info lookup for Windows
4 daysMerge pull request #17463 from Shadowghost/fix-unplayed-filterCody Robibero
Fix (Un)Played filter correctness and performance
4 daysMerge pull request #17460 from Shadowghost/fix-user-itemsCody Robibero
Queue person metadata refresh instead of blocking the item request and fix ItemCounts
4 daysMerge pull request #17416 from Shadowghost/enable-duplicate-playlist-childrenCody Robibero
Allow duplicate LinkedChildren for Playlists
5 daysUse CleanName when sorting by nametheguymadmax
5 daysFix storage lookup for Windowstheguymadmax
7 daysFix playlist entries being lost on migration and library scansShadowghost
7 daysFix AdjacentTo being ignored on non-recursive item queriesShadowghost
7 daysFixupShadowghost
7 daysFix more filter casesShadowghost
7 daysFix video version links being read from stale serialised item data instead ↵Shadowghost
of the LinkedChildren table
8 daysFix played/unplayed filter for empty Series and BoxSetsShadowghost
9 daysQueue person metadata refresh instead of blocking the item request and fix ↵Shadowghost
ItemCounts
9 daysFix extras naming and version assignmentShadowghost
10 daysUse DistinctBy where possibleShadowghost
11 daysFix favorite filter performanceShadowghost
11 daysFix DatePlayed sorting performanceShadowghost
13 daysReduce correlated subqueries to improve performanceShadowghost
13 daysAllow duplicate LinkedChildren for PlaylistsShadowghost
2026-07-21Merge pull request #16980 from ↵Cody Robibero
TheMelmacian/feature/library_specific_language_filter_values Improve language filters to only fetch language codes that match the requested items/libraries (follow up to #9787)
2026-07-21fix: remove obsolete codeTheMelmacian
2026-07-21Merge pull request #17160 from 854562/truncate-language-stringsCody Robibero
Truncate ISO-639-2 language display names at first delimiter
2026-07-21Merge pull request #17368 from Shadowghost/security-path-traversal-fixesBond-009
Backport and extend path traversal fixes
2026-07-21Apply review suggestionsShadowghost
2026-07-21Merge pull request #17367 from zerafachris/fix/backup-skip-corrupt-keyframe-dataBond-009
fix: skip corrupt KeyframeData rows during full system backup
2026-07-21Merge remote-tracking branch 'upstream/master' into ↵Shadowghost
security-path-traversal-fixes # Conflicts: # Jellyfin.Api/Controllers/HlsSegmentController.cs # Jellyfin.Api/Controllers/PluginsController.cs
2026-07-20Merge pull request #17377 from mbastian77/fix/person-visibility-allowed-tagsCody Robibero
Exempt people from the allowed tags visibility check
2026-07-20Merge branch 'master' into fix/backup-skip-corrupt-keyframe-dataCody Robibero
2026-07-20Remove comments about JSON error handlingCody Robibero
Removed comments explaining error handling for malformed JSON during backup.
2026-07-20Merge pull request #17282 from TowyTowy/fix/13137-clear-profile-imageCody Robibero
Fix profile image being impossible to clear when its in-memory key is temporary
2026-07-20Extract truncation logic to helper and add tests854562
2026-07-20Merge pull request #17302 from ElianCodes/fix/lastlogindate-stale-entityBond-009
Keep authenticated user entity in sync with persisted login timestamps
2026-07-18fix: log corrupt KeyframeData row read failures as errors, not warningszerafachris
Per review feedback from cvium: failing to read/backup an entity due to corrupt underlying data is a significant event that should be surfaced as an error, not silently downgraded to a warning.
2026-07-18Exempt people from the allowed tags visibility checkmbastian77
2026-07-17Harden remaining path-construction sinks against traversalShadowghost
2026-07-17Skip corrupt KeyframeData rows during full system backupzerafachris
A single row with malformed KeyframeTicks JSON (e.g. a truncated array from an interrupted write) currently aborts the entire backup, because the try/catch in BackupService.CreateBackupAsync only wraps serialization of an already-materialized entity, not the enumeration itself. EF Core throws JsonReaderException from MoveNextAsync() while materializing the corrupt row, which propagates past that catch block. Switch to manual enumerator iteration so MoveNextAsync() failures can be caught per-row, logged as a warning identifying the affected table, and skipped, allowing the remaining rows and the rest of the backup to complete. Fixes #17216 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-16Fix tie-breaker performanceShadowghost
2026-07-11Keep authenticated user entity in sync with persisted login timestampsElian Van Cutsem
ExecuteUpdateAsync bypasses the EF change tracker, so the user entity returned by AuthenticateUser still carried the old LastLoginDate and LastActivityDate. SessionManager.LogSessionActivity then saved that stale entity in full, reverting LastLoginDate (usually to null) milliseconds after every login. Setting the properties on the entity keeps the follow-up save consistent and lets the 60-second activity guard skip the redundant write during login. Fixes #17301
2026-07-09Fix profile image being impossible to clear when its in-memory key is temporaryTowyTowy
ClearProfileImageAsync removed the ProfileImage instance attached to the passed-in User, but that instance can carry a stale, never-persisted (temporary) key because UpdateUserAsync creates the persisted image on a separately loaded entity and never copies the generated key back. Removing that detached entity on a fresh DbContext made EF Core throw InvalidOperationException ('ImageInfo.Id has a temporary value'), leaving the profile image impossible to delete or replace. Load the tracked, persisted user and remove its actual ProfileImage, matching the removal pattern already used in UpdateUserAsync. Adds regression tests covering the temporary-key case and the no-image no-op (the first fails before this change and passes after). Fixes #13137 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08Fix max login attemptstheguymadmax
2026-07-05Merge pull request #17228 from Shadowghost/fix-logout-concurrencyCody Robibero
Don't throw on logout if session does not exist
2026-07-05Merge pull request #17044 from Shadowghost/version-model-and-handlingCody Robibero
Fixes for multi version handling
2026-07-03Allow changing capitalization of usernamesBond_009
Fixes #17195 Adds a regression test