| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 11 days | Preserve unknown idle playback position | itsb | |
| 13 days | Use client-reported position for idle playback cleanup | itsb | |
| 2026-07-23 | Avoid unnecessary list allocation in CheckForIdlePlayback | mbastian77 | |
| 2026-07-05 | Merge pull request #17044 from Shadowghost/version-model-and-handling | Cody Robibero | |
| Fixes for multi version handling | |||
| 2026-07-02 | Fix review comments | Shadowghost | |
| 2026-06-24 | Fix Live TV tuner not releasing | theguymadmax | |
| 2026-06-07 | Add version-aware playback tracking | Shadowghost | |
| 2026-05-29 | Remove the unused NowPlayingQueueFullItems session property from session ↵ | PCEWLKR | |
| DTOs and associated references | |||
| 2026-05-21 | Run tree-wide dotnet format | jakobkukla | |
| 2026-05-12 | Update log for user session related concurrency update fails | JPVenson | |
| 2026-05-06 | Merge pull request #16321 from ↵ | Bond-009 | |
| WizardOfYendor1/fix/livetv-consumer-leak-negative-position-ticks Fix live stream consumer leak on negative PositionTicks | |||
| 2026-05-05 | Backport changes from #15368 | JPVenson | |
| 2026-05-04 | Guard against null-overwrite of saved audio/subtitle track selections | llaforest | |
| Some clients omit AudioStreamIndex or SubtitleStreamIndex in playback progress reports and it causes previously saved track selections to be erased. Add .HasValue checks so only explicit track changes are persisted. | |||
| 2026-05-03 | Merge remote-tracking branch 'upstream/master' into perf-rebased | Shadowghost | |
| 2026-04-24 | Merge branch 'master' into Preservation-of-Watched-Status-on-Re-watch | Bond-009 | |
| 2026-04-07 | Merge remote-tracking branch 'upstream/master' into perf-rebased | Shadowghost | |
| 2026-03-28 | reverse check for track changed | Patrick Cunniff | |
| Signed-off-by: Patrick Cunniff <pjcfifa@gmail.com> | |||
| 2026-03-27 | Fix live stream consumer leak when PositionTicks is negative | WizardOfYendor1 | |
| When a stalled HLS client sends ReportPlaybackStopped with a negative PositionTicks (e.g. HLS.js reporting position on buffer stall), the ArgumentOutOfRangeException was thrown before GetSession was called, causing CloseLiveStreamIfNeededAsync to never run. This left the ILiveStream.ConsumerCount permanently incremented, permanently holding a tuner open with no active viewer. Fix by acquiring the session and performing live stream cleanup before throwing the validation exception, so tuner resources are always freed even when playback reporting fails with invalid position data. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | |||
| 2026-01-30 | Merge remote-tracking branch 'upstream/master' into perf-rebased | Shadowghost | |
| 2026-01-28 | Backport pull request #16109 from jellyfin/release-10.11.z | nielsvanvelzen | |
| Fix SessionInfoWebSocketListener not using SessionInfoDto Original-merge: e65aff8bc67e3cc97d2ebe141de9ff6a8681d792 Merged-by: nielsvanvelzen <nielsvanvelzen@users.noreply.github.com> Backported-by: Bond_009 <bond.009@outlook.com> | |||
| 2026-01-18 | Complete LinkedChildren integration and batch DTO optimizations | Shadowghost | |
| This commit integrates remaining performance changes: - Add batch user data fetching in DtoService to reduce N+1 queries - Add GetNextUpEpisodesBatch in TVSeriesManager for efficient batch retrieval - Update Video/Movie/BoxSet to use LibraryManager for alternate versions - Transition LinkedChild to use ItemId instead of Path (obsolete Path/LibraryItemId) - Update providers and controllers for LinkedChildren-based references - Add NextUpEpisodeBatchResult for batched episode queries - Integrate IDescendantQueryProvider in SqliteDatabaseProvider | |||
| 2025-12-31 | SessionManager: Improved wording of playback messages | Jonathan Davies | |
| 2025-12-31 | SessionManager: Log usernames in playback messages | Jonathan Davies | |
| 2025-12-31 | SessionManager: Log when playback is started | Jonathan Davies | |
| 2025-12-10 | Remove redundant assignment in playback start logic | Masood | |
| 2025-12-10 | Fix watched status resetting on re-watch | Masood | |
| 2025-06-23 | RemoveNowPlayingItem should also set FullNowPlayingItem to null (#14360) bb | Mason Weigand | |
| 2025-06-09 | fix(Session): don't query DB if queue hasn't changed (#14244) | Sid K | |
| 2025-06-06 | Fixing race condition in GetSessionInfo (#14131) | Mohammed Alhaddar | |
| 2025-03-31 | Cleanup ItemFields (#13818) | Tim Eisele | |
| * Cleanup ItemFields * Update MediaBrowser.Model/Querying/ItemFields.cs | |||
| 2025-03-27 | Fix consumer count off by one when closing a browser tab with a livestream ↵ | timminator | |
| that is transcoding (#13220) Rework Implementation Fix review issues Add missing nullorempty check Fix closely related #13721 | |||
| 2025-03-25 | Fixed namespaces | JPVenson | |
| 2025-03-25 | WIP fixed namespaces | JPVenson | |
| 2025-03-25 | Merge branch 'master' into feature/DatabaseRefactor | JPVenson | |
| 2025-03-20 | Fix OnPlaybackStopped task erroring out (#13226) | timminator | |
| 2025-02-02 | Merge remote-tracking branch 'jellyfinorigin/master' into feature/pgsql_provider | JPVenson | |
| 2025-01-26 | Prepared Seperation of Database components for future multi provider support | JPVenson | |
| 2025-01-25 | chore: fix spelling | Josh Soref | |
| * a * acceleration * addition * altogether * api clients * artist * associated * bandwidth * cannot * capabilities * case-insensitive * case-sensitive * configuration * delimiter * dependent * diacritics * directors * enable * explicitly * filters * finish * have * hierarchy * implicit * include * information * into * its * keepalive * localization * macos * manual * matching * metadata * nonexistent * options * overridden * parsed * parser * playback * preferring * processes * processing * provider * ratings * retrieval * running * segments * separate * should * station * subdirectories * superseded * supported * system * than * the * throws * transpose * valid * was link: forum or chat rooms Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> | |||
| 2024-11-03 | Backport pull request #12915 from jellyfin/release-10.10.z | JPVenson | |
| Fixed possible NullReferenceException in SessionManager Original-merge: 3592c629e78e80c9d2fc9e368c5d61a11c1bf688 Merged-by: crobibero <cody@robibe.ro> Backported-by: Joshua M. Boniface <joshua@boniface.me> | |||
| 2024-09-24 | Fix get sessions with api key (#12696) | gnattu | |
| 2024-09-18 | Fix permission checks | Shadowghost | |
| 2024-09-18 | Add SessionInfoDto, DeviceInfoDto and implement ↵ | Shadowghost | |
| JsonDelimitedArrayConverter.Write | |||
| 2024-08-30 | Remove passwordSha1 param from AuthenticateUser function | Bond_009 | |
| 2024-08-05 | Backport pull request #11901 from jellyfin/release-10.9.z | gnattu | |
| Implement Device Cache to replace EFCoreSecondLevelCacheInterceptor Original-merge: b7bc0e1c96553675a490c0bd92a58ad9c5f0d0e1 Merged-by: joshuaboniface <joshua@boniface.me> Backported-by: Bond_009 <bond.009@outlook.com> | |||
| 2024-06-01 | Backport pull request #11806 from jellyfin/release-10.9.z | Shadowghost | |
| Return missing episodes for series when no user defined Original-merge: ae584beaac0123f6a722f341a4e12b8f8fbcaf34 Merged-by: crobibero <cody@robibe.ro> Backported-by: Joshua M. Boniface <joshua@boniface.me> | |||
| 2024-04-30 | More efficient array creation (#11468) | Bond-009 | |
| 2024-04-12 | Enable more warnings as errors (#11288) | Bond-009 | |
| 2024-03-18 | refactor: use Channels as queueing mechanism for periodic websocket messages ↵ | Claus Vium | |
| (#11092) | |||
| 2024-02-09 | Add PlaybackOrder to Session state | Damian Kacperski | |
| 2024-01-17 | Use helper function to compare guid (#10825) | Cody Robibero | |
