8000 Switch macOS 12 runner images to macOS 13 (#28972) · matplotlib/matplotlib@fd452d2 · GitHub
[go: up one dir, main page]

Skip to content

Commit fd452d2

Browse files
authored
Switch macOS 12 runner images to macOS 13 (#28972)
* Switch macOS 12 runner images to macOS 13 These are going away soon, so let's see how this works out. actions/runner-images#10721 * ci: Force Homebrew to overwrite the image Python We don't care about system Python, as we use `actions/setup-python` (on GitHub) or `UsePythonVersion` (on Azure), which install in some other location and adjust the `PATH`. But occasionally, Homebrew will fail to update these files because they didn't come from Homebrew, so just silence its complaints.
1 parent c236102 commit fd452d2

File tree

3 files changed

+25
-10
lines changed

3 files changed

+25
-10
lines changed

.github/workflows/cibuildwheel.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ jobs:
124124
cibw_archs: "aarch64"
125125
- os: windows-latest
126126
cibw_archs: "auto64"
127-
- os: macos-12
127+
- os: macos-13
128128
cibw_archs: "x86_64"
129129
- os: macos-14
130130
cibw_archs: "arm64"

.github/workflows/tests.yml

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ jobs:
9797
pyqt6-ver: '!=6.6.0'
9898
# https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-2346
9999
pyside6-ver: '!=6.5.1'
100-
- os: macos-12 # This runner is on Intel chips.
100+
- os: macos-13 # This runner is on Intel chips.
101101
python-version: '3.10'
102102
# https://bugreports.qt.io/projects/PYSIDE/issues/PYSIDE-2346
103103
pyside6-ver: '!=6.5.1'
@@ -188,13 +188,18 @@ jobs:
188188
;;
189189
macOS)
190190
brew update
191-
export HOMEBREW_NO_INSTALL_UPGRADE=1 HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1
192-
brew install ccache ghostscript ninja
193-
# The macOS 12 images have an older Python, and this causes homebrew to generate conflicts.
194-
# We'll just skip GTK for now, to not pull in Python updates.
195-
if [[ "${{ matrix.os }}" = macos-14 ]]; then
196-
brew install gobject-introspection gtk4
197-
fi
191+
# Periodically, Homebrew updates Python and fails to overwrite the
192+
# existing not-managed-by-Homebrew copy without explicitly being told
193+
# to do so. GitHub/Azure continues to avoid fixing their runner images:
194+
# https://github.com/actions/runner-images/issues/9966
195+
# so force an overwrite even if there are no Python updates.
196+
# We don't even care about Homebrew's Python because we use the one
197+
# from actions/setup-python.
198+
for python_package in $(brew list | grep python@); do
199+
brew unlink ${python_package}
200+
brew link --overwrite ${python_package}
201+
done
202+
brew install ccache ghostscript gobject-introspection gtk4 ninja
198203
brew install --cask font-noto-sans-cjk inkscape
199204
;;
200205
esac

azure-pipelines.yml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,17 @@ stages:
111111
;;
112112
Darwin)
113113
brew update
114-
export HOMEBREW_NO_INSTALL_UPGRADE=1 HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1
114+
# Periodically, Homebrew updates Python and fails to overwrite the
115+
# existing not-managed-by-Homebrew copy without explicitly being told
116+
# to do so. GitHub/Azure continues to avoid fixing their runner images:
117+
# https://github.com/actions/runner-images/issues/9966
118+
# so force an overwrite even if there are no Python updates.
119+
# We don't even care about Homebrew's Python because we use the one
120+
# from UsePythonVersion.
121+
for python_package in $(brew list | grep python@); do
122+
brew unlink ${python_package}
123+
brew link --overwrite ${python_package}
124+
done
115125
brew install --cask xquartz
116126
brew install ccache ffmpeg imagemagick mplayer ninja pkg-config
117127
brew install --cask font-noto-sans-cjk-sc

0 commit comments

Comments
 (0)
0