Skip to content

Commit f52f1d1

Browse files
cknittclaude
andauthored
Drop macOS Intel (darwin-x64) support (#8912)
* Drop macOS Intel (darwin-x64) support ReScript 13 no longer ships binaries for Intel Macs and CI no longer runs on macos-26-intel. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DbtRiJ2YzgzVdwgNf8Yiaz Signed-off-by: Christoph Knittel <ck@cca.io> * Clarify the platform package comment Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DbtRiJ2YzgzVdwgNf8Yiaz Signed-off-by: Christoph Knittel <ck@cca.io> * Shorten the platform package comment Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DbtRiJ2YzgzVdwgNf8Yiaz Signed-off-by: Christoph Knittel <ck@cca.io> --------- Signed-off-by: Christoph Knittel <ck@cca.io> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
1 parent 33fbfc7 commit f52f1d1

22 files changed

Lines changed: 40 additions & 867 deletions

File tree

‎.github/actions/setup-ocaml/action.yml‎

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,6 @@ runs:
4141
platform=aarch64-linux
4242
checksum=ba991f677edd9a21d2bc96c0144bc8ac5b112d4d98a3eb266e075e22e557df2a
4343
;;
44-
macOS-X64)
45-
platform=x86_64-macos
46-
checksum=d209fadd8a894bdaf3bd3612a23c32a0af184d2f4a979b8c789e6e4f6a4de883
47-
;;
4844
macOS-ARM64)
4945
platform=arm64-macos
5046
checksum=e441b48dc22163d209b4f05e44dc7210909b01237642b6c9ae48fd710a3ef83e

‎.github/workflows/ci.yml‎

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -53,12 +53,6 @@ jobs:
5353
node-target: linux-arm64
5454
rust-target: aarch64-unknown-linux-musl
5555
dune-profile: static
56-
- os: macos-26-intel # x64
57-
ocaml_compiler: 5.5.1
58-
upload_binaries: true
59-
node-target: darwin-x64
60-
rust-target: x86_64-apple-darwin
61-
dune-profile: release
6256
- os: macos-26 # ARM
6357
ocaml_compiler: 5.5.1
6458
upload_binaries: true
@@ -537,7 +531,6 @@ jobs:
537531
fail-fast: false
538532
matrix:
539533
include:
540-
- os: macos-26-intel
541534
- os: macos-26
542535
- os: ubuntu-26.04
543536
- os: ubuntu-26.04-arm
@@ -603,7 +596,6 @@ jobs:
603596
fail-fast: false
604597
matrix:
605598
include:
606-
- os: macos-26-intel
607599
- os: macos-26
608600
- os: ubuntu-26.04
609601
- os: ubuntu-26.04-arm

‎.github/workflows/moveArtifacts.sh‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ mv lib-ocaml packages/@rescript/runtime/lib/ocaml
3030

3131
# @rescript/{target}
3232
chmod +x binaries-*/*.exe
33-
mv -f binaries-darwin-x64/* "packages/@rescript/darwin-x64/bin"
3433
mv -f binaries-darwin-arm64/* "packages/@rescript/darwin-arm64/bin"
3534
mv -f binaries-linux-x64/* "packages/@rescript/linux-x64/bin"
3635
mv -f binaries-linux-arm64/* "packages/@rescript/linux-arm64/bin"

‎Makefile‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ else ifeq ($(UNAME_S),Darwin)
1717
ifeq ($(UNAME_M),arm64)
1818
RESCRIPT_PLATFORM := darwin-arm64
1919
else
20-
RESCRIPT_PLATFORM := darwin-x64
20+
$(error Intel Macs are not supported anymore, use ReScript 12)
2121
endif
2222
else ifeq ($(UNAME_S),Linux)
2323
ifeq ($(UNAME_M),aarch64)
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
- Drop support for macOS on Intel (darwin-x64). Intel Mac users can stay on ReScript 12.

‎cli/common/bins.cjs‎

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,14 @@
66

77
const os = require("node:os");
88
const path = require("node:path");
9-
const { getTarget } = require("./platform.cjs");
9+
const { getTarget, unsupportedPlatformMessage } = require("./platform.cjs");
1010

1111
const minimumNodeVersion = "22.0.0";
1212

1313
const target = getTarget(process.platform, process.arch, os.release());
1414

1515
if (target === undefined) {
16-
throw new Error(
17-
`Platform ${process.platform}-${process.arch} is not supported!`,
18-
);
16+
throw new Error(unsupportedPlatformMessage(process.platform, process.arch));
1917
}
2018

2119
const binPackageName = `@rescript/${target}`;

‎cli/common/platform.cjs‎

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55

66
const supportedTargets = [
77
"darwin-arm64",
8-
"darwin-x64",
98
"linux-arm64",
109
"linux-x64",
1110
"win32-x64",
@@ -32,6 +31,18 @@ function getTarget(platform, arch, osRelease) {
3231
return supportedTargets.includes(target) ? target : undefined;
3332
}
3433

34+
/**
35+
* @param {string} platform `process.platform`
36+
* @param {string} arch `process.arch`
37+
* @returns {string} the error for a platform without a target
38+
*/
39+
function unsupportedPlatformMessage(platform, arch) {
40+
if (platform === "darwin" && arch === "x64") {
41+
return "Intel Macs are not supported anymore. Use ReScript 12.";
42+
}
43+
return `Platform ${platform}-${arch} is not supported!`;
44+
}
45+
3546
/**
3647
* @param {string} osRelease
3748
*/
@@ -41,3 +52,4 @@ function windowsBuild(osRelease) {
4152
}
4253

4354
exports.getTarget = getTarget;
55+
exports.unsupportedPlatformMessage = unsupportedPlatformMessage;

‎compiler/sync/dune‎

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -39,33 +39,6 @@
3939
(run strip -o rescript-tools.exe ../../tools/bin/main.exe)
4040
(run strip -o rescript.exe ../../rewatch-ocaml/rescript_ocaml.exe))))
4141

42-
(rule
43-
(enabled_if
44-
(and
45-
(<> %{profile} browser)
46-
(= %{system} macosx)
47-
(= %{architecture} amd64)))
48-
(targets
49-
bsc.exe
50-
rescript-editor-analysis.exe
51-
rescript-tools.exe
52-
rescript.exe)
53-
(deps
54-
../bsc/rescript_compiler_main.exe
55-
../../analysis/bin/main.exe
56-
../../tools/bin/main.exe
57-
../../rewatch-ocaml/rescript_ocaml.exe)
58-
(mode
59-
(promote
60-
(until-clean)
61-
(into ../../packages/@rescript/darwin-x64/bin)))
62-
(action
63-
(progn
64-
(run strip -o bsc.exe ../bsc/rescript_compiler_main.exe)
65-
(run strip -o rescript-editor-analysis.exe ../../analysis/bin/main.exe)
66-
(run strip -o rescript-tools.exe ../../tools/bin/main.exe)
67-
(run strip -o rescript.exe ../../rewatch-ocaml/rescript_ocaml.exe))))
68-
6942
(rule
7043
(enabled_if
7144
(and

‎package.json‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,6 @@
8989
},
9090
"optionalDependencies": {
9191
"@rescript/darwin-arm64": "workspace:packages/@rescript/darwin-arm64",
92-
"@rescript/darwin-x64": "workspace:packages/@rescript/darwin-x64",
9392
"@rescript/linux-arm64": "workspace:packages/@rescript/linux-arm64",
9493
"@rescript/linux-x64": "workspace:packages/@rescript/linux-x64",
9594
"@rescript/win32-x64": "workspace:packages/@rescript/win32-x64"

0 commit comments

Comments
 (0)