jellyfin / jellyfin-plugin-playbackreporting

Playback Statistics Plugin for Jellyfin

Home Page:https://jellyfin.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[bug] Plugin fails to load in Jellyfin 10.9.0 (unstable)

rigrig opened this issue · comments

The plugin fails to load under Jellyfin 10.9.0 (unstable docker image)

I uninstalled+deleted the plugin folder, but after reinstalling it was still broken.

Plugin version:

13.2403.4.0 (from the unstable repo)

Server:

Version: 10.9.0
Web version: 10.9.0
Build version: 2024032505
Docker image: jellyfin/jellyfin:unstable (674432a05466)
Host OS: Synology DSM 7.2-64561 (Linux Nella 3.10.108 #64561 SMP Fri May 19 01:32:53 CST 2023 x86_64 GNU/Linux synology_braswell_916+)

Installed Plugins:

AniDB 7.0.0.0: Active
AniList 6.0.0.0: Active
AniSearch 0.0.0.0: Active
AudioDB 10.9.0.0: Active
Fanart 10.0.0.0: Active
IMVDb 3.0.0.0: Disabled
Intro Skipper 0.1.16.4: NotSupported
Intros 1.3.0.0: Disabled
Kitsu 4.0.0.0: Active
Kodi Sync Queue 9.0.0.0: Active
ListenBrainz 3.4.1.0: NotSupported
MusicBrainz 10.9.0.0: Active
OMDb 10.9.0.0: Active
Open Subtitles 19.0.0.0: Active
Playback Reporting 13.2403.4.0: NotSupported
SkinManager 1.5.0.0: Active
Studio Images 10.9.0.0: Active
TMDb 10.9.0.0: Active
TMDb Box Sets 0.0.0.0: Active
TheTVDB 10.0.0.0: Active

Jellyfin log:

[17:16:05] [ERR] Failed to load assembly /config/plugins/Playback Reporting_13.2403.4.0/Jellyfin.Plugin.PlaybackReporting.dll. This error occurs when a plugin references an incompatible version of one of the shared libraries. Disabling plugin
System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
Could not load file or assembly 'SQLitePCL.pretty, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.

   at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
   at System.Reflection.RuntimeModule.GetTypes()
   at Emby.Server.Implementations.Plugins.PluginManager.LoadAssemblies()+MoveNext()
System.IO.FileNotFoundException: Could not load file or assembly 'SQLitePCL.pretty, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.

File name: 'SQLitePCL.pretty, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'
Fontconfig error: No writable cache directories
Fontconfig error: No writable cache directories
Fontconfig error: No writable cache directories
Fontconfig error: No writable cache directories

I'm 80% we just need to add SQLitePCL.pretty.netstandard.dll to build.yaml

Won't have time to test until later

Please try v13.2403.5.0

It loads and adds an item to the dashboard, but the report itself is broken:
image
Log (I tried reloading, which gave the second error message):

[18:14:41] [ERR] Error processing request. URL GET /user_usage_stats/user_activity.
System.InvalidOperationException: The AuthorizationPolicy named: 'DefaultAuthorization' was not found.
[18:14:48] [ERR] Error processing request. URL GET /user_usage_stats/user_activity.
System.InvalidOperationException: The AuthorizationPolicy named: 'DefaultAuthorization' was not found.
   at Jellyfin.Api.Middleware.ResponseTimeMiddleware.Invoke(HttpContext context, IServerConfigurationManager serverConfigurationManager)
   at Jellyfin.Api.Middleware.ExceptionMiddleware.Invoke(HttpContext context)

Similar when opening through the Plugins page:
image
Log (reloaded twice):

[18:15:34] [ERR] Error processing request. URL GET /user_usage_stats/type_filter_list.
System.InvalidOperationException: The AuthorizationPolicy named: 'DefaultAuthorization' was not found.
   at Microsoft.AspNetCore.Authorization.AuthorizationPolicy.CombineAsync(IAuthorizationPolicyProvider policyProvider, IEnumerable`1 authorizeData, IEnumerable`1 policies)
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Jellyfin.Api.Middleware.QueryStringDecodingMiddleware.Invoke(HttpContext httpContext)
   at Swashbuckle.AspNetCore.ReDoc.ReDocMiddleware.Invoke(HttpContext httpContext)
   at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at Jellyfin.Api.Middleware.RobotsRedirectionMiddleware.Invoke(HttpContext httpContext)
   at Jellyfin.Api.Middleware.LegacyEmbyRouteRewriteMiddleware.Invoke(HttpContext httpContext)
   at Microsoft.AspNetCore.ResponseCompression.ResponseCompressionMiddleware.InvokeCore(HttpContext context)
   at Jellyfin.Api.Middleware.ResponseTimeMiddleware.Invoke(HttpContext context, IServerConfigurationManager serverConfigurationManager)
   at Jellyfin.Api.Middleware.ExceptionMiddleware.Invoke(HttpContext context)
[18:15:42] [ERR] Error processing request. URL GET /user_usage_stats/type_filter_list.
System.InvalidOperationException: The AuthorizationPolicy named: 'DefaultAuthorization' was not found.
   at Microsoft.AspNetCore.Authorization.AuthorizationPolicy.CombineAsync(IAuthorizationPolicyProvider policyProvider, IEnumerable`1 authorizeData, IEnumerable`1 policies)
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Jellyfin.Api.Middleware.QueryStringDecodingMiddleware.Invoke(HttpContext httpContext)
   at Swashbuckle.AspNetCore.ReDoc.ReDocMiddleware.Invoke(HttpContext httpContext)
   at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
[18:15:57] [ERR] Error processing request. URL GET /user_usage_stats/type_filter_list.
System.InvalidOperationException: The AuthorizationPolicy named: 'DefaultAuthorization' was not found.
   at Microsoft.AspNetCore.Authorization.AuthorizationPolicy.CombineAsync(IAuthorizationPolicyProvider policyProvider, IEnumerable`1 authorizeData, IEnumerable`1 policies)
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Jellyfin.Api.Middleware.QueryStringDecodingMiddleware.Invoke(HttpContext httpContext)
   at Swashbuckle.AspNetCore.ReDoc.ReDocMiddleware.Invoke(HttpContext httpContext)
   at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
   at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at Jellyfin.Api.Middleware.RobotsRedirectionMiddleware.Invoke(HttpContext httpContext)
   at Jellyfin.Api.Middleware.LegacyEmbyRouteRewriteMiddleware.Invoke(HttpContext httpContext)
   at Microsoft.AspNetCore.ResponseCompression.ResponseCompressionMiddleware.InvokeCore(HttpContext context)
   at Jellyfin.Api.Middleware.ResponseTimeMiddleware.Invoke(HttpContext context, IServerConfigurationManager serverConfigurationManager)
   at Jellyfin.Api.Middleware.ExceptionMiddleware.Invoke(HttpContext context)

Thank you for the report, I've update the affected plugins and have pushed new versions

Thanks, it works now!

I guess that means #75 can be closed as well.