Source: matplotlib
Version: 3.8.3-1
Severity: normal

The matplotlib build is failing tests during the transition from 3.7
to 3.8 (for debian, that's from 3.6 to 3.8), when docs are being built
<!nodoc>.

The reason is twofold
- upstream changed the import handling of mpl_toolkits (they removed 
__init__.py)
- the doc build has a circular dependency in python3-sphinx-gallery,
which Depends on python3-matplotlib.

If python3-matplotlib 3.6 is installed (as forced by
python3-sphinx-gallery), then when matplot v3.8 tests are run, python
selects the 3.6 version of mpl_toolkits instead of the newly built 3.8
version. Consequently the test run fails (the Axes3D API changed
between 3.6 and 3.8).

The problem is discussed upstream at
https://github.com/matplotlib/matplotlib/issues/26827
It's effectively unavoidable (short of not building docs in order to
avoid python3-sphinx-gallery), we just have to hold our breath and
push through to v3.8.

But in any case this test failure is ignored, and the debian build
goes on to build the packages anyway.

This is actually a "good" thing for the 3.6 → 3.8 transition. We can
build the new packages in spite of the build time test failure.

But in general (after 3.8 or 3.9 is settled in testing), we should
probably check the tests and not ignore failure
e.g. use `set -e` at the beginning of the test block

Reply via email to