25048 Commits

Author SHA1 Message Date
Andy
b1430e5e2c
Avoid adding duplicate completion from contextual keyword (#26947) 2018-09-07 12:18:03 -07:00
Wesley Wigham
f8b6a8fc8d
Introduce literal freshness for literal enum member types (#26556)
* Introduce literal freshness for literal enum members, allow enum references in ambient const initializers

* Merge statements

* Add enum literal readonly property test case

* Accept better baselines post-merge
2018-09-07 12:09:07 -07:00
Daniel Rosenwasser
cf2f339a5c
Merge pull request #26895 from Microsoft/callableErrors
Find first callable/constructable type in union when appropriate
2018-09-07 00:06:11 -07:00
Andy
d31973b905
findAllReferences: Consistently use 'this' parameter as definition site (#26950) 2018-09-06 17:06:50 -07:00
Andy
c401d63c5f
findAllReferences: Fix declarationIsWriteAccess for PropertyAssignment in destructuring (#26949) 2018-09-06 15:24:07 -07:00
Andy
a0ebbfb8f0
Fix JSX completions after boolean property (#26943) 2018-09-06 14:15:12 -07:00
Sheetal Nandi
6fb0f6818a
Merge pull request #26944 from Microsoft/casingOfTypeReferenceDirectives
Lowercase type reference directives when determining to reuse program  structure (just like when we create new program)
2018-09-06 14:13:26 -07:00
Sheetal Nandi
88d5b04c70 Lowercase type reference directives when determining to reuse program structure (just like when we create new program) 2018-09-06 13:26:44 -07:00
Ryan Cavanaugh
8f654f0f1e
Merge pull request #21957 from jack-williams/typeof-in-switch
Fix #2214. Support narrowing with typeof in switch condition.
2018-09-06 10:46:13 -07:00
Andy
8c22770ea8
Improve 'isWriteAccess' for findAllReferences (#26889) 2018-09-06 10:44:32 -07:00
Sheetal Nandi
ddba6d8a70
Merge pull request #26825 from Microsoft/resolveJsonModuleEmit
Support json module emit when module emit is commonjs, amd, es2015 or esnext
2018-09-06 09:57:47 -07:00
Sheetal Nandi
8b30ff8393
Merge pull request #26817 from Microsoft/resolvingJsonModuleLikeJsExportsEqual
Use widened type and non fresh type when resolving json module
2018-09-06 09:49:53 -07:00
Mine Starks
7fe0f9da9b
Merge pull request #26793 from minestarks/parentDirFix
Fix incorrect path computation of typesMap.json
2018-09-06 08:59:43 -07:00
Jack Williams
3173cfee97 Update narrowing baseline 2018-09-06 09:45:22 +01:00
Jack Williams
911c59f47f Merge branch 'master' into typeof-in-switch 2018-09-06 09:33:01 +01:00
Wesley Wigham
d8f736d319
Change typeof narrowing to narrow selected union members (#25243)
* For typeof narrow all union members prior to filtering

* Revise narrowTypeByTypeof to both narrow unions and applicable union members

* Add repros from issue
2018-09-06 00:41:09 -07:00
Ryan Cavanaugh
c62920ac81
Merge pull request #26392 from mattmccutchen/declare-module-advice
Fixes to the advice for untyped module imports from unknown packages.
2018-09-05 22:02:51 -07:00
Ryan Cavanaugh
cfc6d353b2
Merge pull request #26589 from Microsoft/deduplicate_overloads
Remove unused overloads of 'deduplicate' and 'deduplicateSorted'
2018-09-05 17:43:52 -07:00
Ryan Cavanaugh
54f7666017
Merge pull request #26453 from ajafff/abstract-property-in-initializer
disallow abstract property access in property initializer
2018-09-05 17:43:21 -07:00
Ryan Cavanaugh
270ea77815
Merge pull request #26308 from ajafff/checkresolvedmodule
unittests/moduleResolution: actually assert in checkResolvedModule
2018-09-05 17:42:33 -07:00
Ryan Cavanaugh
ed70d4887a
Merge pull request #25633 from Kingwl/strictParameter
add use strict and simple parameter check
2018-09-05 17:15:52 -07:00
TypeScript Bot
ddedfd44f7 Update user baselines (#26903) 2018-09-05 15:22:39 -07:00
Daniel Rosenwasser
d0673762f1 Accepted baselines. 2018-09-05 15:12:23 -07:00
Daniel Rosenwasser
d989e10c49 Renamed test. 2018-09-05 15:11:48 -07:00
Wesley Wigham
0b1183a461
Allow isSymbolAccessible to paint object literal declarations as visible (#24668)
* Dont use resolveEntityName for computed property name symbol resolution - use checkExpression and resolvedSymbol instead

* Fix lint
2018-09-05 14:52:47 -07:00
Wesley Wigham
69c7e67c88
Check privateness when emittign readonly/const props (#26920) 2018-09-05 13:49:38 -07:00
Ryan Cavanaugh
1e2fb9f0ae
Merge pull request #26465 from rnathanday/master
include leading non-ASCII horizontal whitespace
2018-09-05 12:38:09 -07:00
Anders Hejlsberg
695aae7be8
Merge pull request #26848 from Microsoft/deferUnionIntersectionReduction
Defer union and intersection type reduction
2018-09-05 12:33:54 -07:00
Ryan Cavanaugh
f79e64561f
Merge pull request #26870 from ajafff/composite-files-check
better condition for file include exhaustiveness check
2018-09-05 12:32:56 -07:00
Ryan Cavanaugh
69f91b5ed8
Merge pull request #26837 from mattmccutchen/issue-26835
Argument arity error should only consider signatures with correct type argument arity.
2018-09-05 12:22:48 -07:00
Ryan Cavanaugh
4717ddb986
Merge pull request #26828 from Microsoft/narrowUnknownByObject
Narrowing unknown by typeof object to object | null
2018-09-05 12:16:24 -07:00
Ryan Cavanaugh
6465e9dcdd
Merge pull request #26292 from Kingwl/tupleIndexAccessCheck
check index access for fixed length tuple
2018-09-05 12:10:46 -07:00
Ryan Cavanaugh
c188864394
Merge pull request #26112 from rhys-vdw/22685-array-flat-fix
Fix issue with Array#flatMap callback return type
2018-09-05 11:55:42 -07:00
Ryan Cavanaugh
d265fbf7f7
Merge pull request #26192 from ajafff/createprogram-nochecker
createProgram: don't use TypeChecker
2018-09-05 11:49:57 -07:00
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
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
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
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