Commit graph

977 commits

Author SHA1 Message Date
Matt Bierner 1c542d50be More improvements to TS completion computation
For #95324

- Get word range before we make the TS request
- Reuse the context
2020-04-15 14:14:20 -07:00
Matt Bierner 564c619d73 💄 2020-04-15 14:14:20 -07:00
Matt Bierner a51f8c4626 Fix missing property description string 2020-04-15 12:46:40 -07:00
Matt Bierner 605d2cfadb 💄 2020-04-15 12:46:40 -07:00
Matt Bierner 948aa4a214 Make TS completion item more efficent to compute
For #95324

- Removes repeated calls to `getWordRangeAtPosition`
- Only use our fuzzy string logic when using TS 3.8 or older
2020-04-15 10:02:47 -07:00
Josh Smith 3f9e68436b
Issue #93589: Rename 'renameShorthandProperties' setting to 'useAliasesForRenames' (#94480)
* Issue #93589: Rename 'renameShorthandProperties' setting to 'useAliasesForRenames'

* Issue 93589: Added deprecation message to 'renameShorthandProperties' preference

* Issue 93589: Old and new setting value added for mitigtion

Co-authored-by: joshuahs <joshuahs@umich.edu>
2020-04-14 14:53:19 -07:00
Matt Bierner b6c2ea092d Add experimental trigger reason to ts server protocol
For https://github.com/microsoft/TypeScript/issues/35096
2020-04-14 13:55:08 -07:00
Matt Bierner a8f8a2dca0 Only re-request diagnostics if the file has actually been opened
Fixes #95027

Hovers cause VS Code to quickly open and the close the target file. We never actually sync the file with the TypeScript server when this happens. However on file close, we always re-request diagnostics for the project.

This fix makes it so that we only re-request diagnostics if the file has actually been opened on the TSServer
2020-04-11 17:30:12 -07:00
Matt Bierner f3ceb33c5c Hook up experimental TS refactor error
For https://github.com/microsoft/TypeScript/pull/37871
2020-04-10 17:07:09 -07:00
Matt Bierner 8b46fd0645 Try preserving selected signature better in js/ts
Fixes #94834
2020-04-09 15:06:46 -07:00
Martin Aeschlimann ef715cf8c5 TypeScript semantic tokens: use range provider 2020-04-09 18:25:20 +02:00
Martin Aeschlimann 8ef9a03b52 typescript: update typescript-vscode-sh-plugin 2020-04-09 17:24:48 +02:00
Matt Bierner 7ae7343973 Fix some strict null errors revealed by change to emitter 2020-04-08 18:06:24 -07:00
Matt Bierner 32929fbbb8 Always prefer the extract constant refactoring with the lowest scope
Fixes #94717

Previously we hardcoded a check to scope_0
2020-04-08 13:48:03 -07:00
Matt Bierner 74b4540bd1 Prioritize implement interface over remove unused in JS/ts
Fixes #94212

If both `implement interface` and `remove unused` are possible, only mark `implement interface` as prefered.

Also changes our core code action sorting logic to prioritize autofixes
2020-04-08 13:05:44 -07:00
Git-Lior ce57f8ad58
bugfix - typescript code completion doesn't recognize property modifiers when more than one exists (#94165)
* fix microsoft/TypeScript#37117 - code completion in typescript fails to recognize property modifiers

* split kindModifiers by comma or spaces
2020-04-07 13:22:28 -07:00
Martin Aeschlimann 72df4fc229 update typescript-vscode-sh-plugin 2020-04-07 09:46:21 +02:00
Martin Aeschlimann 677b3cfa4b Disable semantic highlighting in large JS/TS files. Fixes #94321 2020-04-03 14:53:07 +02:00
Alex Dima 65309e1d7c
Have SemanticTokensBuilder.build() return SemanticTokens (for #93614) 2020-03-30 15:52:25 +02:00
Matt Bierner 6bdf50706f Enable resolveJsonModule for implicit JS/TS projects
For #93500
2020-03-27 15:11:12 -07:00
Martin Aeschlimann f04dce33a1 Throttle the number of semantic token requests #92583 2020-03-27 16:46:15 +01:00
Martin Aeschlimann 40077f5ea9 [typescript][semantic] add library modifier. Fixes #91090 2020-03-27 14:35:22 +01:00
Martin Aeschlimann c65ea4300d update typescript-vscode-sh-plugin 2020-03-13 00:42:20 +01:00
Matt Bierner 8c596fbf90 Mark arrays readonly 2020-03-10 16:38:34 -07:00
Matt Bierner 9d25faad7f Show better symbolKinds for workspace symbols 2020-03-10 16:38:34 -07:00
Matt Bierner 89fe6d2bfe Fix bad filter
Fixes #92338
2020-03-10 12:31:37 -07:00
Matt Bierner f20250c965 Move version check into provideCompletionItems
Handle TS version changes
2020-03-09 14:45:43 -07:00
Josh Goldberg 72c700cf54
Added completion entry for @ts-expect-error directive (#92093)
* Added completion entry for @ts-expect-error directive

* Limited to relevant TS versions

* You know what, it's more complicated, I'll just go with everything vs 3.9
2020-03-09 12:56:23 -07:00
Pine Wu 2362584a62 Revert "Fix #73803"
This reverts commit 67e6aef0c8.
2020-03-06 00:30:14 -08:00
Pine Wu 4857a9a746 Revert "Fix integration test"
This reverts commit 5a0ab960f0.
2020-03-06 00:29:57 -08:00
Matt Bierner be9c791caa Extract toSymbolInformation 2020-03-05 13:30:52 -08:00
Matt Bierner f062556992 Limit number of pulled in workspace symbols
Fixes #11432
2020-03-05 13:30:52 -08:00
Matt Bierner 9cc4da7503 💄 2020-03-05 12:52:18 -08:00
Pine Wu 5a0ab960f0 Fix integration test 2020-03-05 12:41:06 -08:00
Matt Bierner eca0690ba0
Allow issue reporter to work on built-in extensions (#92040)
Fixes #91029
2020-03-05 12:15:23 -08:00
Pine Wu 67e6aef0c8 Fix #73803 2020-03-05 11:34:58 -08:00
Matt Bierner 81c95f2e5c Prompt user to report issue after single fatal error on insiders 2020-03-04 19:25:15 -08:00
Matt Bierner 2057e931c8 Refactoring version picker
- Rename `versionPicker` -> `versionManager`
- Simplify running of picked items
- Cleaning up interfaces
- 💄
2020-03-03 17:12:40 -08:00
Matt Bierner 3f0aeab1ca Display more information in the TS version status bar item
For #91510

Switching TS versions is fairly uncommon, so repurpose the status bar entry to have additional project commands in it (including the ability to switch TS versions)
2020-03-03 17:12:40 -08:00
Matt Bierner d4dc9e09a2 Fix command being set twice in object 2020-02-28 14:45:35 -08:00
Andrew Branch 23850c7990
[typescript-language-features] Add importModuleSpecifierEnding preference (#90405)
* Expose importModuleSpecifierEnding to typescript-language-features

* Add default `auto` setting

* Use string 'auto' for auto setting

* Work with TypeScript 3.8
2020-02-28 11:20:50 -08:00
Matt Bierner e4beca6b31 Remove TS 3.7 protocol workaround 2020-02-26 16:04:27 -08:00
Matt Bierner 027da88563 Use constant 2020-02-26 16:03:10 -08:00
Matt Bierner a10e4cb911 Make sure we set the correct replacement range for dot member completions
Fixes #91105
2020-02-24 15:53:13 -08:00
Matt Bierner 3c030d7014 Add extra guard on restarting TS server on fatal crash 2020-02-24 15:12:57 -08:00
Matt Bierner 6ff3d9c899 Auto restart TS Server on watch options change 2020-02-24 15:12:57 -08:00
Martin Aeschlimann b2e0925ba1 update jsonc-parser 2020-02-21 15:03:33 +01:00
Matt Bierner 9c0899f286 Pick up TS 3.8.2 2020-02-20 21:38:14 -08:00
Matt Bierner d17a017c0b Fix formatting and version for TS Server issue report 2020-02-20 21:34:20 -08:00
Matt Bierner 0b3aa0a6ea
Let extensions prepopulate the issue reporter title and description (#91039)
* Let extensions prepopulate the issue reporter title and description

Fixes #91028

Adds two new optional arguments to the `vscode.openIssueReporter` command: `issueTitle` and `issueBody`. These are taken using an options object and are used to pre-populate the native issue reporter fields

Hooks up these fields for TypeScript's report issue prompt. We use this to post the most recent TS Server error stack

* Extract duplicate command id to constant

* Log version directly instead of prompting users for it
2020-02-20 10:31:09 -08:00