7102 Commits

Author SHA1 Message Date
Nathan Shively-Sanders
eed85737b8
Merge pull request #21271 from Microsoft/infer-keyof-to-any-not-empty
Inference of string literals to keyof creates an object with props of type `any`, not `{}`
2018-01-19 13:35:22 -08:00
Nathan Shively-Sanders
4632ed6dda
Merge pull request #21242 from Microsoft/fix-indexed-access-relation
Fix indexed access relation
2018-01-19 13:13:14 -08:00
Andy
0a90c67c07
Support testing definition range of a reference gruop (#21302) 2018-01-19 12:15:41 -08:00
Anders Hejlsberg
f6c79a631c Add regression test 2018-01-18 17:28:37 -08:00
Andrew Casey
ebbb3a4dc4
Merge pull request #21158 from amcasey/NewlineConsistency
Handle linebreaks consistently in code fixes and refactorings
2018-01-18 16:02:27 -08:00
Nathan Shively-Sanders
39fee67d8e
Merge pull request #21110 from jack-williams/strict-null-empty-destructuring
Fix #20873: Enforce strictNullChecks for RHS of empty destructuring assignment
2018-01-18 14:24:50 -08:00
Wesley Wigham
5fcde240e3
External test runner updates (#21276)
* Increase user test timeout to 10m because npm can be slow, remove parse5 because they added their own types, accept updated error msg for rxjs, acccept current chrome baseline and pin chrmoe version

* Suppress lint
2018-01-18 13:48:23 -08:00
Andy
b5ae9de7ba
Add grammar error for const { ...a: b } = {}; (#21267)
* Add grammar error for `const { ...a: b } = {};`

* Fix bug: bring in forEachChild change from #21268
2018-01-18 10:57:35 -08:00
Andy
9436b1cc0b
Fix formatter crash for const { ...a: b } = {};: forEachChild and emitBindingElement should handle ... before the propertyName (#21268) 2018-01-18 10:36:41 -08:00
Nathan Shively-Sanders
f0b4018017 Infer:string literal->keyof creates any props not {} 2018-01-18 08:44:57 -08:00
Andy
73922301bc
In formatter, get lineAction directly from applyRuleEdits (#21245) 2018-01-17 16:02:42 -08:00
Andrew Casey
095aa771f5
Merge pull request #21144 from amcasey/GH18274
Special case arrow functions with only parameter unused
2018-01-17 15:45:17 -08:00
Andrew Casey
3ca1cc406a Clean up TODOs for #18445 2018-01-17 15:29:41 -08:00
Wesley Wigham
99d6b0d308
Actually get the apparent type of intersection members when calculating intersection apparent types (#21133)
* Actually get the apparent type of intersection members when calculating intersection apparent types

* Add nonjsx variant

* Fix nit
2018-01-17 15:20:09 -08:00
Andrew Casey
db3f7c538e Update test baselines 2018-01-17 15:18:54 -08:00
Andrew Casey
5de6ac1a2f Simplify test cases 2018-01-17 15:06:54 -08:00
Andrew Casey
3b5689fa1f Add more test coverage for unusedParameterInLambda 2018-01-17 15:06:54 -08:00
Andy
ec37651308
Use packageId for suggestion to install @types/packageName (#21241) 2018-01-17 14:22:58 -08:00
Mohamed Hegazy
b0d7d5a7ef
Fix #21089: Do not infer from numeric index signature in Object.values and Object.entries (#21129)
* Fix https://github.com/Microsoft/TypeScript/issues/21089: Do not infer from numeric index signature in Object.values and Object.entries

* Update test
2018-01-17 14:16:11 -08:00
Nathan Shively-Sanders
485ec34e8e Test assignability of indexed access types 2018-01-17 13:22:31 -08:00
Ron Buckton
3c988e8f5a
Merge pull request #21215 from Microsoft/fix20461
Fixes var declaration shadowing in async functions
2018-01-17 13:08:18 -08:00
Benjamin Lichtman
8f6c516ef9
Merge pull request #21205 from uniqueiniquity/resolveTripleSlashReferencePaths
Fix Windows-style absolute paths in triple-slash directives
2018-01-17 12:31:46 -08:00
Andy
8ed885db3e
Add completions from the 'this' type (#21231)
* Add completions from the 'this' type

* Code review
2018-01-17 12:05:31 -08:00
Andy
c549bb5737
Fix bug: getNonNullableType before getting signatures of method (#21212) 2018-01-17 11:27:21 -08:00
Ron Buckton
e655446318 Add test for catch block without variable 2018-01-17 11:25:53 -08:00
Ron Buckton
2ba29d8d9d Support labeled statement 2018-01-17 11:24:28 -08:00
Ron Buckton
004f18ff0c
Merge pull request #21219 from Microsoft/fix19020
Fix destructuring assignment when assignment target is RHS
2018-01-17 11:22:30 -08:00
Andy
61fb845b87
Get packageId for relative import within a package (#21130)
* Get packageId for relative import within a package

* Code review

* Rename things and add comments

* Improve documentation

* Test for scoped packages
2018-01-17 11:14:03 -08:00
Ron Buckton
7a89c963b0
Merge pull request #21217 from Microsoft/fix20146
Symbol-named properties do not need to align with string indexer type
2018-01-16 17:01:27 -08:00
Ron Buckton
dcc5c32abf
Merge pull request #21216 from Microsoft/fix19103
Fix incorrect parenthesization logic for conditional expression branches
2018-01-16 17:00:55 -08:00
Ron Buckton
4aca0c8121 Fix destructuring assignment when assignment target is RHS 2018-01-16 16:58:56 -08:00
Ron Buckton
cd525fb6de
Merge pull request #21206 from Microsoft/fix20744
Fix temp variable emit for names used in nested classes
2018-01-16 16:00:24 -08:00
Ron Buckton
6c9827725c Fix symbol-named properties incorrectly requiring alignment with string indexer type 2018-01-16 15:45:10 -08:00
Ron Buckton
16b13fe449 Fix incorrect parenthesization logic for conditional expression branches 2018-01-16 15:17:04 -08:00
Ron Buckton
136c4d0dda Fixes var declaration shadowing in async functions 2018-01-16 15:02:23 -08:00
Anders Hejlsberg
64b3086f5e
Merge pull request #21157 from Microsoft/fixEmptyArrayInference
Fix empty array inference
2018-01-16 12:42:26 -08:00
Wesley Wigham
154c6141f1
Allow functions to be printed structurally in declaration emit even when they have symbols (#21203)
* Allow functions to be printed structurally in declaration emit even when they have symbols

* Implement CR feedback and fix lint
2018-01-16 12:37:15 -08:00
Ron Buckton
1785d87fda Fix temp variable emit for names used in nested classes 2018-01-16 12:33:55 -08:00
uniqueiniquity
5ea43db6ec Add test 2018-01-16 11:27:20 -08:00
Wesley Wigham
639b2781d7
Accept corrected baseline (#21201) 2018-01-16 11:13:53 -08:00
Wesley Wigham
76d9524866
Fully deprecate the symbol display builder, reimplement in terms of node builder (#18860)
* Remove SymbolWriter, give methods to EmitTextWriter

* Unification of writers is done-ish

* Make node builder support more flags

* Write out mixins like we used to

* Accept prototype-free baselines

* Use instantiated constraint when building mapped type nodes

* Accept better mapped type baselines

* Report inaccessible this in node builder

* Turns out there was a bug in our codefix, too

* Symbol display builder usage falling

* Replace signatureToString with a nodeBuilder solution

* Replace the last internal usages of the symbol writer

* Accept semicolon additions

* Accept updated symbol baseline output

* Start using node builder for some LS operations

* Remove those pesky trailing semicolons on signatures

* Get signature printing much closer to old output

* Parameter lists should not be indented by default, especially when single-line

* Signatures up to snuff

* Type quickinfo emit is up to snuff

* Start of symbol writer replacement, needs a bit more for full compat

* Slightly mor accurate to old behavior

* Replicate qualified name type argument output correctly

* Bring back the old symbol baselines

* Mostly identical to old symbol emit now

* Perfectly matches old behavior thus far

* Replace another usage of the symbol builder

* Another usage removed

* Another usage removed

* Remove final uses of symbol display builder

* Remove implementation and types for unused symbol display builder

* Cleanup in the checker

* monomorphize new emitter code

* Replace emitWithSuffix

* Push space character to interface with writer

* List emit

* Fix lack of usage of emitExpression

* writeList, not printList

* Remove listy writes and replace with new printer calls

* Move ListFormat into types.ts

* Remove most new XToString functions in favor of node builder functions

* Accept API breaks

* Add getSymbolDisplayBuilder polyfill

* Accept updated API baseline

* Move definition to make diff easier to read

* Reinternalize some things

* Remove trailign whitespace

* Reorder for zero diff

* Remove newline

* Make shim mor eperfectly imitate old behavior

* Style feedback

* Rename reset to clear to maintain backcompat with SymbolWriter

* Fix quickfix

* Keep EmitTextWriter internal

* Remove EmitTextWriter from public API

* Mimic default name declaration emit fix

* Fix tests broken by merge

* use isFunctionLike

* Cleanup, sync TypeFormat and NodeBuilder flags

* Reorder Node initialization so pos and end are first, so a TextRange hidden class is made first to reduce future polymorphism

* Use variable instead of ternary

* Write helper for emitNodeWithWriter

* Emitter cleanup

* Cleanup whitespace, comment

* Reuse printer

* Raise error if display parts writer uses rawWrite

* Hide writer parameter through different function instead of overload, rename function in emitter

* Make less printer

* fix lint
2018-01-16 09:53:42 -08:00
Alan Agius
bcb9fd7825 fix: formatting for chaining methods (#21027)
Closes: #20996
2018-01-16 08:53:43 -08:00
Wesley Wigham
2e1738bffa
Enable substitution for object literal shorthand property assignments in the system transform (#21106) 2018-01-12 18:24:41 -08:00
Wesley Wigham
64305edbce
Skip outer expressions when checking for super keyword in binder (#20164)
* Skip outter expressions when checking for super keyword in binder

* use TransformFlags to optimize and correct super call transforms

* Lint
2018-01-12 18:24:02 -08:00
Nathan Shively-Sanders
6f28b0ac25
Merge pull request #21156 from Microsoft/fix-diff-omit
Fix Diff and Omit
2018-01-12 16:10:37 -08:00
Nathan Shively-Sanders
d74820d519 Remove mapped types to never from intersections
when transforming an indexed access type in order to get its constraint.
2018-01-12 14:43:31 -08:00
Andy
b8acf8d0c4 Handle jsconfig.json in fourslash tests (#16484) 2018-01-12 14:25:33 -08:00
Anders Hejlsberg
13bf022ef6 Add regression tests 2018-01-11 16:45:44 -08:00
Nathan Shively-Sanders
baf31ec52e Test Diff and Omit 2018-01-11 16:30:05 -08:00
Andy
269867f5e8
Fix bug: get merged symbol of symbol.parent before checking against module symbol (#21147) 2018-01-11 13:42:08 -08:00