sagemath/sage

conda-forge-ubuntu-standard: Pillow fails to install (follow up)

mkoeppe opened this issue · 20 comments

Follow-up from #30550: A small fix up for the setup.py bdist_wheel for pillow made in #29500, so that the fix for Pillow on conda-forge-ubuntu-standard from #30550 works again.

Depends on #30550
Depends on #29500

CC: @isuruf @dimpase

Component: packages: standard

Author: Matthias Koeppe

Branch/Commit: ff0c973

Reviewer: Isuru Fernando

Issue created by migration from https://trac.sagemath.org/ticket/30658

comment:1

Looks like that's not the issue. build_ext is first run with the options that we give and then build_ext is run again without the options we give. Not sure why it is run twice.

comment:2

I started to use bdist_wheel (#29500) - perhaps this is not playing well with pillow's setup.py

comment:3

@mkoeppe, yes, that's an issue. Options passed to build_ext are not used in bdist_wheel.

comment:4

A fix for this would be to move bdist_wheel before build_ext.

python setup.py bdist_wheel build_ext <options>

instead of

python setup.py build_ext <options> bdist_wheel
comment:5

Thanks! I'll try this

Dependencies: #29500

Author: Matthias Koeppe

Commit: ff0c973

Last 10 new commits:

0a64674build/pkgs/gambit/spkg-install.in: Install via bdist_wheel
ca58693build/pkgs/pillow/spkg-install.in: Install via bdist_wheel
5a747c4build/bin/sage-pip-{install,uninstall}: Remove pip2 support
9ee2110build/bin/sage-dist-helpers: Also use $sudo for storing the wheel file
d7aac84src/doc/en/developer/packaging.rst: Update sdh_... documentation
9b7c7a0build/bin/sage-pip-{install,uninstall}: Fix typo in comment
4135e8bbuild/bin/sage-pip-install: Remove an outdated comment
f2e7075Merge tag '9.2.beta13' into t/29500/install_all_python_packages_via_pip_wheel__create_pep_503_simple_repository_for_wheels
c2efa14Merge branch 't/29500/install_all_python_packages_via_pip_wheel__create_pep_503_simple_repository_for_wheels' into t/30658/conda_forge_ubuntu_standard__pillow_fails_to_install__follow_up_
ff0c973build/pkgs/pillow/spkg-install.in: Fix up 'setup.py bdist_wheel' command

Changed dependencies from #29500 to #30550, #29500

Description changed:

--- 
+++ 
@@ -1,5 +1,3 @@
-Follow-up from #30550:
-
-  We should disable all of the features in ​https://github.com/python-pillow/Pillow/blob/master/setup.py#L261-L272 if they are not provided by sage or by a configure check
+Follow-up from #30550:  A small fix up for the `setup.py bdist_wheel` for pillow made in #29500, so that the fix for Pillow on conda-forge-ubuntu-standard from #30550 works again.
 
 
comment:9

you might need to do the same for numpy

comment:10

For numpy I think the command is OK:

sage-python23 setup.py \
        --no-user-cfg \
       bdist_wheel \
       ${NUMPY_FCONFIG} || sdh_die "Error building wheel for numpy"
comment:11

Confirmed that pillow now works:

$  tox -e docker-conda-forge-ubuntu-standard -- pillow
...
[pillow-7.2.0] installing. Log file: /sage/logs/pkgs/pillow-7.2.0.log
  [pillow-7.2.0] successfully installed.
comment:12

Also

[numpy-1.19.1] installing. Log file: /sage/logs/pkgs/numpy-1.19.1.log
  [numpy-1.19.1] successfully installed.
comment:13

Ready for review

Reviewer: Isuru Fernando

comment:15

Thanks!