Bug 2027388 - python-pillow fails to build with Python 3.11: Segmentation fault (core dumped)
Summary: python-pillow fails to build with Python 3.11: Segmentation fault (core dumped)
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-pillow
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Sandro Mani
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PYTHON3.11
TreeView+ depends on / blocked
 
Reported: 2021-11-29 14:20 UTC by Tomáš Hrnčiar
Modified: 2022-03-29 10:22 UTC (History)
4 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2022-03-29 10:22:36 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Tomáš Hrnčiar 2021-11-29 14:20:42 UTC
python-pillow fails to build with Python 3.11.0a2.

+ PYTHONPATH=/builddir/build/BUILD/Pillow-8.3.2/build/lib.linux-x86_64-3.11
+ make -C docs html BUILDDIR=_build_py3 SPHINXBUILD=sphinx-build-3.11
make: Entering directory '/builddir/build/BUILD/Pillow-8.3.2/docs'
sphinx-build-3.11 -b html --keep-going -d _build_py3/doctrees   . _build_py3/html
Running Sphinx v4.3.0
making output directory... done
loading intersphinx inventory from https://docs.python.org/3/objects.inv...
WARNING: failed to reach any of the inventories with the following issues:
intersphinx inventory 'https://docs.python.org/3/objects.inv' not fetchable due to <class 'requests.exceptions.ConnectionError'>: HTTPSConnectionPool(host='docs.python.org', port=443): Max retries exceeded with url: /3/objects.inv (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7fa21a83ce80>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution'))
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 93 source files that are out of date
updating environment: [new config] 93 added, 0 changed, 0 removed
reading sources... [  1%] PIL
reading sources... [  2%] about
reading sources... [  3%] deprecations
reading sources... [  4%] handbook/appendices
reading sources... [  5%] handbook/concepts
reading sources... [  6%] handbook/image-file-formats
reading sources... [  7%] handbook/index
reading sources... [  8%] handbook/overview
reading sources... [  9%] handbook/text-anchors
reading sources... [ 10%] handbook/tutorial
reading sources... [ 11%] handbook/writing-your-own-file-decoder
reading sources... [ 12%] index
reading sources... [ 13%] installation
reading sources... [ 15%] porting
reading sources... [ 16%] reference/ExifTags
reading sources... [ 17%] reference/Image
reading sources... [ 18%] reference/ImageChops
reading sources... [ 19%] reference/ImageCms
reading sources... [ 20%] reference/ImageColor
reading sources... [ 21%] reference/ImageDraw
reading sources... [ 22%] reference/ImageEnhance
reading sources... [ 23%] reference/ImageFile
reading sources... [ 24%] reference/ImageFilter
reading sources... [ 25%] reference/ImageFont
reading sources... [ 26%] reference/ImageGrab
reading sources... [ 27%] reference/ImageMath
reading sources... [ 29%] reference/ImageMorph
reading sources... [ 30%] reference/ImageOps
reading sources... [ 31%] reference/ImagePalette
reading sources... [ 32%] reference/ImagePath
reading sources... [ 33%] reference/ImageQt
make: *** [Makefile:45: html] Segmentation fault (core dumped)
make: Leaving directory '/builddir/build/BUILD/Pillow-8.3.2/docs'

https://docs.python.org/3.11/whatsnew/3.11.html

For the build logs, see:
https://copr-be.cloud.fedoraproject.org/results/@python/python3.11/fedora-rawhide-x86_64/02992673-python-pillow/

For all our attempts to build python-pillow with Python 3.11, see:
https://copr.fedorainfracloud.org/coprs/g/python/python3.11/package/python-pillow/

Testing and mass rebuild of packages is happening in copr. You can follow these instructions to test locally in mock if your package builds with Python 3.11:
https://copr.fedorainfracloud.org/coprs/g/python/python3.11/

Let us know here if you have any questions.

Python 3.11 is planned to be included in Fedora 37. To make that update smoother, we're building Fedora packages with all pre-releases of Python 3.11.
A build failure prevents us from testing all dependent packages (transitive [Build]Requires), so if this package is required a lot, it's important for us to get it fixed soon.
We'd appreciate help from the people who know this package best, but if you don't want to work on this now, let us know so we can try to work around it on our side.

Comment 1 Ben Cotton 2022-02-08 21:24:29 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 36 development cycle.
Changing version to 36.

Comment 2 Miro Hrončok 2022-02-27 00:24:08 UTC
The addition of the mingw subpackage further complicates the Python 3.11 rebuilds.

Apparently, it requires us to update mingw-python3 to 3.11 before we can rebuild this package with Python 3.11.

 Problem 1: package mingw64-python3-3.10.2-12.fc37.noarch requires python(abi) = 3.10, but none of the providers can be installed

What are we supposed to do here, disable the MinGW bcond when we do the Python rebuild?

Comment 3 Sandro Mani 2022-02-27 09:02:51 UTC
Wouldn't it be sufficient to change the Requires in mingw-python3 to Requires: python%{version} (i.e. python3.10)? Python3.10 and Python3.11 are side-by-side installable, right? Mingw-python just needs a native python interpreter matching the same version as mingw-python3.

Comment 4 Miro Hrončok 2022-02-27 10:16:55 UTC
> Python3.10 and Python3.11 are side-by-side installable, right? 

Yes.

OK, let's try that.

Comment 5 Sandro Mani 2022-02-27 11:36:22 UTC
Ok, done https://koji.fedoraproject.org/koji/taskinfo?taskID=83413331

Comment 6 Miro Hrončok 2022-03-29 10:22:36 UTC
The package now builds fine.


Note You need to log in before you can comment on or make changes to this bug.