Anders Hejlsberg
99ab53edcd
Make flow nodes more monomorphic
2019-08-09 10:15:47 +02:00
Anders Hejlsberg
df02ad6e59
Reflect control flow effects of calls to never-returning functions
2019-08-08 10:48:45 +02:00
Anders Hejlsberg
1c55e5de69
Address code review feedback
2019-08-05 08:27:54 +02:00
Anders Hejlsberg
1f5bb970d9
Remove unused code
2019-08-03 08:28:53 -07:00
Anders Hejlsberg
77f2a412e1
Support 'asserts' type predicates in control flow analysis
2019-08-02 17:57:26 -07:00
Anders Hejlsberg
e89acb6358
Reflect effects of assertion calls in control flow analysis
2019-07-31 16:30:54 -07:00
Anders Hejlsberg and GitHub
4cc6618fc2
Merge pull request #32558 from microsoft/fix32247
...
Infer between closely matching types in unions and intersections
2019-07-29 11:34:14 -07:00
Wesley Wigham and GitHub
b963e1a2a7
Update LKG ( #32578 )
...
* Update LKG
* Add @types/node version bump
* Small paatches/casts to be compatible with latest node
* Accept API baseline update
* Make internal NodeBuffer compatable with latest Buffer
* Why do we even have an internal buffer type
* Sync up internal buffer type better
* Fix lint
* Readd mroe missing Buffer methods
2019-07-29 10:33:43 -07:00
Anders Hejlsberg
58ff76abf6
Properly instantiate contextual type for object literal methods
2019-07-28 09:01:11 -07:00
Anders Hejlsberg
a9e0a7766e
Record full inference status in visitation cache
2019-07-27 08:50:26 -07:00
Andrew Branch and GitHub
3d09010dc8
Intersect 'this' types in union signatures ( #32538 )
...
* Intersect this types in union signatures
* Actually update baselines
2019-07-26 14:56:03 -07:00
Wesley Wigham and GitHub
2a4930f4ec
Bind a jsdoc enum as SymbolFlags.TypeAlias and not SymbolFlags.Enum ( #32520 )
...
* Bind a jsdoc enum as SymbolFlags.TypeAlias and not SymbolFlags.Enum
* Actually include an @enum tag as a declaration
* Add enum tag refs into a couple more syntax kind lists
* accept symbol baseline update
2019-07-26 13:57:22 -07:00
Anders Hejlsberg
bb87332e73
Add more comments
2019-07-26 13:12:44 -07:00
Anders Hejlsberg
00f41e5693
Less aggressive reduction of intersection types
2019-07-26 11:03:31 -07:00
Anders Hejlsberg
4c76bae888
Don't exclude non-anonymous object types in identity checks
2019-07-25 14:03:17 -07:00
Nathan Shively-Sanders and GitHub
772bee5e84
Property assignment uses parent type annotation ( #32553 )
...
* Property assignment uses parent type annotation
First draft, will write full explanation later.
Also makes sure that jsdoc is ignored in TS. It was not before.
* Update baselines
2019-07-25 10:23:03 -07:00
Anders Hejlsberg
dc415c5c5e
Infer between closely matching types in unions and intersections
2019-07-25 09:56:36 -07:00
Anders Hejlsberg
742cabaac4
Merge branch 'master' into fix32349
2019-07-23 10:31:46 -07:00
Anders Hejlsberg and GitHub
9ec71c3f97
Merge pull request #32460 from microsoft/fix32434
...
Improve type inference for types like 'T | Promise<T>'
2019-07-23 10:28:02 -07:00
Anders Hejlsberg
3206f5fb94
When inferring from XXX to T | XXX make no inferece for T (instead of never)
2019-07-23 06:38:49 -07:00
Ron Buckton and GitHub
d982014d73
Update __awaiter to be more spec compliant ( #32462 )
...
* Update __awaiter to be more spec compliant
* Add awaiter evaluation test
2019-07-22 17:23:35 -07:00
Ron Buckton and GitHub
47e3fedb5d
Fix object spread runtime semantics ( #32514 )
2019-07-22 16:46:09 -07:00
Anders Hejlsberg
b822def6ef
Minor cleanup plus more comments
2019-07-22 11:07:33 -07:00
Anders Hejlsberg
203fd9ff9e
Combine multiple separate code paths
2019-07-22 08:01:22 -07:00
Anders Hejlsberg
9b2d9cdffc
Fix issues uncovered by DT tests
2019-07-21 14:07:45 -07:00
Anders Hejlsberg
2541a5d0ff
Always infer between distinct type references to same target
2019-07-20 14:33:35 -07:00
Anders Hejlsberg
6b29060111
Merge branch 'master' into fix32434
2019-07-20 12:09:03 -07:00
Anders Hejlsberg
2450c1947f
Make lower priority inferences when inference process is blocked
2019-07-20 09:57:10 -07:00
Orta Therox
282e72419b
Set the ModuleKind value for ESNext to be 99 so it doesn't change between releases (and yet another module system?!)
2019-07-17 22:56:28 -04:00
Anders Hejlsberg
8f020559fb
Treat Array<T> and ReadonlyArray<T> as synonymous in inference
2019-07-17 18:49:56 -07:00
Orta Therox
5f6cdf17ea
Set the ScriptTarget of ESNext to be 99 so it doesn't change between releases
2019-07-17 18:27:29 -04:00
Orta Therox
a24e4b0d2c
Undo accidental push to master
2019-07-17 18:24:35 -04:00
Orta Therox
7f071d2a1b
Set the ScriptTarget of ESNext to be 99 so it doesn't change between releases
2019-07-17 18:21:53 -04:00
Anders Hejlsberg
c6b77fa5df
Fix lint error
2019-07-17 15:15:56 -07:00
Anders Hejlsberg
5a45d5aed8
Reduce union and intersection targets when source is singleton type
2019-07-17 14:53:29 -07:00
Andrew Branch and GitHub
387c917765
Revert "Proposal: If there’s a package.json, only auto-import things in it, more or less ( #31893 )" ( #32448 )
...
This reverts commit 60a1b1dc1a .
2019-07-17 14:02:18 -07:00
Milosz Piechocki and Wesley Wigham
8f2ed0ded8
addTypeToIntersection performance improvement ( #32388 )
2019-07-17 13:22:53 -07:00
Andrew Branch and GitHub
2466109577
Fix build/lint due to differences in master and LKG ( #32450 )
2019-07-17 13:07:10 -07:00
Ron Buckton and GitHub
049618f7da
Get contextual type of yield from contextual signature of containing function ( #32433 )
...
* Get contextual type of yield from contextual signature of containing function
* Add missing baseline
2019-07-16 17:16:21 -07:00
Anders Hejlsberg
d8b191a671
Improve algorithm for inferring to union types
2019-07-16 16:29:52 -07:00
Sheetal Nandi
607c9c5e26
Fix missing tokenToString for the backtick
...
Fixes #32073
2019-07-16 13:30:38 -07:00
Nathan Shively-Sanders and GitHub
1de76cd605
Control flow for element access expressions ( #31478 )
...
* Control flow for element access expressions
Draft version, just want to see how performance is
* Add baselines
* Fix cast lint
* Cleanup to share code path
* Fix errant diffs
2019-07-16 10:10:58 -07:00
Andrew Branch and GitHub
7cdfbceb43
Improve accuracy of remove unnecessary await fix ( #32384 )
2019-07-15 15:17:32 -07:00
Ron Buckton and GitHub
17762c480d
Fall back to (Async)IterableIterator if (Async)Generator not found ( #32303 )
2019-07-15 13:41:17 -07:00
Anders Hejlsberg and GitHub
303297aa27
Merge pull request #32362 from microsoft/fix32230
...
Fix type parameter inference cache invalidation logic
2019-07-12 16:57:34 -07:00
Daniel Rosenwasser and GitHub
851156d73d
Add kind to JsxAttributes ( #32369 )
...
Add kind to JsxAttributes
2019-07-12 14:40:30 -07:00
Anders Hejlsberg
e0599fd19c
Instantiate contextual type for return type in getReturnTypeFromBody
2019-07-12 11:11:36 -10:00
Andrew Branch and GitHub
4f3412153a
Parse quoted constructors as constructors, not methods ( #31949 )
...
* Parse quoted constructors as constructors, not methods
* Update baselines
* Fix disambiguation between quoted constructor and property named constructor
* Clean up parsing a bit
* Support escapes in constructor name
* Update baselines
2019-07-12 14:01:57 -07:00
Wesley Wigham and GitHub
37f2e5972f
Cache & widen assigned js prototype type ( #32381 )
2019-07-12 12:49:34 -07:00
Andrew Branch and GitHub
89badcc9d5
Add 'Remove unnecessary await' suggestion and fix ( #32363 )
...
* Add remove unnecessary await fix
* Add test for removing unnecessary parens after await is gone
* Fix handling of numbers in property access expressions
* Don’t offer suggestion when awaited type is any/unknown
* Fix random other test
* Fix new expression edge cases
* Only remove parens for identifiers and call expressions
2019-07-12 11:03:20 -07:00