Closed innocenzi closed 1 year ago
I couldn't repro this on 4.5 or the latest build from main. Here's what I tried:
$ git clone git@github.com:preset/preset
$ cd preset
$ pnpm i
$ code .
Then I opened packges/cli/src/cli.ts and asked for signature help by hovering over .option
on line 31.
I added and removed a couple of characters and tried the same thing again. Still no crash. Am I missing some setup steps?
I don't think there is a specific setup, no. When it happened to me it happened after a little while, and I don't know what causes the issue.
Perhaps it's not even when looking up for symbols, maybe something else makes it crash, but the result is that intellisense is broken; with the error I pasted in the bug report.
Note that it was still happening the last time I was working on the project (6 days ago, Jan. 27).
The reason I tried signature help was the call to IOSession.Session.getSignatureHelpItems
in the stack. The next things to happen were getLanguageService/updateProjectIfDirty, so maybe it behaves differently if you build the project first. I'll try pnpm run build
and then check signature help again.
Still no crash. Any other steps I might be missing? Can you elaborate on how long a little while is, and what you're doing during that time?
So, I've been working on the project again. It took about 15 minutes for me to notice the TypeScript server crashed.
I restarted and tried again: I was working on the config, so packages/core/src/config.ts
.
I replaced all the code except the imports. I started adding a new function, trying to import the symbol of a package that I just added. It isn't detected so I add the import, then I save. Before I save, I have this in the file:
import path from 'node:path'
import os from 'node:os'
import fs from 'node:fs'
import { PresetConfiguration } from './types'
import { debug } from './utils'
import { loadConfig } from 'unconfig'
export function initializeConfig() {
await loadConfig()
}
And when I saved I saw the TS server crash (I had devtools open).
If it's of any help, here is my extension list:
Tell me if I can give you any more useful information
I tried this again, but still no crash. I opened vscode and saw in packages/core/src/config.ts:
import path from 'node:path'
import os from 'node:os'
import fs from 'node:fs'
import { PresetConfiguration } from './types'
import { debug } from './utils'
export function initializeConfig() {
await loadConfig()
}
and I deleted import { loadConfig } from 'unconfig'
and saved
and then re-typed it in and saved.
If you are still hitting this crash, it would help to
typescript@next
I haven't seen this issue in a while, so I'll close and I'll re-open if it happens again in the future. Thanks a lot for trying to look into it though!
Bug Report
🔎 Search Terms
TS Server Error, TypeScript Server Error, Cannot read property 'close' of undefined
🕗 Version & Regression Information
This is an issue I encounter on TypeScript 4.5.4,
typescript@next
and TypeScript 4.5.3. I only tried these three.🙁 Actual behavior
Code is irrelevant. When typing, I'm assuming when the server looks for symbols, suddenly the Intellisense stops. When I check the VSC console, I get the following logs:
Details
``` ERRRestarting the TypeScript server works for a few seconds, and it stops again after a few seconds of typings. For instance, I created a new file where I started to type
import
, and it crashed. A second time it didn't crash, but then it crashed when I typed the symbol I imported.🙂 Expected behavior
It shouldn't crash when typing.
Reproduction
I'm really not sure how to reproduce this. My only TypeScript project for the moment is https://github.com/preset/preset, and this is the one TypeScript crashes in.
Maybe relevant: I'm using a
pnpm
monorepository. TypeScript is installed at the root and in every package. I've tried VSC's TypeScript version and the package's version.