Commit Graph

28303 Commits

Author SHA1 Message Date
Beatriz Teixeira 8ceb8c23ce fix(dto): prefer PlaylistsFolder primary image for playlists tiles
This patch fixes issue #16032 where the Playlists media folder ignored a user-uploaded Primary image and kept showing the generated collage. The root cause was DTO image precedence on UserView items for CollectionType.playlists. We now prefer the display parent (PlaylistsFolder) Primary image when available by clearing the UserView Primary tag and setting ParentPrimaryImageItemId/ParentPrimaryImageTag. Added tests cover both paths: parent custom image preferred, and fallback to existing UserView Primary when parent has none.
2026-03-29 15:27:32 +01:00
Ori b83378d656 Translated using Weblate (Hebrew (Israel))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/he_IL/
2026-03-04 10:06:11 +00:00
Bond-009 e378f63b70 Merge pull request #16318 from NoFear0411/fix-sar-anamorphic-detection
Fix near-1:1 SAR values falsely flagged as anamorphic
2026-03-03 20:34:05 +01:00
Ori e4500303bb Translated using Weblate (Hebrew (Israel))
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/he_IL/
2026-03-03 16:37:38 +00:00
Bond-009 2f18e6e7f6 Use artist images for music library thumbnail (#16240) 2026-03-02 21:35:47 +01:00
Bond-009 ca0b2aa7a6 AIFF support: add .aifc as audio file type, remove .aiff as image file type (#16274) 2026-03-02 21:35:31 +01:00
renovate[bot] f2ed024296 Update CI dependencies (#16324)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-02 20:52:57 +01:00
Anthony Lavado b6f4ffd251 Merge pull request #16323 from jellyfin/readme-sponsor-update
Update JetBrains logo link in README.md
2026-03-01 14:28:14 -05:00
Anthony Lavado 8715cb5b9e Update JetBrains logo link in README.md
Update the logo to match the current branding that has been live for a while now.
2026-03-01 12:38:07 -05:00
NoFear0411 d87fe973f3 Fix StyleCop and xUnit analyzer errors
- Add missing param and returns XML doc tags (SA1611, SA1615)
- Remove trailing alignment whitespace in test attributes (SA1025)
- Use nullable string parameter for null test case (xUnit1012)
2026-03-01 18:51:27 +04:00
theguymadmax f680495ca3 Backport pull request #16253 from jellyfin/release-10.11.z
Checkpoint WAL before moving library.db in migration

Original-merge: b6a96513de

Merged-by: Bond-009 <bond.009@outlook.com>

Backported-by: Bond_009 <bond.009@outlook.com>
2026-03-01 05:57:23 -05:00
MBR-0001 d2f733f9a4 Backport pull request #16204 from jellyfin/release-10.11.z
Fix broken library subtitle download settings

Original-merge: ca57166e95

Merged-by: Bond-009 <bond.009@outlook.com>

Backported-by: Bond_009 <bond.009@outlook.com>
2026-03-01 05:57:22 -05:00
JPVenson d55f082579 Merge pull request #16281 from jellyfin/JPVenson-patch-1
Revise note on hosting web client for development
2026-03-01 11:50:37 +01:00
NoFear0411 bc316b3dc8 Fix near-1:1 SAR values falsely flagged as anamorphic
Encoders sometimes produce sample aspect ratios like 3201:3200
(0.03% off square) for content that has effectively square pixels.
The exact string comparison against "1:1" marks these as anamorphic,
which triggers unnecessary transcoding on clients that require
non-anamorphic video.

Parse the SAR ratio numerically and treat values within 1% of 1:1
as square pixels. This threshold is well clear of the nearest real
anamorphic SAR (PAL 4:3 at 16:15 = 6.67% off).
2026-03-01 00:00:05 +04:00
Bond-009 e6d73ae367 Merge pull request #16307 from jellyfin/renovate/major-github-artifact-actions
Update GitHub Artifact Actions (major)
2026-02-27 18:08:16 +01:00
renovate[bot] 2068be1221 Update GitHub Artifact Actions 2026-02-26 22:50:41 +00:00
dfederm bdfb6edfa3 Backport pull request #16150 from jellyfin/release-10.11.z
Fix nullref in Season.GetEpisodes when the season is detached from a series

Original-merge: b65daeca0b

Merged-by: Bond-009 <bond.009@outlook.com>

Backported-by: Bond_009 <bond.009@outlook.com>
2026-02-26 13:54:31 -05:00
Bond-009 25e8c6d591 Merge pull request #16255 from cosu/fix/streaminfo-malformed-query-string
Fix malformed query string in StreamInfo.ToUrl() causing 500 error via proxies
2026-02-26 19:31:19 +01:00
Bond-009 c11c33e1a8 Merge pull request #16256 from Shadowghost/upgrade-swashbuckle
Upgrade Swashbuckle to v10
2026-02-26 19:31:02 +01:00
Pavel Miniutka e8232d31ab Translated using Weblate (Belarusian)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/be/
2026-02-26 07:33:06 +00:00
Bond-009 b456afe00e Merge pull request #16296 from jellyfin/renovate/microsoft
Update dependency Microsoft.NET.Test.Sdk to 18.3.0
2026-02-25 18:19:40 +01:00
renovate[bot] 01b3c6f902 Update dependency Microsoft.NET.Test.Sdk to 18.3.0 2026-02-24 16:40:26 +00:00
Evan Champion ccf2d15d5d AIFF support: add .aifc as audio file type, remove .aiff as image file type 2026-02-21 20:59:57 +08:00
INOUE Daisuke 56a469d8c3 Translated using Weblate (Japanese)
Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/ja/
2026-02-21 02:41:32 +00:00
Bond-009 2dfebb51be Merge pull request #16266 from jellyfin/renovate/ci-deps
Update github/codeql-action action to v4.32.4
2026-02-20 18:09:58 +01:00
renovate[bot] 716f4c8198 Update github/codeql-action action to v4.32.4 2026-02-20 15:41:35 +00:00
Andrew Rabert 9da046abc1 Merge pull request #16263 from jellyfin/fix/replace-pull-request-target
Mitigate pull_request_target privilege escalation
2026-02-19 23:59:07 -05:00
Andrew Rabert 01eb56f047 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.
2026-02-19 23:53:48 -05:00
Shadowghost 94dcaf2ea2 Upgrade Swashbuckle to v10 2026-02-18 22:39:49 +01:00
Cosmin Dumitru 37b50fe13c Fix malformed query string in StreamInfo.ToUrl() causing 500 error via proxies
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>
2026-02-18 21:08:35 +01:00
Niels van Velzen 6829794aa0 Merge pull request #16104 from jellyfin/renovate/tmdblib-3.x
Update dependency TMDbLib to v3
2026-02-18 21:05:14 +01:00
Bond-009 06a6c6e16b Merge pull request #16249 from jellyfin/renovate/ci-deps 2026-02-17 18:39:50 +01:00
renovate[bot] daf88a5ca2 Update actions/stale action to v10.2.0 2026-02-17 06:49:00 +00:00
Bond_009 b346370dfc Fix build 2026-02-15 11:28:42 +01:00
Bond-009 fc6419685c Merge pull request #16242 from jellyfin/renovate/coverlet.collector-8.x
Update dependency coverlet.collector to v8
2026-02-15 10:58:53 +01:00
renovate[bot] 04ffbe5e9a Update dependency TMDbLib to v3 2026-02-15 09:49:18 +00:00
Bond-009 d0809ce58b Merge pull request #16236 from theguymadmax/fix-season-unknown
Fix episodes appearing in Season Unknown incorrectly and prevent unnecessary virtual season creation
2026-02-15 10:48:55 +01:00
renovate[bot] a56aa2dd53 Update dependency coverlet.collector to v8 2026-02-15 02:37:05 +00:00
theguymadmax 106f33227a Use artist images for music library thumbnail 2026-02-14 10:06:50 -05:00
Bond-009 1311f66f72 Merge pull request #16144 from DerMaddis/series-production-year
TmdbSeriesProvider: Set ProductionYear field
2026-02-14 12:35:54 +01:00
Bond-009 217068eeb7 Merge pull request #16235 from jellyfin/renovate/ci-deps
Update github/codeql-action action to v4.32.3
2026-02-14 12:19:28 +01:00
Bond-009 44d55f7fa3 Merge pull request #15138 from kevgrig/issue15137
Add moveToTop option to IPlaylistManager.AddItemToPlaylistAsync
2026-02-14 12:08:00 +01:00
Bond-009 29582ed461 Merge branch 'master' into issue15137 2026-02-14 12:07:30 +01:00
Bond-009 ca6d499680 Update Jellyfin.Api/Controllers/PlaylistsController.cs 2026-02-14 12:06:18 +01:00
Bond-009 3b69859867 Merge pull request #14709 from loop95/fix-artist-kairon-irse
Fix: Add 'Kairon; IRSE!' to artist whitelist
2026-02-14 12:03:16 +01:00
Bond-009 c1c7de6a81 Merge pull request #16214 from jellyfin/renovate/asynckeyedlock-8.x
Update dependency AsyncKeyedLock to 8.0.2
2026-02-14 12:02:05 +01:00
Bond-009 7bcbe20641 Merge pull request #16217 from jellyfin/renovate/microsoft
Update Microsoft to 10.0.3
2026-02-14 11:58:34 +01:00
Bond-009 2edf23bb40 Merge pull request #16216 from jellyfin/renovate/dotnet-monorepo
Update dependency dotnet-ef to v10.0.3
2026-02-14 11:58:23 +01:00
theguymadmax 074aa7e639 Backport pull request #16231 from jellyfin/release-10.11.z
Skip image checks for empty folders

Original-merge: 8cd3090cee

Merged-by: Bond-009 <bond.009@outlook.com>

Backported-by: Bond_009 <bond.009@outlook.com>
2026-02-14 05:57:26 -05:00
dfederm a37e83d448 Backport pull request #16227 from jellyfin/release-10.11.z
Reattach user data after item removal during library scan

Original-merge: be71295693

Merged-by: Bond-009 <bond.009@outlook.com>

Backported-by: Bond_009 <bond.009@outlook.com>
2026-02-14 05:57:25 -05:00