Ryan Cavanaugh
a416826b64
Apply safelist exclusions even when include is not specified; recompute project contexts when installer reqs finish
2017-11-16 12:52:30 -08:00
Charles Pierce
1da35d9dca
Treat exhaustive switch as last statement in function #18882 ( #20063 )
2017-11-16 12:17:26 -08:00
Andy
478b404f42
Detect re-exports from "export *" in completions ( #20043 )
2017-11-16 11:15:14 -08:00
Andy
94581c1946
Strip "/index" from import fix module specifiers ( #19962 )
...
* Strip "/index" from import fix module specifiers
* Require "node" module resolution
* More tests
2017-11-16 11:12:34 -08:00
Nathan Shively-Sanders
2263a1e73b
Merge pull request #20071 from Microsoft/error-on-excess-spread-arguments
...
Error on excess spread arguments
2017-11-16 11:00:24 -08:00
Nathan Shively-Sanders
6a08820fe7
Improve spread arity mismatch error messages
...
Thanks @weswigham for the improved wording.
2017-11-16 10:28:17 -08:00
Anders Hejlsberg
b6f96052d8
Merge pull request #19976 from Microsoft/optimizeParser
...
Optimize parsing
2017-11-16 10:19:10 -08:00
Nathan Shively-Sanders
8657dc10a7
Error on excess spread arguments
...
Make the *technically* correct construction illegal:
```ts
declare function f(n: number): void;
declare var ns: number[];
f(1, ...ns);
```
This call only makes sense if `ns = []`, but in that case, why pass
`ns` at all? Allowing this call masks other errors when functions are
refactored to have fewer parameters, or to stop using rest parameters:
```ts
declare function old(...ns: number[]): void;
declare function new(ns: number | number[]): void;
old(1, ...ns); // Fine!
new(1, ...ns); // Should error!
```
This change the error for excess spread arguments to be more
understandable:
"Expected 3 arguments, but got least 4".
Previously the error would have been
"Expected 3 argument, but got at least 3", which is, again, technically
correct, but not understandable.
2017-11-16 09:31:50 -08:00
Andy
f352e46892
Revert "Change "isThisless" predicates to "mayReferenceThis" predicates ( #20036 )" ( #20054 )
...
This reverts commit 3d05952719 .
2017-11-16 06:47:12 -08:00
Ron Buckton
ccba1280dc
Use correct base primitive type
2017-11-15 17:31:52 -08:00
Ron Buckton
0b24f02aae
Use correct base primitive type
2017-11-15 17:12:05 -08:00
Ron Buckton
86b0759b09
PR feedback
2017-11-15 16:47:01 -08:00
Ron Buckton
a21a129abb
Merge branch 'master' into dynamicNames
2017-11-15 15:24:05 -08:00
csigs
21f6b16156
LEGO: check in for master to temporary branch.
2017-11-15 23:11:36 +00:00
Andy
4b96edf72f
Treat ... in jsdoc type as creating a synthetic rest parameter -- not as an array type ( #19483 )
...
* Treat `...` in jsdoc type as creating a synthetic rest parameter -- not as an array type
* Change type parsing so `...T[]` parses as `...(T[])` and not `(...T)[]`
* Replace the last parameter with ...args, and make access to it potentially undefined
* Code review
2017-11-15 13:04:08 -08:00
Andy
3d05952719
Change "isThisless" predicates to "mayReferenceThis" predicates ( #20036 )
...
* Change "isThisless" predicates to "mayReferenceThis" predicates
* Fix name
* Code review
2017-11-15 12:43:16 -08:00
Andy
d49491b3a7
smartIndenter: Don't indent after control-flow ending statements like break; ( #20016 )
...
* smartIndenter: Don't indent after control-flow ending statements like `break;`
* Fix bug
* Fix bug for function after `return`
2017-11-15 11:08:51 -08:00
csigs
b8c34a5b62
LEGO: check in for master to temporary branch.
2017-11-15 17:10:09 +00:00
csigs
fe75696e9d
LEGO: check in for master to temporary branch.
2017-11-15 11:10:25 +00:00
Nathan Shively-Sanders
8a7b8445de
Merge pull request #19655 from Microsoft/instantiate-this-in-type-parameter-constraints
...
Instantiate this when used only in type parameter constraints
2017-11-14 16:22:37 -08:00
Nathan Shively-Sanders
0c77b776ce
Rename and inline functions
2017-11-14 16:06:48 -08:00
Andy
592ee00906
Have CompletionEntryDetails source use a relative path ( #19917 )
...
* Have CompletionEntryDetails source use a relative path
* Use getCanonicalFileName from services Instead of creating a new one
2017-11-14 14:26:49 -08:00
Wesley Wigham
9c51a8534e
Synchronize getEntityNameForDecoratorMetadata and serializeUnionOrIntersectionType ( #19879 )
2017-11-14 14:20:18 -08:00
Anders Hejlsberg
ee851784a6
Remove dead code that didn't get removed in #19979
2017-11-14 14:03:56 -08:00
Anders Hejlsberg
0bda420a73
Merge branch 'master' into optimizeParser
2017-11-14 10:09:31 -08:00
meyer
36ce7eac5a
Update JSX intrinsic element test to match babel’s ( #19946 )
...
* Update JSX intrinsic element test to match babel’s
* Update baseline
* Move regex out of isIntrinsicJsxName
* Switch to non-regex intrinsic name test
2017-11-14 09:40:32 -08:00
Anders Hejlsberg
dbeb68274f
Merge branch 'master' into optimizeParser
...
# Conflicts:
# src/compiler/parser.ts
2017-11-14 09:22:18 -08:00
csigs
96dcf398bf
LEGO: check in for master to temporary branch.
2017-11-14 17:10:10 +00:00
Andy
7e8851e65b
Always require '=' before parsing an initializer ( #19979 )
...
* Always require '=' before parsing an initializer
* Fix fourslash tests
2017-11-14 07:15:59 -08:00
csigs
492cd15e61
LEGO: check in for master to temporary branch.
2017-11-14 05:10:09 +00:00
Wesley Wigham
7d93434f2c
Fix crash on non-dts-require ( #19980 )
2017-11-13 16:41:29 -08:00
Wesley Wigham
3d602936e0
Handle binding elements while looking for invalid await and yield ( #19972 )
...
* Handle omitting a node in addCustomPrologue, account for binding elemnts in isInParameterInitializerBeforeContainingFunction
* Use append
* Fix lint
2017-11-13 16:40:08 -08:00
Ron Buckton
26ef7e5533
Merge pull request #19991 from Microsoft/fix-bom
...
Use UTF8 BOM in emit
2017-11-13 16:38:22 -08:00
Ron Buckton
2f941f33e2
Make BOM a constant
2017-11-13 16:36:13 -08:00
Nathan Shively-Sanders
5d5da4c1b7
Merge pull request #18925 from Microsoft/fix-spread-contextually-typed-by-binding-pattern
...
Fix object spread that is contextually typed by a binding pattern
2017-11-13 16:06:19 -08:00
Wesley Wigham
b3d3b781ab
Treat {} in T = {} as any in JS files ( #19977 )
2017-11-13 15:39:08 -08:00
Anders Hejlsberg
969f06462d
Improve lookahead for arrow functions to reduce speculative parsing
2017-11-13 15:12:46 -08:00
Ron Buckton
ce29b4c36d
Use UTF8 BOM in emit
2017-11-13 14:38:14 -08:00
Ron Buckton
804c7d3690
Merge branch 'master' into dynamicNames
2017-11-13 13:24:20 -08:00
Andy
9d8a854ea2
Revert "Break out of speculative parsing on bad parameter initializer ( #19158 )" ( #19975 )
...
This reverts commit e7df83263d .
2017-11-13 13:22:09 -08:00
Ron Buckton
ae11ae55c5
Fix getReturnTypeFromBody widening
2017-11-13 13:19:49 -08:00
Nathan Shively-Sanders
80d1a42179
Merge branch 'master' into instantiate-this-in-type-parameter-constraints
2017-11-13 13:13:38 -08:00
Nathan Shively-Sanders
39fd0bf2d1
Merge branch 'master' into fix-spread-contextually-typed-by-binding-pattern
2017-11-13 13:11:05 -08:00
Benjamin Lichtman
6b90119370
Merge pull request #19968 from uniqueiniquity/jsxFragmentFix
...
Check children of JSXFragment
2017-11-13 13:10:59 -08:00
Wilson Hobbs
c2f0c580db
add types for escape and unescape methods #18813 ( #19015 )
...
* add types for escape and unescape methods #18813
although the issue is marked working as expected, it is important to mention that most major browsers maintain support for escape and unescape, and some javascript codebases moving to typescript may have escape and unescape in them. They are valid JavaScript, and thus they should be included in the global definition.
* add escape and unescape types to lib in tests
* update tests to turn CI green
2017-11-13 10:37:54 -08:00
uniqueiniquity
52e8e47cfb
Extract JSXChildren checking
2017-11-13 10:17:35 -08:00
Anders Hejlsberg
3411318e6b
Use TokenFlags.PrecedingJSDocComment to guide JSDoc comment processing
2017-11-13 09:51:56 -08:00
Andy
e7df83263d
Break out of speculative parsing on bad parameter initializer ( #19158 )
...
* Break out of speculative parsing on bad parameter initializer
* Remove uses of 'finally'
* give up -> stop
* Do without exceptions
* Remove `resetAfterSpeculation`
* Use Fail and FailList objects
* Remove `inSpeculation` parameter to parseDelimitedList
* Don't use `createNodeArray`, it's not always in scope
* Move Fail and FailList inside initializeState
* More code review
* More code review
2017-11-13 09:18:36 -08:00
csigs
74fe5c5b74
LEGO: check in for master to temporary branch.
2017-11-13 17:10:16 +00:00
Nathan Shively-Sanders
7771d0c1fc
Merge pull request #19934 from Microsoft/add-starter-kit-to-user-tests
...
Add starter kit to user tests
2017-11-13 08:54:52 -08:00