For #13953
**Problem**
We'd like to show project wide diagnostics, however at the moment TS server is single threaded. This means that computing all these diagnostics would interrupt other user operations such as completions.
Right now, our advice is to use tasks to get around this limitation (since tasks always run as separate process) however few people actually use tasks.
**Change**
This change adds an experimental `tsserver.experimental.enableProjectDiagnostics` setting (default false) that makes VS Code spawn a separate TS Server that is only used for computing diagnostics. This should help keep the primary syntax server responsive while letting the diagnostics server churn away at project level diagnostics
**Why experimental?**
- We are comporting too many diagnostics. This is bad for larger projects. I don't think TS provides the right APIs to know which files we actually need to request diagnostics on when a file changes.
- This hasn't been fully extensively tested to make sure it plays nicely with feature such as automatic type acquisition or in complex workspace with multiple projects
* Show code lens for inner functions
* Create typescript.referencesCodeLens.showOnAllFunctions setting
* Create javascript.referencesCodeLens.showOnAllFunctions setting
* Add a new setting in a existing class
* Avoid unnecessary fallthrough
For #82718Fixes#52846
This adds a newly proposed codeActions contribution point. For details, see #82718
This change also makes the intellisense for the `editor.codeActionsOnSave` property dynamic by using the new contribution point
* Add setting to configure the max memory for tsserver
* Fix silly tpo from fixing formatting
* Add "MB" to setting description string
* Add validation to configuration value
* Add 128MB as a lower bound
* Cleans up vs-typescript temp directoy upon VS code close
* Fixed typing errors preventing build from succeeding
* Moved deletion to the deactivate method. Added folders per extension host
* Removed yarn watch script used in testing
Fixes#68029
Use the `typescript.preferences.renameShorthandProperties` and `javascript.preferences.renameShorthandProperties` to disable shorthand property renames. Default to enabling renames