Commit graph

24973 commits

Author SHA1 Message Date
Anders Hejlsberg
df100957b6 Accept new baselines 2018-07-29 15:14:44 -07:00
Anders Hejlsberg
8eb24db0c0 Homomorphic mapped type support for arrays and tuples 2018-07-29 15:14:01 -07: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
Sheetal Nandi
ab1b899cea Use isArray instead of isProjectsArray 2018-07-27 12:50:32 -07:00
Sheetal Nandi
399f497a32 Unify getProjects for compileOnSave and others like (navigation etc) 2018-07-27 12:47: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
Sheetal Nandi
94033f212d If project name is specified in compile on save, do not update all projects to just use that project 2018-07-27 11:21:14 -07:00
Klaus Meinhardt
2ea3123dbd allow BindingPattern in BindingRestElement
Part of #6275
2018-07-27 15:58:02 +02: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
Klaus Meinhardt
b057bf9f01 expose escapeLeadingUnderscores
Fixes: #25343
2018-07-26 14:20:48 +02:00
Klaus Meinhardt
c4f9a8cd6e accept baselines 2018-07-26 13:39:22 +02:00
Klaus Meinhardt
95f061ea0a minor cleanup in factory.ts
* remove deprecated signatures
* deprecate some legacy signature
* remove 2 useless conditions
2018-07-26 13:19:45 +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
Mohamed Hegazy
3310ad29b2 Accept baselines 2018-07-25 15:32:51 -07:00
Mohamed Hegazy
7799ae18b4 Port generated lib files 2018-07-25 15:32:42 -07: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