Commit Graph

1779 Commits

Author SHA1 Message Date
unkin-agent a7919b9bac fix(userdata): read user data through to the database
ci/woodpecker/pr/ci Pipeline was successful
ci/woodpecker/push/ci Pipeline was successful
The user data cache and the item's in-memory rows were both filled once per
replica and never invalidated, so a pod serving a playback tick read its own
stale resume position and wrote it back over the position another pod had just
saved, silently losing resume points, played state, favourites and ratings.

- drop the user item data cache
- read single and batched user data from the database on every query
- prefetch user data for in-memory sorts and filters so each stays one query
- cover the lost update against real PostgreSQL with two manager instances
2026-09-20 23:51:29 +10:00
Shadowghost 50f08d41a4 Find dead people and artists by id, not by name 2026-09-01 19:49:25 +02:00
Shadowghost 7ccce8e0e7 Fix recursive handling for LinkedChildren 2026-08-31 17:56:56 +02:00
Shadowghost 8c0775e941 Bind the folder name an item-by-name entity resolves to 2026-08-25 20:31:09 +02:00
Shadowghost 8e80677bdd Fix series merging leaking across libraries and under-counting merged children 2026-08-21 22:48:47 +02:00
Cody Robibero 17b0453cfb Merge pull request #17466 from Shadowghost/fix-byname-queries
Improve People deduplication, fix search and restrict ItemByName responses
2026-08-05 18:39:55 -04:00
Shadowghost 4e2089b6a1 Keep folder extras with the item that owns the folder 2026-08-03 10:50:33 +02:00
Shadowghost 8044534774 Merge remote-tracking branch 'upstream/master' into fix-byname-queries 2026-08-02 22:12:57 +02:00
Cody Robibero 24022092ad Merge pull request #17456 from Shadowghost/fix-extras
Fix extras naming and version assignment
2026-08-02 14:25:00 -04:00
Cody Robibero 45b8f6c4c8 Merge pull request #17486 from Shadowghost/fix-adjacent
Fix AdjacentTo being ignored on non-recursive item queries
2026-08-02 14:24:13 -04:00
Shadowghost 705368ee49 Merge remote-tracking branch 'upstream/master' into fix-byname-queries
# Conflicts:
#	src/Jellyfin.Database/Jellyfin.Database.Providers.Sqlite/Migrations/JellyfinDbModelSnapshot.cs
2026-08-01 21:41:16 +02:00
Shadowghost cbc2c7c323 Preserve multiple roles per person type instead of deduping credits by name and type 2026-08-01 20:35:27 +02:00
Cody Robibero 030031dcff Merge pull request #17463 from Shadowghost/fix-unplayed-filter
Fix (Un)Played filter correctness and performance
2026-08-01 08:07:05 -04:00
Cody Robibero e816870f67 Merge pull request #17416 from Shadowghost/enable-duplicate-playlist-children
Allow duplicate LinkedChildren for Playlists
2026-08-01 08:06:02 -04:00
Shadowghost 8293eb26b9 Fix playlist entries being lost on migration and library scans 2026-07-29 14:40:49 +02:00
Shadowghost d8fc0a9914 Fix AdjacentTo being ignored on non-recursive item queries 2026-07-29 13:13:44 +02:00
Shadowghost 9a258c089d Restrict people, genres, studios and artists to names backed by an item the user can access 2026-07-28 21:28:56 +02:00
Shadowghost eed664b7d3 Fix played/unplayed filter for empty Series and BoxSets 2026-07-28 12:43:12 +02:00
Shadowghost 79a55327dc Fix extras naming and version assignment 2026-07-27 12:12:17 +02:00
Cody Robibero 02d8e7d828 Merge pull request #17417 from Shadowghost/series-merge-fixes
Fix series merging
2026-07-26 16:19:11 -04:00
Cody Robibero 7f26bd1091 Merge pull request #17399 from Shadowghost/fix-extra-year
Fix incorrect year on local trailers
2026-07-25 12:52:51 -04:00
Shadowghost 3c9727d36c Always inherit from owner item and add tests 2026-07-25 17:17:30 +02:00
Shadowghost d4cddb8a5d Fix series merging 2026-07-23 14:03:13 +02:00
Shadowghost 929e1936eb Apply cleaning logic on ForcedSortName 2026-07-22 08:30:29 +02:00
Shadowghost 6382563440 Prefer null checks over HasValue everywhere 2026-07-22 08:09:33 +02:00
Shadowghost 733b4ba73a Prefer null checks over HasValue 2026-07-22 08:09:15 +02:00
Shadowghost ca1f7af445 Fix incorrect year on local trailers 2026-07-21 20:27:04 +02:00
Cody Robibero bdf263d867 Merge pull request #17377 from mbastian77/fix/person-visibility-allowed-tags
Exempt people from the allowed tags visibility check
2026-07-20 21:26:06 -04:00
Cody Robibero 0f88fe3c7f Merge pull request #17311 from dkanada/book-progress
extract page count from archives and PDFs
2026-07-20 20:50:25 -04:00
mbastian77 5a9fb80239 Exempt people from the allowed tags visibility check 2026-07-18 14:07:52 +02:00
mbastian77 997093ae3a Add XML docs to small entity interfaces and remove CS1591 suppressions 2026-07-15 16:07:56 +02:00
dkanada 9e996d612c extract page count from archives and PDFs 2026-07-12 19:46:56 +09:00
Shadowghost 9a2fdb3573 Fix additional parts for non-admins 2026-07-08 13:43:30 +02:00
Cody Robibero 6e728b009f Merge pull request #17044 from Shadowghost/version-model-and-handling
Fixes for multi version handling
2026-07-05 16:21:02 -04:00
theguymadmax 43a152359e Fix ghost entries when deleting library paths 2026-07-03 14:12:56 -04:00
Marc Brooks 70b4589382 Fix Book collections scanning all items
Added static method GetBaseItemKindsForCollectionType in ItemsController (moved from ContentFolderImageProvider to be shared)

Added AudioBook to GetRepresentativeItemTypes for CollectionType.books for consistency

Added GetBooks to GetUserItems for CollectionType.books which gets BaseItemKind.Book and BaseItemKind.AudioBook

Move GetBaseItemKindsForCollectionType to DtoExtensions

Cleaned up the missing null checks and used new collection expressions.
Associate Person to Book and AudioBook for related items.
2026-06-26 11:25:58 -05:00
Shadowghost a9dc8f6f74 Always apply recursive when filters are requested 2026-06-13 18:06:15 +02:00
Shadowghost e64cc73f88 Mark only linked alternate versions as grouped media sources 2026-06-07 23:06:14 +02:00
Shadowghost 63990d6a2d Surface extras across all versions 2026-06-07 23:06:14 +02:00
Shadowghost 09723bd123 Aggregate alternate versions via GetAllVersions 2026-06-07 23:06:14 +02:00
Shadowghost c242533f4e Add version-aware playback tracking 2026-06-07 23:06:14 +02:00
Shadowghost 507998a4e3 Derive version-aware media source names 2026-06-07 23:06:14 +02:00
Bond-009 c8da0abf0f Merge pull request #17025 from Shadowghost/fix-playlist-visibility
Fix playlist visibility
2026-06-06 14:35:16 +02:00
Shadowghost 5f13afa1ce Fix playlist visibility 2026-06-04 19:08:48 +02:00
Shadowghost 47f2b3b6d0 Enforce parental filtering on additional endpoints 2026-06-03 19:35:10 +02:00
Bond-009 52cf8d1ba4 Merge pull request #16994 from theguymadmax/trim-tags
Trim tags
2026-06-02 18:24:08 +02:00
Tim Eisele c7111b7570 Only resolve symlinks on playback (#16965)
Only resolve symlinks on playback
2026-06-01 19:43:25 +02:00
theguymadmax 5ce7170813 Trim tags 2026-05-31 21:13:34 -04:00
Erik W 4af66c4e1a Improve OriginalLanguage normalization and inheritance (#16829)
Improve OriginalLanguage normalization and inheritance
2026-05-26 21:02:43 +02:00
jakobkukla 37350282cc Run tree-wide dotnet format 2026-05-21 20:48:41 +02:00