idlesign / deluge-webapi

Plugin for Deluge WebUI providing sane JSON API
https://github.com/idlesign/deluge-webapi
BSD 3-Clause "New" or "Revised" License
120 stars 27 forks source link

Python 3.10 #32

Closed Cochrane-Server closed 2 years ago

Cochrane-Server commented 2 years ago

I've setup Organizr using snap on Arch and am trying to integrate Deluge into the homepage. It's directed me to download the WebAPI plugin, but I'm running python 3.10.

Should the latest 3.8 plugin version still work or does it need updating for 3.10?

I tried adding various versions from Deluge Web Admin and it fails with no errors.

idlesign commented 2 years ago

You may want to start with a simple .egg file rename mentioned here:

  1. https://github.com/idlesign/deluge-webapi/issues/27#issuecomment-641070464
  2. https://github.com/idlesign/deluge-webapi/issues/27#issuecomment-808832131
Cochrane-Server commented 2 years ago

Thanks Igor - I tried the newer 3.8 version, tried renaming to 3.10, restarted services, tried adding via web admin and via plugins directory.

When adding via plugins directory it shows up in preferences but cannot be enabled.

[2022-05-04 11:34:03] 11:34:03 [DEBUG ][deluge.core.rpcserver :310 ] RPC dispatch core.enable_plugin [2022-05-04 11:34:03] 11:34:03 [DEBUG ][deluge.core.rpcserver :435 ] Registering method: webapi.get_config [2022-05-04 11:34:03] 11:34:03 [DEBUG ][deluge.core.rpcserver :435 ] Registering method: webapi.set_config [2022-05-04 11:34:03] 11:34:03 [DEBUG ][deluge.plugins.pluginbase :38 ] CorePlugin initialized.. [2022-05-04 11:34:03] 11:34:03 [INFO ][webapi.core :20 ] Enabling WebAPI plugin CORE ... [2022-05-04 11:34:03] 11:34:03 [DEBUG ][deluge.configmanager :94 ] Getting config: webapi.conf [2022-05-04 11:34:03] 11:34:03 [DEBUG ][deluge.config :179 ] Setting key "enable_cors" to: False (of type: <class 'bool'>) [2022-05-04 11:34:03] 11:34:03 [DEBUG ][deluge.config :179 ] Setting key "allowed_origin" to: [] (of type: <class 'list'>) [2022-05-04 11:34:03] 11:34:03 [DEBUG ][deluge.config :434 ] Config /srv/deluge/.config/deluge/webapi.conf version: 1.1 loaded: {'enable_cors': True, 'allowed_origin': []} [2022-05-04 11:34:03] 11:34:03 [INFO ][webapi.core :57 ] Patching webui for CORS... [2022-05-04 11:34:03] 11:34:03 [ERROR ][deluge.pluginmanagerbase :195 ] Failed to start plugin: WebAPI [2022-05-04 11:34:03] Traceback: <class 'KeyError'>: 'JSON' [2022-05-04 11:34:03] /usr/lib/python3.10/site-packages/twisted/internet/defer.py:191:maybeDeferred [2022-05-04 11:34:03] /usr/lib/python3.10/site-packages/deluge/plugins/init.py:27:enable [2022-05-04 11:34:03] /srv/deluge/.config/deluge/plugins/WebAPI-0.4.0-py3.10.egg/webapi/core.py:26:enable [2022-05-04 11:34:03] /srv/deluge/.config/deluge/plugins/WebAPI-0.4.0-py3.10.egg/webapi/core.py:59:patch_web_ui [2022-05-04 11:34:03] /usr/lib/python3.10/site-packages/deluge/component.py:490:get [2022-05-04 11:34:03]
[2022-05-04 11:34:03] 11:34:03 [INFO ][webapi.core :29 ] Disabling WebAPI plugin CORE ... [2022-05-04 11:34:03] 11:34:03 [DEBUG ][deluge.component :301 ] Deregistering Component: CorePlugin.WebAPI [2022-05-04 11:34:03] 11:34:03 [WARNING ][deluge.pluginmanagerbase :248 ] Problems occurred disabling plugin: WebAPI [2022-05-04 11:34:03] 11:34:03 [DEBUG ][deluge.pluginmanagerbase :249 ] list.remove(x): x not in list [2022-05-04 11:34:03] 11:34:03 [DEBUG ][deluge.core.rpcserver :539 ] intevents: {2: ['ConfigValueChangedEvent', 'PluginEnabledEvent', 'PluginDisabledEvent', 'TorrentStateChangedEvent', 'TorrentRemovedEvent', 'TorrentAddedEvent']} [2022-05-04 11:34:03] 11:34:03 [DEBUG ][deluge.core.rpcserver :543 ] Emit Event: PluginDisabledEvent ['WebAPI']

Cochrane-Server commented 2 years ago

I also tried this in a docker-compose container with the 3.8 and 3.10 egg and it failed.

Cochrane-Server commented 2 years ago

I deleted WebAPI.conf and .backup and then re-tried adding the 3.8 egg manually and it's working now after a few restarts.

Thanks for helping me.