Commit Graph

297 Commits

Author SHA1 Message Date
evan314159 a0d4ae1974 Correct Album Artists merge logic (#14655)
* Correct Album Artists merge logic and Artist equality checks

Correct Album Artists merge logic in MetadataService that causes empty
metadata sources to overwrite populated Album Artists arrays. This impacted
People-to-BaseItem relationships and caused orphaned records in Peoples.

Correct equality checks to be case-sensitive so Jelly metadata exactly
matches file metadata.

* use StringComparer.Ordinal

---------

Co-authored-by: Evan <evan@MacBook-Pro.local>
2025-09-01 13:22:55 +02:00
Shane Powell 8dcb0bfecb Merge pull request #14309 from shanepowell/MediaInfoFixs
Fix PeopleHelper.AddPerson Exceptions due to bad meta-data extracts.
2025-07-04 19:22:27 +02:00
JPVenson 4cd0a2ed8d Always set update action when item does not exist (#14304) 2025-06-15 15:19:57 -06:00
Tim Eisele 9f0f9a276f Fix People Issues (#14284) 2025-06-12 05:21:01 -06:00
Tim Eisele 49c6a99e00 Cleanup external item data cleanup (#14072) 2025-05-09 08:35:29 -06:00
Tim Eisele d976f13970 Recognize file changes and remove data on change (#13839) 2025-05-04 21:21:44 -06:00
Tim Eisele f576783ae1 Fix distinction queries (#14007) 2025-04-26 18:49:30 -06:00
Joshua M. Boniface 79437f85c5 Merge pull request #13175 from Shadowghost/external-url-providers
Migrate to IExternalUrlProvider
2025-03-13 21:08:18 -04:00
Shadowghost 5303445c9b Migrate to IExternalUrlProvider 2025-02-20 10:13:27 +01:00
Marc Brooks e8cbcde02e Merge branch 'master' into sort-nfo-data 2025-02-03 19:48:59 -06:00
JPVenson b39553611d Applied coding style 2024-11-17 11:03:43 +00:00
JPVenson b09a41ad1f WIP porting new Repository structure 2024-10-09 10:36:08 +00:00
Marc Brooks 6dc61a430b Sort embedded collections in Nfo files
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>LibraryItemId), Backdrop Images (by path), Actors (by SortOrder>Name)

AlbumNfo: Artists, Album Artists, Tracks (by ParentIndexNumber>IndexNumber>Name)

ArtistNfo: Albums (by Production Year>SortName>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
2024-09-18 20:33:18 -05:00
Shadowghost 5d4880c497 Backport pull request #11743 from jellyfin/release-10.9.z
Fix replace logic

Original-merge: 2ddb15c784

Merged-by: joshuaboniface <joshua@boniface.me>

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-06-01 18:40:56 -04:00
Bond_009 b62b0ec2b5 Fix warnings 2023-11-14 21:14:21 +01:00
Cody Robibero 89be3aa37f Convert Person.Type to use PersonKind enum (#9487) 2023-03-25 11:52:02 -06:00
Joe Rogers 2d2b0a528c Add missing checks for item locked state in metadata updates 2023-02-12 21:59:58 -05:00
Bond-009 210a4921f2 Fix some warnings and only disable TreatWarningsAsErrors for CodeAnalysis (#8709) 2022-12-05 13:54:28 +01:00
Shadowghost a97ec65227 Apply review suggestions 2022-10-07 11:31:16 +02:00
Shadowghost 2ac095d8cd Apply review suggestions 2022-10-07 11:24:32 +02:00
Shadowghost 08c68eb8dc Apply review suggestions 2022-10-07 11:20:40 +02:00
Shadowghost ff18586beb Apply review suggestions 2022-10-07 11:12:16 +02:00
Shadowghost 42fc02cab6 Add xmldocs 2022-09-13 17:20:22 +02:00
Shadowghost 61fa325ef0 Extend music parsing 2022-09-13 17:20:22 +02:00
Joe Rogers e3a7c9238d Pull default MergeData implementation to parent 2021-12-28 15:12:09 +01:00
Bond_009 f5ca9cbc3b Enable nullable for MediaBrowser.Providers 2021-10-26 15:49:01 +02:00
Bond_009 384ab39f5b Fix some warnings 2020-09-07 13:20:39 +02:00
Bond_009 2b400c99ef Fix warnings 2020-08-19 17:50:50 +02:00
Mark Monteiro 0e9164351b Merge remote-tracking branch 'upstream/master' into external-id-type 2020-06-26 10:12:22 -04:00
Bond_009 eba488a0f8 Enable TreatWarningsAsErrors in Release for MediaBrowser.Providers 2020-06-19 20:24:13 +02:00
aled 299e49f39d Fix a small number of compile warnings 2020-06-09 23:12:53 +01:00
aled 22a860a806 Fix a small number of compile warnings 2020-06-06 20:17:49 +01:00
Mark Monteiro 4f6e5591ec Remove 'General' as an ExternalIdMediaType, and instead use 'null' to represent a general external id type 2020-05-23 16:08:51 -04:00
Mark Monteiro d06fee75b6 Rename Name to ProviderName 2020-05-17 17:36:36 -04:00
Mark Monteiro 422d5b2b68 Move ExternalIdMediaType enum to MediaBrowser.Model 2020-05-17 15:57:24 -04:00
Mark Monteiro e5c857ac36 Rename external id type 'None' to 'General' 2020-05-17 15:29:53 -04:00
Mark Monteiro 96acd6481e Merge branch 'master' into externalid-type 2020-05-17 13:50:44 -04:00
Luke Foust 0fb78cf54b Add documentation around Name, Id, and Type. Changed ExternalIdType to ExternalIdMediaType 2020-03-26 14:26:12 -07:00
Bond_009 e9d1eabd53 Remove unused usings 2020-03-24 16:12:06 +01:00
Luke Foust 9bdb99fe92 Add type to externalids to distinguish them in the UI 2020-03-22 12:58:53 -07:00
Bond-009 a7e1a5c96a Merge pull request #2506 from mark-monteiro/inject-loggers-with-context
Inject loggers with context using ILogger<T>
2020-03-10 15:04:35 +01:00
Mark Monteiro b67e9cde8c Replace ILogger with ILogger<T> wherever possible
Log entries will contain additional class context when using this interface
2020-03-03 23:07:10 +01:00
dkanada 76e49a1eb7 migrate audiodb to plugin 2020-03-03 02:07:31 +09:00
dkanada a34826008f update external ids 2020-02-24 00:22:23 +09:00
dkanada 65a9d618cc add config options for musicbrainz 2020-02-22 15:04:52 +09:00
Bond-009 c8409d2ea1 Remove FileSystem.GetStream 2020-01-22 22:20:35 +01:00
Bond_009 d868530d1e Fix comments 2019-10-29 18:37:10 +01:00
Bond_009 d9a03c9bb1 Fix more warnings 2019-10-29 17:55:16 +01:00
Bond_009 e4f893a0eb More warning fixes 2019-08-29 22:28:33 +02:00
Claus Vium 817d9b3389 Move and rename tmdb providers for better separation 2019-08-18 14:50:26 +02:00