From 534b0cde918839aca165b7bd2b1c7df761aca82c Mon Sep 17 00:00:00 2001 From: Wendell Jones Date: Mon, 23 Feb 2026 15:42:19 -0500 Subject: [PATCH] Ensure initial user exists before startup wizard completes Add logic to initialize at least one user if the startup wizard is not completed, both during application startup and in the startup user API. After user creation, reload the user entity with all related navigation properties to ensure the in-memory user object is fully populated. Also update build and publish metadata files. --- .../ApplicationHost.cs | 8 ++++++++ Jellyfin.Api/Controllers/StartupController.cs | 1 + .../Users/UserManager.cs | 13 ++++++++++++- .../PublishProfiles/FolderProfile.pubxml.user | 2 +- .../ASYNC_CONVERSION_CHECKLIST.md | 0 .../ASYNC_CONVERSION_EXAMPLE.cs | 0 .../ASYNC_CONVERSION_PRIORITY.md | 0 .../ASYNC_MIGRATION_PLAN.md | 0 .../BASEITEM_ASYNC_REFERENCE.md | 0 .../BASEITEM_FINAL_STATUS.md | 0 .../BUILD_SUCCESS_SUMMARY.md | 0 CONTRIBUTORS.md => docs/CONTRIBUTORS.md | 0 .../ConvertToFileScopedNamespaces.ps1 | 0 .../EDITORCONFIG_SETUP.md | 0 .../FixStyleCopWarnings.ps1 | 0 .../HOW_TO_IGNORE_IDE0065.md | 0 .../MEDIAATTACHMENT_CONVERSION_COMPLETE.md | 0 .../NET11_MIGRATION_SUMMARY.md | 0 .../NPGSQL_COMMAND_IN_PROGRESS_FIX.md | 0 .../OVERALL_PROJECT_STATUS.md | 0 PHASE1_COMPLETE.md => docs/PHASE1_COMPLETE.md | 0 .../PHASE1_PROGRESS_REPORT.md | 0 PHASE2_COMPLETE.md => docs/PHASE2_COMPLETE.md | 0 .../PHASE3A_COMPLETE.md | 0 PHASE3_STRATEGY.md => docs/PHASE3_STRATEGY.md | 0 .../PHASE_3A_FINAL_SUMMARY.md | 0 .../PHASE_3B_SUMMARY.md | 0 .../PHASE_3C_3D_SUMMARY.md | 0 .../PHASE_3E_SUMMARY.md | 0 .../PHASE_3_COMBINED_SUMMARY.md | 0 .../POC_SUMMARY_REPORT.md | 0 .../POSTGRESQL_BACKUP_ANALYSIS.md | 0 .../PROJECT_COMPLETION.md | 0 .../README_EDITORCONFIG_CHANGES.md | 0 .../STAKEHOLDER_PRESENTATION.md | 0 .../rollback-to-net10.ps1 | 0 .../netstandard2.0/Jellyfin.CodeAnalysis.dll | Bin 8704 -> 8704 bytes .../netstandard2.0/Jellyfin.CodeAnalysis.pdb | Bin 10192 -> 10220 bytes .../Jellyfin.CodeAnalysis.AssemblyInfo.cs | 3 ++- ...yfin.CodeAnalysis.AssemblyInfoInputs.cache | 2 +- ...odeAnalysis.csproj.AssemblyReference.cache | Bin 63428 -> 79822 bytes .../netstandard2.0/Jellyfin.CodeAnalysis.dll | Bin 8704 -> 8704 bytes .../netstandard2.0/Jellyfin.CodeAnalysis.pdb | Bin 10192 -> 10220 bytes 43 files changed, 25 insertions(+), 4 deletions(-) rename ASYNC_CONVERSION_CHECKLIST.md => docs/ASYNC_CONVERSION_CHECKLIST.md (100%) rename ASYNC_CONVERSION_EXAMPLE.cs => docs/ASYNC_CONVERSION_EXAMPLE.cs (100%) rename ASYNC_CONVERSION_PRIORITY.md => docs/ASYNC_CONVERSION_PRIORITY.md (100%) rename ASYNC_MIGRATION_PLAN.md => docs/ASYNC_MIGRATION_PLAN.md (100%) rename BASEITEM_ASYNC_REFERENCE.md => docs/BASEITEM_ASYNC_REFERENCE.md (100%) rename BASEITEM_FINAL_STATUS.md => docs/BASEITEM_FINAL_STATUS.md (100%) rename BUILD_SUCCESS_SUMMARY.md => docs/BUILD_SUCCESS_SUMMARY.md (100%) rename CONTRIBUTORS.md => docs/CONTRIBUTORS.md (100%) rename ConvertToFileScopedNamespaces.ps1 => docs/ConvertToFileScopedNamespaces.ps1 (100%) rename EDITORCONFIG_SETUP.md => docs/EDITORCONFIG_SETUP.md (100%) rename FixStyleCopWarnings.ps1 => docs/FixStyleCopWarnings.ps1 (100%) rename HOW_TO_IGNORE_IDE0065.md => docs/HOW_TO_IGNORE_IDE0065.md (100%) rename MEDIAATTACHMENT_CONVERSION_COMPLETE.md => docs/MEDIAATTACHMENT_CONVERSION_COMPLETE.md (100%) rename NET11_MIGRATION_SUMMARY.md => docs/NET11_MIGRATION_SUMMARY.md (100%) rename NPGSQL_COMMAND_IN_PROGRESS_FIX.md => docs/NPGSQL_COMMAND_IN_PROGRESS_FIX.md (100%) rename OVERALL_PROJECT_STATUS.md => docs/OVERALL_PROJECT_STATUS.md (100%) rename PHASE1_COMPLETE.md => docs/PHASE1_COMPLETE.md (100%) rename PHASE1_PROGRESS_REPORT.md => docs/PHASE1_PROGRESS_REPORT.md (100%) rename PHASE2_COMPLETE.md => docs/PHASE2_COMPLETE.md (100%) rename PHASE3A_COMPLETE.md => docs/PHASE3A_COMPLETE.md (100%) rename PHASE3_STRATEGY.md => docs/PHASE3_STRATEGY.md (100%) rename PHASE_3A_FINAL_SUMMARY.md => docs/PHASE_3A_FINAL_SUMMARY.md (100%) rename PHASE_3B_SUMMARY.md => docs/PHASE_3B_SUMMARY.md (100%) rename PHASE_3C_3D_SUMMARY.md => docs/PHASE_3C_3D_SUMMARY.md (100%) rename PHASE_3E_SUMMARY.md => docs/PHASE_3E_SUMMARY.md (100%) rename PHASE_3_COMBINED_SUMMARY.md => docs/PHASE_3_COMBINED_SUMMARY.md (100%) rename POC_SUMMARY_REPORT.md => docs/POC_SUMMARY_REPORT.md (100%) rename POSTGRESQL_BACKUP_ANALYSIS.md => docs/POSTGRESQL_BACKUP_ANALYSIS.md (100%) rename PROJECT_COMPLETION.md => docs/PROJECT_COMPLETION.md (100%) rename README_EDITORCONFIG_CHANGES.md => docs/README_EDITORCONFIG_CHANGES.md (100%) rename STAKEHOLDER_PRESENTATION.md => docs/STAKEHOLDER_PRESENTATION.md (100%) rename rollback-to-net10.ps1 => docs/rollback-to-net10.ps1 (100%) diff --git a/Emby.Server.Implementations/ApplicationHost.cs b/Emby.Server.Implementations/ApplicationHost.cs index e5ffb56b..9d1f2f21 100644 --- a/Emby.Server.Implementations/ApplicationHost.cs +++ b/Emby.Server.Implementations/ApplicationHost.cs @@ -599,6 +599,14 @@ namespace Emby.Server.Implementations SetStaticProperties(); FindParts(); + + // Ensure at least one user exists for the startup wizard + var userManager = Resolve(); + if (!ConfigurationManager.Configuration.IsStartupWizardCompleted) + { + Logger.LogInformation("Startup wizard not completed, ensuring initial user exists"); + await userManager.InitializeAsync().ConfigureAwait(false); + } } private X509Certificate2 GetCertificate(string path, string password) diff --git a/Jellyfin.Api/Controllers/StartupController.cs b/Jellyfin.Api/Controllers/StartupController.cs index 358f09d3..cb80e5e0 100644 --- a/Jellyfin.Api/Controllers/StartupController.cs +++ b/Jellyfin.Api/Controllers/StartupController.cs @@ -135,6 +135,7 @@ public class StartupController : BaseJellyfinApiController [ProducesResponseType(StatusCodes.Status204NoContent)] public async Task UpdateStartupUser([FromBody] StartupUserDto startupUserDto) { + await _userManager.InitializeAsync().ConfigureAwait(false); var user = _userManager.Users.First(); if (string.IsNullOrWhiteSpace(startupUserDto.Password)) { diff --git a/Jellyfin.Server.Implementations/Users/UserManager.cs b/Jellyfin.Server.Implementations/Users/UserManager.cs index 1bd8cbb1..f430496a 100644 --- a/Jellyfin.Server.Implementations/Users/UserManager.cs +++ b/Jellyfin.Server.Implementations/Users/UserManager.cs @@ -566,7 +566,18 @@ namespace Jellyfin.Server.Implementations.Users dbContext.Users.Add(newUser); await dbContext.SaveChangesAsync().ConfigureAwait(false); - _users.Add(newUser.Id, newUser); + + var reloadedUser = await dbContext.Users + .AsNoTracking() + .AsSplitQuery() + .Include(u => u.Permissions) + .Include(u => u.Preferences) + .Include(u => u.AccessSchedules) + .Include(u => u.ProfileImage) + .FirstAsync(u => u.Id.Equals(newUser.Id)) + .ConfigureAwait(false); + + _users.Add(reloadedUser.Id, reloadedUser); } } diff --git a/Jellyfin.Server/Properties/PublishProfiles/FolderProfile.pubxml.user b/Jellyfin.Server/Properties/PublishProfiles/FolderProfile.pubxml.user index d27f448f..9a0d94c9 100644 --- a/Jellyfin.Server/Properties/PublishProfiles/FolderProfile.pubxml.user +++ b/Jellyfin.Server/Properties/PublishProfiles/FolderProfile.pubxml.user @@ -3,7 +3,7 @@ <_PublishTargetUrl>E:\Program Files\Jellyfin - True|2026-02-23T17:08:36.6307546Z||;False|2026-02-23T12:02:39.0223565-05:00||;True|2026-02-23T11:48:21.1980918-05:00||;True|2026-02-23T11:13:01.1928466-05:00||;True|2026-02-23T10:32:13.7989634-05:00||;True|2026-02-23T09:02:53.5227868-05:00||;True|2026-02-23T08:11:05.7403694-05:00||;False|2026-02-23T08:07:46.6244256-05:00||;True|2026-02-23T08:00:05.0454829-05:00||;False|2026-02-23T07:56:44.6461434-05:00||;True|2026-02-23T07:50:44.1212024-05:00||;True|2026-02-23T07:29:19.3226285-05:00||;True|2026-02-22T20:02:08.7802640-05:00||;True|2026-02-22T19:00:49.1033285-05:00||;True|2026-02-22T18:46:50.8399883-05:00||;True|2026-02-22T18:36:34.2983199-05:00||;True|2026-02-22T18:33:05.9495883-05:00||;True|2026-02-22T18:28:09.3531365-05:00||;True|2026-02-22T18:23:19.7767548-05:00||;True|2026-02-22T18:03:49.9702878-05:00||;True|2026-02-22T17:31:43.8027839-05:00||;True|2026-02-22T17:14:22.1722691-05:00||;True|2026-02-22T17:07:09.6937759-05:00||;True|2026-02-22T16:29:37.5643134-05:00||;True|2026-02-22T16:05:05.3412117-05:00||;True|2026-02-22T15:59:39.7645693-05:00||; + True|2026-02-23T20:36:20.8511403Z||;True|2026-02-23T14:06:04.7110322-05:00||;True|2026-02-23T13:51:39.0686004-05:00||;True|2026-02-23T13:12:08.3890386-05:00||;False|2026-02-23T13:06:12.0188266-05:00||;True|2026-02-23T12:08:36.6307546-05:00||;False|2026-02-23T12:02:39.0223565-05:00||;True|2026-02-23T11:48:21.1980918-05:00||;True|2026-02-23T11:13:01.1928466-05:00||;True|2026-02-23T10:32:13.7989634-05:00||;True|2026-02-23T09:02:53.5227868-05:00||;True|2026-02-23T08:11:05.7403694-05:00||;False|2026-02-23T08:07:46.6244256-05:00||;True|2026-02-23T08:00:05.0454829-05:00||;False|2026-02-23T07:56:44.6461434-05:00||;True|2026-02-23T07:50:44.1212024-05:00||;True|2026-02-23T07:29:19.3226285-05:00||;True|2026-02-22T20:02:08.7802640-05:00||;True|2026-02-22T19:00:49.1033285-05:00||;True|2026-02-22T18:46:50.8399883-05:00||;True|2026-02-22T18:36:34.2983199-05:00||;True|2026-02-22T18:33:05.9495883-05:00||;True|2026-02-22T18:28:09.3531365-05:00||;True|2026-02-22T18:23:19.7767548-05:00||;True|2026-02-22T18:03:49.9702878-05:00||;True|2026-02-22T17:31:43.8027839-05:00||;True|2026-02-22T17:14:22.1722691-05:00||;True|2026-02-22T17:07:09.6937759-05:00||;True|2026-02-22T16:29:37.5643134-05:00||;True|2026-02-22T16:05:05.3412117-05:00||;True|2026-02-22T15:59:39.7645693-05:00||; \ No newline at end of file diff --git a/ASYNC_CONVERSION_CHECKLIST.md b/docs/ASYNC_CONVERSION_CHECKLIST.md similarity index 100% rename from ASYNC_CONVERSION_CHECKLIST.md rename to docs/ASYNC_CONVERSION_CHECKLIST.md diff --git a/ASYNC_CONVERSION_EXAMPLE.cs b/docs/ASYNC_CONVERSION_EXAMPLE.cs similarity index 100% rename from ASYNC_CONVERSION_EXAMPLE.cs rename to docs/ASYNC_CONVERSION_EXAMPLE.cs diff --git a/ASYNC_CONVERSION_PRIORITY.md b/docs/ASYNC_CONVERSION_PRIORITY.md similarity index 100% rename from ASYNC_CONVERSION_PRIORITY.md rename to docs/ASYNC_CONVERSION_PRIORITY.md diff --git a/ASYNC_MIGRATION_PLAN.md b/docs/ASYNC_MIGRATION_PLAN.md similarity index 100% rename from ASYNC_MIGRATION_PLAN.md rename to docs/ASYNC_MIGRATION_PLAN.md diff --git a/BASEITEM_ASYNC_REFERENCE.md b/docs/BASEITEM_ASYNC_REFERENCE.md similarity index 100% rename from BASEITEM_ASYNC_REFERENCE.md rename to docs/BASEITEM_ASYNC_REFERENCE.md diff --git a/BASEITEM_FINAL_STATUS.md b/docs/BASEITEM_FINAL_STATUS.md similarity index 100% rename from BASEITEM_FINAL_STATUS.md rename to docs/BASEITEM_FINAL_STATUS.md diff --git a/BUILD_SUCCESS_SUMMARY.md b/docs/BUILD_SUCCESS_SUMMARY.md similarity index 100% rename from BUILD_SUCCESS_SUMMARY.md rename to docs/BUILD_SUCCESS_SUMMARY.md diff --git a/CONTRIBUTORS.md b/docs/CONTRIBUTORS.md similarity index 100% rename from CONTRIBUTORS.md rename to docs/CONTRIBUTORS.md diff --git a/ConvertToFileScopedNamespaces.ps1 b/docs/ConvertToFileScopedNamespaces.ps1 similarity index 100% rename from ConvertToFileScopedNamespaces.ps1 rename to docs/ConvertToFileScopedNamespaces.ps1 diff --git a/EDITORCONFIG_SETUP.md b/docs/EDITORCONFIG_SETUP.md similarity index 100% rename from EDITORCONFIG_SETUP.md rename to docs/EDITORCONFIG_SETUP.md diff --git a/FixStyleCopWarnings.ps1 b/docs/FixStyleCopWarnings.ps1 similarity index 100% rename from FixStyleCopWarnings.ps1 rename to docs/FixStyleCopWarnings.ps1 diff --git a/HOW_TO_IGNORE_IDE0065.md b/docs/HOW_TO_IGNORE_IDE0065.md similarity index 100% rename from HOW_TO_IGNORE_IDE0065.md rename to docs/HOW_TO_IGNORE_IDE0065.md diff --git a/MEDIAATTACHMENT_CONVERSION_COMPLETE.md b/docs/MEDIAATTACHMENT_CONVERSION_COMPLETE.md similarity index 100% rename from MEDIAATTACHMENT_CONVERSION_COMPLETE.md rename to docs/MEDIAATTACHMENT_CONVERSION_COMPLETE.md diff --git a/NET11_MIGRATION_SUMMARY.md b/docs/NET11_MIGRATION_SUMMARY.md similarity index 100% rename from NET11_MIGRATION_SUMMARY.md rename to docs/NET11_MIGRATION_SUMMARY.md diff --git a/NPGSQL_COMMAND_IN_PROGRESS_FIX.md b/docs/NPGSQL_COMMAND_IN_PROGRESS_FIX.md similarity index 100% rename from NPGSQL_COMMAND_IN_PROGRESS_FIX.md rename to docs/NPGSQL_COMMAND_IN_PROGRESS_FIX.md diff --git a/OVERALL_PROJECT_STATUS.md b/docs/OVERALL_PROJECT_STATUS.md similarity index 100% rename from OVERALL_PROJECT_STATUS.md rename to docs/OVERALL_PROJECT_STATUS.md diff --git a/PHASE1_COMPLETE.md b/docs/PHASE1_COMPLETE.md similarity index 100% rename from PHASE1_COMPLETE.md rename to docs/PHASE1_COMPLETE.md diff --git a/PHASE1_PROGRESS_REPORT.md b/docs/PHASE1_PROGRESS_REPORT.md similarity index 100% rename from PHASE1_PROGRESS_REPORT.md rename to docs/PHASE1_PROGRESS_REPORT.md diff --git a/PHASE2_COMPLETE.md b/docs/PHASE2_COMPLETE.md similarity index 100% rename from PHASE2_COMPLETE.md rename to docs/PHASE2_COMPLETE.md diff --git a/PHASE3A_COMPLETE.md b/docs/PHASE3A_COMPLETE.md similarity index 100% rename from PHASE3A_COMPLETE.md rename to docs/PHASE3A_COMPLETE.md diff --git a/PHASE3_STRATEGY.md b/docs/PHASE3_STRATEGY.md similarity index 100% rename from PHASE3_STRATEGY.md rename to docs/PHASE3_STRATEGY.md diff --git a/PHASE_3A_FINAL_SUMMARY.md b/docs/PHASE_3A_FINAL_SUMMARY.md similarity index 100% rename from PHASE_3A_FINAL_SUMMARY.md rename to docs/PHASE_3A_FINAL_SUMMARY.md diff --git a/PHASE_3B_SUMMARY.md b/docs/PHASE_3B_SUMMARY.md similarity index 100% rename from PHASE_3B_SUMMARY.md rename to docs/PHASE_3B_SUMMARY.md diff --git a/PHASE_3C_3D_SUMMARY.md b/docs/PHASE_3C_3D_SUMMARY.md similarity index 100% rename from PHASE_3C_3D_SUMMARY.md rename to docs/PHASE_3C_3D_SUMMARY.md diff --git a/PHASE_3E_SUMMARY.md b/docs/PHASE_3E_SUMMARY.md similarity index 100% rename from PHASE_3E_SUMMARY.md rename to docs/PHASE_3E_SUMMARY.md diff --git a/PHASE_3_COMBINED_SUMMARY.md b/docs/PHASE_3_COMBINED_SUMMARY.md similarity index 100% rename from PHASE_3_COMBINED_SUMMARY.md rename to docs/PHASE_3_COMBINED_SUMMARY.md diff --git a/POC_SUMMARY_REPORT.md b/docs/POC_SUMMARY_REPORT.md similarity index 100% rename from POC_SUMMARY_REPORT.md rename to docs/POC_SUMMARY_REPORT.md diff --git a/POSTGRESQL_BACKUP_ANALYSIS.md b/docs/POSTGRESQL_BACKUP_ANALYSIS.md similarity index 100% rename from POSTGRESQL_BACKUP_ANALYSIS.md rename to docs/POSTGRESQL_BACKUP_ANALYSIS.md diff --git a/PROJECT_COMPLETION.md b/docs/PROJECT_COMPLETION.md similarity index 100% rename from PROJECT_COMPLETION.md rename to docs/PROJECT_COMPLETION.md diff --git a/README_EDITORCONFIG_CHANGES.md b/docs/README_EDITORCONFIG_CHANGES.md similarity index 100% rename from README_EDITORCONFIG_CHANGES.md rename to docs/README_EDITORCONFIG_CHANGES.md diff --git a/STAKEHOLDER_PRESENTATION.md b/docs/STAKEHOLDER_PRESENTATION.md similarity index 100% rename from STAKEHOLDER_PRESENTATION.md rename to docs/STAKEHOLDER_PRESENTATION.md diff --git a/rollback-to-net10.ps1 b/docs/rollback-to-net10.ps1 similarity index 100% rename from rollback-to-net10.ps1 rename to docs/rollback-to-net10.ps1 diff --git a/src/Jellyfin.CodeAnalysis/bin/Debug/netstandard2.0/Jellyfin.CodeAnalysis.dll b/src/Jellyfin.CodeAnalysis/bin/Debug/netstandard2.0/Jellyfin.CodeAnalysis.dll index f2f97e52e4b59d7ef59b55b76072970ac1167976..d7f87adcebe50f15fd64f4cfc58debdf0293a735 100644 GIT binary patch delta 235 zcmZp0X>gg)!Q#ai^lxKNjHp24+nt?%10ML#6f=v+e*XRc<{zSam^9KXjE&O_l2cQY zk`oh65|d3+EG*59Oe{^(l2T30P14fLk_-%t&5|bHkyyj>;7HB;$vu(*0unRq)gHWN zcU)#-nk4?uHFEMB$zlblpdd^Ts5+m~(yZUjS$gkBv#!sZ>!oh8_@^;gFc<@28iN5t zGD9j5CIRV0AT$BuWCl})6rc)A26F}@pok?9rvX)@0>#b2>@)^5Am0E8jX|u<%jF}P E0JkVh9smFU delta 235 zcmZp0X>gg)!Scc8$Gwd`F`@!~29X?kR?hBi`swR^n5SLY{6lmPlZJ(vg@ti)ifOW0 zs*zcmVPc9!nrVuWSz>CErFoj6X_|$pWlCzAsrlqP5^GraEXp@d?vV@-sGSwZu~1OS zb>5#}8-M%CmP~#lS*!pRY=sE|RU1llc+N=Oe!k<*?nBv|>!oh8_**cTF<1bhF+(y# z3WF(-G-F6*FanZk42BGeKrss-%M?h1#1esWNeq?@=3rSoJsUM?TW F1OR`yNmKv; diff --git a/src/Jellyfin.CodeAnalysis/bin/Debug/netstandard2.0/Jellyfin.CodeAnalysis.pdb b/src/Jellyfin.CodeAnalysis/bin/Debug/netstandard2.0/Jellyfin.CodeAnalysis.pdb index 1566b34a4e23855d6c9c5b2db50122260659efef..9b4b64e5cd464b4debdc3069e17fb415d052514a 100644 GIT binary patch delta 570 zcmV-A0>%B%PwY>Sa3Itq001LGY;R%!000=6KPKSo2SKJZHDVY3MOom)eD9Hvt|1O1 z0RY$|0RZzO0RW~X000000RX`y00000000000RYL9UjfrA!XqaD1OR0NCjbQiq6Jm} z0|55`b^rqa?g0P+1^|L2AOQvdxFjF}2LQXXT>^;$f4_c)xm4(LP&Umtt=wm6Z^se6 zK~nOE=9V?EjkCt~9)Wc=1ONc7lTB+JF${+9f&2%NQ%i}*$xJ>r35D&Jlm-eV3GJcu zAbaFlfyXYk+%W&XcoT*#{a_C(pDe$A^jfx?=6J7hc+fO(gGJ);K!Fkp^=~)H8jowv zU}I14e}oxk0hkF8Bu1}h>3s>pBf%F+nPa%>lvb^7PZp{>)mm5GtX-`!43t44NUh-5 z6O1^4#gYj)*q9Po0Yhv2$uR+j9-i2HFa$nk0d_M@*7WR=GbEZ#K3ltK{&Kc`xA5?w zWDWy7Oj&5W{(Y+M$$7HEF`^j-o ztJu>rpr115qu1Ye1_sANNm#R6*!N`0usi0KJ-yuU7UV?fI(El=3@)Z|;|2XccyHWg z+d6HDj799wp7ocDi_>n=IYVa`opa|#>-OC2UiNc}eX+8?u0FDO+8^%!o!z|W58HpR z8ovBb5AO>59=;|Ps%38z4kHBt>oI3l_x%F1VFq6y6r&XZqZ|RFIRT?Z0i#?2qj~|O IpOe%k{D=biy8r+H delta 543 zcmV+)0^t4ZPtZ@0a3HuO001LGY;R%!004cOUI?KPB1NA3`my^>9dr&jcd?O>t|9Uw z0RX%s0RYz{0RW05000000RW{W00000000000RXL&UjfrArXwc+1OQ0`CjbQih6Ppt z0|55`b^rqa?g0P+1^{LxAOQvdoFpIt2LPY5T>^;$f5Wzb`d|h>PUi(NV8|g@Xf_Z& ztW)IvF#;%Fe_Tjozkyi|1ONc7lTAwlF%X9Dg8yOYNs;baW$V_8P%DapAXfAs9%hrt zb|9NbGOO&rmsBY&e$YcFr%c{?-eH*Jd4H?1yOZZ|hOPL1O^yNz>GMT0#p9eKD6a`V zFv3y*e^mzv;=Rq1bSafEYzZ3dKw%pR*eM?ZDS?XS_|856It?FeEmQ>7 zM*%iVn#}3TnNQOqf7&i`?Crm940ML;HekxGU@xg^>&-D& zZ0U(YT!##@!*n*s+&JSyv*-owAH0KdSeD017ivgHLo+~KnnE89k*d*&85E{0Mw(1< zvbpVj@VZs9y{SI3SlS-$|H&@)`FizlrOm&aU9@a9JO>s^wpRh`hMa)17-N>|J^_L| hvwsF%AQYnc0iyr`qa6XGDFLHE0i#|4ql1(1Cj4aa;l%&| diff --git a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfo.cs b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfo.cs index ff6b222e..45f3ffe7 100644 --- a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfo.cs +++ b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfo.cs @@ -1,6 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. +// Runtime Version:4.0.30319.42000 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -13,7 +14,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("Jellyfin.CodeAnalysis")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+86883cd5c6e26f1ad8f5d26aeb97f15f859def57")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+f833f0ceebcaa4ac5d8972494fbe574ff6b0036b")] [assembly: System.Reflection.AssemblyProductAttribute("Jellyfin.CodeAnalysis")] [assembly: System.Reflection.AssemblyTitleAttribute("Jellyfin.CodeAnalysis")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfoInputs.cache b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfoInputs.cache index a45916b5..ff06f352 100644 --- a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfoInputs.cache +++ b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.AssemblyInfoInputs.cache @@ -1 +1 @@ -519a49780b327d7db1c693a3f7b3613e79c1adca3797d68beef6d8a27561c8f3 +ec635030130ae48b7e69fa591520d48e411bcd6177f6760b1e8b737bdcf85112 diff --git a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.csproj.AssemblyReference.cache b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.csproj.AssemblyReference.cache index 4c5b9dad125aa15daf88e64fe764ad598803c2cc..1fd0093cd50c1774e41b9fd1e906e0d9df4ad3e1 100644 GIT binary patch literal 79822 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 EKavnI82|tP diff --git a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.dll b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.dll index f2f97e52e4b59d7ef59b55b76072970ac1167976..d7f87adcebe50f15fd64f4cfc58debdf0293a735 100644 GIT binary patch delta 235 zcmZp0X>gg)!Q#ai^lxKNjHp24+nt?%10ML#6f=v+e*XRc<{zSam^9KXjE&O_l2cQY zk`oh65|d3+EG*59Oe{^(l2T30P14fLk_-%t&5|bHkyyj>;7HB;$vu(*0unRq)gHWN zcU)#-nk4?uHFEMB$zlblpdd^Ts5+m~(yZUjS$gkBv#!sZ>!oh8_@^;gFc<@28iN5t zGD9j5CIRV0AT$BuWCl})6rc)A26F}@pok?9rvX)@0>#b2>@)^5Am0E8jX|u<%jF}P E0JkVh9smFU delta 235 zcmZp0X>gg)!Scc8$Gwd`F`@!~29X?kR?hBi`swR^n5SLY{6lmPlZJ(vg@ti)ifOW0 zs*zcmVPc9!nrVuWSz>CErFoj6X_|$pWlCzAsrlqP5^GraEXp@d?vV@-sGSwZu~1OS zb>5#}8-M%CmP~#lS*!pRY=sE|RU1llc+N=Oe!k<*?nBv|>!oh8_**cTF<1bhF+(y# z3WF(-G-F6*FanZk42BGeKrss-%M?h1#1esWNeq?@=3rSoJsUM?TW F1OR`yNmKv; diff --git a/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.pdb b/src/Jellyfin.CodeAnalysis/obj/Debug/netstandard2.0/Jellyfin.CodeAnalysis.pdb index 1566b34a4e23855d6c9c5b2db50122260659efef..9b4b64e5cd464b4debdc3069e17fb415d052514a 100644 GIT binary patch delta 570 zcmV-A0>%B%PwY>Sa3Itq001LGY;R%!000=6KPKSo2SKJZHDVY3MOom)eD9Hvt|1O1 z0RY$|0RZzO0RW~X000000RX`y00000000000RYL9UjfrA!XqaD1OR0NCjbQiq6Jm} z0|55`b^rqa?g0P+1^|L2AOQvdxFjF}2LQXXT>^;$f4_c)xm4(LP&Umtt=wm6Z^se6 zK~nOE=9V?EjkCt~9)Wc=1ONc7lTB+JF${+9f&2%NQ%i}*$xJ>r35D&Jlm-eV3GJcu zAbaFlfyXYk+%W&XcoT*#{a_C(pDe$A^jfx?=6J7hc+fO(gGJ);K!Fkp^=~)H8jowv zU}I14e}oxk0hkF8Bu1}h>3s>pBf%F+nPa%>lvb^7PZp{>)mm5GtX-`!43t44NUh-5 z6O1^4#gYj)*q9Po0Yhv2$uR+j9-i2HFa$nk0d_M@*7WR=GbEZ#K3ltK{&Kc`xA5?w zWDWy7Oj&5W{(Y+M$$7HEF`^j-o ztJu>rpr115qu1Ye1_sANNm#R6*!N`0usi0KJ-yuU7UV?fI(El=3@)Z|;|2XccyHWg z+d6HDj799wp7ocDi_>n=IYVa`opa|#>-OC2UiNc}eX+8?u0FDO+8^%!o!z|W58HpR z8ovBb5AO>59=;|Ps%38z4kHBt>oI3l_x%F1VFq6y6r&XZqZ|RFIRT?Z0i#?2qj~|O IpOe%k{D=biy8r+H delta 543 zcmV+)0^t4ZPtZ@0a3HuO001LGY;R%!004cOUI?KPB1NA3`my^>9dr&jcd?O>t|9Uw z0RX%s0RYz{0RW05000000RW{W00000000000RXL&UjfrArXwc+1OQ0`CjbQih6Ppt z0|55`b^rqa?g0P+1^{LxAOQvdoFpIt2LPY5T>^;$f5Wzb`d|h>PUi(NV8|g@Xf_Z& ztW)IvF#;%Fe_Tjozkyi|1ONc7lTAwlF%X9Dg8yOYNs;baW$V_8P%DapAXfAs9%hrt zb|9NbGOO&rmsBY&e$YcFr%c{?-eH*Jd4H?1yOZZ|hOPL1O^yNz>GMT0#p9eKD6a`V zFv3y*e^mzv;=Rq1bSafEYzZ3dKw%pR*eM?ZDS?XS_|856It?FeEmQ>7 zM*%iVn#}3TnNQOqf7&i`?Crm940ML;HekxGU@xg^>&-D& zZ0U(YT!##@!*n*s+&JSyv*-owAH0KdSeD017ivgHLo+~KnnE89k*d*&85E{0Mw(1< zvbpVj@VZs9y{SI3SlS-$|H&@)`FizlrOm&aU9@a9JO>s^wpRh`hMa)17-N>|J^_L| hvwsF%AQYnc0iyr`qa6XGDFLHE0i#|4ql1(1Cj4aa;l%&|