Commit Graph

34591 Commits

Author SHA1 Message Date
Jack Williams 0d79831ead Add typeof-for-switch
Initial draft that works for union types

First draft of PR ready code with tests

Revert changed line for testing

Add exhaustiveness checking and move narrowByTypeOfWitnesses

Try caching mechanism

Comment out exhaustiveness checking to find perf regression

Re-enable exhaustiveness checking for typeof switches

Check if changes to narrowByTypeOfWitnesses fix perf alone.

Improve switch narrowing:

+ Take into account repeated clauses in the switch.
+ Handle unions of constrained type parameters.

Add more tests

Comments

Revert back to if-like behaviour

Remove redundant checks and simplify exhaustiveness checks

Change comment for narrowBySwitchOnTypeOf

Reduce implied type with getAssignmentReducedType

Remove any annotations
2018-04-18 23:17:36 +01:00
falsandtru 55a3c22d43 Revert "Improve PromiseConstructor"
This reverts commit 4318f0d9a0.
2018-04-19 05:11:00 +09:00
Armando Aguirre f17603d318 Addressed PR comments 2018-04-18 12:58:40 -07:00
Andy b271df1639 Simplify getParentSymbolsOfPropertyAccess (#23513) 2018-04-18 12:58:40 -07:00
Andy 0e9b815956 Improve performance of duplicate check (#23516) 2018-04-18 12:58:16 -07:00
Daniel Rosenwasser 25bb58124b Accepted baselines. 2018-04-18 12:42:59 -07:00
Daniel Rosenwasser 320cb40f12 Address CR feedback. 2018-04-18 12:33:38 -07:00
Sheetal Nandi 56b618b9fc Use indexOf and substr to exclude node_modules and bowerComponents instead of using loop 2018-04-18 11:44:28 -07:00
Sheetal Nandi b0d6896235 Merge pull request #23438 from Microsoft/typingsFiles
Better handling of typing installer events and consuming typing files in tsserver
2018-04-18 11:34:46 -07:00
Sheetal Nandi 67bb67edf1 Cache canonical global cache's package.json path 2018-04-18 11:22:02 -07:00
Sheetal Nandi 7c5f5249ae Renames as per PR feedback 2018-04-18 11:05:56 -07:00
Anders Hejlsberg 254782c06f Accept new baselines 2018-04-18 11:01:25 -07:00
Anders Hejlsberg b14d389085 For 'T extends { [x: string]: XXX }' constraint of T[keyof T] is XXX 2018-04-18 11:01:09 -07:00
Andrew Casey a2f494ab57 Merge pull request #23494 from amcasey/PropagateUnnecessary
Propagage reportsUnnecessary in convertToDiagnosticsWithLinePosition
2018-04-18 09:55:45 -07:00
Andy afde2b5bf3 MissingDeclaration is only ever a Statement (#23485) 2018-04-18 07:55:57 -07:00
csigs 0bc6470f1d LEGO: Merge pull request 23497
LEGO: Merge pull request 23497
2018-04-17 21:10:39 -07:00
csigs 81b347d61d LEGO: check in for master to temporary branch. 2018-04-18 04:10:18 +00:00
falsandtru 0303d14a1f Merge remote-tracking branch 'master/master' into lib/promise 2018-04-18 12:05:32 +09:00
falsandtru 4318f0d9a0 Improve PromiseConstructor 2018-04-18 11:45:01 +09:00
Andrew Casey 26c836b12a Propagage reportsUnnecessary in convertToDiagnosticsWithLinePosition 2018-04-17 19:44:52 -07:00
Ron Buckton 8b86423521 Trim unused functionality 2018-04-17 19:39:54 -07:00
falsandtru 563660a83a Revert the change of PromiseLikeConstructor 2018-04-18 11:22:22 +09:00
Ron Buckton 154f09bee9 Reorganize project structure. 2018-04-17 18:42:59 -07:00
Mohamed Hegazy 52192006cf Merge pull request #20671 from Kingwl/fix-import-not-existed-module
error if import empty object form module not existed
2018-04-17 17:29:07 -07:00
Daniel Rosenwasser 6953fa1732 flags--; 2018-04-17 17:06:50 -07:00
Anders Hejlsberg 02534cca31 Accept new baselines 2018-04-17 16:29:49 -07:00
Anders Hejlsberg b11be80349 Don't widen unique symbol types during type inference 2018-04-17 16:29:42 -07:00
Nathan Shively-Sanders e26745f129 Add axios' source to user tests (#23490)
* Add axios' source to user tests

We already have the npm-installed version in order to test their d.ts so
that we don't break their users.

* Just compile lib, plus fix some config lint
2018-04-17 15:20:48 -07:00
Andy f5101e21c3 Find-all-references: Don't crash on 'typeof import' (#23448)
* Find-all-references: Don't crash on 'typeof import'

* Move `| ImportTypeNode` out of `AnyImportOrReExport`
2018-04-17 15:01:36 -07:00
Ron Buckton 1cbe930e06 Merge branch 'master' into vfs 2018-04-17 14:39:20 -07:00
Sheetal Nandi db9620d8f0 Use watch recursive directories instead of watchFile for node_modules and bower components 2018-04-17 14:27:21 -07:00
Wesley Wigham 391c0565d7 Use ts-check instead of ts-node to avoid transpilation overhead on gulp startup (#23486) 2018-04-17 17:19:42 -04:00
Sheetal Nandi d64f2483e4 Update to respond to PR feedback 2018-04-17 14:17:15 -07:00
Daniel Rosenwasser 78e98c3784 Accepted baselines. 2018-04-17 14:15:36 -07:00
Daniel Rosenwasser 4bfb1a3aa1 Avoid breaking change by introducing overloads for 'createTaggedTemplate'/'updateTaggedTemplate'. 2018-04-17 14:09:42 -07:00
Andy d1fde3786c Symbol kind for a method on a mapped type should still be 'method' (#23478) 2018-04-17 14:07:59 -07:00
Wesley Wigham c645f1753f Update configurePrerelease to not utilize ts internals (#23476)
* update configure nightly to not utilize ts internals

* Nightly -> Prerelease

* Remove alias
2018-04-17 15:42:31 -04:00
Andy b00e370605 Add '?' in quick info for optional properties/methods (#23480) 2018-04-17 12:42:23 -07:00
Andy 56d83f9572 Rename pushTypePart to pushSymbolKind (#23481) 2018-04-17 12:41:39 -07:00
Benjamin Lichtman 48f98bdd4d Merge pull request #23452 from uniqueiniquity/normalizeDocumentHighlightsPaths
Normalize document highlights paths
2018-04-17 12:31:00 -07:00
Andy f6510bd6b9 goToDefinition: Remove isSignatureDeclaration, use isFunctionLike (#23475) 2018-04-17 11:53:41 -07:00
Andy 0c17a2b2a8 goToDefinition: Reduce duplicate code around createDefinitionInfo (#23473)
* goToDefinition: Reduce duplicate code around createDefinitionInfo

* Use '[]' instead of 'emptyArray'

* Remove comment
2018-04-17 11:28:12 -07:00
Nathan Shively-Sanders db68075b67 Add create-react-app and puppeteer user tests (#23471)
* Add create-react-app

* Add puppeteer

Everything is broken now. I am going back to master to see if that fixes
things.

* Add puppeteer baseline

* Add chalk override (gitignore was ignoring it)
2018-04-17 11:21:11 -07:00
Andy d009d8efcf Fix bug: IfStatement#elseStatement can be undefined (#23467) 2018-04-17 10:41:53 -07:00
Mohamed Hegazy ca53993e41 Merge pull request #23462 from JoshuaKGoldberg/combined-pretty-summaries
Combined "Found X error(s)" and "Compilation complete" --watch messages
2018-04-17 10:37:07 -07:00
uniqueiniquity 12f6e5232b Remove unnecessary allocation 2018-04-17 09:41:26 -07:00
uniqueiniquity 160356317b Treat expectedRanges as readonly 2018-04-17 09:20:52 -07:00
uniqueiniquity 3a8d66ba29 Only normalize for purposes of assert 2018-04-17 09:20:34 -07:00
Andy e50b24a83b convertFunctionToEs6Class: Copy comment from variable declaration (#23445) 2018-04-17 09:15:05 -07:00
Andy 55f9a6ffc2 Fix bug: VariableDeclaration initiazer may be undefined (#23439) 2018-04-17 08:59:07 -07:00