mirror of
https://github.com/stablyai/orca.git
synced 2026-09-21 16:02:20 +00:00
pnpm 12's npm_execpath is a Mach-O/PE binary. build-native-for-platform.mjs still launched it with `node $npm_execpath`, which throws SyntaxError on the binary header and fails every signed macOS dev-channel build.
27 lines
769 B
JavaScript
27 lines
769 B
JavaScript
// pnpm 12's npm_execpath is a native binary; feeding it to node broke hourly/adhoc macOS builds.
|
|
|
|
const JS_CLI_EXTENSION = /\.[cm]?js$/i
|
|
|
|
export function resolvePnpmCliInvocation({
|
|
npmExecPath = process.env.npm_execpath,
|
|
nodeExecPath = process.execPath,
|
|
platform = process.platform
|
|
} = {}) {
|
|
if (typeof npmExecPath === 'string' && npmExecPath.length > 0) {
|
|
if (JS_CLI_EXTENSION.test(npmExecPath)) {
|
|
return { command: nodeExecPath, prefixArgs: [npmExecPath], shell: false }
|
|
}
|
|
return {
|
|
command: npmExecPath,
|
|
prefixArgs: [],
|
|
shell: platform === 'win32' && /\.(cmd|bat)$/i.test(npmExecPath)
|
|
}
|
|
}
|
|
|
|
return {
|
|
command: platform === 'win32' ? 'pnpm.cmd' : 'pnpm',
|
|
prefixArgs: [],
|
|
shell: platform === 'win32'
|
|
}
|
|
}
|