microsoft / TypeScript

TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
https://www.typescriptlang.org
Apache License 2.0
100.82k stars 12.46k forks source link

TS Server fatal error: Debug Failure. False expression. #49615

Closed kotlitskiy closed 2 months ago

kotlitskiy commented 2 years ago

Issue Type: Bug

❗️❗️❗️ Please fill in the sections below to help us diagnose the issue ❗️❗️❗️

TypeScript Version: 4.7.3

Steps to reproduce crash I Have not done any specific actions, just was working in my project. At the time I saw an error GitHub Pull Request (ext id GitHub.vscode-pull-request-github) extension was opened.

TS Server Log ❗️Server logging disabled. To help us fix crashes like this, please enable logging by setting:

"typescript.tsserver.log": "verbose"

After enabling this setting, future crash reports will include the server log.

TS Server Error Stack Server: semantic

Error: Debug Failure. False expression.
    at _loop_3 (/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js:171897:34)
    at ProjectService.assignOrphanScriptInfoToInferredProject (/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js:171905:25)
    at ProjectService.assignProjectToOpenedScriptInfo (/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js:173574:26)
    at /Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js:173848:97
    at Object.flatMap (/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js:508:25)
    at ProjectService.applyChangesInOpenFiles (/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js:173848:41)
    at Session.handlers.ts.Map.ts.getEntries._a.<computed> (/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js:174983:46)
    at /Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js:177172:88
    at IpcIOSession.Session.executeWithRequestId (/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js:177163:28)
    at IpcIOSession.Session.executeCommand (/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js:177172:33)
    at IpcIOSession.Session.onMessage (/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js:177198:35)
    at process.<anonymous> (/Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js:179833:31)
    at process.emit (node:events:390:28)
    at emit (node:internal/child_process:917:12)
    at processTicksAndRejections (node:internal/process/task_queues:84:21)

VS Code version: Code 1.68.1 (Universal) (30d9c6cd9483b2cc586687151bcbcd635f373630, 2022-06-14T12:52:13.188Z) OS version: Darwin arm64 21.3.0 Restricted Mode: No

System Info |Item|Value| |---|---| |CPUs|Apple M1 (8 x 24)| |GPU Status|2d_canvas: enabled
canvas_oop_rasterization: disabled_off
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
metal: disabled_off
multiple_raster_threads: enabled_on
oop_rasterization: enabled
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_renderer: enabled_on
video_decode: enabled
video_encode: enabled
webgl: enabled
webgl2: enabled| |Load (avg)|2, 2, 2| |Memory (System)|16.00GB (0.07GB free)| |Process Argv|--crash-reporter-id bd01d588-ec43-4ff2-a2a5-ef78775b337c| |Screen Reader|yes| |VM|0%|
Extensions (16) Extension|Author (truncated)|Version ---|---|--- vscode-apollo|apo|1.19.11 vscode-eslint|dba|2.2.2 es7-react-js-snippets|dsz|4.4.3 gitlens|eam|12.1.1 vscode-npm-script|eg2|0.3.25 prettier-vscode|esb|9.5.0 vscode-jest-runner|fir|0.4.48 copilot|Git|1.30.6165 vscode-pull-request-github|Git|0.44.0 vscode-docker|ms-|1.22.0 remote-ssh-edit|ms-|0.80.0 angular-console|nrw|17.18.2 convert-css-in-js|pau|1.1.3 vscode-stylelint|sty|0.87.6 vscode-icons|vsc|11.12.0 fig|wit|0.0.6 (2 theme extensions excluded)
A/B Experiments ``` vsliv368:30146709 vsreu685:30147344 python383cf:30185419 vspor879:30202332 vspor708:30202333 vspor363:30204092 vswsl492cf:30256860 vslsvsres303:30308271 pythonvspyl392:30443607 vserr242cf:30382550 pythontb:30283811 vsjup518:30340749 pythonptprofiler:30281270 vshan820:30294714 vstes263:30335439 vscorecescf:30445987 pythondataviewer:30285071 vscod805cf:30301675 binariesv615:30325510 bridge0708:30335490 bridge0723:30353136 vsaa593:30376534 vsc1dst:30438360 pythonvs932:30410667 wslgetstarted:30449410 vscscmwlcmt:30465135 cppdebug:30492333 vsclangdc:30486549 ```
RyanCavanaugh commented 2 years ago

We'll need instructions on how to reproduce this

kotlitskiy commented 2 years ago

@RyanCavanaugh I haven't spot any specific steps to reproduce this error

duraz0rz commented 2 years ago

For me, specifically, I'm getting this error trying to use Quick Fix to import a missing function from one of my dependencies in a TypeScript file. I've noticed that I don't get suggestions to import React or functions from msw any more.

1) Start a new file. 2) Type out a function that you know exists in one of your dependencies (setupServer from msw in my devDependencies, for example) 3) Put text cursor over red squiggly, then Ctrl+. to open up Quick Fix.

Expected) Should suggest Add import from "msw" Actual) You see No code actions available OR Add missing function declaration "setupServer"

[2022-06-24 21:04:43.756] [exthost] [error] [vscode.typescript-language-features] provider FAILED
[2022-06-24 21:04:43.756] [exthost] [error] Error: <semantic> TypeScript Server Error (4.7.3)
Debug Failure. False expression.
Error: Debug Failure. False expression.
    at Object.setTextPos (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:12103:22)
    at Object.skipToEndOf (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:145431:25)
    at processChildNodes (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146926:47)
    at c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146843:21
    at visitNodes (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:30474:24)
    at Object.forEachChild (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:30665:21)
    at processNode (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146840:20)
    at processChildNode (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146911:21)
    at c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146841:21
    at visitNode (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:30469:24)
    at Object.forEachChild (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:30611:21)
    at processNode (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146840:20)
    at processChildNode (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146911:21)
    at c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146841:21
    at visitNode (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:30469:24)
    at Object.forEachChild (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:30565:21)
    at processNode (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146841:20)
    at processChildNode (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146911:21)
    at processChildNodes (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146965:48)
    at c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146843:21
    at visitNodes (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:30474:24)
    at Object.forEachChild (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:30627:21)
    at processNode (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146840:20)
    at formatSpanWorker (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146640:17)
    at c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146603:140
    at Object.getFormattingScanner (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:145230:23)
    at Object.formatNodeGivenIndentation (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:146603:31)
    at getFormattedTextOfNode (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:149034:45)
    at format (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:149005:52)
    at computeNewText (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:149008:23)
    at c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:148972:39
    at Object.mapDefined (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:605:30)
    at c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:148970:42
    at Object.mapDefined (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:605:30)
    at Object.getTextChangesFromChanges (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:148956:27)
    at ChangeTracker.getChanges (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:148895:45)
    at Function.ChangeTracker.with (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:148315:32)
    at Object.getCodeActions (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:154025:68)
    at c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:149562:77
    at Object.flatMap (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:508:25)
    at Object.getFixes (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:149562:23)
    at c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:164962:35
    at Object.flatMap (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:508:25)
    at Object.getCodeFixesAtPosition (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:164960:23)
    at IpcIOSession.Session.getCodeFixes (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:176859:64)
    at Session.handlers.ts.Map.ts.getEntries._a.<computed> (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:175242:61)
    at c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:177172:88
    at IpcIOSession.Session.executeWithRequestId (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:177163:28)
    at IpcIOSession.Session.executeCommand (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:177172:33)
    at IpcIOSession.Session.onMessage (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:177198:35)
    at process.<anonymous> (c:\Users\localuser\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\node_modules\typescript\lib\tsserver.js:179833:31)
    at process.emit (node:events:390:28)
    at emit (node:internal/child_process:917:12)
    at processTicksAndRejections (node:internal/process/task_queues:84:21): Error: <semantic> TypeScript Server Error (4.7.3)

VS Code info

Version: 1.68.1 (user setup)
Commit: 30d9c6cd9483b2cc586687151bcbcd635f373630
Date: 2022-06-14T12:48:58.283Z
Electron: 17.4.7
Chromium: 98.0.4758.141
Node.js: 16.13.0
V8: 9.8.177.13-electron.0
OS: Windows_NT x64 10.0.22000

Extensions

alexkrechik.cucumberautocomplete@2.15.2
assisrMatheus.sidebar-markdown-notes@1.0.4
bung87.rails@0.17.8
bung87.vscode-gemfile@0.4.2
christian-kohler.npm-intellisense@1.4.2
christian-kohler.path-intellisense@2.8.1
cmstead.js-codeformer@2.6.1
dbaeumer.vscode-eslint@2.2.2
DotJoshJohnson.xml@2.5.1
dsznajder.es7-react-js-snippets@4.4.3
eamodio.gitlens@12.1.1
EditorConfig.EditorConfig@0.16.4
eg2.vscode-npm-script@0.3.25
esbenp.prettier-vscode@9.5.0
fabiospampinato.vscode-diff@1.4.2
formulahendry.auto-rename-tag@0.1.10
jasonnutter.search-node-modules@1.3.0
jawandarajbir.react-vscode-extension-pack@0.5.0
joshuapoehls.json-escaper@1.1.2
ms-azuretools.vscode-docker@1.22.0
ms-dotnettools.csharp@1.25.0
ms-vscode-remote.remote-containers@0.238.2
ms-vscode-remote.remote-wsl@0.66.3
ms-vscode.test-adapter-converter@0.1.6
ms-vsliveshare.vsliveshare@1.0.5625
msjsdiag.vscode-react-native@1.9.2
Orta.vscode-jest@4.6.0
planbcoding.vscode-react-refactor@1.1.3
rebornix.ruby@0.28.1
redhat.java@1.7.0
sianglim.slim@0.1.2
sibiraj-s.vscode-scss-formatter@2.4.3
syler.sass-indented@1.8.21
VisualStudioExptTeam.vscodeintellicode@1.2.21
vscjava.vscode-java-debug@0.41.0
vscjava.vscode-java-dependency@0.19.1
vscjava.vscode-java-pack@0.23.0
vscjava.vscode-java-test@0.35.0
vscjava.vscode-maven@0.35.2
vscodevim.vim@1.22.2
wingrunr21.vscode-ruby@0.28.0
xabikos.JavaScriptSnippets@1.8.0
xabikos.ReactSnippets@2.4.0
zgudino.editorconfig-vscode-snippet@0.2.0

My tsconfig.json

{
  "extends": "expo/tsconfig.base",
  "compilerOptions": {
    "strict": true
  }
}

expo/tsconfig.base

{
  "$schema": "https://json.schemastore.org/tsconfig",
  "display": "Expo",

  "compilerOptions": {
    "allowJs": true,
    "esModuleInterop": true,
    "jsx": "react-native",
    "lib": ["DOM", "ESNext"],
    "moduleResolution": "node",
    "noEmit": true,
    "resolveJsonModule": true,
    "skipLibCheck": true,
    "target": "ESNext"
  },

  "exclude": ["node_modules", "babel.config.js", "metro.config.js", "jest.config.js"]
}

EDIT: I suspect it's something wrong with some configuration for me, at least ... I can't get the import quick fix to work sometimes on older versions of typescript.