Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions .github/workflows/build-matplotlib.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,24 +5,24 @@ on:
workflow_dispatch:
inputs:
version:
description: 'matplotlib version to build (git tag without leading v, e.g. 3.11.0)'
description: 'matplotlib version to build (git tag without leading v, e.g. 3.11.1)'
required: true
default: '3.11.0'
default: '3.11.1'
pull_request:
paths:
- '.github/workflows/build-matplotlib.yml'
- '.github/workflows/test-matplotlib.yml'

concurrency:
group: ${{ github.workflow }}-${{ inputs.version || '3.11.0' }}-${{ github.head_ref || github.run_id }}
group: ${{ github.workflow }}-${{ inputs.version || '3.11.1' }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

permissions:
contents: read # to fetch code (actions/checkout)

env:
# `inputs.version` is empty on pull_request events; default there.
MPL_VERSION: ${{ inputs.version || '3.11.0' }}
MPL_VERSION: ${{ inputs.version || '3.11.1' }}
# Query PyPI + gitlab riscv64 mirror; pick best compatible wheel
# (`unsafe-best-match` = pip-like). Refuse sdist for dependencies so uv
# selects the gitlab riscv64 wheel when PyPI lacks one instead of falling
Expand All @@ -33,7 +33,7 @@ env:

jobs:
build_sdist:
name: Build matplotlib ${{ inputs.version || '3.11.0' }} sdist
name: Build matplotlib ${{ inputs.version || '3.11.1' }} sdist
runs-on: ubuntu-24.04-riscv
permissions:
contents: read
Expand Down Expand Up @@ -97,7 +97,7 @@ jobs:

build_wheels:
needs: build_sdist
name: Build matplotlib ${{ inputs.version || '3.11.0' }} wheels for riscv64
name: Build matplotlib ${{ inputs.version || '3.11.1' }} wheels for riscv64
permissions:
contents: read
runs-on: ubuntu-24.04-riscv
Expand Down Expand Up @@ -167,7 +167,7 @@ jobs:
if-no-files-found: error

publish:
name: Publish matplotlib ${{ inputs.version || '3.11.0' }} to GitLab
name: Publish matplotlib ${{ inputs.version || '3.11.1' }} to GitLab
needs: build_wheels
# Only publish when the workflow was triggered from main with a specific
# version. Manual trigger is the only entry point that reaches main;
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/test-matplotlib.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@ on:
workflow_dispatch:
inputs:
version:
description: 'matplotlib version to test (git tag without leading v, e.g. 3.11.0)'
description: 'matplotlib version to test (git tag without leading v, e.g. 3.11.1)'
required: true
default: '3.11.0'
default: '3.11.1'
pull_request:
paths:
- '.github/workflows/test-matplotlib.yml'

concurrency:
group: ${{ github.workflow }}-${{ inputs.version || '3.11.0' }}-${{ github.head_ref || github.run_id }}
group: ${{ github.workflow }}-${{ inputs.version || '3.11.1' }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

permissions:
Expand All @@ -23,7 +23,7 @@ env:
NO_AT_BRIDGE: 1 # Necessary for GTK3 interactive test.
OPENBLAS_NUM_THREADS: 1
PYTHONFAULTHANDLER: 1
MPL_VERSION: ${{ inputs.version || '3.11.0' }}
MPL_VERSION: ${{ inputs.version || '3.11.1' }}
# Query PyPI + gitlab riscv64 mirror; pick best compatible wheel
# (`unsafe-best-match` = pip-like). Refuse sdist for dependencies so uv
# selects the gitlab riscv64 wheel when PyPI lacks one instead of falling
Expand All @@ -36,7 +36,7 @@ jobs:
test:
permissions:
contents: read
name: "Test matplotlib ${{ inputs.version || '3.11.0' }} — Python ${{ matrix.python-version }} on ${{ matrix.os }}"
name: "Test matplotlib ${{ inputs.version || '3.11.1' }} — Python ${{ matrix.python-version }} on ${{ matrix.os }}"
runs-on: ${{ matrix.os }}

strategy:
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
From a830afe01625f10e11640e2b2c3f3d88b2c16b36 Mon Sep 17 00:00:00 2001
From: Trevor Gamblin <tgamblin@baylibre.com>
Date: Tue, 21 Jul 2026 11:25:31 -0400
Subject: [PATCH] tests: test_font_manager: increase test_fontcache_thread_safe
timeout

This test seems to pass in a local riscv64 container, but fails when run
on the native runners. It's a single threading test with a 10s timeout,
so double that timeout for our builds. For now this should be considered
inappropriate for upstream until we see the failure on their end too.

Upstream-Status: Inappropriate [native runner specific]

Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
---
lib/matplotlib/tests/test_font_manager.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/matplotlib/tests/test_font_manager.py b/lib/matplotlib/tests/test_font_manager.py
index add063df90..f3a9d57039 100644
--- a/lib/matplotlib/tests/test_font_manager.py
+++ b/lib/matplotlib/tests/test_font_manager.py
@@ -344,7 +344,7 @@ def _test_threading():
def test_fontcache_thread_safe():
pytest.importorskip('threading')

- subprocess_run_helper(_test_threading, timeout=10)
+ subprocess_run_helper(_test_threading, timeout=20)


def test_lockfilefailure(tmp_path):
--
2.55.0

Loading