Commit Graph
26450 Commits
Author SHA1 Message Date
Anders HejlsbergandGitHub 71d70ef161 Merge pull request #29563 from Microsoft/fixSwitchControlFlow
Fix switch statement control flow logic
2019-01-24 10:36:52 -08:00
Anders Hejlsberg 9844436231 Match control flow logic for switch statements to conditional expressions 2019-01-24 09:30:36 -08:00
Pete Bacon Darwin 331b9bcfde Use the correct source when skipping trivia
A custom `SourceMapSource` can optionally provide its own `skipTrivia`
function. If this is not provided then the compiler will use the default
function designed for TypeScript source files.

Previously, when calling this default function we were passing the current
`sourceMapSource` rather than the specified `source` whose trivia needs
to be skipped. This resulted in the `pos` being incorrectly calculated for
external source files that need mapping.

**Side note:**

There are actually two possible constructors available for creating
`SourceMapSource` objects. One of them defaults to an identity function
for the `skipTrivia` function if it is not provided (see
https://github.com/Microsoft/TypeScript/blob/49689894d747714d6b2b8461b9033020efec9625/src/compiler/utilities.ts#L6972-L6976)
and the other one leaves the `skipTrivia` field `undefined` (see
https://github.com/Microsoft/TypeScript/blob/5fc8f1dd801dbacfe7e2d624f80b7a6a3868d180/src/services/services.ts#L776-L797)

Unfortunately, it appears that the second of these two constructors is the
one available when importing the "typescript" module in node.js code.
2019-01-24 10:28:10 +00:00
xiaofa d7601b755f fix trailing comma should not allowed in dynamic import argument 2019-01-24 18:16:34 +08:00
Ryan CavanaughandGitHub 2f6c65e691 Merge pull request #26653 from Kingwl/improve_type_arguments_parser_1
parse less than token rather than left shift in context of type argum…
2019-01-23 16:21:12 -08:00
Sheetal NandiandGitHub 73fe3fc0f5 Merge pull request #29532 from Microsoft/umdModuleGlobalMerge
Handle find all references for symbol merged with UMD module and global var
2019-01-23 11:13:58 -08:00
Sheetal Nandi d42185373a PR feedback 2019-01-23 10:48:17 -08:00
BigAru 5ec1201e3a exclude nested functions and classes at containingThis check 2019-01-23 19:36:00 +01:00
Ron Buckton e1477b41b7 Fix lint error 2019-01-22 16:28:00 -08:00
Ron Buckton 60487dc7cb Enable debug info by default when debugging the language server 2019-01-22 15:41:22 -08:00
Ron Buckton 76b78a4df5 Fix crash in signatureHelp 2019-01-22 15:02:30 -08:00
Sheetal Nandi f0227ecb2c Handle find all references for symbol merged with UMD module and global var
Fixes #29093
2019-01-22 14:52:39 -08:00
Ron Buckton 60639ce5a8 Replace most instances of getTextOfPropertyName in checker 2019-01-22 14:24:21 -08:00
kingwl b4b6e144ef Merge branch 'master' into PropertyDeclarationExclamationToken 2019-01-22 23:36:43 +08:00
BigAru dbd58599f4 do not provide refactoring when it contains this
because this behaves differently in arrow than in function
2019-01-22 05:42:01 +01:00
BigAru 52e94d2b80 Merge remote-tracking branch 'upstream/master' into m-lambda-to-fn 2019-01-22 05:10:32 +01:00
Anders Hejlsberg 60e7528ee6 No union type reductions in contextual types 2019-01-20 08:20:40 -08:00
Anders Hejlsberg ec30c20ec9 Validate const assertion operand 2019-01-19 10:25:41 -08:00
kingwl e8497096d8 Merge branch 'master' into improve_type_arguments_parser_1 2019-01-20 01:54:49 +08:00
Gabriela Britto 919ed79f3a implement new parameter creation 2019-01-18 16:49:11 -08:00
Andrew CaseyandGitHub 3a2f6a3ed1 Merge pull request #29470 from amcasey/InterfaceImplementations
Don't treat interfaces as implementations
2019-01-18 16:28:49 -08:00
Anders Hejlsberg beb02703b8 Support '<const> xxx' and 'xxx as const' 2019-01-18 16:16:45 -08:00
Anders Hejlsberg 0b1da02a62 Add missing return statements (ugh) 2019-01-18 16:02:13 -08:00
Pranav SenthilnathanandGitHub d38c616e29 Fix resolution of properties from prototype assignment in JS (#29302)
* fix type derived from prototype assignment

* accept new baselines

* remove direct intersection with object literal assigned to prototype

* add tests

* change webpack submodule commit

* fix submodule commits

* comment and simplify getJSDocTypeReference

* remove circularity guards that aren't hit anymore
2019-01-18 16:00:18 -08:00
Anders Hejlsberg 0b366ce751 Address CR feedback 2019-01-18 14:47:58 -08:00
Wesley WighamandGitHub 20285e66e9 Include all flow nodes made within try blocks as antecedents for catch or finally blocks (#29466)
* Include all flow nodes made within `try` blocks as antecedents for `catch` or `finally` blocks

* Fix typo
2019-01-18 14:43:31 -08:00
Anders Hejlsberg bb1c91fac6 Remove literal freshness when contextual type is a literal type 2019-01-17 17:04:29 -08:00
Andrew Casey 737fda928c Don't treat interfaces as implementations
...even if they're in ambient contexts.  Same for type aliases.
2019-01-17 15:45:01 -08:00
Wesley WighamandGitHub addeff325b Make the relationship between partial mapped types and the empty object not apply for subtype relationship (#29384) 2019-01-17 15:42:58 -08:00
Wesley WighamandGitHub b6ae492009 Add missing arity check on second inference pass (#29386) 2019-01-17 15:21:17 -08:00
Anders Hejlsberg 1b4bce236e Infer contextual types from return types through generic functions 2019-01-17 14:37:31 -08:00
Sheetal NandiandGitHub 9bd23652ef Merge pull request #29161 from Microsoft/incrementalBuild
Supports incremental build in tsc --b --w mode
2019-01-17 13:44:48 -08:00
Sheetal Nandi 900d6f7c90 renames 2019-01-17 12:29:23 -08:00
Jack Williams 5651789629 Fix #29457
Use allTypesAssignableToKind instead of isTypeAssignableToKind to
account for union types.
2019-01-17 20:03:46 +00:00
Sheetal Nandi dbae2cba47 add missing type annotation 2019-01-17 11:54:43 -08:00
Wesley Wigham 045a450972 Merge branch 'fix-generic-types-intersections' of git://github.com/flapenguin/TypeScript into flapenguin-fix-generic-types-intersections 2019-01-17 10:49:04 -08:00
Andrew CaseyandGitHub 94ca50177a Merge pull request #29451 from amcasey/GH27937
Consider JSX namespace imports when moving statements between files
2019-01-17 10:19:02 -08:00
Sheetal Nandi 9f3b77a8bd PR feedback 2019-01-17 09:23:20 -08:00
Anders Hejlsberg e5816491ba Allow rest parameter type to be a readonly array or tuple 2019-01-17 06:06:07 -08:00
Andrew Casey 3e256e14dc Add fourslash tests 2019-01-16 19:18:25 -08:00
Andrew Casey 7102de77d3 Consider JSX namespace imports when moving statements between files
Each of the old and new files should end up with a JSX namespace import
iff it contains JSX.

Fixes #27939
2019-01-16 18:55:27 -08:00
Gabriela Britto 705ac60a59 WIP 2019-01-16 15:49:09 -08:00
rflorianandGitHub 8a048159ba Merge branch 'master' into add-codefix-cannot-find-name-in-for-loop 2019-01-17 00:07:43 +01:00
xiaofa c9c9f859f3 fix quick fix infer parameter types from usage in js file 2019-01-17 05:51:57 +08:00
Benjamin LichtmanandGitHub 5fc8f1dd80 Add opt-in user preference for prefix and suffix text on renames (#29314)
* Add user preference to control renaming through exports

* Only impact renaming

* Update baselines

* Use flag to control all prefix and suffix text and imports

* [WIP] add tests

* Only skip export import specifier with flag

* [WIP] Update tests

* Update test

* Pick up preference from host and update test

* Shorten flag name

* Add missing utility function

* Update comment

* [WIP] rename flag and respond to cr

* [WIP] Add flag for forRelatedSymbol

* Use larger search symbol set for old-style rename

* Respond to CR

* Fix small error

* Fix type mismatch

* Update comment and remove unnecessary exprot

* Respond to CR
2019-01-16 10:58:07 -08:00
Anders Hejlsberg 2256f9159f Fix typo 2019-01-16 09:46:02 -08:00
Wesley WighamandGitHub 41a7bf4b73 Fake up value declaration for synthetic jsx children symbol so they get excess property checked (#29359) 2019-01-15 22:31:57 -08:00
Kagami Sascha RosylightandGitHub d8ac9ba414 Merge branch 'master' into es2019 2019-01-16 10:54:46 +09:00
Kagami Sascha RosylightandGitHub 6cd531b3d7 Merge branch 'master' into async-es2018 2019-01-16 10:48:06 +09:00
Gabriela Britto 9aeeae54b0 create refactoring for converting to named parameters 2019-01-15 16:56:53 -08:00