mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-01-23 23:20:51 +01:00
[PR #9446] [MERGED] Audiobook grouping fixes #11933
Labels
No labels
area:database
awaiting-feedback
backend
blocked
breaking change: web api
bug
build
ci
confirmed
discussion needed
dotnet future
downstream
duplicate
EFjellyfin.db
enhancement
feature
future
github-actions
good first issue
hdr
help wanted
invalid
investigation
librarydb
live-tv
lyrics
media playback
music
needs testing
nuget
performance
platform
pull-request
question
regression
release critical
requires-web
roadmap
security
security
stale
support
syncplay
ui & ux
upstream
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: starred/jellyfin#11933
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/jellyfin/jellyfin/pull/9446
Author: @1337joe
Created: 3/7/2023
Status: ✅ Merged
Merged: 3/9/2023
Merged by: @Bond-009
Base:
master← Head:audiobook-grouping-fixes📝 Commits (4)
160baa0Remove some BaseItem references to make ItemResolveArgs more usable for testing.1c3a97bInject IDirectoryService where needed instead of passing it through ItemResolveArgs18b8efaAdd tests for audio book resolving361fff3Fix cases where multiple files are resolved as a single book📊 Changes
16 files changed (+153 additions, -57 deletions)
View changed files
📝
Emby.Server.Implementations/Library/LibraryManager.cs(+5 -3)📝
Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs(+2 -1)📝
Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs(+5 -2)📝
Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs(+9 -6)📝
Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs(+5 -2)📝
Emby.Server.Implementations/Library/Resolvers/ExtraResolver.cs(+5 -3)📝
Emby.Server.Implementations/Library/Resolvers/GenericVideoResolver.cs(+4 -2)📝
Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs(+7 -6)📝
Emby.Server.Implementations/Library/Resolvers/PhotoResolver.cs(+14 -4)📝
Emby.Server.Implementations/Library/Resolvers/TV/EpisodeResolver.cs(+4 -2)📝
MediaBrowser.Controller/Entities/AggregateFolder.cs(+1 -1)📝
MediaBrowser.Controller/Entities/CollectionFolder.cs(+1 -1)📝
MediaBrowser.Controller/Library/ItemResolveArgs.cs(+8 -17)➕
tests/Jellyfin.Server.Implementations.Tests/Library/AudioResolverTests.cs(+76 -0)📝
tests/Jellyfin.Server.Implementations.Tests/Library/EpisodeResolverTest.cs(+5 -5)📝
tests/Jellyfin.Server.Implementations.Tests/Library/MovieResolverTests.cs(+2 -2)📄 Description
There's logic in place to stack individual audio book files as chapters/parts of a single book. Unfortunately there's not yet any way to actually browse stacked files, so in most cases the file stack is ignored in favor of the directory view.
This PR adds tests and fixes a couple corner cases that should currently be ignored but weren't. There should be fewer cases where file names unexpectedly cause a folder of audio book files to collapse to a single accessible file.
Changes
Issues
Fixes #9382
Probably fixes #8404 (no directory listings provided to verify)
May fix #7875
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.