Commit graph

374 commits

Author SHA1 Message Date
Cody Robibero
e7b8d45bbb
Use helper function to compare guid (#10825) 2024-01-17 08:51:39 -07:00
Cody Robibero
033cfa59c4 Convert CollectionType to use lowercase enum names 2023-12-08 15:45:36 -07:00
Cody Robibero
906f701fa8
Convert CollectionType, SpecialFolderType to enum (#9764)
* Convert CollectionType, SpecialFolderType to enum

* Hide internal enum CollectionType values

* Apply suggestions from code review

Co-authored-by: Shadowghost <Shadowghost@users.noreply.github.com>

* Fix recent change

* Update Jellyfin.Data/Attributes/OpenApiIgnoreEnumAttribute.cs

Co-authored-by: Patrick Barron <barronpm@gmail.com>

---------

Co-authored-by: Shadowghost <Shadowghost@users.noreply.github.com>
Co-authored-by: Patrick Barron <barronpm@gmail.com>
2023-11-09 14:00:29 -07:00
Cody Robibero
c7a94d48ae
Convert ItemSortBy to enum (#9765)
* Convert ItemSortBy to enum

* Rename Unknown to Default
2023-11-09 14:00:13 -07:00
Stepan Goremykin
8d7e4229ca Merge branch 'master' into fix-resharper-warnings
# Conflicts:
#	Emby.Server.Implementations/Net/SocketFactory.cs
#	RSSDP/SsdpCommunicationsServer.cs
#	RSSDP/SsdpDeviceLocator.cs
#	RSSDP/SsdpDevicePublisher.cs
2023-10-12 20:11:16 +02:00
Bond-009
406c5df8a3
Merge pull request #10345 from Bond-009/getperson 2023-10-08 14:07:38 +02:00
Stepan Goremykin
f84469d500 Remove redundant using directives 2023-10-08 00:50:02 +02:00
Stepan Goremykin
a37dc3da96 Use async overload 2023-10-08 00:17: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
852f1dc0c1 Don't create non existent persons in LibraryManager.GetPerson
return null instead.

GetStudio, GetGenre, GetMusicGenre, GetYear, GetArtist still create a new one
when the requested one doesn't exist

Fixes #3901
2023-10-05 23:16:17 +02:00
Bond_009
767a42fbdb Minor LibraryMonitor improvements
* Enable nullable
* Add a fast return to ReportFileSystemChanged when path should be ignored
* Use Span overloads of Path.* functions where possible
* IFileSystem: remove NormalizePath as Path.TrimEndingDirectorySeparator already checks if it's a root path
2023-09-13 17:30:50 +02:00
Stepan Goremykin
0ed2aa6f06 Fix a few multiple enumerations 2023-08-26 16:57:27 +02:00
cvium
2e32e335ac refactor: use ConcurrentDictionary when IMemoryCache isn't needed 2023-08-18 14:00:56 +02:00
Claus Vium
bfb7c60f72
Merge pull request #9447 from Bond-009/disablerealtimemonitor
Disable real time monitoring by default
2023-07-01 19:33:53 +02:00
Shadowghost
81746666de Fix TotalRecordCount calculation 2023-05-26 11:06:04 +02:00
JPVenson
3c22d5c970
#7626 Added handling for common FormatExceptions with Skia loading sv… (#9581)
Co-authored-by: Shadowghost <Shadowghost@users.noreply.github.com>
2023-04-10 21:38:07 +02:00
Stepan Goremykin
b6cfdb8b92 Simplify conditional expression 2023-04-06 19:30:17 +02:00
elmuffo
bb5bf0277a
Implement check to hide all libraries when user has no access (#9536) 2023-04-01 15:01:05 -06:00
Bond_009
891e2495c9 Disable real time monitoring by default 2023-03-07 17:59:29 +01:00
Joe Rogers
1c3a97bf6a
Inject IDirectoryService where needed instead of passing it through ItemResolveArgs 2023-03-06 23:00:55 -05:00
Joe Rogers
160baa02fd
Remove some BaseItem references to make ItemResolveArgs more usable for testing. 2023-03-06 22:18:26 -05:00
Bond_009
4b01aaa0f7 Allocate less Lists 2023-03-01 00:44:57 +01:00
Bond-009
497d8c4957
Use Order() introduced in .NET 7 (#8923) 2022-12-19 09:30:00 -07:00
Joe Rogers
e4040ab812
Allow video extras to use owner library options 2022-12-08 01:00:27 -05:00
Bond_009
9bb1bc5a3e Remove dependency on OptimizedPriorityQueue 2022-12-07 18:02:12 +01:00
Bond_009
b366dc2e6e Use ArgumentException.ThrowIfNullOrEmpty 2022-12-07 16:43:59 +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
Shadowghost
072651c4be Add xmldocs for TMDb provider, correct provider spelling 2022-11-17 11:16:20 +01:00
Joe Rogers
c38052a753
Skip missing symlink instead of breaking out of directory scan 2022-10-09 18:56:25 -04:00
Bond_009
a9a5fcde81 Use ArgumentNullException.ThrowIfNull helper method
Did a simple search/replace on the whole repo (except the RSSDP project)
This reduces LOC and should improve performance (methods containing a throw statement don't get inlined)

```
if \((\w+) == null\)
\s+\{
\s+throw new ArgumentNullException\((.*)\);
\s+\}
```

```
ArgumentNullException.ThrowIfNull($1);
```
2022-10-06 20:21:23 +02:00
Hannes Braun
4edeccc5e0
Remove redundant using directives 2022-09-28 16:26:03 +02:00
LogicalPhallacy
e8893f3d41 Backport pull request #8399 from jellyfin/release-10.8.z
Respect visibility for people items (rebased)

Original-merge: e6124bc154

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

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2022-09-23 23:09:38 -04:00
luz paz
9ec2870b10 Fix various typos
Found via `codespell -q 3 -S ./Emby.Server.Implementations/Localization -L allready,doesnt,inh,receivedfrom,whoknows`
2022-08-15 06:48:34 -04:00
Joshua Boniface
e251f1483f Backport pull request #8167 from jellyfin/release-10.8.z
Add back library scan from library manager

Authored-by: Cody Robibero <cody@robibe.ro>

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

Original-merge: f9dffa767f
2022-08-01 14:25:44 -04:00
Cody Robibero
7f1223016d Merge pull request #7946 from cvium/svg
(cherry picked from commit 4ebe70cf6a)
Signed-off-by: Joshua Boniface <joshua@boniface.me>
2022-06-29 01:26:14 -04:00
Cody Robibero
e086eebb71 Merge pull request #7525 from 1337joe/fix-duplicate-library-media-paths
(cherry picked from commit bebe1808ce)
Signed-off-by: crobibero <cody@robibe.ro>
2022-04-07 12:54:58 -04:00
Claus Vium
53209830e7
Merge pull request #7346 from Bond-009/guid
Optimize Guid comparisons
2022-03-11 08:15:12 +01:00
Bond_009
f50a250cd9 Optimize Guid comparisons
* Use Guid.Equals(Guid) instead of the == override
* Ban the usage of Guid.Equals(Object) to prevent accidental boxing
* Compare to default(Guid) instead of Guid.Empty
2022-02-21 14:15:09 +01:00
Stanislav Ionascu
554d1b2ca8 Fix #7100 by catching the exception on opening invalid UDF images
When an invalid UDF image is opened by the UdfReader, it may throw
and exception. This change is to catch and log the exception.
2022-02-20 13:30:55 +00:00
Bond_009
adad13b865 Remove some dead code 2022-02-17 08:15:26 +01:00
Bond_009
5732e6188c Fix some warnings 2022-02-15 18:59:46 +01:00
Cody Robibero
b6489e73ab
Merge pull request #7241 from Bond-009/async5 2022-02-06 15:25:48 -07:00
Claus Vium
488ce51032
Remove some allocations (#7246) 2022-01-28 12:21:40 +01:00
Bond_009
e7be01d7a5 Flush to disk async where possible 2022-01-22 23:36:42 +01:00
Cody Robibero
a60cb280a3 Properly populate QueryResult 2022-01-20 08:53:06 -07:00
Joe Rogers
a26509a98a
Keep from serializing trailers into database 2022-01-07 22:33:31 +01:00
Bond_009
77c615ba42 Error on SA1316 2022-01-05 10:58:57 +01:00
Bond-009
11d0c6827f
Merge pull request #7058 from cvium/the_most_important_feature 2022-01-02 12:31:20 +01:00
cvium
28c2ac9cc0 Remove file extension filter and fix build 2022-01-01 20:07:03 +01:00
cvium
2749509f00 Use dedicated resolvers for extras 2021-12-28 00:37:40 +01:00
Cody Robibero
7bfc6b5679 Remove more warnings 2021-12-27 07:38:06 -07:00
Bond_009
ea8f40e84a More cleanup 2021-12-27 14:20:05 +00:00
Cody Robibero
00211ca056
Merge pull request #7028 from cvium/everything_went_wrong 2021-12-22 17:57:00 +00:00
cvium
83a94aa612 Fix extras folders 2021-12-20 12:15:20 +01:00
Joe Rogers
077f13ae4c
Increment library number instead of appending 2021-12-18 20:50:36 +01:00
Claus Vium
9a0618552b
Merge branch 'master' into what_could_go_wrong 2021-12-15 08:38:39 +01:00
Cody Robibero
32629cd7da Use BaseItemKind where possible 2021-12-12 06:11:27 -07:00
cvium
fde84a1e00 Refactor extras parsing 2021-12-07 15:24:57 +01:00
cvium
4f45c52674 Remove ILibraryManager as a dependency in resolvers etc. 2021-11-15 15:56:02 +01:00
Bond_009
1d19a5be61 Fix some warnings
down to 580
2021-11-09 22:29:33 +01:00
Bond_009
5726535a26 Fix some warnings
609 left
2021-11-09 13:14:31 +01:00
Patrick Barron
876a902356 Fix warnings in Library 2021-10-03 21:41:22 -04:00
Bond_009
4d1d9f23d5 Use new Enum.TryParse(ReadOnlySpan<char>) overload 2021-09-24 20:15:46 +02:00
Dixin
dc8420c7a2 Fix extra folder type resolving. 2021-09-19 16:54:00 -07:00
Bond_009
637e86478f Fix some warnings 2021-09-03 19:32:11 +02:00
Cody Robibero
ec13412155 Merge remote-tracking branch 'upstream/master' into warn-259810 2021-09-03 06:56:45 -06:00
Cody Robibero
cba07b1ca6 Remove more and more warnings 2021-08-28 16:32:50 -06:00
Bond_009
645825db36 Enable nullable for more files 2021-08-28 17:32:09 +02:00
Bond_009
915141f196 Fix some warnings 2021-07-11 22:51:36 +02:00
Bond_009
6f8ccab788 Move non-jellyfin extensions to separate project 2021-06-19 18:04:46 +02:00
Bond-009
cfad97ff28
Merge pull request #6096 from cvium/saving_private_ram 2021-06-12 00:20:54 +02:00
Cody Robibero
d461e3912a
Remove warninigs from MediaBrowser.Controller (Part 3) (#6078)
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-06-06 17:16:41 +02:00
cvium
42a2cc1747 Remove some unnecessary allocations 2021-05-24 00:30:41 +02:00
Bond_009
7e8428e588 Enable nullable reference types for Emby.Server.Implementations 2021-05-20 22:48:53 +02:00
BaronGreenback
2e98de9062
Code Clean up: Convert to null-coalescing operator ?? (#5845)
Co-authored-by: Cody Robibero <cody@robibe.ro>
Co-authored-by: Patrick Barron <18354464+barronpm@users.noreply.github.com>
2021-05-05 13:51:14 +02:00
Bill Thornton
cd543f7e50
Merge pull request #5738 from cvium/resolve-from-path
Resolve name from episode folder
2021-05-05 00:08:40 -04:00
Bond_009
c608d5104d Fix scanning 2021-05-01 15:56:16 +02:00
Bond-009
360d80c873
Merge pull request #5890 from Bond-009/filesystem
Reduce string allocations/fs lookups in resolve code
2021-04-30 20:45:43 +02:00
Bond-009
7195d3e42f
Merge pull request #5893 from Bond-009/db
SqliteItemRepository: remove redundant operations
2021-04-29 21:13:24 +02:00
cvium
77261a8445 add UpdatePeopleAsync and add people to both tables 2021-04-24 20:22:23 +02:00
Bond_009
a02e37daa0 SqliteItemRepository: remove redundant operations
removed:
* nameof -> FullName lookup
* IndexOf before Replace
* Enum.GetNames -> Enum.Parse roundtrip
2021-04-22 16:05:12 +02:00
Bond_009
b323044139 Reduce string allocations/fs lookups in resolve code 2021-04-22 01:24:21 +02:00
Bond_009
8045a488ce Fix possible ArgumentNullException
```
  Error Message:
   System.ArgumentNullException : Value cannot be null. (Parameter 'source')
  Stack Trace:
     at System.Linq.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)
   at System.Linq.Enumerable.Select[TSource,TResult](IEnumerable`1 source, Func`2 selector)
   at Emby.Server.Implementations.Library.LibraryManager.ResolveItem(ItemResolveArgs args, IItemResolver[] resolvers) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 475
   at Emby.Server.Implementations.Library.LibraryManager.ResolvePath(FileSystemMetadata fileInfo, IDirectoryService directoryService, IItemResolver[] resolvers, Folder parent, String collectionType, LibraryOptions libraryOptions) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 618
   at Emby.Server.Implementations.Library.LibraryManager.ResolvePath(FileSystemMetadata fileInfo, Folder parent) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 536
   at Emby.Server.Implementations.Library.LibraryManager.GetUserRootFolder() in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 812
   at Emby.Server.Implementations.Library.LibraryManager.GetCollectionFolders(BaseItem item) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 2080
   at Emby.Server.Implementations.Library.LibraryManager.GetLibraryOptions(BaseItem item) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 2116
   at MediaBrowser.Providers.Manager.ProviderManager.SaveMetadata(BaseItem item, ItemUpdateType updateType, IEnumerable`1 savers) in /home/vsts/work/1/s/MediaBrowser.Providers/Manager/ProviderManager.cs:line 672
   at MediaBrowser.Providers.Manager.ProviderManager.SaveMetadata(BaseItem item, ItemUpdateType updateType) in /home/vsts/work/1/s/MediaBrowser.Providers/Manager/ProviderManager.cs:line 655
   at Emby.Server.Implementations.Library.LibraryManager.RunMetadataSavers(BaseItem item, ItemUpdateType updateReason) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 2017
   at Emby.Server.Implementations.Library.LibraryManager.UpdateItemsAsync(IReadOnlyList`1 items, BaseItem parent, ItemUpdateType updateReason, CancellationToken cancellationToken) in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 1975
   at Emby.Server.Implementations.Library.LibraryManager.CreateRootFolder() in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 775
   at Emby.Server.Implementations.Library.LibraryManager.get_RootFolder() in /home/vsts/work/1/s/Emby.Server.Implementations/Library/LibraryManager.cs:line 180
   at Emby.Server.Implementations.IO.LibraryMonitor.Start() in /home/vsts/work/1/s/Emby.Server.Implementations/IO/LibraryMonitor.cs:line 135
   at Emby.Server.Implementations.IO.LibraryMonitorStartup.RunAsync() in /home/vsts/work/1/s/Emby.Server.Implementations/IO/LibraryMonitorStartup.cs:line 26
   at Emby.Server.Implementations.ApplicationHost.StartEntryPoints(IEnumerable`1 entryPoints, Boolean isBeforeStartup)+MoveNext() in /home/vsts/work/1/s/Emby.Server.Implementations/ApplicationHost.cs:line 518
   at System.Threading.Tasks.Task.WhenAll(IEnumerable`1 tasks)
   at Emby.Server.Implementations.ApplicationHost.RunStartupTasksAsync(CancellationToken cancellationToken) in /home/vsts/work/1/s/Emby.Server.Implementations/ApplicationHost.cs:line 502
   at Jellyfin.Server.Integration.Tests.JellyfinApplicationFactory.CreateServer(IWebHostBuilder builder) in /home/vsts/work/1/s/tests/Jellyfin.Server.Integration.Tests/JellyfinApplicationFactory.cs:line 101
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.EnsureServer()
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateDefaultClient(DelegatingHandler[] handlers)
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateDefaultClient(Uri baseAddress, DelegatingHandler[] handlers)
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateClient(WebApplicationFactoryClientOptions options)
   at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory`1.CreateClient()
   at Jellyfin.Server.Integration.Tests.Controllers.ActivityLogControllerTests.ActivityLog_GetEntries_Ok() in /home/vsts/work/1/s/tests/Jellyfin.Server.Integration.Tests/Controllers/ActivityLogControllerTests.cs:line 21
--- End of stack trace from previous location ---
```
2021-04-12 22:01:35 +02:00
cvium
f2cba352e5 catch ioexception and include stack trace 2021-04-09 23:30:07 +02:00
cvium
5c4be2416d Remove unused import 2021-04-09 13:48:25 +02:00
cvium
53db1a1ffc ... 2021-04-09 13:47:47 +02:00
cvium
457229c56d Simplification 2021-04-09 13:43:40 +02:00
cvium
69d2368fbc Copy paste error 2021-04-09 13:31:17 +02:00
cvium
e7fc18d0f3 Fix type check 2021-04-09 13:28:27 +02:00
cvium
08ccf2a49c Resolve name from episode folder 2021-04-09 13:20:12 +02:00
Claus Vium
a21b2714e7
fetching images should not kill the scanner 2021-04-09 12:03:56 +02:00
Bond-009
066c19a26b
Fix possible null ref exception 2021-03-24 21:06:03 +01:00
Claus Vium
90cdd1345d
Merge pull request #5407 from Bond-009/hack 2021-03-08 21:23:14 +01:00
Bond_009
54f81c4da4 Call ToLower on CollectionTypeOptions.ToString 2021-03-08 12:08:17 +01:00
cvium
946411be8e Remove redundant check 2021-03-06 21:18:20 +01:00
cvium
67af30d1ff Remove redundant checks 2021-03-06 20:53:50 +01:00
cvium
37e374d33d make sure network path substitution matches correctly 2021-03-05 14:09:23 +01:00
Bond_009
81f527f808 CollectionType can be null 2021-02-24 11:57:04 +01:00
Bond_009
1c74e2f40e Fix build 2021-02-24 02:57:10 +01:00