13641 Commits

Author SHA1 Message Date
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
Anders Hejlsberg
922186834f
Merge pull request #31400 from microsoft/undoSubsitutionSimplification
Revert substitution type simplification
2019-05-14 22:58:14 -07:00
Wesley Wigham
3885e3fcda
Fix error message regressed by #30916 (#31276) 2019-05-14 16:58:06 -07:00
Anders Hejlsberg
4b5968eb6d Revert change to substitution type simplification 2019-05-14 07:45:29 -07:00
Anders Hejlsberg
fb6ae38ddf
Merge pull request #31354 from microsoft/deferConditionalTypes
Defer resolution of true and false branches in conditional types
2019-05-13 17:17:26 -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
Anders Hejlsberg
d2923460e9 Add comment providing context on the change 2019-05-13 16:34:09 -07:00
Anders Hejlsberg
1b3589ba27 Remove simplification logic from getConditionalType + simplify substitution types 2019-05-13 16:23:51 -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
90667e104d Remove this-parameter filtering in statement completion 2019-05-13 12:42:33 -07:00
Wesley Wigham
8ba53b6fd5
Simplify conditionals upon comparison, rather than instantiation 2019-05-13 11:18:28 -07:00
Wesley Wigham
b7fe99a88c
Instantiate constraint with default upon comparison (#31240) 2019-05-11 16:40:23 -07:00
Anders Hejlsberg
bb9c5c96c8 Reuse existing type instantiations 2019-05-11 11:15:37 -07:00
Anders Hejlsberg
71fe8e824e Defer resolution of the true and false branches of conditional types 2019-05-11 09:39:06 -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
Anders Hejlsberg
46a278d449 Consistently check conditional extends type for type parameter references 2019-05-10 09:48:33 -07:00
Anders Hejlsberg
4af3a3b541 Lower priority for inferences made from partial reverse mapped types 2019-05-08 14:11:51 -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
Ron Buckton
15e9c4ce33
Merge pull request #31301 from microsoft/fixCustomTransformers
Add opt-in behavior for custom transforms to support bundles
2019-05-07 17:31:28 -07:00
Ron Buckton
0c1a283bf9 Add opt-in behavior for custom transforms to support bundles 2019-05-07 17:29:02 -07:00
Ron Buckton
b40b542654
Merge pull request #29676 from NicholasLYang/fixObjectRestEnumeration
Fix object rest enumeration
2019-05-07 15:55:33 -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
Titian Cernicova-Dragomir
4b77f34243 Fixed several typos, mostly in comments and parameter names. (#31287) 2019-05-07 11:00:56 -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
Klaus Meinhardt
3c2f368908 add assert 2019-05-06 21:31:20 +02:00
Klaus Meinhardt
676ed3ead7 parseProjectReferenceConfigFile: always set SourceFile.path 2019-05-06 17:17:24 +02:00
Klaus Meinhardt
4ee0084fa1 avoid more useless type assertions (#31239) 2019-05-03 14:51:54 -07: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
Daniel Rosenwasser
fc88a1c51a
Don't use any[] in arrayFrom (#31201)
Don't use `any[]` in `arrayFrom`
2019-05-03 13:04:46 -07:00
Anders Hejlsberg
8891d4f375 Permit reverse mapped types to be created from partially inferable types 2019-05-02 15:15:03 -07:00
Sheetal Nandi
aa0e64afc9
Merge pull request #31216 from ajafff/parsejsonconfigfilecontent-configcache
parseJsonConfigFileContent: add extendedConfigCache parameter
2019-05-02 12:48:23 -07:00
Klaus Meinhardt
883b00df35 parseJsonConfigFileContent: add extendedConfigCache parameter 2019-05-02 21:24:58 +02:00
Sheetal Nandi
45d72d077f Fix accidental internal parameter to public API 2019-05-02 11:07:36 -07:00
Daniel Rosenwasser
b5ffc26b95 Don't use 'any[]' - return type are bivariant when relating to overloads. 2019-05-01 16:10:24 -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
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
bafdf4baf8 remove extra newline 2019-05-02 03:45:17 +09:00
uhyo
1fd9de3214 do not suggest to mark constructor 'async' 2019-05-02 02:33:27 +09:00
uhyo
246b66c714 add related info to error for use of for-await-of in non-async function 2019-05-02 02:33:25 +09:00
uhyo
b0143bb446 add relatedInfo to error message for 'await' used in non-async function 2019-05-02 02:33:24 +09:00
Sheetal Nandi
a58fdf2b35 Include only files that can be emitted into the source file directory check for composite projects
Fixes #31181
2019-05-01 10:14:11 -07:00
Anders Hejlsberg
9509a54e66
Merge pull request #31141 from Microsoft/fixInferenceToIndexedAccessWithSubstitution
Fix inference to indexed access type containing substitution type
2019-04-30 17:45:53 -07:00
Sheetal Nandi
66bdc83005
Merge pull request #31128 from Microsoft/buildWatchCaching
Use caches similar to buildAll when building incrementally with in watch mode of tsbuild
2019-04-30 11:37:33 -07:00
Sheetal Nandi
7c63658f73 Merge branch 'master' into buildWatchCaching 2019-04-30 11:24:43 -07:00
Ruwan Pradeep Geeganage
0c9a35ccc0 Use 'Omit' instead of 'Pick<Exclude<...>>' for object rest (#31134)
* add Omit<T, ..> instead of Pick<Exclue<T>,..>

* remove the fallback

* run the baseline-accept

* removed unused variables

* fix tests\baselines\reference
2019-04-30 11:19:21 -07:00
Kagami Sascha Rosylight
49d6f61298 Add ES2019 Object.fromEntries function (#30934)
* add ES2019 Object.fromEntries function

* add some comments

* apply suggested changes

* add readonly and general any
2019-04-30 09:49:58 -07:00
Klaus Meinhardt
5bc8a8dddf JSDocTypeTag.typeExpression is not optional (#30452) 2019-04-30 09:46:32 -07:00
Sheetal Nandi
9efea31649
Merge pull request #31101 from Microsoft/cacheParseConfigFile
Caching results of parsing Config file and extended file
2019-04-30 09:33:33 -07:00