Bug 2383227 - python-matplotlib: FTBFS with pybind11 3.0
Summary: python-matplotlib: FTBFS with pybind11 3.0
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-matplotlib
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Elliott Sales de Andrade
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 2367888 2383226
TreeView+ depends on / blocked
 
Reported: 2025-07-24 12:42 UTC by Cristian Le
Modified: 2025-08-08 19:32 UTC (History)
5 users (show)

Fixed In Version: python-matplotlib-3.10.5-1.fc43
Clone Of:
Environment:
Last Closed: 2025-08-08 19:32:28 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github matplotlib matplotlib pull 30221 0 None Merged BUG: fix future incompatibility with Pillow 13 2025-07-24 18:52:19 UTC

Description Cristian Le 2025-07-24 12:42:24 UTC
Dear package maintainer,

This is an automated bug created due to a FTBFS when rebuilding this package with pybind11 3.0.

The rebuild is being tracked in https://copr.fedorainfracloud.org/coprs/lecris/pybind11-3.0/package/python-matplotlib.

If upstream supports both pybind11 3.x and 2.x with the same codebase, feel free to update the package ahead of the
pybind11 update and close this bug as desired. Otherwise please let us know about the incompatibility so that we can
coordinate a side-tag update together.

Let me know if you encounter any issues, or need any other help.

Comment 1 Elliott Sales de Andrade 2025-07-24 18:52:20 UTC
This doesn't have anything to do with pybind11; the failure is due to Pillow 13, but should be fixed in the next release soon.

Comment 2 Cristian Le 2025-08-07 08:28:59 UTC
I saw that you've pushed an update so I've retrigerred the build and it still has one test failure, but probably unrelated?
```
=================================== FAILURES ===================================
_____________________________ test_rasterized[svg] _____________________________
[gw2] linux -- Python 3.14.0 /usr/bin/python3

ext = 'svg', request = <FixtureRequest for <Function test_rasterized[svg]>>
args = (), kwargs = {}, file_name = 'test_rasterized[svg]'
fig_test = <Figure size 640x480 with 1 Axes>
fig_ref = <Figure size 640x480 with 1 Axes>, figs = []
test_image_path = PosixPath('/builddir/build/BUILD/python-matplotlib-3.10.5-build/matplotlib-3.10.5/result_images/test_backend_svg/test_rasterized[svg].svg')
ref_image_path = PosixPath('/builddir/build/BUILD/python-matplotlib-3.10.5-build/matplotlib-3.10.5/result_images/test_backend_svg/test_rasterized[svg]-expected.svg')

    @pytest.mark.parametrize("ext", extensions)
    def wrapper(*args, ext, request, **kwargs):
        if 'ext' in old_sig.parameters:
            kwargs['ext'] = ext
        if 'request' in old_sig.parameters:
            kwargs['request'] = request
    
        file_name = "".join(c for c in request.node.name
                            if c in ALLOWED_CHARS)
        try:
            fig_test = plt.figure("test")
            fig_ref = plt.figure("reference")
            with _collect_new_figures() as figs:
                func(*args, fig_test=fig_test, fig_ref=fig_ref, **kwargs)
            if figs:
                raise RuntimeError('Number of open figures changed during '
                                   'test. Make sure you are plotting to '
                                   'fig_test or fig_ref, or if this is '
                                   'deliberate explicitly close the '
                                   'new figure(s) inside the test.')
            test_image_path = result_dir / (file_name + "." + ext)
            ref_image_path = result_dir / (file_name + "-expected." + ext)
            fig_test.savefig(test_image_path)
            fig_ref.savefig(ref_image_path)
>           _raise_on_image_difference(
                ref_image_path, test_image_path, tol=tol
            )
E           matplotlib.testing.exceptions.ImageComparisonFailure: images not close (RMS 147.627):
E           	result_images/test_backend_svg/test_rasterized[svg]_svg.png
E           	result_images/test_backend_svg/test_rasterized[svg]-expected_svg.png
E           	result_images/test_backend_svg/test_rasterized[svg]_svg-failed-diff.png

../BUILDROOT/usr/lib64/python3.14/site-packages/matplotlib/testing/decorators.py:422: ImageComparisonFailure
```

Comment 3 Elliott Sales de Andrade 2025-08-08 19:32:28 UTC
Yea, that should be unrelated. I see it on koschei, so should be something recent.


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