Commit Graph

1040 Commits

Author SHA1 Message Date
Matt Bierner
00a0a77785 Cleaning up ts server logic
Getting ready to have worker based TS servers instead of ones that use a process

- Use standard error handler instead of having separate reader error
- Move all process based server logic into own file (`serverProcess`)
2020-07-16 16:05:20 -07:00
Matt Bierner
ed028cfd96 Add ClientCapabilities class 2020-07-16 14:37:58 -07:00
Matt Bierner
0857489caf Add the concept of client capabilities for TypeScript
For serverless, we will only be able to run the TypeScript syntax server which does not support all features. This change makes this possible by adding the concept of client capabilities. Providers such as rename will only be registered when the client has semantic capabilities
2020-07-16 12:32:27 -07:00
Matt Bierner
16c6b81b3e Flatten conditional registration
This allows us to pass a precomputed, flat list of requirements when registering a language feature
2020-07-16 12:32:27 -07:00
Matt Bierner
a1967ddf13 Remove eslint disable
For #101978
2020-07-09 09:25:47 -07:00
Matt Bierner
76471bdb74 Add slight delay to test
For #101922

I can't repo this locally but suspect it may be timing related
2020-07-08 11:43:48 -07:00
Matt Bierner
dee0511b58 Remove duplicated test 2020-07-08 11:43:48 -07:00
Matt Bierner
46c2494cb0 Enable ts tests on ./test-integration.sh (#101826)
* Enable ts tests on ./test-integration.sh

* Fix join lines for windows

* Fixing more tests for windows

Make sure we use the correct new line character

* Update test-ingration scripts
2020-07-07 17:38:03 -07:00
Matt Bierner
bc462053d6 Making TS tests more reliable 2020-07-06 16:52:35 -07:00
Matt Bierner
4f9ebc3205 Sort implement abstract above remove unused
Fixes #101486
2020-07-06 15:41:10 -07:00
Matt Bierner
2ce03eed5a Update VS Code refactoring support for new TS 4.0 api
Adopts changes from https://github.com/microsoft/TypeScript/pull/37871/
2020-07-02 16:41:34 -07:00
Armando Aguirre
2ddb2c5a72 Added word boundary on tsserver regex (#101598)
Adds a word boundary on the tsserver regex so that it doens't get confused by other file names.
2020-07-02 13:18:57 -07:00
Matt Bierner
c5b91342d6 Remove extra dispose implementations 2020-06-29 14:40:15 -07:00
Matt Bierner
04c36be045 Prompt user to upload TS Server log 2020-06-26 16:41:38 -07:00
Matt Bierner
90de01176e Always enable dynamic syntax server on TS 4.0+
We are looking for feedback on this new setting. For those on TS 4.0+, it should also be a sensible default
2020-06-26 16:18:48 -07:00
Matt Bierner
9d59cb9813 Reduce duplicate code
Merge the `SyntaxRoutingTsServer` and `ProjectLoadingRoutingSyntaxTsServer` classes since these only differ routing to the syntax server while a project is loading
2020-06-26 16:18:48 -07:00
Martin Aeschlimann
6eeb350744 update typescript-vscode-sh-plugin (fix version check) 2020-06-26 15:26:15 +02:00
Martin Aeschlimann
4952232a7b Merge pull request #101046 from madskristensen/patch-2
Fix SchemaStore.org URLs
2020-06-26 08:46:20 +02:00
Matt Bierner
32e6693f00 Fix race on 'projectInfo' requests
Fixes #101076

Make sure we fully start the TS Server (including uploading files) before sending the 'projectInfo' request for the status bar item
2020-06-25 16:44:25 -07:00
Matt Bierner
48c6e3979d Add experimental support for using iframes for webviews (#100991)
* Use non-deprecated API version

* Prototype: enable offline iframe based webviews on desktop

Adds a new `vscode-webview` protocol  for loading the wrapper contents of a webview

Still needs cleaning up

* fix loading of electron webview

* Cleanup and add `webview.experimental.useIframes` setting

Co-authored-by: deepak1556 <hop2deep@gmail.com>
2020-06-25 14:52:02 -07:00
Mads Kristensen
860ca64f07 Fix SchemaStore.org URLs
SchemaStore.org now support HTTPS directly instead of relying on the backdoor through *.azurewebsites.net
2020-06-25 10:13:47 -07:00
Matt Bierner
adb27e5fd0 enable/disable deprecated diagnostics in core instead of requiring each diagnostic provider do so 2020-06-22 15:21:15 -07:00
Wenlu Wang
9d6054c99d Add ts/js deprecated support (#97742)
* Add ts/js deprecated support

* Support callhierarchy

* avoid tags

* fix lint

* fix lint

* Avoid changes

* Avoid assign

* Avoid changes

* Avoid styles

* Add temp deps for build

* update version

* add config item

* fix type

* Use expiremental namepsace

* fix types
2020-06-22 14:01:37 -07:00
Rhitik Bhatt
4dfc14b846 Fixes buggy onEnter behavior when used with generator method (#100076)
* Adds regex to ignore already closed comment block

* Adds test case for generator method onEnter buggy behavior
2020-06-15 11:57:40 -07:00
Matt Bierner
7e4cc2c435 Only run specific commands on the syntax server
This works better than running all commands on the syntax server by default
2020-06-11 20:05:33 -07:00
Matt Bierner
102311f877 Always send projectInfo to semantic server 2020-06-08 17:14:22 -07:00
Matt Bierner
480c98f1ab Add ProjectLoadingRoutingSyntaxTsServer
For #99643

Add a new server option for TypeScript that routes request based on if a project is loading or not

The is enabled by the undocumented `"typescript.tsserver.useSeparateSyntaxServer": "dynamic"` setting
2020-06-08 16:46:55 -07:00
Matt Bierner
0184d2f90d Extract EventName to enum 2020-06-08 16:46:55 -07:00
Matt Bierner
233eac4110 Simplify getFixAllActions 2020-06-04 15:18:51 -07:00
Matt Bierner
05d6fb6634 Support new TS proposed API for refactorings
For https://github.com/microsoft/TypeScript/pull/38378/files#diff-121b46a8c0f71b73817f429b57e27e61R553
2020-06-01 14:18:41 -07:00
matt penrice
3cb12a21b5 Create VsCodeResource for schemed filepaths (#94986) 2020-05-29 12:00:22 -07:00
Matt Bierner
dfde221caa Fix the remove unused source action not removing single unused interfaces 2020-05-29 11:05:38 -07:00
Matt Bierner
5f8e6d0b19 Make sure add all missing imports quick fix comes after individual add missing import quick fixes
Fixes #98613
2020-05-29 11:05:38 -07:00
Andrew Branch
766e520783 Allow TS Server to be started with --inspect-brk (#98340) 2020-05-26 11:57:02 -07:00
Matt Bierner
c3b1725a2d Make sure implement interface is prioritized over remove unused
Fixes #94212
2020-05-20 15:34:02 -07:00
Matt Bierner
85a336c885 Only return single ts-ignore action if there are multiple errors on one line
Fixes #97867
2020-05-20 15:17:22 -07:00
Matt Bierner
d9f0f110f9 Don't compile testworkspace 2020-05-15 13:08:22 -07:00
Matt Bierner
9efb82eda9 Fix kind of SourceAddMissingImports 2020-05-15 10:39:43 -07:00
Matt Bierner
39fb3b1065 Mark add missing imports as preferred fixes
Allow auto fixing add missing imports if:

- There is only one possible import
- And there are no better fixes (such as spelling changes)
2020-05-15 10:39:43 -07:00
Matt Bierner
541b9eb7a6 Don't mark fix all actions as preferred
Fixes #97866
2020-05-15 10:39:43 -07:00
Matt Bierner
f3454d430b Better clean for 452a377c5e 2020-05-14 12:13:31 -07:00
Benjamin Pasero
45aa0bf525 fix compile error
fyi @mjbvz
2020-05-14 09:58:21 +02:00
Matt Bierner
452a377c5e Still search all projects if you are using TS 3.9 but are not in a TS file 2020-05-13 19:42:18 -07:00
Matt Bierner
b312fa2d33 Add initial source actions for remove unused and add missing imports
Fixes #95831
2020-05-12 13:16:08 -07:00
Matt Bierner
6efd86a30c Cleaning up fix all for JS/TS 2020-05-12 13:16:08 -07:00
Matt Bierner
c6db83b483 Extract error codes to constant file 2020-05-11 17:33:28 -07:00
Matt Bierner
2393521d37 Use equals helper 2020-05-11 17:33:28 -07:00
Rahul Kadyan
47c54f0e32 feat: use configNamespace for registering language providers of other extensions (#95621)
fixes #75890
2020-05-11 15:22:42 -07:00
Matt Bierner
e4e1099f8c Configure optional chain completions at the file level instead of per-request
Fixes #97398
2020-05-11 14:52:20 -07:00
Matt Bierner
b1e9155139 Use generic for providers with resolve methods (#96955)
* Use generic for providers with resolve

Fixes #95852

Some of our providers have two phases: provide and resolve. This change updates the typings to make it clearer that the values returned by provider are passed into resolve.

* Remove duplicate vscode.d.ts in search-result extension

* Also use generic type in result of resolve
2020-05-11 13:06:03 -07:00