| Age | Commit message (Collapse) | Author |
|
Update GitHub Artifact Actions (major)
|
|
|
|
Fix nullref in Season.GetEpisodes when the season is detached from a series
Original-merge: b65daeca0baf7a447185205461b4a9d758bbeb26
Merged-by: Bond-009 <bond.009@outlook.com>
Backported-by: Bond_009 <bond.009@outlook.com>
|
|
Fix malformed query string in StreamInfo.ToUrl() causing 500 error via proxies
|
|
Upgrade Swashbuckle to v10
|
|
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/be/
|
|
Update dependency Microsoft.NET.Test.Sdk to 18.3.0
|
|
|
|
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ja/
|
|
Update github/codeql-action action to v4.32.4
|
|
|
|
Mitigate pull_request_target privilege escalation
|
|
Hotfix — replaces pull_request_target with pull_request to stop
granting write permissions and secrets to fork PRs. Some workflows
will break; can be fixed properly later.
|
|
|
|
StreamInfo.ToUrl() generated URLs like `/master.m3u8?&DeviceId=...` (note `?&`)
because `?` was appended to the path and all parameters started with `&`. When
the first optional parameter (DeviceProfileId) was null, the result was a
malformed query string.
This is harmless when clients hit Jellyfin directly (ASP.NET Core tolerates `?&`),
but when accessed through a reverse proxy that parses and re-serializes the URL
(e.g. Home Assistant ingress via aiohttp/yarl), `?&` becomes `?=&` — introducing
an empty-key query parameter. ParseStreamOptions then crashes on `param.Key[0]`
with IndexOutOfRangeException.
Changes:
- StreamInfo.ToUrl(): Track query start position and replace the first `&` with
`?` after all parameters are appended, producing valid query strings
- ParseStreamOptions: Guard against empty query parameter keys
- Tests: Remove .Replace("?&", "?") workaround that masked the bug
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
|
Update dependency TMDbLib to v3
|
|
|
|
|
|
|
|
Update dependency coverlet.collector to v8
|
|
|
|
Fix episodes appearing in Season Unknown incorrectly and prevent unnecessary virtual season creation
|
|
|
|
TmdbSeriesProvider: Set ProductionYear field
|
|
Update github/codeql-action action to v4.32.3
|
|
Add moveToTop option to IPlaylistManager.AddItemToPlaylistAsync
|
|
|
|
|
|
Fix: Add 'Kairon; IRSE!' to artist whitelist
|
|
Update dependency AsyncKeyedLock to 8.0.2
|
|
Update Microsoft to 10.0.3
|
|
Update dependency dotnet-ef to v10.0.3
|
|
Skip image checks for empty folders
Original-merge: 8cd3090ceedbefd680b26dc28266ae9a6e5d652a
Merged-by: Bond-009 <bond.009@outlook.com>
Backported-by: Bond_009 <bond.009@outlook.com>
|
|
Reattach user data after item removal during library scan
Original-merge: be712956932a9337f0706fd8ef68eb53feb3f4ff
Merged-by: Bond-009 <bond.009@outlook.com>
Backported-by: Bond_009 <bond.009@outlook.com>
|
|
Deduplicate provider IDs during MigrateLibraryDb migration
Original-merge: 58c330b63d5e373ed1d9260a75d837922ca68830
Merged-by: Bond-009 <bond.009@outlook.com>
Backported-by: Bond_009 <bond.009@outlook.com>
|
|
Fix TMDB image URLs missing size parameter
Original-merge: caa05c1bf2c55053a65091886f0ddf78865fc72c
Merged-by: Bond-009 <bond.009@outlook.com>
Backported-by: Bond_009 <bond.009@outlook.com>
|
|
|
|
virtual season creation
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fix container and updated
|
|
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/be/
|
|
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ca/
|
|
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/it/
|
|
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/it/
|
|
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/it/
|