turbo: 💥 Turbo instalation fails on Windows 😥

What version of Turborepo are you using?

all versions after 1.1.6 (except 1.2.0-canary.3 - this one is OK)

What package manager are you using / does the bug impact?

npm

What operating system are you using?

Windows

Describe the Bug

npm install turbo fails on Windows. Last working version is 1.1.6.

λ npm i turbo -D
npm ERR! code 1
npm ERR! path C:\code\b12k\turbo-install\node_modules\turbo
npm ERR! command failed
npm ERR! command C:\Windows\system32\cmd.exe /d /s /c node install.js
npm ERR! node:child_process:828
npm ERR!     err = new Error(msg);
npm ERR!           ^
npm ERR!
npm ERR! Error: Command failed: node C:\code\b12k\turbo-install\node_modules\turbo\bin\turbo --version
npm ERR! C:\code\b12k\turbo-install\node_modules\turbo\bin\turbo:13
npm ERR!     throw e;
npm ERR!     ^
npm ERR!
npm ERR! <ref *1> Error: spawnSync C:\code\b12k\turbo-install\node_modules\turbo-windows-64\turbo.exe EPERM
npm ERR!     at Object.spawnSync (node:internal/child_process:1111:20)
npm ERR!     at spawnSync (node:child_process:814:24)
npm ERR!     at Object.execFileSync (node:child_process:860:15)
npm ERR!     at Object.<anonymous> (C:\code\b12k\turbo-install\node_modules\turbo\bin\turbo:6:28)
npm ERR!     at Module._compile (node:internal/modules/cjs/loader:1103:14)
npm ERR!     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1157:10)
npm ERR!     at Module.load (node:internal/modules/cjs/loader:981:32)
npm ERR!     at Function.Module._load (node:internal/modules/cjs/loader:822:12)
npm ERR!     at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12)
npm ERR!     at node:internal/main/run_main_module:17:47 {
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'spawnSync C:\\code\\b12k\\turbo-install\\node_modules\\turbo-windows-64\\turbo.exe',
npm ERR!   path: 'C:\\code\\b12k\\turbo-install\\node_modules\\turbo-windows-64\\turbo.exe',
npm ERR!   spawnargs: [ '--version' ],
npm ERR!   error: [Circular *1],
npm ERR!   status: null,
npm ERR!   signal: null,
npm ERR!   output: null,
npm ERR!   pid: 0,
npm ERR!   stdout: null,
npm ERR!   stderr: null
npm ERR! }
npm ERR!
npm ERR!     at checkExecSyncError (node:child_process:828:11)
npm ERR!     at Object.execFileSync (node:child_process:866:15)
npm ERR!     at validateBinaryVersion (C:\code\b12k\turbo-install\node_modules\turbo\install.js:25:6)
npm ERR!     at C:\code\b12k\turbo-install\node_modules\turbo\install.js:314:5 {
npm ERR!   status: 1,
npm ERR!   signal: null,
npm ERR!   output: [
npm ERR!     null,
npm ERR!     Buffer(0) [Uint8Array] [],
npm ERR!     Buffer(1234) [Uint8Array] [
npm ERR!        67,  58,  92,  99, 111, 100, 101,  92,  98,  49,  50, 107,
npm ERR!        92, 116, 117, 114,  98, 111,  45, 105, 110, 115, 116,  97,
npm ERR!       108, 108,  92, 110, 111, 100, 101,  95, 109, 111, 100, 117,
npm ERR!       108, 101, 115,  92, 116, 117, 114,  98, 111,  92,  98, 105,
npm ERR!       110,  92, 116, 117, 114,  98, 111,  58,  49,  51,  13,  10,
npm ERR!        32,  32,  32,  32, 116, 104, 114, 111, 119,  32, 101,  59,
npm ERR!        13,  10,  32,  32,  32,  32,  94,  13,  10,  13,  10,  60,
npm ERR!       114, 101, 102,  32,  42,  49,  62,  32,  69, 114, 114, 111,
npm ERR!       114,  58,  32, 115,
npm ERR!       ... 1134 more items
npm ERR!     ]
npm ERR!   ],
npm ERR!   pid: 80084,
npm ERR!   stdout: Buffer(0) [Uint8Array] [],
npm ERR!   stderr: Buffer(1234) [Uint8Array] [
npm ERR!      67,  58,  92,  99, 111, 100, 101,  92,  98,  49,  50, 107,
npm ERR!      92, 116, 117, 114,  98, 111,  45, 105, 110, 115, 116,  97,
npm ERR!     108, 108,  92, 110, 111, 100, 101,  95, 109, 111, 100, 117,
npm ERR!     108, 101, 115,  92, 116, 117, 114,  98, 111,  92,  98, 105,
npm ERR!     110,  92, 116, 117, 114,  98, 111,  58,  49,  51,  13,  10,
npm ERR!      32,  32,  32,  32, 116, 104, 114, 111, 119,  32, 101,  59,
npm ERR!      13,  10,  32,  32,  32,  32,  94,  13,  10,  13,  10,  60,
npm ERR!     114, 101, 102,  32,  42,  49,  62,  32,  69, 114, 114, 111,
npm ERR!     114,  58,  32, 115,
npm ERR!     ... 1134 more items
npm ERR!   ]
npm ERR! }

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Bogdan\AppData\Local\npm-cache\_logs\2022-03-25T15_30_06_534Z-debug-0.log
λ npm i turbo@1.2.0-canary.1 -D
npm ERR! code 1
npm ERR! path C:\code\b12k\turbo-install\node_modules\turbo
npm ERR! command failed
npm ERR! command C:\Windows\system32\cmd.exe /d /s /c node install.js
npm ERR! node:child_process:828
npm ERR!     err = new Error(msg);
npm ERR!           ^
npm ERR!
npm ERR! Error: Command failed: node C:\code\b12k\turbo-install\node_modules\turbo\bin\turbo --version
npm ERR! C:\code\b12k\turbo-install\node_modules\turbo\bin\turbo:13
npm ERR!     throw e;
npm ERR!     ^
npm ERR!
npm ERR! <ref *1> Error: spawnSync C:\code\b12k\turbo-install\node_modules\turbo-windows-64\turbo.exe EPERM
npm ERR!     at Object.spawnSync (node:internal/child_process:1111:20)
npm ERR!     at spawnSync (node:child_process:814:24)
npm ERR!     at Object.execFileSync (node:child_process:860:15)
npm ERR!     at Object.<anonymous> (C:\code\b12k\turbo-install\node_modules\turbo\bin\turbo:6:28)
npm ERR!     at Module._compile (node:internal/modules/cjs/loader:1103:14)
npm ERR!     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1157:10)
npm ERR!     at Module.load (node:internal/modules/cjs/loader:981:32)
npm ERR!     at Function.Module._load (node:internal/modules/cjs/loader:822:12)
npm ERR!     at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12)
npm ERR!     at node:internal/main/run_main_module:17:47 {
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'spawnSync C:\\code\\b12k\\turbo-install\\node_modules\\turbo-windows-64\\turbo.exe',
npm ERR!   path: 'C:\\code\\b12k\\turbo-install\\node_modules\\turbo-windows-64\\turbo.exe',
npm ERR!   spawnargs: [ '--version' ],
npm ERR!   error: [Circular *1],
npm ERR!   status: null,
npm ERR!   signal: null,
npm ERR!   output: null,
npm ERR!   pid: 0,
npm ERR!   stdout: null,
npm ERR!   stderr: null
npm ERR! }
npm ERR!
npm ERR!     at checkExecSyncError (node:child_process:828:11)
npm ERR!     at Object.execFileSync (node:child_process:866:15)
npm ERR!     at validateBinaryVersion (C:\code\b12k\turbo-install\node_modules\turbo\install.js:25:6)
npm ERR!     at C:\code\b12k\turbo-install\node_modules\turbo\install.js:314:5 {
npm ERR!   status: 1,
npm ERR!   signal: null,
npm ERR!   output: [
npm ERR!     null,
npm ERR!     Buffer(0) [Uint8Array] [],
npm ERR!     Buffer(1234) [Uint8Array] [
npm ERR!        67,  58,  92,  99, 111, 100, 101,  92,  98,  49,  50, 107,
npm ERR!        92, 116, 117, 114,  98, 111,  45, 105, 110, 115, 116,  97,
npm ERR!       108, 108,  92, 110, 111, 100, 101,  95, 109, 111, 100, 117,
npm ERR!       108, 101, 115,  92, 116, 117, 114,  98, 111,  92,  98, 105,
npm ERR!       110,  92, 116, 117, 114,  98, 111,  58,  49,  51,  13,  10,
npm ERR!        32,  32,  32,  32, 116, 104, 114, 111, 119,  32, 101,  59,
npm ERR!        13,  10,  32,  32,  32,  32,  94,  13,  10,  13,  10,  60,
npm ERR!       114, 101, 102,  32,  42,  49,  62,  32,  69, 114, 114, 111,
npm ERR!       114,  58,  32, 115,
npm ERR!       ... 1134 more items
npm ERR!     ]
npm ERR!   ],
npm ERR!   pid: 39032,
npm ERR!   stdout: Buffer(0) [Uint8Array] [],
npm ERR!   stderr: Buffer(1234) [Uint8Array] [
npm ERR!      67,  58,  92,  99, 111, 100, 101,  92,  98,  49,  50, 107,
npm ERR!      92, 116, 117, 114,  98, 111,  45, 105, 110, 115, 116,  97,
npm ERR!     108, 108,  92, 110, 111, 100, 101,  95, 109, 111, 100, 117,
npm ERR!     108, 101, 115,  92, 116, 117, 114,  98, 111,  92,  98, 105,
npm ERR!     110,  92, 116, 117, 114,  98, 111,  58,  49,  51,  13,  10,
npm ERR!      32,  32,  32,  32, 116, 104, 114, 111, 119,  32, 101,  59,
npm ERR!      13,  10,  32,  32,  32,  32,  94,  13,  10,  13,  10,  60,
npm ERR!     114, 101, 102,  32,  42,  49,  62,  32,  69, 114, 114, 111,
npm ERR!     114,  58,  32, 115,
npm ERR!     ... 1134 more items
npm ERR!   ]
npm ERR! }

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Bogdan\AppData\Local\npm-cache\_logs\2022-03-25T15_31_27_637Z-debug-0.log
λ npm i turbo@1.1.9
npm ERR! code 1
npm ERR! path C:\code\b12k\turbo-install\node_modules\turbo
npm ERR! command failed
npm ERR! command C:\Windows\system32\cmd.exe /d /s /c node install.js
npm ERR! node:child_process:828
npm ERR!     err = new Error(msg);
npm ERR!           ^
npm ERR!
npm ERR! Error: Command failed: node C:\code\b12k\turbo-install\node_modules\turbo\bin\turbo --version
npm ERR! C:\code\b12k\turbo-install\node_modules\turbo\bin\turbo:13
npm ERR!     throw e;
npm ERR!     ^
npm ERR!
npm ERR! <ref *1> Error: spawnSync C:\code\b12k\turbo-install\node_modules\turbo-windows-64\turbo.exe EPERM
npm ERR!     at Object.spawnSync (node:internal/child_process:1111:20)
npm ERR!     at spawnSync (node:child_process:814:24)
npm ERR!     at Object.execFileSync (node:child_process:860:15)
npm ERR!     at Object.<anonymous> (C:\code\b12k\turbo-install\node_modules\turbo\bin\turbo:6:28)
npm ERR!     at Module._compile (node:internal/modules/cjs/loader:1103:14)
npm ERR!     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1157:10)
npm ERR!     at Module.load (node:internal/modules/cjs/loader:981:32)
npm ERR!     at Function.Module._load (node:internal/modules/cjs/loader:822:12)
npm ERR!     at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12)
npm ERR!     at node:internal/main/run_main_module:17:47 {
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'spawnSync C:\\code\\b12k\\turbo-install\\node_modules\\turbo-windows-64\\turbo.exe',
npm ERR!   path: 'C:\\code\\b12k\\turbo-install\\node_modules\\turbo-windows-64\\turbo.exe',
npm ERR!   spawnargs: [ '--version' ],
npm ERR!   error: [Circular *1],
npm ERR!   status: null,
npm ERR!   signal: null,
npm ERR!   output: null,
npm ERR!   pid: 0,
npm ERR!   stdout: null,
npm ERR!   stderr: null
npm ERR! }
npm ERR!
npm ERR!     at checkExecSyncError (node:child_process:828:11)
npm ERR!     at Object.execFileSync (node:child_process:866:15)
npm ERR!     at validateBinaryVersion (C:\code\b12k\turbo-install\node_modules\turbo\install.js:25:6)
npm ERR!     at C:\code\b12k\turbo-install\node_modules\turbo\install.js:314:5 {
npm ERR!   status: 1,
npm ERR!   signal: null,
npm ERR!   output: [
npm ERR!     null,
npm ERR!     Buffer(0) [Uint8Array] [],
npm ERR!     Buffer(1234) [Uint8Array] [
npm ERR!        67,  58,  92,  99, 111, 100, 101,  92,  98,  49,  50, 107,
npm ERR!        92, 116, 117, 114,  98, 111,  45, 105, 110, 115, 116,  97,
npm ERR!       108, 108,  92, 110, 111, 100, 101,  95, 109, 111, 100, 117,
npm ERR!       108, 101, 115,  92, 116, 117, 114,  98, 111,  92,  98, 105,
npm ERR!       110,  92, 116, 117, 114,  98, 111,  58,  49,  51,  13,  10,
npm ERR!        32,  32,  32,  32, 116, 104, 114, 111, 119,  32, 101,  59,
npm ERR!        13,  10,  32,  32,  32,  32,  94,  13,  10,  13,  10,  60,
npm ERR!       114, 101, 102,  32,  42,  49,  62,  32,  69, 114, 114, 111,
npm ERR!       114,  58,  32, 115,
npm ERR!       ... 1134 more items
npm ERR!     ]
npm ERR!   ],
npm ERR!   pid: 40092,
npm ERR!   stdout: Buffer(0) [Uint8Array] [],
npm ERR!   stderr: Buffer(1234) [Uint8Array] [
npm ERR!      67,  58,  92,  99, 111, 100, 101,  92,  98,  49,  50, 107,
npm ERR!      92, 116, 117, 114,  98, 111,  45, 105, 110, 115, 116,  97,
npm ERR!     108, 108,  92, 110, 111, 100, 101,  95, 109, 111, 100, 117,
npm ERR!     108, 101, 115,  92, 116, 117, 114,  98, 111,  92,  98, 105,
npm ERR!     110,  92, 116, 117, 114,  98, 111,  58,  49,  51,  13,  10,
npm ERR!      32,  32,  32,  32, 116, 104, 114, 111, 119,  32, 101,  59,
npm ERR!      13,  10,  32,  32,  32,  32,  94,  13,  10,  13,  10,  60,
npm ERR!     114, 101, 102,  32,  42,  49,  62,  32,  69, 114, 114, 111,
npm ERR!     114,  58,  32, 115,
npm ERR!     ... 1134 more items
npm ERR!   ]
npm ERR! }

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Bogdan\AppData\Local\npm-cache\_logs\2022-03-25T15_31_38_690Z-debug-0.log
λ npm i turbo@1.1.6

added 2 packages, and audited 3 packages in 3s

found 0 vulnerabilities

Expected Behavior

Expected to be installed =)

To Reproduce

On Windows:

  • mkdir test
  • cd test
  • npm init -y
  • npm i turbo -D

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 17 (2 by maintainers)

Most upvoted comments

@chrisbeaver, having a related issue already, I did include this installation. However, I’ve just realized that it needs to be done for each stage when using a multistage docker build. Thanks!

same can’t install in docker on macos.

I roll back and use lock version to 1.2.4 in Dockerfile and package.json

{
    "devDependencies": {
        "turbo": "1.2.4"
    },
}

Dockerfile

RUN yarn global add turbo@1.2.4

@natesilva let’s open a new issue please! (you can reference this)

@gentarooka For some reasons antivirus was blocking downloads of turbo binaries.