Commit Graph

24557 Commits

Author SHA1 Message Date
Klaus Meinhardt
4dabd650ed createBinary: parenthesize ArrowFunction in RHS
Fixes: #25964
2018-07-30 19:22:30 +02:00
Mohamed Hegazy
0923771606 Merge pull request #26029 from tschaub/fix-25916
Remove trailing whitespace from JSDoc comments
2018-07-28 11:40:10 -07:00
Tim Schaub
960800d1fe Remove trailing whitespace from JSDoc comments 2018-07-28 10:36:10 -06:00
Nathan Shively-Sanders
25fb5419c0 Support the JSDoc @enum tag (#26021)
* Support the JSDoc @enum tag

`@enum` is used on a variable declaration with an object literal
initializer. It does a number of things:

1. The object literal has a closed set of properties, unlike other
object literals in Javascript.
2. The variable's name is resolvable as a type, but it just has the
declared type of the enum tag.
3. Each property's type must be assignable to the enum tag's declared type,
which can be any type.

For example,

```js
/** @enum {string} */
const Target = {
  START: "START",
  END: "END",
  MISTAKE: 0, // error 'number' is not assignable to 'string' -- see (3)
}

Target.THIS_IS_AN_ERROR; // See (1)
/** @type {Target} See (2) */
var target = Target.START;
```

* Fix lint, add new test case, update API baselines
2018-07-28 07:53:08 -07:00
Sheetal Nandi
a26aff30e1 Merge pull request #25835 from Microsoft/getCurrentProgramOrUndefined
Reflect getCurrentProgram as Program|undefined in the ResolutionHostCache
2018-07-27 23:06:34 -07:00
Andy
5e1872f0c0 getDocCommentTemplateAtPosition: Return result if in empty comment (#26026) 2018-07-27 17:34:16 -07:00
Andy
644ceab02f Document ObjectLiteralElementLike (#26024) 2018-07-27 17:33:42 -07:00
Andy
57d425169a createJavaScriptSignatureHelpItems: Use array helpers and simplify (#26025) 2018-07-27 17:33:17 -07:00
Mohamed Hegazy
78ad21d33b Update authors for release 3.0.1 2018-07-27 16:55:47 -07:00
Andy
d40d54984e Support deleting all unused type parameters in a list, and deleting @template tag (#25748)
* Support deleting all unused type parameters in a list, and deleting @template tag

* Support type parameter in 'infer'
2018-07-27 11:55:31 -07:00
Andy
3bfe91cdd8 navigationBar: Fix bug for shorthand ambient module (#25992) 2018-07-26 17:27:12 -07:00
Andy
af3f737451 Fix bug for isValidTrigger when contextToken is undefined (#25993) 2018-07-26 17:26:58 -07:00
Andy
0e5af11625 Fix bugs for go-to-definition on mapped type method (#25991) 2018-07-26 17:26:41 -07:00
Andy
998c911c49 Break createSignatureHelpItems into functions (#25948) 2018-07-26 17:26:29 -07:00
Andy
0227997fa5 Use import().T for import completions/fixes of pure types in JS files (#25852)
* Use `import().T` for import completions/fixes of pure types in JS files

* Don't call tryUseExistingNamespaceImport if position undefined
2018-07-26 16:16:57 -07:00
Wesley Wigham
d590d5bd0c Remove extraneous const, fixing #25714 (#25982) 2018-07-26 14:43:00 -07:00
Daniel Rosenwasser
6b60babeaf Merge pull request #25978 from Microsoft/capturedGlobalThis
Better error message for captured global 'this' in noImplicitThis
2018-07-26 13:20:05 -07:00
Wesley Wigham
d17efe69d1 Fix #25954 - Always retain export modifier if default modifier is present (#25974)
* Fix #25954 - Always retain export modifier if default modifier is present

* Also fix an issue with scope markers in ambient modules not affecting the modifiers required
2018-07-26 12:39:03 -07:00
Andy
673ae746da Simplify and inline getPropertySymbolsFromType (#25940)
* Simplify and inline getPropertySymbolsFromType

* Combine lambdas
2018-07-26 11:52:22 -07:00
Daniel Rosenwasser
36dac99db7 Accepted baselines. 2018-07-26 11:51:04 -07:00
Daniel Rosenwasser
64d01d8e8f Provide a better error on arrow functions that capture the global 'this'. 2018-07-26 11:51:04 -07:00
Mohamed Hegazy
3057be3a0b Merge pull request #25966 from ajafff/shorthandPropertyAssignment-initializer-symbol
correctly resolve Symbol of destructuring shorthand intializer
2018-07-26 09:32:39 -07:00
Mohamed Hegazy
3ff667e2c5 Merge pull request #25956 from fredrb/alias-jake-help-command
add help alias to jake --tasks in Jakefile.js
2018-07-26 09:30:29 -07:00
Klaus Meinhardt
d282c75e73 add quickinfo test 2018-07-26 18:09:51 +02:00
Andy
5e94cf626b Expand span of @typedef with properties to include the @typedef tag (#25950) 2018-07-26 08:56:24 -07:00
Klaus Meinhardt
b65bbfd42d correctly resolve Symbol of destructuring shorthand intializer
Fixes: #21046
2018-07-26 14:37:52 +02:00
Frederico Bittencourt
a9fca8f575 add help alias to jake --tasks in Jakefile.js 2018-07-26 00:41:36 -03:00
Sheetal Nandi
2b14bcbb56 Merge pull request #25949 from Microsoft/resolveJsonModuleError
When json module is not found, include enabling --resolveJsonModule might help.
2018-07-25 17:50:43 -07:00
Sheetal Nandi
d920efe3f9 Merge branch 'master' into resolveJsonModuleError 2018-07-25 17:32:22 -07:00
Andy
f12e9a8389 Minor refactor in goToTypeDefinition (#25951) 2018-07-25 17:10:06 -07:00
Andy
1e8a5bf2f1 signatureHelp: Factor out 'isSyntacticOwner' function (#25518) 2018-07-25 17:01:35 -07:00
Daniel Rosenwasser
49468e7eb6 Merge pull request #25541 from mattmccutchen/issue-25539
Improve the error message when asserting to a type that is not comparable to the original.
2018-07-25 16:54:00 -07:00
Sheetal Nandi
dfb5cbd373 When json module is not found, include enabling --resolveJsonModule might help.
Fixes #25722
2018-07-25 16:20:37 -07:00
Matt McCutchen
da64479a64 Improve the error message when asserting to a type that is not
comparable to the original.

Also improve the error message for implicit conversion of a symbol to a
string in a template literal, which previously shared the error message
with type assertions.

Fixes #25539.  Addresses #25870.
2018-07-25 19:13:10 -04:00
Anders Hejlsberg
7473772291 Merge pull request #25938 from Microsoft/fixRestTupleArityCheck
Fix rest tuple arity check
2018-07-25 14:40:57 -07:00
Andy
2e89dbd769 fourslash: Don't parse lib if 'nolib' is set (#23277) 2018-07-25 14:25:32 -07:00
Anders Hejlsberg
0758700f7d Accept new baselines 2018-07-25 12:43:10 -07:00
Anders Hejlsberg
1aa2b15f8c Add regression test 2018-07-25 12:42:47 -07:00
Anders Hejlsberg
5288c37010 Rest parameter with fixed size tuple should be same as regular parameters 2018-07-25 12:42:37 -07:00
Andy
7546fd03c6 Simplify getContainers (#23323) 2018-07-25 12:30:13 -07:00
Andy
bd600cfd50 Fix duplicate "this" completion (#25900) 2018-07-25 12:29:28 -07:00
Andy
d60f4988a6 In getPropertySymbolsFromContextualType, use union discriminant to filter types (#25914) 2018-07-25 11:53:20 -07:00
Nathan Shively-Sanders
9658b476c2 Fix inferFromUsage on index signatures (#25934)
* Fix inferFromUsage on index signatures

1. Check the argumentExpression to determine the index signature type.
Previously, the code mistakenly checked the type of the element access
itself, which never returned a good type.
2. If inference for the index signature type fails, substitute anyType.
Previously, the code would create a bad index signature with an
undefined type.
3. Add tests. Previously, there were no tests.

* Fixing (1) means that number index signatures are now created.
Previously, only string index signatures would be created.
* Fixing (2) means that index signatures will be inferred from single
usage like `return a[0]`. Previously, the refactoring would fail,
perhaps because of a check when stringifying the index signature (I
haven't tracked down why.)

* Update fourslash test with improved inference
2018-07-25 10:51:11 -07:00
Anders Hejlsberg
7b4d13c95c Merge pull request #25859 from Microsoft/optimizePrimitiveIntersections
Optimize creation of intersections of union types
2018-07-25 10:28:43 -07:00
Anders Hejlsberg
f9681e2327 Update comment 2018-07-25 07:10:44 -07:00
Anders Hejlsberg
dd4fd8c60e Merge pull request #25913 from Microsoft/fixCircularConstraintCheck
Fix circular constraint check
2018-07-25 06:46:51 -07:00
Anders Hejlsberg
ff6059abf6 Address CR feedback 2018-07-24 17:58:03 -07:00
Andy
e4d4b0ae4b Handle PropertyAssignment in getCommentOwnerInfo (#25911) 2018-07-24 17:43:46 -07:00
Mohamed Hegazy
fd2eb4918d Merge pull request #25604 from mprobst/fix-exported-var-comments
Retain synthetic comments on exports.
2018-07-24 17:41:44 -07:00
Wesley Wigham
7d44014c56 Fix typos 2018-07-24 16:37:07 -07:00