A [boxset] or [playlist] directory reaches every library kind, and we file neither #212
Loading…
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?
BoxSetResolverandPlaylistResolverrun atFirstpriority for every collection type, and we file neither. Not a gap in one library kind: both have no collection-type gate at all, so a film library has it today just as a mixed one does.Upstream
upstream/Emby.Server.Implementations/Library/Resolvers/BoxSetResolver.cs— a directory whose name carries[boxset]is aBoxSet, and what is inside it is resolved under that.upstream/Emby.Server.Implementations/Library/Resolvers/PlaylistResolver.cs— a directory carrying[playlist]is aPlaylist; and its_musicPlaylistCollectionTypesliterally containsnull, so with no collection type the resolver also claims loose.m3u-family files.What we do
/movies/Set [boxset]/b.mkvfiles oneMovienamed"Set [boxset]"./mixed/Mix [playlist]/…files aMovienamed"Mix [playlist]". A loose.m3ureaches nothing.The bracket suffix ending up in the name is the visible half: a user sees
Set [boxset]in a library view where upstream shows a collection.Reach
crates/ephyra-app/src/scan/tree/picks a function per kind; neither resolver has a home in any of them, and both run before the ones that do.Kind::BoxSetalready exists (collections are served —crates/ephyra-http/tests/collections.rs), so this is the scan filing rows the rest of the server can already read.Verifying
cargo xtask reference gen-library-kinds(xtask/src/reference/kinds.rs) is the answer key. A[boxset]directory and a[playlist]directory in themoviestree, and a loose.m3uplus a[playlist]directory in themixedone, settle both resolvers and the priority order in one run.Found reviewing #208.
Fixed in
fe6b37c8, landed onmainat53ac9c6c.A new claim in
crates/ephyra-app/src/scan/tree/claimed.rsruns before every library kind's own walk, as upstream'sBoxSetResolverandPlaylistResolverdo atFirstpriority. The answer key records what upstream files, and ours now matches it in all seven libraries:Set [boxset]is aBoxSetnamed "Set" — the tag is stripped and the name trimmed — and what is inside keeps its own name rather than collapsing into the folder.Mix [playlist]is aPlaylistnamed "Mix", with nothing filed below it..m3uis aPlaylist, in a mixed folder, in the mixed and music libraries, and nothing at all in a film library.Verified by regenerating
cargo xtask reference gen-library-kinds, which gained a tvshows and a music library along with these cases, and by a native scan of the whole tree.The row a scan files is still empty: a playlist gets no members and no blob. That half is filed as #230.