Commit Graph
13956 Commits
Author SHA1 Message Date
Alexander T 1b4dfbc7d6 Merge branch 'master' of https://github.com/Microsoft/TypeScript into feature/eslint 2019-07-29 18:39:29 +03:00
Alexander T 11ec6118fb @typescript-eslint/array-type 2019-07-29 18:39:11 +03:00
Andrew Branch 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 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
Nathan Shively-Sanders 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
Alexander 0059763d8f move eslint rules from eslint-plugin-microsoft-typescript to scripts/eslint 2019-07-24 13:31:17 +03:00
Anders Hejlsberg 742cabaac4 Merge branch 'master' into fix32349 2019-07-23 10:31:46 -07:00
Anders Hejlsberg 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
Alexander T a79f598269 Merge branch 'master' of https://github.com/Microsoft/TypeScript into feature/eslint 2019-07-23 13:10:04 +03:00
Ron Buckton 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 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
Alexander T 9c853f3015 remove tslint:* directive 2019-07-19 12:21:54 +03:00
Alexander T 36a6028d56 Merge branch 'master' of https://github.com/Microsoft/TypeScript into feature/eslint 2019-07-19 10:16:10 +03:00
Alexander T 8bf5ebc417 remove tslint, tslint:disable-next-line, update @typescript-eslint/* 2019-07-18 16:00:44 +03:00
Alexander T 68ae4382bd jsdoc/check-alignment 2019-07-18 15:06:56 +03:00
Alexander T 2c32308f35 no-null/no-null 2019-07-18 10:50:38 +03:00
Alexander T a8ee8fbe87 Merge branch 'master' of https://github.com/Microsoft/TypeScript into feature/eslint 2019-07-18 10:00:16 +03: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 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 8f2ed0ded8 addTypeToIntersection performance improvement (#32388) 2019-07-17 13:22:53 -07:00
Andrew Branch 2466109577 Fix build/lint due to differences in master and LKG (#32450) 2019-07-17 13:07:10 -07:00
Ron Buckton 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 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 7cdfbceb43 Improve accuracy of remove unnecessary await fix (#32384) 2019-07-15 15:17:32 -07:00
Ron Buckton 17762c480d Fall back to (Async)IterableIterator if (Async)Generator not found (#32303) 2019-07-15 13:41:17 -07:00
Alexander T 64baa804a8 Merge branch 'master' of https://github.com/Microsoft/TypeScript into feature/eslint 2019-07-15 18:35:34 +03:00
Anders Hejlsberg 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 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 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 37f2e5972f Cache & widen assigned js prototype type (#32381) 2019-07-12 12:49:34 -07:00
Andrew Branch 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
Andrew Branch 60a1b1dc1a Proposal: If there’s a package.json, only auto-import things in it, more or less (#31893)
* Move package.json related utils to utilities

* Add failing test

* Make first test pass

* Don’t filter when there’s no package.json, fix scoped package imports

* Use type acquisition as a heuristic for whether a JS project is using node core

* Make same fix in getCompletionDetails

* Fix re-exporting

* Change JS node core module heuristic to same-file utilization

* Remove unused method

* Remove other unused method

* Remove unused triple-slash ref

* Update comment

* Refactor findAlias to forEachAlias to reduce iterations

* Really fix re-exporting

* Use getModuleSpecifier instead of custom hack

* Fix offering auto imports to paths within node modules

* Rename things and make comments better

* Add another reexport test

* Inline `symbolHasBeenSeen`

* Simplify forEachAlias to findAlias

* Add note that symbols is mutated

* Symbol order doesn’t matter here

* Style nits

* Add test with nested package.jsons

* Fix and add tests for export * re-exports
2019-07-12 10:08:55 -07:00
Andrew BranchandNathan Shively-Sanders 71bec5b698 Add quick fix to add missing 'await' (#32356)
* Start prototyping addMissingAwait codefix

* Filter by diagnostics that have missing-await related info

* Start writing tests and checking precedence

* Implement codeFixAll, add test for binary expressions

* Add test for iterables

* Add test for passing argument

* Add test for call/construct signatures

* Add test for awaiting initializer

* Improve assertion error

* Replace specific property access error with general one and add await related info

* Add test for property access

* Require code to be inside a function body to offer await

* Accept suggestion

Co-Authored-By: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>

* Add explicit test for code fix being not available unless something is a Promise

* Skip looking for function body if already in AwaitContext flags

* Inline getCodeActions function for symmetry
2019-07-12 10:07:55 -07:00
Andrew Branch 8516127a05 Fix regression of generic T assignability to Partial<T> (#32354) 2019-07-12 07:57:55 -07:00