Commit Graph

926 Commits

Author SHA1 Message Date
theguymadmax d6cebf1e67 Add tag filtering and random sorting to GetSimilarItems (#14918) 2025-10-01 17:26:48 -06:00
JPVenson 5a6d9180fe Add People Dedup and multiple progress fixes (#14848) 2025-09-24 15:20:30 -06:00
JPVenson 98f5e21bb8 Fix groupings not applied (#14826) 2025-09-22 15:31:21 -06:00
Tim Eisele b73ea1b99d Skip removed images (#14823) 2025-09-20 07:20:21 -06:00
JPVenson a1b85a63e7 Fix root folder not being saved to Db if nessesary (#14819)
* Fix root folder not being saved to Db if nessesary

* Always update folder to Db
2025-09-19 11:47:41 -06:00
JPVenson a0b3e2b071 Optimize internal querying of UserData, other fixes (#14795) 2025-09-16 13:08:04 -06:00
Bond-009 8776a447d1 Various cleanups (#14785) 2025-09-12 13:58:23 -06:00
Bond-009 deee04ae38 Add fast path to check for empty ignore files (#14782) 2025-09-12 13:58:02 -06:00
theguymadmax 986a509955 Add 1-second tolerance to resume playback completion check (#14774) 2025-09-11 15:24:23 -06:00
theguymadmax 0845b0c258 Skip non-media folders in movie resolver (#14724)
* Skip non-media folders in movie resolver

* Ignorepatterns first
2025-09-07 13:02:52 +02:00
theguymadmax d9eaeed61d Fix latest items grouping by collection type (#14736)
* Fix latest items grouping by collection type

* Update Emby.Server.Implementations/Library/UserViewManager.cs

Co-authored-by: Bond-009 <bond.009@outlook.com>

---------

Co-authored-by: Bond-009 <bond.009@outlook.com>
2025-09-05 11:05:37 +02:00
Cody Robibero bd94ca3071 Merge pull request #14634 from crobibero/itemname-counts 2025-08-12 20:20:54 -06:00
Cody Robibero beca405ad4 Refactor to pull item counts in a single query 2025-08-11 21:06:04 -06:00
Tim Eisele 0650666497 Always save images (#14600) 2025-08-09 08:24:26 -06:00
Joshua M. Boniface 1262ac31dc Merge pull request #14410 from dyphire/language
Further refinement of BCP 47 language labeling support
2025-08-03 17:29:40 -04:00
Joshua M. Boniface 0f5bb5cf76 Merge pull request #14540 from TokerX/issue-8641
Improve extra rule resolution and file handling
2025-08-03 17:29:04 -04:00
dyphire 2007815fa6 Further refinement of BCP 47 language labeling support 2025-07-30 22:15:37 +08:00
evan314159 6f49782b7b fix file modification date comparisons (#14503) 2025-07-27 20:08:06 -06:00
Piyush Rungta e86315128d Ignore directory if empty .ignore file is present (#14536) 2025-07-27 19:22:12 -06:00
Sven Cazier 7785b51f57 Enhance extra rules for video and audio file naming; update tests for new naming conventions 2025-07-26 23:24:58 +02:00
Tim Eisele a068f75623 Set DateLastSaved after running metadata savers (#14531) 2025-07-25 08:20:19 -06:00
JPVenson 4d5ba8d7a5 Only save images when changed (#14425) 2025-07-07 09:14:01 -06:00
Tim Eisele c6e568692e Fix modification checks and make sure to use UTC (#14347) 2025-06-26 17:50:37 -06:00
Tim Eisele 9f0f9a276f Fix People Issues (#14284) 2025-06-12 05:21:01 -06:00
Tim Eisele c22f24319b Properly handle file access issues in some cases (#14272) 2025-06-11 17:31:14 -06:00
Dario Ackermann d4c3d24e52 fix(collection): Do not lock newly created collections (#14259) 2025-06-09 17:32:31 -06:00
theguymadmax d7faf9a327 Use filename for single videos (non-movie/null collections) in MovieResolver (#14162) 2025-06-08 19:52:25 -06:00
theguymadmax 0cea039445 Fix media detection for single video files with subfolders (#14140) 2025-05-22 07:05:23 -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
Bond-009 0c3ba30de2 Cleanup file related code (#14023) 2025-05-04 08:40:34 -06:00
theguymadmax 57716833b8 Fix trickplay directory path construction (#14036) 2025-05-02 07:01:23 -06:00
Shadowghost 5c9f70c375 Cleanup Tasks and Validators 2025-04-30 09:29:13 +02:00
Tim Eisele f576783ae1 Fix distinction queries (#14007) 2025-04-26 18:49:30 -06:00
Tim Eisele a0b3b7335f Add .gitignore style ignoring (#13906) 2025-04-26 09:35:57 -06:00
JPVenson 8ee358de2c Check for path overlaps (#12832) 2025-04-26 09:30:25 -06:00
Tim Eisele df5671263f Merge pull request #13847 from Shadowghost/rework-chapter-management
Rework chapter management
2025-04-26 14:01:12 +02:00
Bond-009 f35b8dd33d Merge pull request #13536 from tkloy24/13250-Extras-Delete-Whole-Folder
Fix IsInMixedFolder not being set for Extras
2025-04-26 12:07:45 +02:00
Tim Eisele 6e9e2f500f Fix Genre cleanup (#13916) 2025-04-14 20:43:38 -06:00
Tim Eisele cad8de9701 Add Genre cleanup and fix cleanup filter queries (#13891) 2025-04-09 18:40:16 -06:00
gnattu 32fe92d8f5 Only reselect audio streams when user preference is respected (#13832) 2025-04-08 19:22:30 -06:00
Tim Eisele 2264d58ae7 Use subdirectories to organize extracted data (#13838)
* Use subdirectories to organize extracted data

* Apply suggestions from code review
2025-04-05 07:53:17 -06:00
Tim Eisele 596b635511 Cleanup extracted files (#13760)
* Cleanup extracted files

* Pagination and fixes

* Add migration for attachments to MigrateLibraryDb

* Unify attachment handling

* Don't extract again if files were already extracted

* Fix MKS attachment extraction

* Always run full extraction on mks

* Don't try to extract mjpeg streams as attachments

* Fallback to check if attachments were extracted to cache folder

* Fixup
2025-04-03 09:17:14 -06:00
JPVenson a18d60d2de Trim library names (#13828) 2025-04-02 18:19:31 -06:00
Tim Eisele 3fc3b04daf Rework parental ratings (#12615) 2025-03-30 21:51:54 -06:00
Michael McElroy f02190c394 Fix for Issue #12142: Fix ExtraRuleResolver filtering out top level folders (#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-27 18:18:19 -06:00
Cody Robibero 88ceaa39b0 Implement limiting caches (#13605)
* 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-27 18:16:54 -06:00
Tobias Kloy 7717d2e261 Avoid multiple enumerations 2025-03-27 17:51:31 +01:00
Tobias Kloy b108a8cfc5 Fix IsInMixedFolder not being set for Extras in mixed subfolders 2025-03-27 17:51:31 +01:00
JQ d06ce1f1e0 Fix only returning one item from /Item/Latest api. (#12492)
* 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-26 20:26:47 -06:00