From a913771adec16f076b1beeeba8b5ba07a5882e52 Mon Sep 17 00:00:00 2001 From: Oscar Gustafsson Date: Tue, 30 May 2023 10:32:53 +0200 Subject: [PATCH] Backport PR #26005: Fix backend tests on CI (cherry picked from commit 330969c1704dad0a83a238446d7ae210e4c34fa9) --- .github/workflows/tests.yml | 8 ++++++++ lib/matplotlib/tests/test_backend_tk.py | 5 +++++ lib/matplotlib/tests/test_backends_interactive.py | 13 +++++++++++++ 3 files changed, 26 insertions(+) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index b4f8a4b5e940..fd6482727a73 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -48,16 +48,24 @@ jobs: python-version: 3.8 extra-requirements: '-r requirements/testing/extra.txt' CFLAGS: "-fno-lto" # Ensure that disabling LTO works. + # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-2346 + pyside6-ver: '!=6.5.1' - os: ubuntu-20.04 python-version: 3.9 extra-requirements: '-r requirements/testing/extra.txt' - os: ubuntu-20.04 python-version: '3.10' extra-requirements: '-r requirements/testing/extra.txt' + # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-2346 + pyside6-ver: '!=6.5.1' - os: ubuntu-20.04 python-version: '3.11' + # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-2346 + pyside6-ver: '!=6.5.1' - os: macos-latest python-version: 3.8 + # https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-2346 + pyside6-ver: '!=6.5.1' steps: - uses: actions/checkout@v3 diff --git a/lib/matplotlib/tests/test_backend_tk.py b/lib/matplotlib/tests/test_backend_tk.py index 55a7ae0b51aa..73e7d16961b4 100644 --- a/lib/matplotlib/tests/test_backend_tk.py +++ b/lib/matplotlib/tests/test_backend_tk.py @@ -38,6 +38,11 @@ def _isolated_tk_test(success_count, func=None): sys.platform == "linux" and not _c_internal_utils.display_is_valid(), reason="$DISPLAY and $WAYLAND_DISPLAY are unset" ) + @pytest.mark.xfail( # https://github.com/actions/setup-python/issues/649 + 'TF_BUILD' in os.environ and sys.platform == 'darwin' and + sys.version_info[:2] == (3, 10), + reason='Tk version mismatch on Azure macOS CI' + ) @functools.wraps(func) def test_func(): # even if the package exists, may not actually be importable this can diff --git a/lib/matplotlib/tests/test_backends_interactive.py b/lib/matplotlib/tests/test_backends_interactive.py index 24d47bb1cf75..193fd6f5e5ed 100644 --- a/lib/matplotlib/tests/test_backends_interactive.py +++ b/lib/matplotlib/tests/test_backends_interactive.py @@ -63,6 +63,10 @@ def _get_testable_interactive_backends(): elif env["MPLBACKEND"].startswith('wx') and sys.platform == 'darwin': # ignore on OSX because that's currently broken (github #16849) marks.append(pytest.mark.xfail(reason='github #16849')) + elif (env['MPLBACKEND'] == 'tkagg' and 'TF_BUILD' in os.environ and + sys.platform == 'darwin' and sys.version_info[:2] == (3, 10)): + marks.append( # https://github.com/actions/setup-python/issues/649 + pytest.mark.xfail(reason='Tk version mismatch on Azure macOS CI')) envs.append( pytest.param( {**env, 'BACKEND_DEPS': ','.join(deps)}, @@ -267,6 +271,10 @@ def _test_thread_impl(): reason='PyPy does not support Tkinter threading: ' 'https://foss.heptapod.net/pypy/pypy/-/issues/1929', strict=True)) + elif (backend == 'tkagg' and 'TF_BUILD' in os.environ and + sys.platform == 'darwin' and sys.version_info[:2] == (3, 10)): + param.marks.append( # https://github.com/actions/setup-python/issues/649 + pytest.mark.xfail('Tk version mismatch on Azure macOS CI')) @pytest.mark.parametrize("env", _thread_safe_backends) @@ -544,6 +552,11 @@ def _test_number_of_draws_script(): elif backend == "wx": param.marks.append( pytest.mark.skip("wx does not support blitting")) + elif (backend == 'tkagg' and 'TF_BUILD' in os.environ and + sys.platform == 'darwin' and sys.version_info[:2] == (3, 10)): + param.marks.append( # https://github.com/actions/setup-python/issues/649 + pytest.mark.xfail('Tk version mismatch on Azure macOS CI') + ) @pytest.mark.parametrize("env", _blit_backends) pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy