Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 5852e5b

Browse files
committed
Actual fix for Windows path issue
1 parent 82d5195 commit 5852e5b

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

‎.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
macos-14, # ARM
2727
ubuntu-latest, # x64
2828
buildjet-2vcpu-ubuntu-2204-arm, # ARM
29-
#windows-latest, # deactivated for now as there is still a Windows issue
29+
windows-latest,
3030
]
3131

3232
runs-on: ${{matrix.os}}

‎src/RescriptVersions.res

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,14 @@ let promptVersions = async () => {
6666
let installVersions = async ({rescriptVersion, rescriptCoreVersion}) => {
6767
let packageManager = PackageManagers.getActivePackageManager()
6868
let packages = [`rescript@${rescriptVersion}`, `@rescript/core@${rescriptCoreVersion}`]
69-
let command = `${packageManager} add ${packages->Array.join(" ")}`
69+
70+
// #58: Windows: packageManager may be something like
71+
// "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js".
72+
//
73+
// Therefore, packageManager needs to be in quotes, and we need to prepend "node "
74+
// if packageManager points to a JS file, otherwise the invocation will hang.
75+
let maybeNode = packageManager->String.endsWith("js") ? "node " : ""
76+
let command = `${maybeNode}"${packageManager}" add ${packages->Array.join(" ")}`
7077

7178
let _ = await Node.Promisified.ChildProcess.exec(command)
7279
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /