Cypress cannot start with importHelpers and allowJS TypeScript options
See original GitHub issueCurrent behavior:
Attempting to launch Cypress with this tsconfig results in the following exception:
{
"compilerOptions": {
"importHelpers": true,
"allowJs": true
}
}
Error: Cannot find module 'tslib'
Require stack:
- C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\reporter\lib\resolve-dist.js
- C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\controllers\reporter.js
- C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\routes.js
- C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\server.js
- C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\project.js
- C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\gui\events.js
- C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\modes\interactive.js
- C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\modes\index.js
- C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\cypress.js
- C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\index.js
- C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\index.js
-
at Module._resolveFilename (internal/modules/cjs/loader.js:798:15)
at Function../lib/common/reset-search-paths.ts.Module._resolveFilename (electron/js2c/browser_init.js:7630:16)
at Module._load (internal/modules/cjs/loader.js:691:27)
at Module._load (electron/js2c/asar.js:717:26)
at Function.Module._load (electron/js2c/asar.js:717:26)
at Function.Module._load (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\override_require.js:18:25)
at Module.require (internal/modules/cjs/loader.js:853:19)
at require (internal/modules/cjs/helpers.js:74:18)
at Object.<anonymous> (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\reporter\lib\resolve-dist.js:1:15)
at Module._compile (internal/modules/cjs/loader.js:968:30)
at Module.m._compile (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\ts-node\src\index.ts:536:23)
at Module._extensions..js (internal/modules/cjs/loader.js:986:10)
at Object.require.extensions.<computed> [as .js] (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\ts-node\src\index.ts:539:12)
at Module.load (internal/modules/cjs/loader.js:816:32)
at Module._load (internal/modules/cjs/loader.js:728:14)
at Module._load (electron/js2c/asar.js:717:26)
at Function.Module._load (electron/js2c/asar.js:717:26)
at Function.Module._load (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\override_require.js:18:25)
at Module.require (internal/modules/cjs/loader.js:853:19)
at require (internal/modules/cjs/helpers.js:74:18)
at Object.<anonymous> (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\controllers\reporter.js:8:14)
at Object.<anonymous> (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\controllers\reporter.js:18:4)
at Module._compile (internal/modules/cjs/loader.js:968:30)
at Module.m._compile (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\ts-node\src\index.ts:536:23)
at Module._extensions..js (internal/modules/cjs/loader.js:986:10)
at Object.require.extensions.<computed> [as .js] (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\ts-node\src\index.ts:539:12)
at Module.load (internal/modules/cjs/loader.js:816:32)
at Module._load (internal/modules/cjs/loader.js:728:14)
at Module._load (electron/js2c/asar.js:717:26)
at Function.Module._load (electron/js2c/asar.js:717:26)
at Function.Module._load (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\override_require.js:18:25)
at Module.require (internal/modules/cjs/loader.js:853:19)
at require (internal/modules/cjs/helpers.js:74:18)
at Object.<anonymous> (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\routes.js:9:18)
at Module._compile (internal/modules/cjs/loader.js:968:30)
at Module.m._compile (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\ts-node\src\index.ts:536:23)
at Module._extensions..js (internal/modules/cjs/loader.js:986:10)
at Object.require.extensions.<computed> [as .js] (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\ts-node\src\index.ts:539:12)
at Module.load (internal/modules/cjs/loader.js:816:32)
at Module._load (internal/modules/cjs/loader.js:728:14)
at Module._load (electron/js2c/asar.js:717:26)
at Function.Module._load (electron/js2c/asar.js:717:26)
at Function.Module._load (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\override_require.js:18:25)
at Module.require (internal/modules/cjs/loader.js:853:19)
at require (internal/modules/cjs/helpers.js:74:18)
at Server.createRoutes (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\server.js:159:14)
at C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\server.js:205:17
at tryCatcher (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\util.js:16:23)
at Function.Promise.attempt.Promise.try (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\method.js:39:29)
at Server.open (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\server.js:180:28)
at C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\lib\project.js:135:26
at tryCatcher (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\util.js:16:23)
at Promise._settlePromiseFromHandler (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:547:31)
at Promise._settlePromise (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:604:18)
at Promise._settlePromise0 (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:649:10)
at Promise._settlePromises (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:729:18)
at _drainQueueStep (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\async.js:93:12)
at _drainQueue (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\async.js:86:9)
at Async._drainQueues (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\async.js:102:5)
at Immediate.Async.drainQueues [as _onImmediate] (C:\Users\adgastin\AppData\Local\Cypress\Cache\4.7.0\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\async.js:15:14)
at processImmediate (internal/timers.js:439:21)
Removing either flag fixes the error. tslib
is forcibly installed to guarantee there is no issue resolving it.
This appears to occur regardless of what is in the Cypress tsconfig, so as long as the parent project contains this config, Cypress cannot start.
Versions
Cypress 4.6.0 - 4.7.0
Issue Analytics
- State:
- Created 3 years ago
- Reactions:5
- Comments:16 (4 by maintainers)
Top Results From Across the Web
Cypress causing type errors in jest assertions - Stack Overflow
I installed Cypress yesterday, and now I'm getting Typescript errors on all my jest matchers: Property 'toEqual' doesn't exist on type ' ...
Read more >Understanding TypeScript Configuration Options
When allowJs is true , TypeScript will allow JavaScript files to be compiled but, it will not do type-checking. Here's some example file...
Read more >importHelpers - TypeScript: TSConfig Option
You will need to ensure that the tslib module is able to be imported at runtime. This only affects modules; global script files...
Read more >jsconfig.json Reference - Visual Studio Code
The jsconfig.json file specifies the root files and the options for the features ... file for TypeScript. jsconfig.json is tsconfig.json with "allowJs" ...
Read more >Typescript does not resolve modules through tsconfig.json's ...
So,it doesn't use settings in your tsconfig.json when compiling your files, ... did you try re-starting the Typescript service using Restart ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
According to the docs (https://docs.cypress.io/guides/tooling/typescript-support.html#Configure-tsconfig-json) we should be able to use a
tsconfig.json
inside thecypress
directory to setimportHelpers
false… but that doesn’t appear to work for me.I’m getting the same error using any version that’s >= 4.4.0. Works fine in 4.3.0.