aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations/Library/LibraryManager.cs
AgeCommit message (Collapse)Author
2025-03-27Fix for Issue #12142: Fix ExtraRuleResolver filtering out top level folders ↵Michael McElroy
(#12170) * Fix ExtraRuleResolver to stop filtering out libraries where the name of the base folder matches an 'videos extras' rule with an ExtraRuleType of DirectoryName Currently the ExtraRuleResolver code doesn't know anything about the root folder of the current library. As a result, when we're attempting to add items in a library where the root folder has a name with a match in Emby.Naming.Common.NamingOptions.VideoExtraRules, the entire library is being ignored as a Video Extras folder. Need to pass in the root folder of the current library to compare to the path of the current item being evaluated, and if we match the current item's folder to the root folder, then we ignore the ExtraRules with a type of DirectoryName and we continue to scan deeper in the library. Filters still apply to subfolders within the library itself. * Update CONTRIBUTORS.md * Update Emby.Naming/Video/ExtraRuleResolver.cs * Update ExtraTests.cs Add tests for this fix. Also add missing tests in TestKodiExtras, TestExpandedExtras, and TestSample, and expanded TestDirectories into TestDirectoriesAudioExtras and TestDirectoriesVideoExtras. There were no checks for the theme-music folder name previously. * Update ExtraTests.cs Removed unnecessary "using System" * In MediaBrowser.Model, upgrade System.Text.Json from 8.0.3 (vulnerable - high risk) to 8.0.4 * Update ExtraTests.cs Remove empty lines in usings * Revert "In MediaBrowser.Model, upgrade System.Text.Json from 8.0.3 (vulnerable - high risk) to 8.0.4"
2025-03-27Implement limiting caches (#13605)Cody Robibero
* Implement basic expiring cache for LibraryManager * Add expiring cache to more places * Rider why * Make DirectoryService caches static * Use FastConcurrentLru * Reduce default cache size * Simplify DirectoryService caches * Make directory service cache size at least 128
2025-03-26Fix only returning one item from /Item/Latest api. (#12492)JQ
* Updated to EFcore * Remove unused using * Dont use DateCreated not from episode type or music type * use TranslateQuery to filter out instead and then do the grouping and retrival of min and max datecreated instead * Album also
2025-03-25Fixed namespacesJPVenson
2025-03-25WIP fixed namespacesJPVenson
2025-03-25Merge branch 'master' into feature/DatabaseRefactorJPVenson
2025-03-23Rework season folder parsing (#11748)Tim Eisele
2025-03-23Remove all DB data on item removal, delete internal trickplay files (#13753)Tim Eisele
2025-03-18Add fast-path to getting just the SeriesPresentationUniqueKey for NextUp ↵Cody Robibero
(#13687) * Add more optimized query to calculate series that should be processed for next up * Filter series based on last watched date
2025-03-01Merge remote-tracking branch 'jellyfinorigin/master' into ↵JPVenson
feature/DatabaseRefactor
2025-02-25Backport pull request #13601 from jellyfin/release-10.10.zBond-009
Delete children from cache on parent delete Original-merge: 767a5e61930897d6151bf2b5b6c4940a288deb41 Merged-by: Bond-009 <bond.009@outlook.com> Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-25Backport pull request #13611 from jellyfin/release-10.10.zShadowghost
Remove empty ParentIndexNumber workaround Original-merge: 1daf761aece5114a6ac3b7b938f114e70b83d99e Merged-by: Bond-009 <bond.009@outlook.com> Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-19Merge remote-tracking branch 'jellyfinorigin/master' into ↵JPVenson
feature/DatabaseRefactor
2025-02-09Rename CreateOrUpdateItems back to CreateItemsBond_009
Reverts the name change of this function made in the EFCore PR. This hopefully reduces the amount of merge conflicts while backporting and makes it consistent with the CreateItem function.
2025-02-02Merge remote-tracking branch 'jellyfinorigin/master' into feature/pgsql_providerJPVenson
2025-01-30Removing CollectionFolders from cache when they are deleted on disk. (#13315)sinterdev
2025-01-28Remove useless checks and dead code (#13405)Bond-009
* Remove useless checks and dead code * Enable adaptive bitrate streaming again * Disable adaptive bitrate streaming by default
2025-01-26Prepared Seperation of Database components for future multi provider supportJPVenson
2025-01-25Merge pull request #12798 from JPVenson/feature/EFUserDataJoshua M. Boniface
Refactor library.db into jellyfin.db and EFCore
2025-01-22Remove useless checks and dead codeBond_009
2024-12-12move to new System.Threading.Lock type for better performanceDaniyar Alpyspayev
2024-11-17Applied coding styleJPVenson
2024-11-14Updated order of saving for ItemsJPVenson
2024-11-14There can be also NULL people?JPVenson
2024-11-14Fixed items can be null savingJPVenson
2024-11-13Fixed Person creationJPVenson
2024-11-13Fixed storage of Person imagesJPVenson
2024-10-09WIP porting new Repository structureJPVenson
2024-09-07Remove left-over network path references (#12446)Niels van Velzen
2024-09-04Use frozen collections in MimeTypes.cs (#10826)Stepan Goremykin
Co-authored-by: Stepan Goremykin <goremukin@gmail.com>
2024-08-05Replace UserId with User in UserViewQueryBond_009
2024-07-15Improve LibraryManager.Sort when using "Random" order (#12165)ItsAllAboutTheCode
Co-authored-by: Cody Robibero <cody@robibe.ro>
2024-06-24Backport pull request #12025 from jellyfin/release-10.9.zShadowghost
Fix empty image folder removal for legacy locations Original-merge: 476dc01f4d5bf0fdf391935ef0759b0583bf7026 Merged-by: Bond-009 <bond.009@outlook.com> Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-06-06Backport pull request #11963 from jellyfin/release-10.9.zgnattu
Fix Library renaming Original-merge: b78efd6b1e90f925d85605132e337470065e7230 Merged-by: joshuaboniface <joshua@boniface.me> Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-06-01Backport pull request #11743 from jellyfin/release-10.9.zShadowghost
Fix replace logic Original-merge: 2ddb15c7845a944d980364209c2304f03cebf025 Merged-by: joshuaboniface <joshua@boniface.me> Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-05-05Validate Collection Folders on adding and removal (#11444)gnattu
2024-04-30More efficient array creation (#11468)Bond-009
2024-04-25Fix multiple intro providers and remove unneeded ToLists (#11431)Bond-009
2024-04-18Merge pull request #11352 from jellyfin/fix-library-removalBond-009
fix: explicitly allow remove root when performing library removal
2024-04-17Enable nullable for LibraryManager (#11191)Bond-009
2024-04-17chore: use proper way to override remove rootgnattu
This is an alternate approach which is more proper, but changes all parts that uses/overrides the original ValidateChildren method Signed-off-by: gnattu <gnattuoc@me.com>
2024-04-14Validate item access (#11171)Cody Robibero
2024-04-13fix: code stylegnattu
Signed-off-by: gnattu <gnattuoc@me.com>
2024-04-13fix: typognattu
Signed-off-by: gnattu <gnattuoc@me.com>
2024-04-13fix: mark UserRoot as non-root when performing removalgnattu
Fixes #11269 Signed-off-by: gnattu <gnattuoc@me.com>
2024-04-12Enable more warnings as errors (#11288)Bond-009
2024-04-12Don't throw if file was already removed (#11286)Tim Eisele
2024-03-31Fix FindExtras overwriting current extra type (#11260)Niels van Velzen
2024-03-03Precache livetv program images (#11083)Cody Robibero
* Precache livetv program images * return if cache hit * use EnsureSuccessStatusCode * Read proper bytes
2024-02-26Store lyrics in the database as media streams (#9951)Cody Robibero