3 files changed, 14 insertions, 4 deletions
diff --git a/.github/workflows/release-artifacts.yml b/.github/workflows/release-artifacts.yml
index deb5ec33e3..5b5bfc1896 100644
--- a/.github/workflows/release-artifacts.yml
+++ b/.github/workflows/release-artifacts.yml
@@ -5,7 +5,7 @@ name: Build release artifacts
on:
# we build on PRs and develop to (hopefully) get early warning
# of things breaking (but only build one set of debs). PRs skip
- # building wheels on ARM.
+ # building wheels on macOS & ARM.
pull_request:
push:
branches: ["develop", "release-*"]
@@ -111,7 +111,7 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
- os: [ubuntu-22.04]
+ os: [ubuntu-22.04, macos-13]
arch: [x86_64, aarch64]
# is_pr is a flag used to exclude certain jobs from the matrix on PRs.
# It is not read by the rest of the workflow.
@@ -119,6 +119,12 @@ jobs:
- ${{ startsWith(github.ref, 'refs/pull/') }}
exclude:
+ # Don't build macos wheels on PR CI.
+ - is_pr: true
+ os: "macos-13"
+ # Don't build aarch64 wheels on mac.
+ - os: "macos-13"
+ arch: aarch64
# Don't build aarch64 wheels on PR CI.
- is_pr: true
arch: aarch64
diff --git a/changelog.d/17993.misc b/changelog.d/17993.misc
new file mode 100644
index 0000000000..149cb358c3
--- /dev/null
+++ b/changelog.d/17993.misc
@@ -0,0 +1 @@
+Fix building wheels for MacOS which was temporarily disabled in Synapse 1.120.2.
\ No newline at end of file
diff --git a/pyproject.toml b/pyproject.toml
index 6fd6a95219..60c62015b7 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -386,8 +386,11 @@ build-backend = "poetry.core.masonry.api"
# c.f. https://github.com/matrix-org/synapse/pull/14259
skip = "cp36* cp37* cp38* pp37* pp38* *-musllinux_i686 pp*aarch64 *-musllinux_aarch64"
-# We need a rust compiler
-before-all = "curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain stable -y --profile minimal"
+# We need a rust compiler.
+#
+# We temporarily pin Rust to 1.82.0 to work around
+# https://github.com/element-hq/synapse/issues/17988
+before-all = "curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.82.0 -y --profile minimal"
environment= { PATH = "$PATH:$HOME/.cargo/bin" }
# For some reason if we don't manually clean the build directory we
|