<feed xmlns='http://www.w3.org/2005/Atom'>
<title>jellyfin/MediaBrowser.LocalMetadata/Parsers, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://git.b0n.dev/jellyfin/atom?h=master</id>
<link rel='self' href='https://git.b0n.dev/jellyfin/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/'/>
<updated>2026-01-18T18:48:46Z</updated>
<entry>
<title>Complete LinkedChildren integration and batch DTO optimizations</title>
<updated>2026-01-18T18:48:46Z</updated>
<author>
<name>Shadowghost</name>
<email>Ghost_of_Stone@web.de</email>
</author>
<published>2026-01-17T16:10:07Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=5996c4afce11249804d24f1caa3a99b390543c4d'/>
<id>urn:sha1:5996c4afce11249804d24f1caa3a99b390543c4d</id>
<content type='text'>
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
</content>
</entry>
<entry>
<title>Merge branch 'master' into sort-nfo-data</title>
<updated>2025-02-04T01:48:59Z</updated>
<author>
<name>Marc Brooks</name>
<email>IDisposable@gmail.com</email>
</author>
<published>2025-02-04T01:48:59Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=e8cbcde02ebd930a5eeb6c95e0875a9e30acb3e8'/>
<id>urn:sha1:e8cbcde02ebd930a5eeb6c95e0875a9e30acb3e8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore: fix spelling</title>
<updated>2025-01-26T01:05:15Z</updated>
<author>
<name>Josh Soref</name>
<email>2119212+jsoref@users.noreply.github.com</email>
</author>
<published>2024-12-08T07:52:54Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=044cf9fb8597c6507a249d17cea443305881c4f6'/>
<id>urn:sha1:044cf9fb8597c6507a249d17cea443305881c4f6</id>
<content type='text'>
* 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 &lt;2119212+jsoref@users.noreply.github.com&gt;
</content>
</entry>
<entry>
<title>Sort embedded collections in Nfo files</title>
<updated>2024-09-19T01:33:18Z</updated>
<author>
<name>Marc Brooks</name>
<email>IDisposable@gmail.com</email>
</author>
<published>2023-05-15T05:38:27Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=6dc61a430ba3a8480399309f277e5debfd6403ba'/>
<id>urn:sha1:6dc61a430ba3a8480399309f277e5debfd6403ba</id>
<content type='text'>
Because the Nfo files emit the collections as they are in-memory, the
files are not stable in format, genres, tags, albums, people, etc. are emitted in random orders. Add ordering of the collections when emitting the Nfo files so the file remains stable (unchanged) when underlying media information doesn't change.

In the process of this, it became clear that most of the providers and probes don't trim the strings like people's names, genre names, etc. so did a pass of Trim cleanup too.

Specific ordering: (alphabetical/numeric ascending after trimming blanks and defaulting to zero for missing numbers)

BaseItem: Directors, Writers, Trailers (by Url), Production Locations, Genres, Studios, Tags, Custom Provider Data (by key), Linked Children  (by Path&gt;LibraryItemId), Backdrop Images (by path), Actors (by SortOrder&gt;Name)

AlbumNfo: Artists, Album Artists, Tracks (by ParentIndexNumber&gt;IndexNumber&gt;Name)

ArtistNfo: Albums (by Production Year&gt;SortName&gt;Name)

MovieNfo: Artists

Fix Debug build lint


Fix CI debug build lint issue.


Fix review issues

Fixed debug-build lint issues.
Emits the `disc` number to NFO for tracks with a non-zero ParentIndexNumber and only emit `position` if non-zero.
Removed the exception filtering I put in for testing.

Don't emit actors for MusicAlbums or MusicArtists


Swap from String.Trimmed() to ?.Trim()
Addressing PR feedback

Can't use ReadOnlySpan in an async method

Removed now-unused namespace</content>
</entry>
<entry>
<title>Add TrySetProviderId extension</title>
<updated>2024-07-17T13:48:21Z</updated>
<author>
<name>Bond_009</name>
<email>bond.009@outlook.com</email>
</author>
<published>2024-07-17T13:48:21Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=ecd2dab0a2550c80ae054576d9c05ddb24d5e47b'/>
<id>urn:sha1:ecd2dab0a2550c80ae054576d9c05ddb24d5e47b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Implement update endpoint</title>
<updated>2024-04-01T18:43:05Z</updated>
<author>
<name>Shadowghost</name>
<email>Ghost_of_Stone@web.de</email>
</author>
<published>2024-04-01T18:43:05Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=c1dbb49315f90bf03445a960eb8eace86f1ea6f2'/>
<id>urn:sha1:c1dbb49315f90bf03445a960eb8eace86f1ea6f2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Apply review suggestions</title>
<updated>2024-04-01T17:59:48Z</updated>
<author>
<name>Shadowghost</name>
<email>Ghost_of_Stone@web.de</email>
</author>
<published>2024-04-01T17:59:48Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=bff37ed13aa9ee0267ee5e1248339c6044fa1b0c'/>
<id>urn:sha1:bff37ed13aa9ee0267ee5e1248339c6044fa1b0c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Apply review suggestions</title>
<updated>2024-03-26T22:45:14Z</updated>
<author>
<name>Shadowghost</name>
<email>Ghost_of_Stone@web.de</email>
</author>
<published>2024-03-26T22:45:14Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=56c432a8439e1b75c15729bfdb19d41d34e3124d'/>
<id>urn:sha1:56c432a8439e1b75c15729bfdb19d41d34e3124d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Convert string MediaType to enum MediaType</title>
<updated>2023-10-10T21:57:15Z</updated>
<author>
<name>Cody Robibero</name>
<email>cody@robibe.ro</email>
</author>
<published>2023-05-13T18:44:31Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=2920611ffc206d845563637c4a865bf3f02d1374'/>
<id>urn:sha1:2920611ffc206d845563637c4a865bf3f02d1374</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove logger parameter from XmlReaderExtensions.TryReadDateTime</title>
<updated>2023-10-06T20:56:50Z</updated>
<author>
<name>Patrick Barron</name>
<email>barronpm@gmail.com</email>
</author>
<published>2023-10-06T20:56:50Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=40e1c5f4c6901469c1c7f3f763f83d1b38e5e979'/>
<id>urn:sha1:40e1c5f4c6901469c1c7f3f763f83d1b38e5e979</id>
<content type='text'>
</content>
</entry>
</feed>
