Commit graph

1082 commits

Author SHA1 Message Date
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
Martin Aeschlimann
12770d4fed update typescript semantic highlighting 2020-02-20 15:35:50 +01:00
Martin Aeschlimann
66f525f435 [ts] enumMember missing in token legend 2020-02-20 10:31:14 +01:00
Matt Bierner
2aced89ae1 Show more clear TS Version picker when reinstalling a different TS version locally
- Make sure that `TypeScriptVersion` is immutable by getting and caching `apiVersion` on init
- Only show dot next to currently active version if both path and api versions match
2020-02-18 19:16:56 -08:00
Matt Bierner
8503705b11 Don't show reference code lens for both class and ctor in es5 classes
Fixes #90396
2020-02-14 16:57:47 -08:00
Matt Bierner
ea0880611f Use non-deprecated version of registerTasksProvider
For #88391
2020-02-12 17:20:05 -08:00
Matt Bierner
43e268ad72 💄 2020-02-12 15:48:38 -08:00
Matt Bierner
fb622a8b83 Move code action documentation contribution point to come from metadata
For #86788
2020-02-11 11:36:23 -08:00
Matt Bierner
efb781e5be Marking that documents/workspaces arrays cannot be mutated 2020-02-11 11:36:23 -08:00
Martin Aeschlimann
985840db96 update typescript-language-features 2020-02-10 03:27:46 +01:00
Martin Aeschlimann
12509673e9 update typescript-vscode-sh-plugin 2020-02-10 02:25:47 +01:00
Matt Bierner
718331d6f3 Allow configuring TS Server watch options through VS Code
Fixes #89381

Given that these are advanced options, we require editing them in the json file instead of using our settings UI
2020-02-07 18:14:38 -08:00
Matt Bierner
4d35421462 Remove version gating on for now enableProjectDiagnostics
None of the apis being users for this experimental setting require the latest TS version
2020-02-06 16:33:05 -08:00
Matt Bierner
f0942786b4 Add experimental setting to use separate server to compute project level diagnostics
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
2020-02-06 15:15:33 -08:00
Matt Bierner
aca46ac4a5 Take server arguments object
Makes it more difficult to mistaktenly reverse which server is which
2020-02-06 15:15:33 -08:00
Matt Bierner
c8516dd7e8 Marking arrays as readonly 2020-02-06 15:15:33 -08:00
Matt Bierner
5d3c86ad99 Remove VS Code project file change watchers
Updating projects should be handled by the `projectsUpdatedInBackground events` now
2020-02-06 15:15:33 -08:00
Matt Bierner
ae758e681d Fix spelling in test name 2020-02-05 18:12:26 -08:00
Matt Bierner
5347c21ecf Treat any non-whitespace character as jsdoc param names
Fixes #90108
2020-02-05 15:26:13 -08:00
Matt Bierner
87b6d03182 Add cursor position check to jsDocCompletionTest 2020-02-04 18:02:38 -08:00
Matt Bierner
2b7e6ab2fd 💄 2020-02-04 18:00:03 -08:00
Matt Bierner
e7451b12ce Adding assertEditorContents helper function and fixing jsdoc completion tests 2020-02-04 17:52:11 -08:00
Matt Bierner
a32cb805a2 Adding some basic tests for auto insert of await on completions 2020-02-04 17:34:12 -08:00
Matt Bierner
58fe34bb77 Don't require strict prefix matches for private field completions
Fixxes #89556
2020-02-04 17:17:00 -08:00
Matt Bierner
b4a835f5b9 Fixing backet completion items not shown for cases such as this.xy| 2020-02-04 16:15:58 -08:00
Matt Bierner
7b754d7d95 Adding more pinning tests for JS/TS completions 2020-02-04 16:15:58 -08:00
Matt Bierner
9887559f17 Add basic JS/TS replace/insert completions
For #87091

Adds basic support for insert/replace mode for JS/TS completions. We're blocked on full support by https://github.com/microsoft/TypeScript/issues/35602. I'll be adding some skipped tests that document current limitations
2020-02-04 16:15:58 -08:00
Matt Bierner
78465390bd Run many of the JS/TS completion tests in both insert and replace completion mode 2020-02-04 16:15:58 -08:00
Matt Bierner
6205cf0fed Add basic insert mode tests 2020-02-04 16:15:58 -08:00
Matt Bierner
6960e8c07b Fixing TS completion tests
The current method of verifying when suggestions have been shown is not reliable so switch to use a delay instead :(
2020-02-04 16:15:58 -08:00
Matt Bierner
5b284c140c Build TS extension against current vscode.d.ts directly
Currently  extensions like TS have a dev dependency on the `"vscode"` package. This pulls in a copy of `vscode.d.ts` that we end up using instead of our local `vscode.d.ts`.

This change uses the `paths` `tsconig` option so that we use our local `vscode.d.ts` instead of the one from `node_modules`
2020-02-04 16:15:58 -08:00
Matt Bierner
45999fdb8f Remove extra cast
Not required with TS 3.8
2020-02-04 16:15:58 -08:00
Matt Bierner
5623c36a40 Remove surveyor code
Not currently being used
2020-02-04 16:15:58 -08:00
Alex Ross
8066726b27 Allow both : an . as time separators in tsc problem pattern
Fixes https://github.com/microsoft/vscode/issues/89273
2020-02-04 15:01:09 +01:00
Matt Bierner
3f5fda1800 Redefine performanceData 2020-02-03 14:31:21 -08:00
Matt Bierner
7c502bbb6a Fix compile error related to new TS version 2020-02-03 14:20:17 -08:00
Matt Bierner
55e72d8d02 Add support for rendering jsdoc inline @link tags
Fixes #28624
2020-02-03 14:00:19 -08:00
Matt Bierner
8fd777f649 Remove extra not null checks 2020-02-03 14:00:19 -08:00
Ron Buckton
d837ddc72e
Fix off-by-one typo to improve display of file names in TS call hierarchy (#89822) 2020-01-31 15:35:49 -08:00
Matt Bierner
d92dedcd69 Allows for js and ts specific refactoring pages 2020-01-29 18:03:24 -08:00
Alex Dima
acf2931955
Fixes #89552: Throw from the provider when semantic tokens cannot be computed and keep old semantic tokens if this happens 2020-01-29 16:22:08 +01:00
Matt Bierner
d99bbafe17 Pick up new TS version for building VS Code 2020-01-28 11:00:02 -08:00
Matt Bierner
c4b6a6b537 Send # as a completion trigger character to TS 3.8.1+
https://github.com/microsoft/TypeScript/issues/36367 added support for `#` as a TS completion trigger
2020-01-27 19:06:05 -08:00
Matt Bierner
c0c9e0043c Use type only imports for protocol
These imports should never result in a real import in the emitted code
2020-01-27 19:06:05 -08:00
kieferrm
ab1514ed77 fix GDPR annotation 2020-01-27 22:17:56 +00:00
Martin Aeschlimann
a6df4b39d9 update typescript-vscode-sh-plugin 2020-01-27 15:03:16 +01:00
Martin Aeschlimann
2b880f2b74 update typescript-vscode-sh-plugin 2020-01-23 17:08:49 +01:00
Martin Aeschlimann
3c930f9214 improve jsx semantic highlighting 2020-01-22 23:16:57 +01:00
Alex Dima
fbc1c189ff
Bring back version check to avoid flickering caused by coordinates conversion 2020-01-21 09:19:20 +01:00
Matt Bierner
74cc2f352a Use more explit name for request start time
Note that this is the total time the request has been in the server queue, not the actual execution time
2020-01-19 20:14:25 -08:00
Matt Bierner
5359a9373a Log the full version string for TS
Right now, if TS has an error before we get back the full version string in the TSServer `'telemetry'` event, we end up logging just the basic version info (such as 3.8.0). We also want to include the pre-release tags (3.8.0-tsversion20200101)
2020-01-19 20:14:25 -08:00
Matt Bierner
4a5890eabc Add explict update methods intead of using spread 2020-01-19 20:14:25 -08:00
Matt Bierner
8714526077 💄 2020-01-19 20:14:25 -08:00
Matt Bierner
cb0cd66791 Make sure we only send TS trigger characters they know about 2020-01-19 20:14:25 -08:00
Matt Bierner
2fd0153d56 Remove extra no null check
This is already checked a few lines up
2020-01-19 20:14:25 -08:00
Martin Aeschlimann
b6e7eaa1bd fix for typescript-vscode-sh-plugin not found 2020-01-17 16:09:44 +01:00
Martin Aeschlimann
844f49f2a8 typescript-vscode-sh-plugin is not bundled 2020-01-17 11:16:34 +01:00
Matt Bierner
b600d39061 Treat '#' as a VS Code trigger character
Fixes #88816
2020-01-16 17:22:04 -08:00
Matt Bierner
b57190f449 💄 2020-01-16 15:49:36 -08:00
Matt Bierner
e1373b367d Use test instead of exec 2020-01-16 15:49:36 -08:00
Matt Bierner
b53a2f4b8a 💄 2020-01-16 15:49:36 -08:00
Matt Bierner
53682cf56d Bump VS code version 2020-01-16 13:16:38 -08:00
Rob Lourens
8c0a573b9e
Merge pull request #88730 from mairaw/typo
fix typo
2020-01-16 10:00:15 -08:00
Alex Dima
9e1d730cf2
SemanticTokens - implement feedback received in API call:
- extract a separate DocumentRangeSemanticTokensProvider that deals with a document range
- extract a separate provideDocumentSemanticTokensEdits that deals with updating via SemanticTokensEdits a previous result
2020-01-16 18:02:02 +01:00
Johannes Rieken
430de16fef fix compilos and adopt proposed api usage, #10266 2020-01-16 17:52:18 +01:00
Maira Wenzel
71ed221b0e fix typo 2020-01-15 16:35:58 -08:00
Martin Aeschlimann
a2d46d4b68 ts semantic highlighting: support alias 2020-01-15 23:08:15 +01:00
Matt Bierner
95793304cc Also show extract to function as disabled in js/ts
Currently we only show `extract constant`
2020-01-14 13:03:59 -08:00
Martin Aeschlimann
661bc5da41 define constants in typescript-vscode-sh-plugin 2020-01-14 17:35:58 +01:00
Martin Aeschlimann
5ee9f6646e add constants 2020-01-14 10:07:40 +01:00
Martin Aeschlimann
fc57a1421d update typescript-language-features 2020-01-13 21:09:37 +01:00
Martin Aeschlimann
18f0a5bd21 add reaonly support, update typescript-vscode-sh-plugin version 2020-01-13 19:57:17 +01:00
Martin Aeschlimann
0fe69bd529 TS semantic highlighting: check api version 2020-01-13 12:42:45 +01:00
Martin Aeschlimann
59e12621ae polish 2020-01-10 16:15:08 +01:00
Martin Aeschlimann
703a2afcef update typescript-vscode-sh-plugin 2020-01-10 16:05:16 +01:00
Martin Aeschlimann
fbad0c368e Merge branch 'master' into aeschli/ts-sem 2020-01-10 15:40:03 +01:00
Martin Aeschlimann
4032ce7241 polish 2020-01-10 15:37:37 +01:00
Matt Bierner
ad97bd7493 Exclude tsconfig files under dot file directories
Fixes #88328
2020-01-09 14:25:39 -08:00
Martin Aeschlimann
900100b745 use typescript-vscode-sh-plugin 2020-01-09 23:23:55 +01:00
Martin Aeschlimann
a07286f7f9 use @aeschli/typescript-vscode-sh-plugin 2020-01-09 22:47:06 +01:00
Martin Aeschlimann
b8a7184825 use plugin 2020-01-09 17:36:45 +01:00
Martin Aeschlimann
741a8b2b2f Merge branch 'master' into aeschli/ts-sem 2020-01-09 15:41:56 +01:00
Matt Bierner
fc65a7c41b Update logging of updateGraph to match TS protocol changes
For #88313

Also log updateGraph on `completions.execute` instead of as its own event
2020-01-08 16:57:26 -08:00
Matt Bierner
ce5ffc76c0 Fix type 2020-01-08 16:47:10 -08:00
Matt Bierner
e7b44e70e9 Dont' use default export for TelemetryReporter
We are also exproting other values/types, so use a named export instead
2020-01-08 16:36:31 -08:00
Matt Bierner
7c6897aca0 Report updateGraph performance Telemetry from the TypeScript server
Fixes #88313
2020-01-08 16:34:21 -08:00
Ron Buckton
71b60d0d22 Add call hierarchy support for TypeScript 3.8 (#88168)
* Add call hierarchy support for TypeScript 3.8

* Add version dependent registration for call hierarchy provider

* Revert TS version, PR feedback
2020-01-08 14:35:44 -08:00
Martin Aeschlimann
ed4173796d ts sem 2020-01-08 17:08:48 +01:00
Matt Bierner
80ccf6fd9d Make sure we always explicitly reset pendingGetErr
#88209
2020-01-07 16:14:54 -08:00
Matt Bierner
f0336455ed Adding documentation.refactor proposed contribution point
For #86788
2020-01-07 16:14:54 -08:00
Matt Bierner
629a08ed62 When generating a tsconfig with checkJs, make sure we also set allowJs
For #87972
2020-01-06 15:35:41 -08:00
Matt Bierner
f105af6007 Set sourceMap: true in default tsconfig
For #87972
2020-01-06 15:35:41 -08:00
Andrew Liu
81fb34c445 fix parsed JSDoc author tag (#80898)
* fix parsed JSDoc author tag

* fix author tag
2020-01-06 11:53:13 -08:00
Johannes Rieken
09ee89ca87 remove more unused tslint directives 2020-01-03 08:14:23 +01:00
Johannes Rieken
f80a6f9b96 update rule-disablements (eslint-disable for tslint-disable) 2020-01-02 20:28:59 +01:00
Johannes Rieken
f01f7ebe93 fix some (future) linting issues 2019-12-31 09:54:04 +01:00
Matt Bierner
c0c4eb6a51 Always use same range for jsdoc completions
For #87091

JSdoc completions do not have different behavior for replace vs insert
2019-12-20 11:55:46 -08:00
Matt Bierner
4636be2b71 Remove grep for ts tests 2019-12-17 16:50:36 -08:00
Simon Siefke
043da28dda fix: typescript completion item kind for local function (#87182) 2019-12-17 11:03:00 -08:00
Alex Ross
7a374c3d13 Handle stat.type correctly in typescript features extension
#85753
2019-12-17 11:58:28 +00:00
Matt Bierner
c645eeee69 Remove extra check 2019-12-12 10:31:55 -08:00
Matt Bierner
faf453c1c4 Prefer startsWith 2019-12-12 10:31:55 -08:00
Matt Bierner
1dd79d573c Use more explicit names 2019-12-12 10:31:55 -08:00
Matt Bierner
a4177f50c4 Use object for refactor.disabled
For #85160

Using an object is more explict with property names and will let us introduce additional properties in the future if needed
2019-12-11 20:15:30 -08:00
Matt Bierner
58d954737f Don't show references code lens on const members
Fixes #86495
2019-12-09 17:28:32 -08:00
Matt Bierner
35587bec93 Also log error when a fatal error happens 2019-12-09 17:28:32 -08:00
Matt Bierner
9bdb4a2f70 Handle normalized windows paths in resource map
Fixes #86433

During path normalization, we convert `\` in windows paths to  `/`. This causes the isWindowsPath check to fail

I think it is generally safe to assume that file paths that start with a drive letter and then any type of slash should be treated as windows paths
2019-12-05 15:08:13 -08:00
Martin Aeschlimann
eeee6244d9 [josn] fix wrong schema-schema reference, use draft-07 everywhere 2019-12-05 11:15:39 +01:00
Matt Bierner
57455124b5 Make sure we also log the typescript error properties on fatal error telemetry events
Fixes #86205

We already log error metadata for failed requests. However we don't include this on the fatalError event. This makes investigation of these errors difficult
2019-12-04 10:59:15 -08:00
Martin Aeschlimann
3bef2000a8
Merge branch 'master' into patch-2 2019-11-26 14:28:00 +01:00
Matt Bierner
a63d88ec55 Make sure we normalize paths before sending them to tsserver
Fixes #84826
2019-11-25 20:58:47 -08:00
Matt Bierner
16fffb122b Mark parameter suggestions as variables
For #85430
2019-11-25 20:09:10 -08:00
Matt Bierner
dd300e4fe7 Show constants as normal variables
Fixes #85429
2019-11-25 19:50:32 -08:00
Matt Bierner
4116c9411b Use enum member completion type 2019-11-25 19:50:32 -08:00
Samuel Bronson
96479b86f3
Allow trailing commas in jsconfig.json, too
This is a followup to commit bcf67c867f "allow trailing commas in tsconfig.json (for #80419)".
2019-11-23 21:36:10 -05:00
okmttdhr
0db887a1a3 Show JS/TS References Code Lens for Inner Functions (#84689)
* 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
2019-11-22 18:06:23 -08:00
Matt Bierner
827e94edef Hook up basic alert of why a code action could not be applied
For #85160
2019-11-20 17:10:00 -08:00
Alex Ross
e82dd213dd Make typescript problem match watch patterns less locale specific
Improves #46373
2019-11-20 09:33:32 +00:00
Matt Bierner
0e5a5f6524 Better time logging for js + markdown
We don't need full date, only times
2019-11-19 11:22:08 -08:00
Alexandru Dima
cf624b01fc
Fix memory leak caused by listeners to nulToken (#84940) 2019-11-19 11:13:38 +01:00
Matt Bierner
942287eb44 Fix report issue command
For #85021
2019-11-18 11:00:47 -08:00
Matt Bierner
5b428d2ec1 Don't use locale strings
For #84803

These can cause issues on node 12
2019-11-18 09:35:35 -08:00
Johannes Rieken
95a7255725 fix more compilos 2019-11-18 15:26:44 +01:00
Alexandru Dima
e7f8a94eb2
Split TS changes to separate PR 2019-11-18 12:17:23 +01:00
Alexandru Dima
41be9a6142
Merge remote-tracking branch 'origin/master' into alex/semantic-exploration 2019-11-18 08:59:14 +01:00
Matt Bierner
91200b1202 Use const enum for types 2019-11-15 14:55:14 -08:00
Matt Bierner
fa72810c77 Don't send TS Server open requests if we open then quickly close a resource
Fixes #84875
2019-11-15 14:02:46 -08:00
Alexandru Dima
cbb231754f
Merge remote-tracking branch 'origin/master' into alex/semantic-exploration 2019-11-15 10:10:39 +01:00
Matt Bierner
738d85a51e Don't return js/ts fix all for empty edits 2019-11-14 15:35:46 -08:00
Matt Bierner
88c2100793 Make sure we always reset bufferSyncSupport when the TS server is started
Splits `reset` from `reinitialize` and makes sure we always `resset` buffer sync support when the service starts
2019-11-14 11:30:41 -08:00
Matt Bierner
4e8ef4cf4d Remove gating for inMemoryResourcePrefix
Some users are setting weird errors related to untitled TS files. In some of these cases (such as https://github.com/microsoft/TypeScript/issues/35091) we see a untitled file being sent to the tsserver without the `inMemoryResourcePrefix`.

I can't figure out how to get into this state but am removing the gating that *could* perhaps cause use not to set `inMemoryResourcePrefix`. This gating targets TS 2.7 or older, which telemetry shows very, very few users are still enabling in their workspaces
2019-11-14 00:17:57 -08:00
Alex Dima
15beb36ccf
Merge remote-tracking branch 'origin/master' into alex/semantic-exploration 2019-11-14 09:16:10 +01:00
Johannes Rieken
27eafea04a
Merge pull request #84578 from microsoft/joh/outlineNav
Symbol navigation
2019-11-13 12:33:36 +01:00
Matt Bierner
cf197953d7 Prefer using vscode.workspace.fs over node fs 2019-11-12 21:59:36 -08:00
Matt Bierner
0749b7aca8 Timebox the TSServer request used in the JS/TS task provider
Fixes #84278
2019-11-12 21:59:36 -08:00
Matt Bierner
1f3642a07d Add explicit type on experimental fixAll provider
For #84602
2019-11-12 14:28:43 -08:00
Matt Bierner
a170916295 Highlight a few other types in jsdoc comments
Fixes #84622
2019-11-12 13:31:09 -08:00
Greg Van Liew
8ae2921645 Nits in settings comments 2019-11-12 10:55:04 -08:00
Johannes Rieken
7e333135dd often set selection range for TS document symbols, #84576 2019-11-12 11:28:48 +01:00
Matt Bierner
2ec3bc4fd0 Removed undocumented setting usage 2019-11-11 16:12:52 -08:00
Matt Bierner
8904a3cbce 💄 2019-11-11 16:12:52 -08:00
Matt Bierner
6118d2713e Make sure synchronized buffers are reset when tsserver restarts 2019-11-11 16:12:52 -08:00
Matt Bierner
21fd94b70c Make sure buffer sync reset clears pending diagnostics 2019-11-08 14:47:06 -08:00
Matt Bierner
7218d47251 Make sure we don't try calling a cached getErr on a closed resources that are in the getErr queue 2019-11-08 14:47:06 -08:00
kieferrm
59ba1190b4 fix GDPR annotation 2019-11-08 22:36:55 +00:00
Alex Dima
c9a2de2d9c
Improve integration test output on Windows (#84239) 2019-11-08 17:21:35 +01:00
Matt Bierner
fdeb9aa9b8 Use 'as const' instead of readonly class object 2019-11-07 20:31:32 -08:00
Matt Bierner
a8ad448cb0 Aggressively cancel code lens requests when the resource changes
For #84185
2019-11-07 18:47:39 -08:00
Matt Bierner
d83f121f6d Fix spelling 2019-11-07 07:57:04 -08:00
Alexandru Dima
c34e736195
Forward SemanticColoring disposals to the ext host 2019-11-07 16:06:46 +01:00
Alexandru Dima
bdbe2e3612
Clear semantic tokens in case of errors/empty results 2019-11-07 15:40:06 +01:00
Alexandru Dima
7761e75deb
API tweak from the standup discussion 2019-11-07 15:26:22 +01:00
Matt Bierner
bea911842a Fix name and make sure tell VS Code about about specific code actions 2019-11-06 18:21:43 -08:00
Matt Bierner
5b63895862 Docment remaining known js/ts refactorings 2019-11-06 18:13:54 -08:00
Matt Bierner
26c4541c4a Add coalease helper function 2019-11-06 17:47:43 -08:00
Matt Bierner
692630172a Documenting more js/ts refactorings 2019-11-06 17:47:43 -08:00
Matt Bierner
42d53cf373 Document extract constant and extract type alias 2019-11-06 16:51:49 -08:00
Matt Bierner
c3983ca63b Document extract interface for js/ts
Also re-organizes the code action kinds fo better encapsulate mapping of TS kinds to VS Code kinds
2019-11-06 16:51:49 -08:00
Matt Bierner
2510769bf9 Updat codeActions contribtions schema based on https://github.com/microsoft/vscode/issues/82718#issuecomment-550468267
- Adds a description
- Remove schama
- Moves the language to the top level so we don't need to duplicate so much info for each code action
2019-11-06 16:51:49 -08:00
Matt Bierner
c8d64b13e5 Add code actions contributon point
For #82718
Fixes #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
2019-11-06 10:13:59 -08:00
Alexandru Dima
013433992a
Semantic tokenization 2019-11-05 17:17:28 +01:00
Alexandru Dima
308ff31f95
Merge remote-tracking branch 'origin/master' into alex/semantic-exploration 2019-11-05 09:44:55 +01:00
Andrii Dieiev
a188b905c6 Trigger completions on backticks in JS/TS (#80234) 2019-11-04 14:55:07 -08:00
Matt Bierner
c78edd8668 Pick up TS 3.7-rc 2019-11-04 08:49:47 -08:00
Johannes Rieken
073735c5e1
Merge branch 'master' into joh/willRename 2019-11-04 12:10:18 +01:00
Huáng Jùnliàng
c35b9ba236 add babel.config.json to validation (#83758) 2019-11-01 11:23:04 -07:00
Johannes Rieken
5a4e23fb31 update names 2019-11-01 17:03:56 +01:00
Johannes Rieken
36c3e8756c adjust API proposal to account for N files being created, moved, and deleted 2019-11-01 16:50:56 +01:00
Johannes Rieken
2d71cb4cdf adopt proposed API changes in TS land 2019-11-01 12:38:46 +01:00
Johannes Rieken
14e2178b7f fix #83762 2019-10-31 16:02:34 +01:00
Matt Bierner
c80fb1b771 Be more resilient when checking if we have an opened jts/ts buffer
Fixes #83338

`TextDocument` lifetime may not match that of the the user facing editors. However the JS/TS extension was assuming that it did. Introduce a `ensureHasBuffer` function that can open a buffer if vscode knows about a textdocument but no `onDidOpenTextDocument` has been fired for it yet
2019-10-29 14:26:20 -07:00
Benjamin Pasero
ca22de4b17 debt - bump node.d.ts dependency in extensions to 12.x (part of #82514) 2019-10-28 08:11:47 +01:00
Matt Bierner
ba4a504ffe Use a case-insensitive map for store pending buffer operations
Fixes #82634
2019-10-24 18:12:21 -07:00
Matt Bierner
951f891b23 Extend disposable 2019-10-24 16:58:12 -07:00
Matt Bierner
73fbb9da18 Use proper map 2019-10-24 16:58:12 -07:00
Matt Bierner
b66a2571fd Use Disposable 2019-10-24 16:58:12 -07:00
Matt Bierner
73b3fc4348 Support performing a js/ts workspace symbol search when focused on the left side of a git view
Fixes #75107
2019-10-24 14:55:54 -07:00
Matt Bierner
c4868f4cc8 Use includes 2019-10-24 14:55:54 -07:00
Matt Bierner
520fafc07b Use includes 2019-10-24 14:55:54 -07:00
Matt Bierner
8c0e291789 Make message for update imports better match vscode's message
For #76268
2019-10-23 18:04:22 -07:00
Matt Bierner
639ccb016f Batch renames for js/ts
Fixes #76268
2019-10-23 17:57:41 -07:00
Matt Bierner
e4478d363d Batch renames 2019-10-23 17:57:41 -07:00
Matt Bierner
6290c3ff0b Use file name to determine if we are in a ts file or not
Using a textdocument to know if we are in a typescript vs a javascript document is ideal but comes at a performance cost. In most cases we can use the file name safely
2019-10-23 17:57:40 -07:00
Matt Bierner
645a178353 Use destructured paramters 2019-10-23 17:57:40 -07:00
Matt Bierner
01f429e8c9 Don't show progress indicator when we know for sure we are not doing a js/ts rename 2019-10-23 17:57:40 -07:00
Matt Bierner
46d2224d8b Remove gating for TS versions < 2.4
Telemetry shows that these old TS versions have very low usage (in the tens across the many, many js/ts users). Given this, it now makes sense to remove the extra gating/checks required to support these old versions
2019-10-23 17:57:40 -07:00
Matt Bierner
0d0a574164 Normalizing names 2019-10-23 17:57:40 -07:00
Matt Bierner
45cd966a16 Use VS Code's fs instead of node 2019-10-23 17:57:40 -07:00
Matt Bierner
611fd60cd4 Make sure we update js/ts diagnostics when the visible editors change
Changes in one document may cause errors in other, not yet visible docs. Make sure we update the diagnostics when another file becomes visible to handle that case
2019-10-23 17:57:40 -07:00
Matt Bierner
587061a8fc ?. operator 2019-10-22 14:57:25 -07:00
Matt Bierner
07f1939ba2 Log where the typescript version is coming from 2019-10-22 11:25:14 -07:00
Matt Bierner
802d09f5f2 Use double quotes for user facing strings 2019-10-22 11:25:14 -07:00
Matt Bierner
de0cd31fa5 Rename versionString to displayName to make it clearer how this version is used 2019-10-22 11:25:14 -07:00
Matt Bierner
96a5151f7a Workaround for TS not being able to handle interactive playground resource with query parameters in uri
Fixes #81059
Fixes #82419

The interactive playground generates uris that have query paramters. This causes the TS Server to crash. The workaround here is make sure the file paths we give to TS Server don't have query paramters but the ones we work with locally do
2019-10-21 18:26:40 -07:00
Matt Bierner
ed53e86205 Make sure the syntax and semantic servers don't get out of sync
If one server fails for a command but the other does not, we are in an inconsistent state. Treat this as a fatal error
2019-10-21 18:26:40 -07:00
Matt Bierner
ab4e86df8d Fix time range for restart detection 2019-10-21 18:26:40 -07:00