Anders Hejlsberg
6200aa0206
Add test
2018-09-14 14:07:22 -07:00
Andy
2b888c30f9
Consistently pass indent to 'parseTagComments' ( #27055 )
...
* Consistently pass indent to 'parseTagComments'
* Update baselines
2018-09-12 17:44:06 -07:00
Wesley Wigham
d3463ce356
Avoid circularly resolving names when looking up type members using resolveName ( #26924 )
...
* Avoid circularly resolving names when looking up type members using resolveName
* Add comment
2018-09-12 17:16:34 -07:00
Nathan Shively-Sanders
614423b287
Fix this-type in prototype-assigned object literals ( #26925 )
...
* Fix this-type in prototype-assigned object literals
Some cases were missing from tryGetThisTypeAt.
Fixes #26831
* Lookup this in JS only for @constructor+prototype assignments
2018-09-12 16:21:17 -07:00
Nathan Shively-Sanders
2f8a646f8e
isExpandoFunctionDeclaration only checks values ( #27052 )
...
Previously it checked types too, which caused a crash because types
don't have valueDeclaration set. But expando functions can't export
types, only values.
2018-09-12 12:21:50 -07:00
Ryan Cavanaugh
5a26747428
Merge pull request #27004 from RyanCavanaugh/noJsNewModuleCompletions
...
Don't offer module completions in non-module JS files
2018-09-12 08:32:14 -07:00
Wesley Wigham
31374d21bf
Provide suggestions for common can-not-find-name errors ( #27034 )
2018-09-11 14:42:17 -07:00
Wesley Wigham
1c1379252e
Prefer elaborating on expressions which could be called to produce a correct type by suggesting such ( #27016 )
...
* Prefer elaborating on expressions which could be called to produce a correct type by suggesting such
* Pass relation through elaboration machinery
2018-09-11 14:11:31 -07:00
Daniel Rosenwasser
aa9230f313
Merge pull request #27020 from Kingwl/improve_accidentally_calling_type-assertion_expressions
...
improve Diagnostics for accidentally calling type-assertion expressions
2018-09-11 14:00:31 -07:00
王文璐
2cf2bbd5f7
improve test case and add related diagnostic
2018-09-11 16:20:38 +08:00
王文璐
6b2ea463b2
improve Diagnostics for accidentally calling type-assertion expressions
2018-09-11 14:35:01 +08:00
Wesley Wigham
e9c6d967f6
Add related span pointing at missing arguments ( #27013 )
2018-09-10 16:40:33 -07:00
Andy
24a5bdd1b1
Add 'fileToRename' property to RenameInfo ( #24702 )
...
* Add 'fileToRename' property to RenameInfo
* Update tests
* Support directory rename
2018-09-10 11:25:03 -07:00
Ryan Cavanaugh
95ba73e16b
Don't offer module completions in non-module JS files
2018-09-10 11:24:51 -07:00
Ron Buckton
af8e44ac85
Merge pull request #26568 from Microsoft/typesVersions
...
Adds support for "typesVersions" redirects
2018-09-07 15:40:50 -07:00
Ron Buckton
a255d9a163
Merge branch 'master' into typesVersions
2018-09-07 13:52:12 -07:00
Andy
cbde861af6
Improve use of SemanticMeaning in symbol display ( #26953 )
2018-09-07 12:23:23 -07:00
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
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
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
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
ed70d4887a
Merge pull request #25633 from Kingwl/strictParameter
...
add use strict and simple parameter check
2018-09-05 17:15:52 -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
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
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
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
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
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