Commit Graph

18926 Commits

Author SHA1 Message Date
Andy
387fc205d0 Ensure that emitter calls callbacks for empty blocks (#18547) (#18550)
* Ensure that emitter calls callbacks for empty blocks (#18547)

* Fix action description
2017-09-18 11:17:06 -07:00
Andrew Casey
839145cd79 Merge pull request #18517 from amcasey/RequestCountDecr25
Only decrement activeRequestCount on SetTypings responses
2017-09-18 11:00:55 -07:00
Andrew Casey
6ad8adcdfe Drop Debug.fail
...from `release-2.5`.  I'm not 100% confident it won't be hit and we'll
recover if we do.  It's still in master, so dogfooding should flush out
any remaining issues before 2.6.
2017-09-15 15:34:24 -07:00
Andrew Casey
ebee7c62be Only decrement activeRequestCount on SetTypings responses
InvalidateCache responses are triggered by file watchers, rather than by
requests.
2017-09-15 15:32:10 -07:00
Andy
9639b52fcd Fixes to emit / format for codeFix (#18486) 2017-09-14 14:57:03 -07:00
Nathan Shively-Sanders
b62d5f6696 Use createMissingNode for sentinel node 2017-09-14 13:05:56 -07:00
Nathan Shively-Sanders
1cffd5f8aa Add missed baselines 2017-09-14 13:05:30 -07:00
Nathan Shively-Sanders
86d5311feb Don't parse param init when = is required but missing
Makes another test case pass that was taking exponential time to parse,
because now it notices that the = is not present and doesn't even try to
parse the initialiser expression.
2017-09-14 13:05:03 -07:00
Nathan Shively-Sanders
3a25650f1d Fail spec parsing lambdas on parameter missing a =
Fail speculative parsing of arrow function expressions whenever it has a
parameter with an initialiser that is missing '='. Ordinarily this is
allowed for better error recovery in the language service, but for
speculative parsing, the errors can compound. When the initialiser is an
error, and when the '=>' is missing (which is also allowed), what is
putatively an arrow function may actually be something else.

For example, `(a / 8) + function ()
{ }` is currently parsed as if someone had intended to write

`(a = /8)+function()/) => { }` but they forgot the `=` of the
initialiser, the `=>` of the lambda, forgot to close the regular
expression, and mistakenly inserted a newline right after the regular
expression.
2017-09-14 13:04:57 -07:00
Andy
39ecfc0db2 When loading a module from node_modules, get packageId even in the loadModuleFromFile case (#18185) (#18326)
* When loading a module from node_modules, get packageId even in the `loadModuleFromFile` case

* Support packageId for <reference types> too
2017-09-14 11:51:32 -07:00
Andrew Casey
14c860b9cb Don't get typings for projects with disabled language services (#18324) 2017-09-14 11:51:23 -07:00
Andrew Casey
cab65ba4cb Limit the number of unanswered Typings Installer requests (#18321)
* Document ThrottledOperations.schedule

* Limit the number of unanswered typings installer requests

If we send them all at once, we (apparently) hit a buffer limit in the
node IPC channel and both TS Server and the typings installer become
unresponsive.

* Fix lint issues

* Add explanatory comment
2017-09-14 11:51:10 -07:00
Andy
74a7588f4d extractMethod: Don't try to extract an ExpressionStatement consisting of a single token (#18450) (#18473)
* extractMethod: Don't try to extract an ExpressionStatement consisting of a single token

* Move to unit test
2017-09-14 11:35:38 -07:00
Mohamed Hegazy
a2c56e0f9d Update LKG 2017-09-09 22:27:47 -07:00
Andy
b1e9446ee0 extractMethod: Don't try to extract a single token (#18090)
* extractMethod: Don't try to extract a single token

* Update tests
2017-09-09 22:24:55 -07:00
Mohamed Hegazy
1c7a29eeb3 Port fixes from master into release-2.5 (#18361)
* Test: parsing of two-line @typedef jsdoc

* Fix forEachChild's visit of JSDocTypedefTag

Also remove JSDocTypeLiteral.jsdocTypeTag, which made no sense since it
was only useful when storing information for its parent `@typedef` tag.

* Update baselines

* Inline variable to aid control flow

* Improved caching scheme for anonymous types

* Fix signature help

* Optimize caching of type literals

* Accept new baselines

* Fix linting errors

* Use canonicalized forms when comparing signatures

* Minor changes

* Document ThrottledOperations.schedule

* Limit the number of unanswered typings installer requests

If we send them all at once, we (apparently) hit a buffer limit in the
node IPC channel and both TS Server and the typings installer become
unresponsive.

* Fix lint issues

* Add explanatory comment
2017-09-09 12:54:30 -07:00
Mohamed Hegazy
c476a08188 Update LKG 2017-09-08 17:34:24 -07:00
Andy
9434a81b71 extractMethod: Support renameLocation (#18351) 2017-09-08 17:09:17 -07:00
Nathan Shively-Sanders
236eb1e0f8 Rename isStartOfType parameter used by isStartOfParameter 2017-09-08 09:00:47 -07:00
Nathan Shively-Sanders
7f639cc34b Test:disable lookahead in isStartOfParameter 2017-09-08 09:00:41 -07:00
Nathan Shively-Sanders
d3ce606fc4 Disable lookahead in isStartOfParameter/isStartOfType 2017-09-08 09:00:34 -07:00
Mohamed Hegazy
655145ca58 Update LKG 2017-09-07 16:48:33 -07:00
Mohamed Hegazy
8aaace0ac8 Update version 2017-09-07 16:23:31 -07:00
Andy
f5b9e30986 Ensure that emitter calls callbacks (#18284) (#18325)
* Ensure that emitter calls calbacks

* Move new parameter to end of parameters

* Fix for ConditionalExpression

* Make suggested changes to emitter

* Fix parameter ordering

* Respond to minor comments

* Remove potentially expensive assertion

* More emitter cleanup
2017-09-07 16:21:51 -07:00
Wesley Wigham
16a4997565 Fix 18224 (#18259) (#18292)
* Probably fix 18224

* Corrected test
2017-09-06 22:09:38 -07:00
Nathan Shively-Sanders
0ff8eeb308 Comment getTypeReferenceId and getRelationKey 2017-08-31 13:51:55 -07:00
Nathan Shively-Sanders
05477e4d00 Update baselines 2017-08-31 13:51:44 -07:00
Nathan Shively-Sanders
f3700f645d Test performance improvement:nested reference skip 2017-08-31 13:51:35 -07:00
Anders Hejlsberg
2510177593 Fix to use correct target type ID 2017-08-31 13:51:29 -07:00
Anders Hejlsberg
4925f2f05f Optimize relations for type references with unconstrained type arguments 2017-08-31 13:51:24 -07:00
Mohamed Hegazy
171c664fef Update LKG v2.5.2 2017-08-29 17:26:58 -07:00
Ryan Cavanaugh
20da1594fd Merge pull request #18127 from RyanCavanaugh/port18120_release25
Don't crash when a JS file appears in an inferred context
2017-08-29 14:54:14 -07:00
Ryan Cavanaugh
6425ea29c9 Don't crash when a JS file appears in an inferred context 2017-08-29 14:31:28 -07:00
Mohamed Hegazy
6ffe829e9d Update LKG 2017-08-29 13:19:51 -07:00
Mohamed Hegazy
15a0d3fef4 Update version 2017-08-29 13:17:33 -07:00
Mohamed Hegazy
2a2773fbb4 Update LKG 2017-08-25 15:36:13 -07:00
Ron Buckton
187a21cbac Fix crash in name resolution with custom transforms and emitDecoratorMetadata 2017-08-25 15:14:54 -07:00
Andy
62678cd736 Don't try to extract import to a method: simpler fix (#18054) 2017-08-25 15:12:21 -07:00
Andy
3644771ab6 Test for action description of code actions, and simplify description for extracting method to file (#18030) (#18044)
* Test for action description of code actions, and simplify description for extracting method to file

* Add unit test file missing from tsconfig.json (only affects gulp) and update tests

* Use the actual number

* Use "module scope" or "global scope" instead of "this file"
2017-08-25 14:11:52 -07:00
Wesley Wigham
a39ae1fab7 Fix crash when attempting to merge an import with a local declaration (#18032) (#18034)
* There should be no crash when attempting to merge an import with a local declaration

* Show symbol has actually merged within the module
2017-08-24 23:58:20 -07:00
Wesley Wigham
350c9f647b Call dynamic import transform on expression used by export equal statement (#18028) (#18033)
* Call dynamic import transform on expression used by export equal statement

* Use Debug.fail
2017-08-24 17:59:45 -07:00
Ron Buckton
0851f6909e Added additional test 2017-08-24 17:02:52 -07:00
Ron Buckton
01b7df6855 Switch to arrow for ts class wrapper IIFE 2017-08-24 17:02:44 -07:00
Ron Buckton
9bb1915851 PR feedback 2017-08-24 17:01:28 -07:00
Ron Buckton
ec8f5cfe3f Follow symbol through commonjs require for inferred class type 2017-08-24 17:01:21 -07:00
Ryan Cavanaugh
13eeb34e57 Ignore scripts for types packages (#17969) 2017-08-24 11:31:21 -07:00
Jan Melcher
d48ac07e14 Add test case for nested object spread / methods
See #16765.
2017-08-24 11:25:48 -07:00
Jan Melcher
09e7e88a19 Add missing visitNode call to object literal members
Object literal elements that are neither spread elements, nor property assignments would not have visitNode called on them. Therefore, the esnext transformer would not be called on them and their children.

Fixes #16765.
2017-08-24 11:25:33 -07:00
Ron Buckton
80601fccb5 Fix crash when exporting class without name 2017-08-24 11:07:30 -07:00
Ron Buckton
952e9cae70 Remove debug assertions due to invalid syntax in generators transform 2017-08-24 11:05:49 -07:00