Commit Graph

610 Commits

Author SHA1 Message Date
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
BaronGreenback
f2c10471bf
Code Clean up: Use Pattern Matching (#5838)
Co-authored-by: Cody Robibero <cody@robibe.ro>
Co-authored-by: Patrick Barron <18354464+barronpm@users.noreply.github.com>
2021-05-05 13:37:36 +02:00
Bond-009
48e81e65e8
Merge pull request #5938 from cvium/allocationz 2021-05-05 09:35:30 +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
Claus Vium
b9d18f0fa7
Merge branch 'master' into allocationz 2021-05-03 22:52:31 +02: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
cvium
608cba817c Reduce some allocations with the magic of spans etc. 2021-04-30 15:09:36 +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
artiume
005ae80b31
Update var names 2021-04-21 07:11:14 -04:00
artiume
dcd96909cd
Fix Audiobook Resume
https://github.com/jellyfin/jellyfin/issues/5703
2021-04-20 19:28:18 -04:00
cvium
8933389753 Respect user settings for transcode and remux 2021-04-19 10:49:52 +02:00
Stephen Moore
e841922ffd Fix ArgumentOutOfRangeException scanning AudioBooks
AudioResolver.ResolveMultipleAudio method can attempt to access the first item in a List without checking if the list is empty which throws an ArgumentOutOfRangeException and stops the 'Scan Library' process.
2021-04-17 17:21:40 +01:00
BaronGreenback
bc1cc2d04a Remove unused using directives 2021-04-17 11:37:55 +01: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
Joshua M. Boniface
cd0daa7985
Merge pull request #5748 from cvium/playlist-audio-type
Set mediatype to Audio for playlists in a music library
2021-04-11 13:28:49 -04:00
cvium
ef527df28f Set mediatype to Audio for playlists in a music library 2021-04-10 00:06:48 +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
a0258618ac
Update Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-04-01 21:24:34 +02:00
Bond_009
aa76957338 Remove useless code 2021-04-01 19:16:00 +02:00
Bond-009
b49d50e634
Merge pull request #5467 from Ullmie02/nfo-fixes 2021-03-30 15:35:56 +02:00
David
78f7fdeacc Rename methods and optimize allocations 2021-03-26 17:16:29 +01:00
Bond-009
066c19a26b
Fix possible null ref exception 2021-03-24 21:06:03 +01:00
David
14cbd22fbe Use Helper Methods for provider url parsing 2021-03-16 21:45:12 +01:00
cvium
025e351f61 add unit tests 2021-03-15 08:25:20 +01:00
cvium
ab0cff8556 do not resolve episode-like files if they are in extras folders 2021-03-14 19:56:45 +01:00
Bond_009
a8ed753f6c FxCop -> Net Analyzers (part 2) 2021-03-13 22:33:28 +01:00
Bond_009
5241bd41ef Add code analysis attributes where appropriate 2021-03-09 01:28:21 +01:00
Joshua M. Boniface
82d88bdec6
Merge pull request #5409 from ikomhoog/master 2021-03-08 16:39:40 -05: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
Ikomhoog
d4201f812c Changed string.Length == 0 to string.IsNullOrEmpty in case of null 2021-03-08 11:02:51 +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
54211b921c rider is a prick 2021-03-06 19:07:02 +01:00
cvium
bc661c16e1 simplify 2021-03-06 14:01:37 +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
Bond_009
914e891689 Fix unchecked input 2021-02-24 02:05:12 +01:00
dkanada
9fcdbd4c4b remove deprecated settings from server config 2021-02-12 21:58:37 +09:00
Bond_009
a9b497720d Use JsonSerializer.SerializeToUtf8Bytes when doing a round trip
This test uses a very small object (CountryInfo), using a bigger object
would increase the difference in allocated memory.

```
BenchmarkDotNet=v0.12.1, OS=fedora 32
Intel Core i7-6700HQ CPU 2.60GHz (Skylake), 1 CPU, 8 logical and 4 physical cores
.NET Core SDK=5.0.100
  [Host]     : .NET Core 5.0.0 (CoreCLR 5.0.20.51904, CoreFX 5.0.20.51904), X64 RyuJIT
  DefaultJob : .NET Core 5.0.0 (CoreCLR 5.0.20.51904, CoreFX 5.0.20.51904), X64 RyuJIT

|          Method |       Mean |    Error |   StdDev |  Gen 0 | Gen 1 | Gen 2 | Allocated |
|---------------- |-----------:|---------:|---------:|-------:|------:|------:|----------:|
|  RoundTripBytes |   932.0 ns |  5.09 ns |  4.25 ns | 0.1173 |     - |     - |     368 B |
| RoundTripString | 1,114.8 ns | 22.19 ns | 23.74 ns | 0.1469 |     - |     - |     464 B |
```
2021-01-12 15:37:18 +01:00
Bond-009
4549c96f6d
Merge pull request #4906 from Spacetech/library_scan_ignore_inaccessible
Ignore inaccessible files & folders during library scans
2021-01-08 21:01:32 +01:00
Ian
0f4bbbc63c Fix 3169 and 2879 by making MusicArtistResolver run ahead of MusicAlbumResolver 2021-01-06 10:58:07 -08:00
Gary Wilber
1fdeac0a7d Ignore inaccessible files during library scans 2020-12-31 18:40:24 -08:00
Joshua M. Boniface
7caba04c3c
Merge pull request #4890 from nielsvanvelzen/4888-fix-search-hints
Fix search hint endpoint error
2020-12-30 19:55:57 -05:00
artiume
f411353c8c
Update Emby.Server.Implementations/Library/UserDataManager.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2020-12-30 09:30:02 -05:00
artiume
c7cb177260
Update Emby.Server.Implementations/Library/UserDataManager.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2020-12-30 09:12:36 -05:00
artiume
77b478c726
Update Emby.Server.Implementations/Library/UserDataManager.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2020-12-30 09:12:13 -05:00
artiume
99adbf0497
Split resume function for Audiobooks 2020-12-30 08:48:33 -05:00
Niels van Velzen
2bb84c0675 Fix limit parameter error for search hints endpoint 2020-12-30 11:16:09 +01:00
David
043d045448 Put json serializer options in private field 2020-12-24 11:22:34 +01:00
David
a714008b59 Add missing FileStreams 2020-12-23 21:00:50 +01:00
David
2a574914ea Use streams instead of strings 2020-12-23 19:24:58 +01:00
David
196388d607 Remove custom Json serializer from Emby.Server.Implementations 2020-12-23 13:14:40 +01:00
Claus Vium
21d2e9ff0c
Merge pull request #4771 from crobibero/typed-get-preference
Use typed UserManager GetPreference
2020-12-16 22:15:56 +01:00
crobibero
ee23d06154 Use a more descriptive function name 2020-12-13 08:15:26 -07:00
artiume
297cb27ab6
remove opf extension for book types 2020-12-11 21:13:28 -05:00
crobibero
b670937c3d Use typed UserManager GetPreference 2020-12-11 15:00:43 -07:00
cvium
3f6e6c4839 Simplify 2020-12-10 14:47:47 +01:00
cvium
3c5bbeb80c Remove ImageFetcherPostScanTask 2020-12-10 13:38:33 +01:00
nyanmisaka
020fe37dfe fix custom library order 2020-12-08 22:33:52 +08:00
crobibero
b5a7a74e89 Use GetParentItem where applicable 2020-12-01 16:16:17 -07:00
crobibero
2055d49701 fix inverted condition 2020-12-01 11:10:56 -07:00
crobibero
c083b29e29 Use Guid as API parameter type where possible 2020-12-01 11:07:41 -07:00
BaronGreenback
969b9e2a18
Update ImageFetcherPostScanTask.cs 2020-11-21 23:33:41 +00:00
Joshua M. Boniface
bf54b5579c
Merge branch 'master' into defer_image_fetching 2020-11-21 17:20:31 -05:00
Joshua M. Boniface
7457c4a95d
Merge pull request #4499 from crobibero/more-param
Reduce RequestHelpers.Split usage and remove RequestHelpers.GetGuids
2020-11-20 12:34:18 -05:00
Greenback
e51ddd326c Fixes spelling. 2020-11-18 13:23:45 +00:00
crobibero
3cc0dd7e12 Reduce RequestHelpers.Split usage and remove RequestHelpers.GetGuids usage. 2020-11-16 20:29:46 -07:00
BaronGreenback
2bbfcc264d
Merge branch 'master' into emby-namig-nullable 2020-11-16 19:47:36 +00:00
crobibero
e66d79fc0c Merge remote-tracking branch 'upstream/master' into http-exception 2020-11-15 13:09:05 -07:00
crobibero
95a2de757f remove custom HttpException 2020-11-14 14:30:34 -07:00
Bond_009
ff49a3bb61
Missed some stuff 2020-11-14 20:28:15 +01:00
Bond_009
bc7359f87d
Use string.Split(char) where possible instead of string.Split(char[]) 2020-11-14 20:27:48 +01:00
Stepan
c0747512d6 Merge remote-tracking branch 'jellyfin/master' into emby-namig-nullable 2020-11-10 12:42:49 +01:00
cvium
584b4fa41f Fix Persons, Genres and Studios endpoints 2020-11-05 12:27:22 +01:00
Anthony Lavado
6205fb4b6a
Merge pull request #4341 from Bond-009/minor6
Minor improvements
2020-11-02 11:10:39 -05:00
Stepan
60b49e67ea Re-Sharper inspection issues 2020-11-01 11:19:22 +01:00
Stepan
59619b6ea7 Enable nullable in Emby.Naming 2020-11-01 10:47:31 +01:00
Bond_009
49569ca0a0 Use nameof where possible 2020-10-17 16:19:57 +02:00
Bond-009
d54de29485
Merge pull request #4315 from Jan-PieterBaert/fix-warnings
Fix some warnings
2020-10-14 14:04:13 +02:00
Anthony Lavado
8b419d9ea6
Merge pull request #4199 from ryanpetris/livetv-locking
Fix stream performance when opening/closing new streams.
2020-10-13 00:02:38 -04:00
Jan-Pieter Baert
ec91d3893d
Fix SA 1116 warnings 2020-10-12 20:05:11 +02:00
cvium
4a81ee43dc Add try-catch to avoid crashing the whole thing 2020-10-06 23:36:48 +02:00
cvium
1b18f86c8b Add missing parameter comments. 2020-10-03 13:52:51 +02:00
cvium
5d3449e9dc Fix xml doc comment 2020-10-03 13:39:39 +02:00
cvium
763862cbd8 Defer image pre-fetching until the end of a refresh/scan 2020-10-03 13:36:53 +02:00
Gary Wilber
3cfbe6e340 better audio file check 2020-09-27 13:28:19 -07:00
Gary Wilber
75041e7f39 interlocked increment 2020-09-27 12:56:12 -07:00