Commit Graph

9151 Commits

Author SHA1 Message Date
Alexander T
8dba4d6467 Merge branch 'master' of https://github.com/Microsoft/TypeScript into bug/29880 2019-05-24 18:39:03 +03:00
Anders Hejlsberg
7ff97d1393 Merge pull request #31572 from microsoft/normalizedIntersectionLimiter
Limit size of union types resulting from intersection type normalization
2019-05-23 17:57:33 -07:00
Ron Buckton
dfd28d2751 Fix handling of empty 'types', 'typings', etc. fields in package.json (#31539) 2019-05-23 17:19:32 -07:00
Wesley Wigham
bb4080c175 Collect _all_ symlinks a file may have witnessed when attempting to generate specifiers (#31571) 2019-05-23 17:17:24 -07:00
Anders Hejlsberg
53f37cfec3 Add test 2019-05-23 17:09:17 -07:00
Titian Cernicova-Dragomir
8ab0a25211 Improve error messages when indexing into a type (#31379)
* Improved error messages when indexing an object type with a literal string, a literal string union or a string.

* Added more specific message when using the indexing operator with an incompatible index argument.

* Fixed spelling and error message.
2019-05-23 15:27:50 -07:00
Andrew Branch
a2b40292fe Merge pull request #31542 from andrewbranch/bug/31481
Error when writing to rest element range of readonly tuple
2019-05-23 13:38:09 -07:00
Nathan Shively-Sanders
4d27361680 Allow JS with isolated modules (#31483)
* Allow JS with isolated modules

Previously legacy JS code was not allowed; it was required to use ES6
module syntax. Unfortunately, the check happens after parsing but before
binding, and the commonjs module indicator isn't set until binding
because it's not syntactically simple like the ES6 module indicator,
which is set during parsing.

So I decided that JS should be allowed during isolatedModules
unconditionally. We're not going to be transforming it anyway.

* Update baselines

* Switch test to outDir instead of noEmit
2019-05-23 11:09:28 -07:00
Sheetal Nandi
ae7a1b4f56 Merge pull request #31541 from microsoft/packageId
Always use resolved file to figure out subModule name in package id
2019-05-23 10:50:13 -07:00
Alexander T
6cd992132d Add string properties declaration to the completion list 2019-05-23 11:08:19 +03:00
Anders Hejlsberg
e6013335b9 Merge pull request #31537 from microsoft/fixIndexedAccessConstraint
Fix indexed access constraint
2019-05-22 18:35:15 -07:00
Andrew Branch
9f6791a5ab Error when writing to readonly tuple in rest element range 2019-05-22 15:03:17 -07:00
Andrew Branch
eecb6d9049 Add failing test 2019-05-22 13:39:05 -07:00
Sheetal Nandi
431f0d6d8c Add test case for #30429 2019-05-22 11:22:07 -07:00
Ron Buckton
6a559e37ee Fix crash when checking invalid object rest (#31530) 2019-05-22 11:20:57 -07:00
Ron Buckton
c3055e585d Fix compiler crash with object rest in catch binding (#31522) 2019-05-22 11:20:07 -07:00
Ron Buckton
b3dc32fec7 Reset error record in downlevel for-of (#31519) 2019-05-22 11:18:07 -07:00
Ron Buckton
7611c5b931 Fix for computed properties in instance initializers (#31517) 2019-05-22 11:17:54 -07:00
Nathan Shively-Sanders
b36c8a0690 Make anyArray.filter(Boolean) return any[], not unknown[] (#31515)
* Add this-parameter workaround to Array.filter

Allows anys.filter(Boolean) to once again return any[], not unknown[].

* Add any constraint to Boolean factory function

I want to test how well this works.

* Remove Boolean factory type guard

* Remove typeGuardBoolean test
2019-05-22 09:45:41 -07:00
Anders Hejlsberg
2fd4aaee92 Add regression test 2019-05-22 06:54:16 -07:00
Sheetal Nandi
38f689d19e Merge pull request #31484 from microsoft/completionsSorting
Add sortText depending scope of symbols
2019-05-21 12:59:01 -07:00
Wesley Wigham
07d850cf1c Prevent type parameter printing from recuring on the same symbol (#31453) 2019-05-20 16:43:55 -07:00
Sheetal Nandi
00cea41b65 Add sortText depending scope of symbols
Fixes #15024
2019-05-20 15:53:51 -07:00
Nathan Shively-Sanders
9052804576 Test docCommentTemplate for prototype methods (#31477)
This works in 3.5, but didn't in 3.2. Adding a test to make sure it
stays working.
2019-05-20 12:50:29 -07:00
Anders Hejlsberg
907664c31c Merge pull request #31454 from microsoft/fixThisTypeIndexSignature
Permit assignment through index signature of 'this' type
2019-05-20 07:02:52 -07:00
Anders Hejlsberg
c6a670d26c Add regression test 2019-05-17 15:59:01 -07:00
Nathan Shively-Sanders
eeba30afc8 Fix infinite loop: module.exports alias detection (#31436)
* Fix infinite loop: module.exports alias detection

Previously, module.exports alias detection in the binder could enter an
infinite recursion. Now it does not.

Notably, there are *two* safeguards: a counter limiter that I set at
100, and an already-seen set. I actually prefer the counter limiter code
because it's foolproof and uses less memory. But it takes 100
iterations to escape from loops.

* fix space lint

* Remove already-seen map
2019-05-17 12:50:39 -07:00
Andrew Branch
15daf42b2c Merge pull request #31028 from andrewbranch/feature/smart-select
Smart Select language service API
2019-05-16 09:45:05 -07:00
Daniel Rosenwasser
d484163d0f Merge pull request #31262 from rpgeeganage/new_keyword_consistent_resolve
Quick info on 'new' keyword should be the same as that of resolved expression
2019-05-15 00:36:38 -07:00
Wesley Wigham
3885e3fcda Fix error message regressed by #30916 (#31276) 2019-05-14 16:58:06 -07:00
Anders Hejlsberg
70950cb934 Merge pull request #31377 from microsoft/noThisParameterFiltering
Revert this-parameter filtering in completions
2019-05-13 17:07:05 -07:00
Wesley Wigham
f140dfc30b Chain RHS narrowing and truthiness narrowing in assignment expression narrowing (#31348) 2019-05-13 14:41:33 -07:00
Anders Hejlsberg
a65f35b5fb Remove fourslash test 2019-05-13 12:42:44 -07:00
Wesley Wigham
b7fe99a88c Instantiate constraint with default upon comparison (#31240) 2019-05-11 16:40:23 -07:00
Anders Hejlsberg
ae3d1d45c1 Merge pull request #31221 from microsoft/improveReverseMappedTypes
Improve reverse mapped types
2019-05-10 13:42:22 -07:00
Anders Hejlsberg
bca2808049 Merge pull request #31337 from microsoft/fixConditionalTypeParameterReference
Fix type parameter leakage in conditional types
2019-05-10 13:11:45 -07:00
Wesley Wigham
d8f2702a5d Cache control flow results across invocations (#31003)
* Modify flow loop cache key to include all inputs

* Add test case, cache similarly to loop cache, reuse loop cache key (now corrected)

* Use simpler singleton key and type cache for FlowAssignment nodes
2019-05-10 11:48:44 -07:00
Daniel Rosenwasser
39e9a2bb4f Maintain modifiers on Omit (#31205)
Maintain modifiers on `Omit`
2019-05-10 10:03:48 -07:00
Anders Hejlsberg
ee59cee381 Add regression test 2019-05-10 09:56:17 -07:00
Klaus Meinhardt
0c9db717ad fix parsing of leading union/intersection operator (#31265)
* fix parsing of leading union/intersection operator

Fixes: #30995

* test declaration emit
2019-05-08 14:09:11 -07:00
Andrew Branch
8c07b40cb6 Merge pull request #31098 from andrewbranch/bug/30804
Fix crash checking spread element in loop
2019-05-07 13:02:22 -07:00
Wenlu Wang
714821fc97 add refactor of extract type (#30562)
* add basically implement

* add rename location and add testcase

* collection type arguments

* disallow infer type

* add support for typedef convert

* refactor info to make type safe

* disallow type pred

* avoid unnecessary branch

* disallow type query

* haha😂

Co-Authored-By: Kingwl <kingwenlu@gmail.com>

* Update src/services/refactors/extractType.ts

Co-Authored-By: Kingwl <kingwenlu@gmail.com>

* Update src/services/refactors/extractType.ts

Co-Authored-By: Kingwl <kingwenlu@gmail.com>

* add more tests

* add template tag support in jsdoc

* add support of type parameters constraint

* add more tests

* merge branch

* add more tests

* refactor and update function name
2019-05-07 08:26:53 -07:00
rpgeeganage
8f209be149 fixed the comments 2019-05-06 21:21:37 +02:00
rpgeeganage
9959ce449e added test 2019-05-05 19:01:14 +02:00
Wesley Wigham
b365e657d4 Add unmeasurable variance kind for marking types whose variance result is unreliable (#30416)
* Add unmeasurable variance kind for marking types whose variance result is unreliable

* Remove now-unneeded nongeneric checks

* Add rule allowing `Readonly<any>` to be `any` instead of `{readonly [index: string]: any}`

* All Unmeasurable variances to still shortcut structural comparisons in some cases

* Separate unmeasurable from unreliable to reduce the impact of this change, for now

* Fix lint

* Remove Readonly<any> -> any callout

* Add fix for circularity error triggered by deep signature return type comparisons with `this` types
2019-05-03 14:42:17 -07:00
Anders Hejlsberg
f73308b248 Add tests 2019-05-02 15:24:56 -07:00
Sheetal Nandi
e3a91d8ca1 Merge pull request #31191 from Microsoft/fileFromNodeModules
Include only files that can be emitted into the source file directory check for composite projects
2019-05-01 15:09:32 -07:00
Daniel Rosenwasser
60962a8709 Added test. 2019-05-01 13:57:47 -07:00
Andrew Branch
56b19c9bf0 Merge pull request #31119 from andrewbranch/bug/31020
Emit grammar error on quoted constructors and class fields named “constructor”
2019-05-01 10:42:16 -10:00
uhyo
55bffe3616 add tests to check errors for use of 'await' in non-async function 2019-05-02 02:33:27 +09:00