Repository navigation
build(macos): Stop releasing Intel macOS binaries - #3426
Draft
sentry-junior[bot] wants to merge 5 commits into
Draft
sentry-junior[bot] wants to merge 5 commits into
sentry-junior[bot] wants to merge 5 commits into
Conversation
Remove the x86_64 and universal macOS release builds, and switch everything that consumed the universal binary (npm darwin package, npm fallback download, Python wheels, Homebrew formula, self-update) to the arm64 binary. Intel-based Mac users need to build from source. Co-Authored-By: Daniel Szoke <7881302+szokeasaurusrex@users.noreply.github.com>
Co-Authored-By: Daniel Szoke <7881302+szokeasaurusrex@users.noreply.github.com>
On Intel-based Macs, fail with an error naming 3.8.0 as the last release with Intel macOS binaries and telling users to pin it, or to build from source. Co-Authored-By: Daniel Szoke <7881302+szokeasaurusrex@users.noreply.github.com>
Co-Authored-By: Daniel Szoke <7881302+szokeasaurusrex@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stops building and releasing the Intel macOS (x86_64) and universal macOS binaries. Only
sentry-cli-Darwin-arm64is released for macOS from now on. This was split out of #3425, which only removes the x86_64 macOS CI jobs.Why: the x86_64 macOS build cross-compiles on an ARM runner, using OpenSSL headers unpacked from Homebrew's Intel (
tahoe) bottle. Homebrew no longer publishes Intel macOS bottles foropenssl@3.5oropenssl@3, so the release build will fail the same way CI does (see #3425). The repo is in maintenance mode, so this drops the Intel macOS release instead of maintaining a workaround.This is a breaking change for Intel Mac users. 3.8.0 is the last release with Intel macOS binaries.
Release (
build.yml): removes the x86_64 macOS build, the OpenSSL setup, themacos_universal(lipo) job, and the x86_64 and universal signing jobs.Everything that used the universal binary now uses
sentry-cli-Darwin-arm64:.craft.yml: the Homebrew formula uses the arm64 binary and declaresdepends_on arch: :arm64on macOS.requireNamesdropsDarwin-x86_64andDarwin-universal.@sentry/cli-darwinships the arm64 binary and declares"cpu": ["arm64"]. On Intel Macs,lib/helper.tsand thescripts/install.jspostinstall step fail with an error. The error says 3.8.0 is the last Intel-compatible version and to pin@sentry/clito it, or to build from source and useSENTRYCLI_SKIP_DOWNLOAD=1+SENTRY_BINARY_PATH. The version is hardcoded asLAST_INTEL_MAC_VERSION. If another release ships before this merges, bump it there and in the changelog.scripts/wheels: removes theuniversal2andx86_64macOS wheels.src/api/mod.rs(sentry-cli update): looks forsentry-cli-Darwin-arm64instead ofDarwin-universal.Changelog: adds a top-level "Unreleased" paragraph announcing the change.
Heads-up:
Darwin-universalwhen runningsentry-cli update. After the next release,updatewon't find a new version on any Mac, so Apple Silicon users will need to reinstall once.sentry.io/get-cliinstall script lives outside this repo. If it downloadsDarwin-universal, it needs updating too.master, so the macOS x86_64 Lint/Test jobs will fail here until ci: Remove macOS x86_64 lint and test jobs #3425 merges.Verification:
tsc --noEmit,npm run build, and jest (32 tests) pass. A script that fakedos.platform()/os.arch()confirmed that darwin-x64 gets the new error and darwin-arm64 still resolves@sentry/cli-darwin. The workflow YAML,.craft.yml, andpackage.jsonparse.scripts/install.jspassesnode --check. I couldn't runcargo fmtorcargo checklocally (no Rust toolchain), so the one-linesrc/api/mod.rschange relies on CI.via Daniel Szoke.
--
View Junior Session [Sentry]