Commit Graph

28909 Commits

Author SHA1 Message Date
Ryan Cavanaugh 5d65e86756 Merge pull request #23253 from Kingwl/definite-assignment-assertion-improve
improve parser and error message if definite assignment assertions in…
2018-09-05 11:49:13 -07:00
Ryan Cavanaugh 4975dc85b1 Merge pull request #25822 from Kingwl/rechabilityImprove
improve enum rechability check
2018-09-05 11:46:07 -07:00
Andy Hanson a8bf0f7dad Merge branch 'master' into tsconfig_canonicalpath 2018-09-05 11:45:59 -07:00
Andy 1eb3082387 Support completions inside JSDoc before EndOfFileToken (#25568) 2018-09-05 11:34:27 -07:00
Wesley Wigham 62d8b85f1d Allow literal initializers of readonly properties in declaration files (#26313)
* Allow literal initializers of readonly properties in declaration files

* Move some conditions a bit
2018-09-05 11:30:05 -07:00
Ron Buckton e726e4cfec PR Feedback 2018-09-05 11:23:39 -07:00
Andy bcb815b3ac Remove duplicate function createTextRange (#23346)
* Remove duplicate function createTextRange

* Always allow end=-1

* Put noAssert back, pending #23370

* Use getRangeUnion helper

* Update API (#24966)
2018-09-05 11:19:56 -07:00
Andy 06774962ed Properly handle JS enum symbols (#26893) 2018-09-05 11:19:32 -07:00
Nathan Shively-Sanders ff05082e45 Bind non-expando property assignments at top-level (#26908)
* Bind non-expando property assignments at toplevel

Previously, only property assignments with expando initialisers were
bound in top-level statements. Now, all property assignments are bound.

This requires a matching change in the checker to make sure that these
assignments remain context sensitive if their valueDeclaration is a
'real' declaration (ie a non assignment-declaration).

* Add baselines for new test
2018-09-05 10:53:43 -07:00
TypeScript Bot 6e318890fe Update user baselines (#26888) 2018-09-05 10:04:34 -07:00
Daniel Rosenwasser cd399fb49b Accepted baselines. 2018-09-04 19:26:00 -07:00
Daniel Rosenwasser c5c594f1e7 Try finding the first type with a call/construct signature when relating to unions. 2018-09-04 19:25:46 -07:00
Ron Buckton b006287cb1 Refactor and clean up sourcemap decoder 2018-09-04 17:50:06 -07:00
Wesley Wigham 4ac8976750 Always check index type validity for all types when an error node is present so we always issue an error (#26789)
* Always check index type validity for all types when an error node is present so we always issue an error

* Change type a bit
2018-09-04 16:00:28 -07:00
Wesley Wigham ca662419e8 Dont consider export specifiers visible in their local scope (#26884) 2018-09-04 16:00:10 -07:00
Wesley Wigham f1370ecd54 Allow special assignments to have a contextual type of their declared type if present (#26802)
* Allow special assignments to have a contextual type of their declared type if present

* Expand change to cover all js special assignments

* Remove extraneous line
2018-09-04 15:58:18 -07:00
Daniel Rosenwasser 289ae3cca6 Accepted baseleines. 2018-09-04 15:47:04 -07:00
Tim Schaub 262ea5b06e Skip asterisks after newline when parsing JSDoc types (#26528)
* Skip asterisks after newline when parsing JSDoc types

* Single boolean expression

* Test for parsing and printing multiline function signatures with *
2018-09-04 15:41:08 -07:00
Nathan Shively-Sanders 64ac5a53f4 Fixes for type parameter name resolution in JS (#26830)
* check for expando initializers in resolveEntityName

when resolving type parameters in a prototype property assignment
declaration. For example, this already works:

```js
/** @template T */
function f(x) { this.x = x }
/** @returns {T} */
f.protototype.m = function () { return this.x }
```

This now works too:

```js
/** @template T */
var f = function (x) { this.x = x }
/** @returns {T} */
f.prototype.m = function () { return this.x }
```

Fixes #26826

* Lookup type parameters on prototype-assignment methods

In the same way that they're looked up on prototype-property methods.

That is, this previously worked:

```js
/** @template T */
function f() { }
/** @param {T} p */
f.prototype.m = function () { }
```

And this now works too:

```js
/** @template T */
function f() { }
f.prototype = {
  /** @param {T} p */
  m() { }
}
```

Note that the baselines still have errors; I'll file a followup bug for
them.

* Look up types on property assignments too
2018-09-04 14:47:18 -07:00
TypeScript Bot 0ac3a0a937 Update user baselines (#26861) 2018-09-04 11:31:30 -07:00
Daniel Rosenwasser 3d812ef93a Added test. 2018-09-04 11:07:50 -07:00
Nathan Shively-Sanders 540e8b9eb0 Collect jsdoc tags for type parameters (#26824)
Before the template tag, there was no reason to do this, but now you can
add JSDoc for type parameters in Typescript.
2018-09-04 09:29:19 -07:00
Klaus Meinhardt 239a7b9a4f better condition for file include exhaustiveness check
As `files` always contains declaration files of external libraries, lib files and declaration files from typeRoots, the previous condition evaluated to false for probably all projects out there.
This changes the condition to compare array length after filtering out all declaration files.
That avoids unnecessary work of path normalization in the common case where everything is ok.
2018-09-04 13:35:57 +02:00
Minh Nguyen aaa723e2d2 Enable allowSyntheticDefaultImports if esModuleInterop is enabled
Fixes #26193.
2018-09-04 11:07:29 +01:00
christian 959dbbba28 Add newline to bottom of tsconfig files 2018-09-03 23:16:53 -04:00
christian c87ca2f1ab Fix diagnostic reporting for empty files in tsconfig 2018-09-03 22:57:26 -04:00
王文璐 eb7fbdc4eb update baseline 2018-09-03 16:37:34 +08:00
王文璐 8349396dd6 Merge branch 'master' into fix_lookup_regression_again_and_again 2018-09-03 16:24:50 +08:00
Klaus Meinhardt d519e3f21e hand over to LanguageServiceHost.readDirectory 2018-09-03 09:51:02 +02:00
Klaus Meinhardt 3806ee7406 Assert CompilerHost.readDiretory for projectReferences with include
Fixes: #26785
2018-09-02 21:42:38 +02:00
Anders Hejlsberg d9e0d6b07f Accept new baselines 2018-09-02 08:58:32 -07:00
Anders Hejlsberg 059fcc9aa9 Defer reduction of identical function types in unions and intersections 2018-09-02 08:58:00 -07:00
Matt McCutchen f2d26fd0bb Argument arity error should only consider signatures with correct type
argument arity.

Fixes #26835.
2018-09-01 19:48:47 -04:00
Sheetal Nandi 45101491c0 Merge pull request #26782 from Microsoft/reportFileChangeDetectedOnce
Report file change detected only once when save takes place multipletimes before timeout
2018-08-31 15:26:03 -07:00
Sheetal Nandi f1a179a314 Narrowing unknown by typeof object to object | null
Fixes #26327
2018-08-31 15:24:53 -07:00
Sheetal Nandi e41dbcdccd Support json module emit when module emit is commonjs, amd, es2015 or esnext
Fixes #25755 and #26020
2018-08-31 14:05:14 -07:00
Sheetal Nandi 9eb0c9a88f Use widened type (just like importing using module.exports = in js file)
Fixes #26429
2018-08-31 14:04:30 -07:00
Sheetal Nandi 50ccd91263 Baseline the require of json file in js file 2018-08-31 14:04:30 -07:00
Ryan Cavanaugh cbdfc01e25 Merge pull request #26794 from samlanning/fix-equalownproperties
Housekeeping: Fix equalOwnProperties
2018-08-31 13:58:25 -07:00
Ryan Cavanaugh 8f8e616f80 Merge pull request #26820 from RyanCavanaugh/resetParameterChanges
Reset parameter changes back to pre-fix state
2018-08-31 13:47:38 -07:00
Nathan Shively-Sanders e6a4e90cae Update baselines to fix build (#26822)
We started elaborating more errors in the 3 weeks since this PR was
opened.
2018-08-31 13:39:15 -07:00
Ryan Cavanaugh 183072b30e Revert #26762, #26726, and #26317 in preparation for a clean PR fixing all the issues. 2018-08-31 13:06:22 -07:00
csigs acc3502490 LEGO: Merge pull request 26816
LEGO: Merge pull request 26816
2018-08-31 09:11:09 -07:00
csigs 718c2cce9a LEGO: check in for master to temporary branch. 2018-08-31 16:10:42 +00:00
Benjamin Lichtman 6ddf75209a Merge pull request #26749 from uniqueiniquity/getWholeType
Use correct type for async refactoring diagnostics
2018-08-31 09:09:25 -07:00
Nathan Shively-Sanders c929e74310 Add [Constructor]Parameter types to lib.d.ts (#26243) 2018-08-31 07:46:16 -07:00
Nathan Shively-Sanders cc3d011333 Infer this parameters (#26800)
Previously we didn't. I can't remember why, probably because I
overlooked it in the initial PR.
2018-08-31 07:45:34 -07:00
王文璐 40470ad6bc fix lookup regression again and again 2018-08-31 16:45:25 +08:00
Anders Hejlsberg d293b679f6 Merge pull request #26790 from Microsoft/fixWeakObjectRelationCheck
Fix weak object relation check
2018-08-30 22:08:44 -07:00
Anders Hejlsberg f597e2e409 Accept new baselines 2018-08-30 17:33:57 -07:00