#new typescript broke things?

33 messages · Page 1 of 1 (latest)

tender badger
#

that's a ts error, not a runtime error. it may be that you don't have the proper environment configured

#

where are you getting the error? eg in your ide or from running tsc?

#

have you tried restarting the language server?

#

also make sure that it's using the right tsconfig

#

do you get the same error if you run tsc from the command line

#

make sure it's just tsc without any files

tender badger
#

but yeah checking via tsc would narrow down the issue a lot

#

if it reports the error, the issue is in your config
if it doesn't, the issue is in vscode detecting that config

#

you could change the version to check, couldn't you

rough carbon
#

you should set up vscode to use the same typescript version you use to build the project

#

you should generally have the typescript package among your devDependencies in package.json, then you can tell vscode to refer to that using the "TypeScript: Select TypeScript Version..." command in the command palette (or clicking the little {} on the right side of the footer)

sterile condor
#

You can put this in your VS Code settings:

"typescript.tsdk": "node_modules\\typescript\\lib",

And it will default to local install, rather than having to click the select TS version on every project.

coral kayak
#

if this seems broken you should probably report this to the TypeScript-DOM-lib-generator repo

coral kayak
coral kayak
#

this isn't pulled into TS, so nothing would have changed

#

I mean that my PR to fix this problem isn't published, so you're still going to see pushManager errors

#

that one is almost certainly a real error

#

it depends what WebSocket it annotated with

#

I don't think anything should have changd in 6.0 that would have not been in 5.9 for this particular thing.

#

I don't know where WebSocket is declared, if it's a node_modules thing, make sure it's updated

#

what this is saying is that your Uint8Array could be backed by a shared array buffer, which would fail, and so you somewhere have a Uint8Array annotated with ArrayBufferLike which could be either

#

so you can look for plain Uint8Array annotations to see if you need to be writing Uint8Array<ArrayBuffer> or something

coral kayak
#

it's going to be

#

you might need some casting if you can't trace this back to whoever is giving the wrong type

graceful obsidian
#

@timid coral Yeah, this is an actual contract change due to a later ECMAScript version - the two types used to be equivalent, but then functionality was added to ArrayBuffer in TS5.9's lib.d.ts changes (because there's real functionality that was added to that class)

coral kayak
#

probably a fix in the dom types for websocket, would have to diff the packages to see what the deal is

#

I don't have my work computer accessible otherwise I'd git blame on TypeScript-DOM-lib-generator

#

the mdn docs do say that it accepts an ArrayBuffer, which is not the same as a SharedArrayBuffer

coral kayak
#

quite intentional (I knew I remembered this)