Opened 5 years ago
Closed 3 years ago
#3282 closed bug (Fixed)
Does not work with pillow-simd
Reported by: | FichteFoll | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | 2.0.4 |
Component: | Packaging | Version: | 2.0.3 |
Keywords: | Cc: |
Description
When using https://github.com/uploadcare/pillow-simd instead of pillow, deluge refuses to start. pillow-simd is a drop-in replacement and should be honored if it is installed on the system instead of the normal pillow.
♦ deluge Traceback (most recent call last): File "/usr/bin/deluge", line 6, in <module> from pkg_resources import load_entry_point File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3241, in <module> @_call_aside File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3225, in _call_aside f(*args, **kwargs) File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3254, in _initialize_master_working_set working_set = WorkingSet._build_master() File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 583, in _build_master ws.require(__requires__) File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 900, in require needed = self.resolve(parse_requirements(requirements)) File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 786, in resolve raise DistributionNotFound(req, requirers) pkg_resources.DistributionNotFound: The 'pillow' distribution was not found and is required by deluge
Change History (2)
comment:1 Changed 5 years ago by Cas
- Component changed from Unknown to Packaging
- Milestone changed from needs verified to 2.0.4
comment:2 Changed 3 years ago by Cas
- Resolution set to Fixed
- Status changed from new to closed
Fixed by moving pillow to extra_requires: [8fb25f71f30733]
Note: See
TracTickets for help on using
tickets.
Deluge specifies pillow in setup.py install_requires and uses entry_points so looks up the requirements but because pillow-simd cannot be installed at the same time as pillow you see the error.
Although it is optional, I am hesitant to remove it from setup requires as I would then need to create an extras section with documentation on installing this.
There are workarounds but I feel downstream developers should not have to deal with this. However I will have a bit more of think about what to do with this.
In the meantime you could patch setup.py before install or requires.txt after install.
Refs: