Commit Graph

119 Commits

Author SHA1 Message Date
Bond_009 098e8c6fed Replace AlphanumericComparator with new CompareOptions.NumericOrdering 2026-01-14 18:55:47 +01:00
Varoon Pazhyanur cbb569a277 Make private Emby.Naming.Video.StackResolver.StackMetadata sealed to silence compiler warning 2025-09-08 21:21:43 -04: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
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
gnattu 901573473d Sort by version name before resolution sorting (#12621) 2024-09-18 07:22:33 -06:00
Bond_009 97a02f5803 Remove BOM from UTF-8 files
I think some people need to change their IDE configuration ;)
2024-08-30 15:29:48 +02:00
Bond_009 b176beb88e Reduce string allocations
Some simple changes to reduce the number of allocated strings
2023-10-06 01:04:25 +02:00
Bond_009 b5f0760db8 Use RegexGenerator where possible 2023-06-28 17:07:57 +02:00
SenorSmartyPants b96420b786 Clean Extra Names
- Adds regular expression to CleanStrings to remove suffix style extra naming from the name presented in JF.
- Override Resolve for Extras to enable parsename
- remove exclusion on parsename of extratypes
2023-03-09 17:44:12 -06:00
Bond-009 5b493e14ac Improve alternate ordering (#9336) 2023-02-20 08:07:51 -07:00
Bond_009 48263078b4 Reduce string allocations by regex 2023-02-17 15:00:06 +01:00
Bond_009 59920b4052 Make exact match primary video 2023-02-15 18:05:49 +01:00
Bond_009 52194f56b5 Replace != null with is not null 2022-12-05 15:01:13 +01:00
Bond_009 c7d50d640e Replace == null with is null 2022-12-05 15:00:20 +01:00
cvium 2749509f00 Use dedicated resolvers for extras 2021-12-28 00:37:40 +01:00
Bond_009 cbfa355e31 Update StyleCop 2021-12-24 18:28:27 +01:00
Cody Robibero 076a13abeb Merge pull request #7029 from cvium/allocations_maybe 2021-12-24 01:59:25 +00:00
cvium b880dc8a4a Use our own Contains extension 2021-12-20 13:31:07 +01:00
cvium 91292b8ea5 Fix build 2021-12-20 12:34:16 +01:00
cvium 83a94aa612 Fix extras folders 2021-12-20 12:15:20 +01:00
cvium c3c4dc6839 Review 2021-12-14 23:05:45 +01:00
cvium 9e665ff520 Fix usage of RegexOptions.Compiled 2021-12-13 08:27:20 +01:00
Claus Vium 5c3d0b5510 Update Emby.Naming/Video/ExtraResolver.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-12-13 08:22:17 +01:00
cvium 6d6fb1bba3 Rename unknown parttype to "unknown" 2021-12-11 16:02:51 +01:00
cvium 681bfbd535 Remove duplication 2021-12-10 14:34:46 +01:00
cvium 220443eca1 Simplify StackResolver 2021-12-10 14:23:31 +01:00
cvium fde84a1e00 Refactor extras parsing 2021-12-07 15:24:57 +01:00
Claus Vium 39d5bdac96 Change ReadOnlySpan to string following PR 6383 (#6734) 2021-10-26 14:47:34 +02:00
Claus Vium dc72d90703 Merge pull request #6383 from sushilicious/master
Made default parser a tiny bit mroe robust
2021-10-26 12:10:57 +02:00
Bond_009 67147400bf Fix issue #6123 2021-10-05 21:47:59 +02:00
Bond-009 e5a29824e5 Merge branch 'master' into minor15 2021-08-13 00:33:18 +02:00
sushilicious 6bc7d78f6f Update Emby.Naming/Video/CleanStringParser.cs
Cleaned up code a bit

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-08-05 13:09:42 -07:00
sushilicious b2a10609af Made CleanStringParser go through regexps only once 2021-08-04 23:25:54 -07:00
sushilicious 7fdef4b82b Merge branch 'master' of https://github.com/jellyfin/jellyfin into HEAD 2021-08-04 23:15:48 -07:00
Bond_009 f1f72c3060 Minor improvements 2021-08-04 14:40:09 +02:00
sushilicious 26f8b501e7 Made CleanStringParser more robust
Now it can handle [...] at beginning of string
2021-08-03 14:19:36 -07:00
Bond_009 1f99c9b90c Minor fixes 2021-07-06 00:01:33 +02:00
Bond_009 6f8ccab788 Move non-jellyfin extensions to separate project 2021-06-19 18:04:46 +02:00
cvium 66de842896 Use stackalloc in Format3DParser.Parse 2021-06-12 00:16:33 +02:00
Claus Vium 3b5214e595 Update Emby.Naming/Video/VideoListResolver.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-05-28 19:01:29 +02:00
cvium 42a2cc1747 Remove some unnecessary allocations 2021-05-24 00:30:41 +02:00
cvium 1027792b16 Review changes 2021-05-19 08:51:46 +02:00
cvium 1b49435a0e Reduce some allocations 2021-05-16 14:49:11 +02:00
cvium 23c3188501 revert underscore as a multiversion separator 2021-03-15 23:24:59 +01:00
Bond-009 d7f0aaaec1 Merge pull request #5417 from Bond-009/codeanal
Add code analysis attributes where appropriate
2021-03-12 00:15:12 +01:00
cvium b0af11c34e make the eligibility check more strict wrt. brackets 2021-03-10 19:29:52 +01:00
cvium 3824c09e77 fix multiversion eligibility check for complex folder names 2021-03-10 10:47:35 +01:00
Bond_009 5241bd41ef Add code analysis attributes where appropriate 2021-03-09 01:28:21 +01:00
cvium fcacae8cde return empty span instead of null for backwards compat 2021-03-07 22:59:08 +01:00
cvium e0db17a935 do not throw ArgumentNullException in TryCleanString 2021-03-07 22:49:31 +01:00