Opened 7 weeks ago
Last modified 3 weeks ago
#3653 new bug
Crash with setuptools 82+
| Reported by: | Hugo Osvaldo Barrera | Owned by: | |
|---|---|---|---|
| Priority: | minor | Milestone: | needs verified |
| Component: | Core | Version: | 2.0.5 |
| Keywords: | Cc: |
Description
Setuptools 82 removed the deprecated pkg_resources module.
Deluge 2.2.0 uses this module at start-up and for loading plugins, and crashes at start-up trying to import this module which no longer exists.
For the Alpine Linux package, we're patching builds to use importlib.metadata instead: https://gitlab.alpinelinux.org/alpine/aports/-/blob/6da06b896ec927967e8078d221b92f4aac7ae040/community/deluge/no-pkg_resources.patch
The main issue with this patch is that it breaks backwards compatibility with older Pythons: importlib was introduced in Python 3.8, and Deluge supports Python 3.6+, so it's not suitable for upstream. I asked on #deluge on IRC for feedback but didn't receive any response.
The main focus when introducing the patch was to get Deluge back in a state where it actually starts, and it seems to break loading plugins in some scenarios, so needs a lot more refinement.
Change History (3)
comment:1 by , 3 weeks ago
comment:3 by , 3 weeks ago
3.10+ should be a lot more manageable and using importlib directly should work fine.
The patch I linked works for the main start-up sequence, but doesn't properly load plugins installed as .egg files.



well, deluge 2.2.0 dropped support for python 3.6... and works on >=3.7
and the next release will support only 3.10