Commit Graph
11000 Commits
Author SHA1 Message Date
Wesley Wigham 1c93744a9c Much better comment preservation (#22141)
* Retain comments on (and produce sourcemaps on) the equals token in initializers

* Improved comments/sourcemaps for await, yield, while, and for

* Retain comments on block curly-braces

* Emit comments for if statements

* Improved switch case comment emit

* Improve comment and sourcemap emit for try/catch, throw, and continue statements

* Improve sourcemap emit and comments for with statements

* More accurate sourcemaps+comments emit for new, typeof, void, and delete

* Improve comment emit for element access expressions

* Preserve more comments on imports and exports

* Make function a bit more defensive like other usages of emitTrailingCommentsOfPosition

* Support preserving comments within empty lists

* Handle leading comments of tokens, conditionally indent leading comments

* Stop heuristically sourcemapping tokens

When the transform was trivial it worked, but was unneeded, but when it was complex, it was brittle - best leave source mapping up to the transformers

* Fix unneeded +1

* Tighten up element access comments

* Handle comments on parenthesized expression tokens

* Fix nit
2018-03-02 17:23:59 -08:00
Yuichi Nukiyama 25525bc9d6 Change esnext.promise to es2018.promise (#22292)
* change esnest.promise to es2018.promise

* modify unit tests

* resolve conflict

* resolve conflict
2018-03-02 17:08:36 -08:00
Anders Hejlsberg 2d5be24669 Merge pull request #22300 from Microsoft/distributeKeyofIntersection
Distribute 'keyof' intersection types
2018-03-02 16:08:20 -08:00
Andy 87c3cca3f0 Make convertFunctionToEs6Class a codefix (#22241)
* Make convertFunctionToEs6Class a codefix

* Change diagnostic message
2018-03-02 12:57:29 -08:00
Andy ba8879d005 Prefer 'return Debug.fail()' over 'throw Debug.fail()' (#22092) 2018-03-02 10:44:06 -08:00
Wenlu Wang b15157356a add spelling suggestion support for module import (#22283) 2018-03-02 10:24:55 -08:00
Andy b90cdb2221 Reduce duplicate code for TextChange overlaps (#22278) 2018-03-02 10:22:52 -08:00
Anders Hejlsberg fe075f26a2 Transform 'keyof (A & B)' to 'keyof A | keyof B' 2018-03-02 09:11:33 -08:00
Benjamin Lichtman dfa1a90b25 Merge pull request #22135 from uniqueiniquity/jsxFragmentHash
Allow characters in JsxText inside JsxFragment that usually don't scan
2018-03-01 16:50:09 -08:00
Wesley Wigham 36bebe9487 Parenthesize computed names if not an assignment expression (#22280) 2018-03-01 16:49:56 -08:00
Wesley Wigham 10e3b73330 Debug assert on parent rebind, mitigate circularity in symbol access checking (#22282)
* Assert that symbol parents are never rebound to different parents

* mitigate circularities in symbol accessibility checking
2018-03-01 16:49:42 -08:00
Anders Hejlsberg 7a19b66cc0 Don't propagate 'never' types in type inference 2018-03-01 16:01:32 -08:00
Andy 16fc256823 Convert 'installTypesForPackge' refactor to a suggestion (#22267)
* Convert 'installTypesForPackge' refactor to a suggestion

* Have checker collect a list of suggestion diagnostics instead of redoing work in calculateSuggestionDiagnostics

* Add comment

* Add diagnostic even with `--allowJs`
2018-03-01 14:41:55 -08:00
Andy a564912d9a Apply 'no-unnecessary-qualifier' lint rule (#22009) 2018-03-01 14:20:18 -08:00
Andy 9acad22678 PropertyAssignment#initializer should be non-optional (#22209) 2018-03-01 13:13:59 -08:00
Andy 928ffaa1b5 Fix type of isIterationStatement (#22065) 2018-03-01 13:12:18 -08:00
Yuichi Nukiyama c7f65e8725 support groups property (#22176)
* support groups property

* fix option unittests
2018-03-01 12:58:25 -08:00
Anders Hejlsberg bb05122a50 Merge pull request #22197 from Microsoft/fixConditionalTypes
Conditional type fixes
2018-03-01 10:27:15 -08:00
Josh Goldberg 24d3035184 Added --preserveWatchOutput flag (#21303)
Description: "Whether to keep outdated console output in watch mode instead of clearing the screen."
Since the `pretty?` compiler options flag is marked as `@internal`, made this one too.
2018-03-01 09:55:58 -08:00
Anders Hejlsberg 9c965aa691 Merge branch 'master' into fixConditionalTypes 2018-03-01 06:29:02 -08:00
Wesley Wigham c12fc0d6c3 Format unique symmbol string output with unique symbol and not typeof within checker (#22247)
* Accept baseline update to symbol test

* Set default node flag instead of accepting new error
2018-02-28 17:55:56 -08:00
Anders Hejlsberg 69580c4561 Filter outer type parameters (similar to anonymous types) 2018-02-28 16:57:25 -08:00
Wesley Wigham ec249f7f67 Fix typo in inference (#22243) 2018-02-28 16:56:54 -08:00
Wesley Wigham b8e0009c9b Set syntheticLiteralTypeOrigin on synthetic undefined-type members (#22216)
* Have getNameOfSymbolAsWritten quote nonidentifier nonnumeric symbols all the time

* Revert checker changes

* Reuse synthetic origin to indicate that derived declaration name may need to be quoted
2018-02-28 16:03:05 -08:00
Wesley Wigham 1a43ad01a7 Lookup JSX namespace within factory function (#22207)
* Lookup JSX namespace within factory function

* Rename functions
2018-02-28 15:48:33 -08:00
Wesley Wigham 62185673fd Emit unqiue symbols with typeof if possible before issuing an error (#21403) 2018-02-28 15:44:12 -08:00
Wesley Wigham 7a31192ecb Stop binding type predicate types twice (#22210) 2018-02-28 15:43:13 -08:00
Sheetal Nandi 005a50f587 Merge pull request #22136 from Microsoft/moduleResolution
Use cache for the non-relative module resolution and enhance the watches for failed lookup locations
2018-02-28 14:39:22 -08:00
Benjamin Lichtman ca12cdcb5f Merge pull request #22138 from uniqueiniquity/conflictingDefinitionsError
Update category for TS4090 to Error
2018-02-28 14:22:41 -08:00
Anders Hejlsberg e5b568f9f4 Consistently propagate 'any' and 'never' types in type inference 2018-02-28 14:08:25 -08:00
Andy fa4619c5c1 Add 'info' diagnostics (#22204)
* Add 'info' diagnostics

* Code review
2018-02-28 11:16:32 -08:00
Anders Hejlsberg 56e6deefc7 Distributive conditional type applied to 'never' produces 'never' 2018-02-28 06:39:17 -08:00
Anders Hejlsberg daf3ed8e22 Fix comment 2018-02-27 17:34:49 -08:00
Wesley Wigham c1128d6957 Fix declaration emitted crash on mapped type with no type (#22213) 2018-02-27 16:12:03 -08:00
Wesley Wigham dafa7321c6 Add semicolons to import helpers (#22212) 2018-02-27 16:11:33 -08:00
Anders Hejlsberg de3871a4fc Propagate 'never' and the wildcard type in type inference 2018-02-27 15:10:43 -08:00
Andy f4af74aae1 Simplify TextChanges#getChanges (#22157)
* Simplify TextChanges#getChanges

* Rename function and improve assert
2018-02-27 12:26:05 -08:00
Wesley Wigham 32c63a2628 Add support for transpiling per-file jsx pragmas (#21218)
* Add support for per-file jsx pragmas

* Add error for using jsx factory pragma with fragments

* More tests, use different regex class for pragma capture

* Unify all pragma parsing machinery
2018-02-26 16:10:00 -08:00
Anders Hejlsberg b9e06bfd38 Merge branch 'master' into fixConditionalTypes
# Conflicts:
#	src/compiler/checker.ts
2018-02-26 14:50:23 -08:00
Anders Hejlsberg 6e672b7c9d Use '{}' instead of 'never' for no candidates in conditional inference 2018-02-26 14:26:15 -08:00
Anders Hejlsberg c2e6f7aacc Disallow recursion 2018-02-26 13:48:40 -08:00
Wesley Wigham 0dc5f18bdb Remove excess comment ranges from initialized and property parameter emit (#22152) 2018-02-26 12:43:31 -08:00
Andy 95dfd271e2 Make some internal types @internal (#22190) 2018-02-26 12:37:45 -08:00
Andy e4e4b17669 Improve error message for untyped import of scoped package (#22189) 2018-02-26 10:38:54 -08:00
Andrew Casey b31aa4e012 Merge pull request #22087 from amcasey/AmbientModuleImports
Organize imports in ambient modules
2018-02-23 17:43:28 -08:00
Daniel Rosenwasser 4d284d617f Merge pull request #22098 from alexeagle/pretty
fix --pretty output when context is multi-line
2018-02-23 12:51:01 -08:00
Wenlu Wang 30a96ba335 add support of codefix for Strict Class Initialization (#21528)
* add support of add undefined type to propertyDeclaration

* add support of add Definite Assignment Assertions to propertyDeclaration

* add support of add Initializer to propertyDeclaration

* remove useless parameter

* fix PropertyDeclaration emit missing exclamationToken

* merge fixes and fix

* fix unnecessary type assert
2018-02-23 07:25:50 -08:00
Alex Eagle 2e66e74e14 fix --pretty output when context is multi-line
Fixes #22097
2018-02-22 22:56:00 -08:00
uniqueiniquity 96441abce6 Update category for TS4090 to Error 2018-02-22 17:01:31 -08:00
Andrew Casey 427e6ed3e6 Tidy isAmbientModule 2018-02-22 16:30:55 -08:00