Commit Graph

126 Commits

Author SHA1 Message Date
Stoica Tedy
250332104b Fixed crash in MigrationRunner
The crashed was caused by importing the migrationOptions even if the
migrations.xml file is non existant.
[Issue]: ~/.config/jellyfin/migrations.xml not found #6992
2021-12-14 09:31:35 +02:00
Claus Vium
a87b87825d Update Jellyfin.Server/Migrations/MigrationRunner.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-11-27 16:01:27 +01:00
cvium
0b871505a6 Remove stray datamember 2021-11-24 14:36:01 +01:00
cvium
69df004b9f Migrate network configuration safely 2021-11-24 13:00:12 +01:00
Cody Robibero
3de86ffdb4 Fix nullability on DisplayPreferencesDto
Remove duplicate, fix namespace
2021-11-11 07:34:36 -07:00
KonH
6cbfdea4c0 Fix warning: Type cast is redundant (#2149) 2021-10-03 11:05:18 +07:00
Bond_009
65665de660 Fix user DB migration 2021-09-25 19:39:24 +02:00
Patrick Barron
45f478f63e Merge branch 'master' into authenticationdb-efcore
# Conflicts:
#	Jellyfin.Server.Implementations/Security/AuthorizationContext.cs
#	MediaBrowser.Controller/Library/IUserManager.cs
#	MediaBrowser.Controller/Security/IAuthenticationRepository.cs
#	MediaBrowser.Controller/Session/ISessionManager.cs
2021-08-13 21:08:24 -04:00
Bond_009
f1f72c3060 Minor improvements 2021-08-04 14:40:09 +02:00
Patrick Barron
dbfd30ec4c Migrate DeviceOptions 2021-06-24 09:38:37 -04:00
Patrick Barron
ae878fa051 Merge branch 'master' into authenticationdb-efcore
# Conflicts:
#	Emby.Server.Implementations/QuickConnect/QuickConnectManager.cs
#	Emby.Server.Implementations/Session/SessionManager.cs
#	Jellyfin.Server.Implementations/Security/AuthorizationContext.cs
2021-06-23 20:22:12 -04:00
Patrick Barron
f96722fa74 Fix migration 2021-06-21 19:06:21 -04:00
Bond_009
6f8ccab788 Move non-jellyfin extensions to separate project 2021-06-19 18:04:46 +02:00
Patrick Barron
be88efce3c Merge branch 'master' into authenticationdb-efcore
# Conflicts:
#	Emby.Server.Implementations/Devices/DeviceManager.cs
#	Emby.Server.Implementations/HttpServer/Security/SessionContext.cs
#	Emby.Server.Implementations/Security/AuthenticationRepository.cs
#	Emby.Server.Implementations/Session/SessionManager.cs
#	Jellyfin.Server.Implementations/Security/AuthorizationContext.cs
#	MediaBrowser.Controller/Library/IUserManager.cs
#	MediaBrowser.Controller/Net/ISessionContext.cs
2021-06-18 18:56:10 -04:00
Patrick Barron
336ba2879f Re-add support for API keys 2021-06-18 18:26:58 -04:00
Patrick Barron
3264575047 Add data migration 2021-06-18 17:07:30 -04:00
Bond_009
7e8428e588 Enable nullable reference types for Emby.Server.Implementations 2021-05-20 22:48:53 +02:00
Bond-009
eeb5d4bd1e Merge pull request #5842 from BaronGreenback/optimization
Code Clean up: Group Methods
2021-04-29 21:14:57 +02:00
Bond-009
233900401e Merge pull request #5873 from cvium/fix-displaypref-migration 2021-04-20 15:51:57 +02:00
cvium
4d7c1fbdca use int.Parse 2021-04-20 13:43:05 +02:00
cvium
cbb855e65f Check for empty string when migrating displaypreferences 2021-04-20 13:24:15 +02:00
cvium
586e1fc58a use IF NOT EXISTS in migration 2021-04-19 13:51:55 +02:00
BaronGreenback
bc1cc2d04a Remove unused using directives 2021-04-17 11:37:55 +01:00
BaronGreenback
bb6fddde9a Group Methods 2021-04-17 11:19:09 +01:00
Bond_009
a4ffc7a813 Fix random failing of tests
Fully initialize the configuration manager at the init stage

```
Failed Jellyfin.Server.Integration.Tests.Controllers.ActivityLogControllerTests.ActivityLog_GetEntries_Ok [2 s]
  Error Message:
   MediaBrowser.Common.Extensions.ResourceNotFoundException : Configuration with key metadata not found.
  Stack Trace:
     at Emby.Server.Implementations.AppBase.BaseConfigurationManager.<>c__DisplayClass43_0.<GetConfiguration>b__0(String k) in D:\a\1\s\Emby.Server.Implementations\AppBase\BaseConfigurationManager.cs:line 309
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Emby.Server.Implementations.AppBase.BaseConfigurationManager.GetConfiguration(String key) in D:\a\1\s\Emby.Server.Implementations\AppBase\BaseConfigurationManager.cs:line 300
   at MediaBrowser.Common.Configuration.ConfigurationManagerExtensions.GetConfiguration[T](IConfigurationManager manager, String key) in D:\a\1\s\MediaBrowser.Common\Configuration\IConfigurationManager.cs:line 88
   at MediaBrowser.Controller.Library.MetadataConfigurationExtensions.GetMetadataConfiguration(IConfigurationManager config) in D:\a\1\s\MediaBrowser.Controller\Library\MetadataConfigurationStore.cs:line 28
   at Emby.Server.Implementations.Library.ResolverHelper.SetDateCreated(BaseItem item, IFileSystem fileSystem, FileSystemMetadata info) in D:\a\1\s\Emby.Server.Implementations\Library\ResolverHelper.cs:line 159
   at Emby.Server.Implementations.Library.ResolverHelper.EnsureDates(IFileSystem fileSystem, BaseItem item, ItemResolveArgs args) in D:\a\1\s\Emby.Server.Implementations\Library\ResolverHelper.cs:line 153
   at Emby.Server.Implementations.Library.ResolverHelper.SetInitialItemValues(BaseItem item, ItemResolveArgs args, IFileSystem fileSystem, ILibraryManager libraryManager) in D:\a\1\s\Emby.Server.Implementations\Library\ResolverHelper.cs:line 81
   at Emby.Server.Implementations.Library.LibraryManager.ResolveItem(ItemResolveArgs args, IItemResolver[] resolvers) in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 480
   at Emby.Server.Implementations.Library.LibraryManager.ResolvePath(FileSystemMetadata fileInfo, IDirectoryService directoryService, IItemResolver[] resolvers, Folder parent, String collectionType, LibraryOptions libraryOptions) in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 618
   at Emby.Server.Implementations.Library.LibraryManager.ResolvePath(FileSystemMetadata fileInfo, Folder parent) in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 536
   at Emby.Server.Implementations.Library.LibraryManager.CreateRootFolder() in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 732
   at Emby.Server.Implementations.Library.LibraryManager.get_RootFolder() in D:\a\1\s\Emby.Server.Implementations\Library\LibraryManager.cs:line 180
   at Emby.Server.Implementations.IO.LibraryMonitor.Start() in D:\a\1\s\Emby.Server.Implementations\IO\LibraryMonitor.cs:line 135
   at Emby.Server.Implementations.IO.LibraryMonitorStartup.RunAsync() in D:\a\1\s\Emby.Server.Implementations\IO\LibraryMonitorStartup.cs:line 26
   at Emby.Server.Implementations.ApplicationHost.StartEntryPoints(IEnumerable`1 entryPoints, Boolean isBeforeStartup)+MoveNext() in D:\a\1\s\Emby.Server.Implementations\ApplicationHost.cs:line 541
   at System.Threading.Tasks.Task.WhenAll(IEnumerable`1 tasks)
   at Emby.Server.Implementations.ApplicationHost.RunStartupTasksAsync(CancellationToken cancellationToken) in D:\a\1\s\Emby.Server.Implementations\ApplicationHost.cs:line 525
   at Jellyfin.Server.Integration.Tests.JellyfinApplicationFactory.CreateServer(IWebHostBuilder builder) in D:\a\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 D:\a\1\s\tests\Jellyfin.Server.Integration.Tests\Controllers\ActivityLogControllerTests.cs:line 21
--- End of stack trace from previous location ---

```
2021-04-12 00:28:17 +02:00
Patrick Barron
e5380c653b Merge branch 'master' into ef-cleanup
# Conflicts:
#	Jellyfin.Data/Entities/Libraries/MediaFileStream.cs
#	Jellyfin.Data/Jellyfin.Data.csproj
2021-03-14 10:19:35 -04:00
Bond_009
a8ed753f6c FxCop -> Net Analyzers (part 2) 2021-03-13 22:33:28 +01:00
Patrick Barron
f638ee6b09 Enable nullable for Jellyfin.Data and remove unnecessary attributes 2021-03-06 17:43:01 -05:00
Bond_009
b1fe28d0a6 Use GetEncodingOptions where possible 2021-02-21 02:58:30 +01:00
Bond_009
1ea2b200c0 JsonSerializer deserialize from bytes where possible
This is faster and uses way less 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 |
|------- |---------:|--------:|--------:|--------:|------:|------:|----------:|
|  Bytes | 158.4 us | 2.56 us | 2.14 us | 16.8457 |     - |     - |  52.08 KB |
| String | 172.8 us | 0.78 us | 0.70 us | 41.5039 |     - |     - | 127.82 KB |
| Custom | 155.5 us | 2.95 us | 2.76 us | 10.0098 |     - |     - |  31.27 KB |
```
2021-01-12 15:28:02 +01:00
crobibero
3a6501abe0 Fix another key collision in MigrateDisplayPreferencesDatabase 2020-12-21 17:28:06 -07: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
b670937c3d Use typed UserManager GetPreference 2020-12-11 15:00:43 -07:00
crobibero
eefe87f537 Remove CustomItemDisplayPreferences unique key collision 2020-12-06 09:11:00 -07:00
Joshua M. Boniface
b96d4ef0e8 Merge pull request #4653 from crobibero/favorite-persons
Optimize FavoritePersons query
2020-12-04 20:05:35 -05:00
Joshua M. Boniface
4e6584c345 Merge pull request #4652 from crobibero/display-preferences
Add support for custom item display preferences
2020-12-04 20:05:04 -05:00
crobibero
76250a8895 Use md5 Guid for legacy compat 2020-12-04 16:27:31 -07:00
crobibero
3db6ae91f6 Add ItemId to all display preferences 2020-12-04 16:00:11 -07:00
crobibero
60b7e49a7f Suggestions from code review 2020-12-04 08:00:55 -07:00
crobibero
e765184afa Fix existing DisplayPreferences migration 2020-12-03 15:00:26 -07:00
crobibero
589625a349 Don't die if folder doesn't have id 2020-12-01 17:36:36 -07:00
Greenback
14fc7e6408 revert changes. 2020-11-19 15:40:20 +00:00
Greenback
18855a7884 Initialial upload 2020-11-19 13:34:09 +00:00
Cody Robibero
1d059bc76b Update Jellyfin.Server/Migrations/Routines/MigrateDisplayPreferencesDb.cs 2020-11-12 07:33:12 -07:00
crobibero
7375d70396 Skip migration if user doesn't exist 2020-11-11 07:17:19 -07:00
Fernando Fernández
27a1337cf3 Remove underscore
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2020-11-10 10:24:05 +01:00
Fernando Fernández
d6a04fd406 Remove setting from existing libraries with a migration 2020-11-10 02:12:50 +01:00
crobibero
ec8967b8e6 Fix partial library and channel access 2020-08-27 10:00:06 -06:00
crobibero
de4cfa2234 Apply suggestions from code review 2020-08-26 08:45:59 -06:00
crobibero
78ae86b86a Apply suggestions from code review 2020-08-26 08:23:35 -06:00