Restore macOS release binaries on Apple Silicon - #1360
Conversation
|
Hi @nwjsmith! Thank you for your pull request and welcome to our community. Action RequiredIn order to merge any pull request (code, docs, etc.), we require contributors to sign our Contributor License Agreement, and we don't seem to have one on file for you. ProcessIn order for us to review and merge your suggested changes, please sign at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need to sign the corporate CLA. Once the CLA is signed, our tooling will perform checks and validations. Afterwards, the pull request will be tagged with If you have received this in error or have any questions, please contact us at cla@meta.com. Thanks! |
333ce67 to
69f8112
Compare
The `mac-build` job in the release workflow specifies `runs-on: macOS-10.15`, an image GitHub has retired. The job therefore cannot be scheduled, and because it is marked `continue-on-error: true` the release completes successfully without its macOS asset. The last published `watchman-*-macos.zip` is v2023.05.01.00; every release since has carried only the Linux zip and the Fedora RPM, while the install docs continue to describe a macOS download. Bring the job in line with the `mac` CI workflow in getdeps_mac.yml, which builds green on main: run on `macOS-latest`, set `DEVELOPER_DIR`, build with Homebrew LLVM, install Rust and the getdeps system dependencies. The `SDKROOT` pin to the macosx11.1 SDK goes with the 10.15 image, which no longer provides it. `macOS-latest` is Apple Silicon, so the published `-macos.zip` becomes an arm64 build. The asset name is unchanged; the install docs now say which architecture it is for. release.yml is regenerated from release.yml.in with generate-release-yml.rs.
69f8112 to
f8a3154
Compare
|
This pull request has been imported. If you are a Meta employee, you can view this in D116961215. (Because this pull request was imported automatically, there will not be any future comments.) |
The problem
The
mac-buildjob inrelease.ymlruns onmacOS-10.15. GitHub retired that image, so the job never runs. It is also markedcontinue-on-error: true, so releases still pass — just without the macOS file.The last
watchman-*-macos.zipis v2023.05.01.00. Every release since has only the Linux zip and the Fedora RPM. But the install docs still tell people to download a macOS build.The change
Make
mac-buildmatch themacCI job ingetdeps_mac.yml, which passes onmain: run onmacOS-latest, setDEVELOPER_DIR, build with Homebrew LLVM, and install Rust and the getdeps system deps. The oldSDKROOTpin belonged to the 10.15 image, so it is dropped.release.ymlis regenerated fromrelease.yml.in.Notes
macOS-latestis Apple Silicon, so the zip becomes arm64 instead of x86_64. The file name is unchanged, and the install docs now say which architecture it is. Say the word if you would rather ship both.windows-buildhas the same problem (windows-2019). Not fixed here.v*tags.