Commit Graph

3236 Commits

Author SHA1 Message Date
Daniel Rosenwasser
e0a286a01d [Cherry-pick] Allow ambient accessors to omit their types unde… (#36280)
* Fix noImplicitAny check on ambient private getters (#33896)

* Fix scripts.

Co-authored-by: Klaus Meinhardt <klaus.meinhardt1@gmail.com>
2020-01-23 10:07:43 -08:00
Daniel Rosenwasser
323c2560ad Merge pull request #33512 from typescript-bot/pick/33426/release-3.6
🤖 Cherry-pick PR #33426 into release-3.6
2019-10-04 16:15:48 -04:00
Daniel Rosenwasser
50223fdc20 Port #32947 to release-3.6 (#32978)
Port #32947 to `release-3.6`
2019-09-24 10:46:10 -07:00
Wesley Wigham
391a73b598 Cherry-pick PR #33426 into release-3.6
Component commits:
4ae62c3884 getConstraintDeclaration gets the first declaration with a constraint, rather than just the first declaration

b1ad54b382 Add type annotation

2232f5ebaa Update comment
2019-09-19 17:51:17 +00:00
TypeScript Bot
1b2ffa9212 Cherry-pick PR #33150 into release-3.6 (#33285)
Component commits:
b86c86de57 Add heuristic for extracting irreducible `null` and `undefined` types from intersections of unions
2019-09-06 13:11:29 -07:00
Anders Hejlsberg
acbcc0df82 Merge pull request #33252 from microsoft/fix33131
Make lower priority inference when source is completely matched in target
2019-09-06 09:39:53 -07:00
TypeScript Bot
6b72d5d4ca Cherry-pick PR #33144 into release-3.6 (#33249)
Component commits:
028fa8e723 mark deep indexed accesses as deeply nested in comparisons

67fbdfaeb7 Add test derived from lodash example
2019-09-04 17:01:28 -07:00
TypeScript Bot
5f263db5b5 Cherry-pick PR #33223 into release-3.6 (#33250)
Component commits:
a2b3af2b24 Elevate mapped types over type parameters in the same way as naked type parameters in intersection inference prioritization
2019-09-04 16:23:46 -07:00
TypeScript Bot
1ec17a8a1d Cherry-pick PR #33213 into release-3.6 (#33245)
Component commits:
cc1dc3b83b someTypeRelatedToType now passes isIntersectionConstituent

cf3eadc85e Merge branch 'master' into fix-missed-intersection-constituent-threading

f10fe3891f Fix [][] lint
2019-09-04 14:03:16 -07:00
Wesley Wigham
d31bd35e12 Port #32947 to release-3.6 2019-08-19 12:34:39 -07:00
Wesley Wigham
ef222a5892 Cherry-pick PR #32878 into release-3.6
Component commits:
c78c88f447 Fix references to path-mapped ambient modules in declaration files

48a1fc33f5 Fix lint
2019-08-13 23:41:56 +00:00
Wesley Wigham
f2719f95b4 Allow functions and ambient classes to merge (#32584) 2019-08-09 16:10:10 -07:00
Ron Buckton
05af8faac6 Support tree-shakable imports for --target es2015 (#32742)
* Support tree-shakable imports for --target es2015

* Alias external helper imports for --module es2015
2019-08-09 14:02:18 -07:00
Nathan Shively-Sanders
b24050aefd Excess discriminated types match all discriminable properties (#32755)
* Target types in excess property checking must match all discriminable properties

This allows fewer types to be discriminated in excess properties, which
fixes some examples.

* Add excess property test

* Fix semicolon lint

* Remove extra semicolon!

* Improve EPC for unions with multiple discriminants
2019-08-08 15:34:52 -07:00
Wesley Wigham
abd127f308 Only check import = reference when target is Value (#32747) 2019-08-06 16:44:42 -07:00
Wesley Wigham
f333684179 Fix unicode escapes in jsx identifiers and extended unicode characters in jsdoc (#32716)
* Fix unicode escapes in jsx identifiers and extended unicode characters in jsdoc

* Support unicode escapes in JSDoc

* Add tests for extended escapes
2019-08-06 15:14:32 -07:00
Nathan Shively-Sanders
480b73915f Improve excess property checking for intersections (#32582)
* Improve excess property checking for intersections

Still a draft, the implementation needs improvement

* Use mutable isIntersection in checkTypeRelatedTo

This makes parameter lists a lot shorter. Seems like a slight
improvement, although I can revert if I change my mind.

* Fix semicolon lint

* Remove TODOOOO

* Revert "Use mutable isIntersection in checkTypeRelatedTo"

This reverts commit b8dccff2a2.
2019-08-06 15:03:24 -07:00
Wesley Wigham
d00056f096 Support extended unicode escapes in identifiers, per es6 spec (#32725) 2019-08-06 14:43:41 -07:00
Wesley Wigham
7adc175dfc Adjust isIdentifierText to skip multiple characters when a code point is multiple chars long (#32720)
* Adjust isIdentifierText to skip multiple characters when a code point is multiple chars long

* Add a few examples with mixed unicode characters

* for posterity, add some unicode cursive script characters

* Test some more planes more explicitly
2019-08-05 23:37:26 -07:00
Ron Buckton
e3f4979736 Fix emit for object rest on a module export (#32699)
* Fix emit for object rest on a module export

* Add tests for exports of empty object/array binding patterns

* Add delay for exec to ensure diff tool has enough time to start
2019-08-05 16:53:21 -07:00
Wesley Wigham
3b54ffcf0e Preserve const enums should keep import refs (#28498)
* Preserve const enums should keep import refs

for exported const enums exported via export default

Move some functionality around, small cleanup

Remove unneeded const enum check

* Only mark const enums as references with preserveConstEnums on in export assignments

* Limit change to declarations and preserveConstEnums mode
2019-08-05 16:47:29 -07:00
Wesley Wigham
6b4f730535 Fix binding of jsdoc typedefs with no in-comment name attached to an expression statement (#32610)
* Fix binding of jsdoc typedefs with no in-comment name attached to an expression statement

* Check toplevel flag before bind

* Small renames
2019-08-02 16:14:19 -07:00
Wesley Wigham
acdbd10626 Amend scanner to support astral characters in identifiers when parsing es6+ (#32096)
* Amend scanner to support astral characters in identifiers when parsing es6+

* Use charSize helper rather than one-off maybe advance helper

* Update script to emit informative comment, run in unicode 12.1 environment

* Add suggested change
2019-08-02 13:15:51 -07:00
Andrew Branch
33f362abaf Don’t issue used-before-initialization errors in declaration files (#32579) 2019-08-01 11:24:04 -07:00
Andrew Branch
b377e99958 Prevent infinite recursion resolving nested conditional types with import types in them (#32097)
* Prevent infinite recursion resolving conditional types

* Use push/popTypeResolution and issue error

* Add failing test

* Fix the actual problem

* Revert unnecessary changes
2019-08-01 08:37:43 -07:00
Sheetal Nandi
1d18b4941e Store already known not parenthesized arrow expression positions for faster exit in case of deep parsing
Fixes #31987
2019-07-31 11:12:01 -07:00
Anders Hejlsberg
a717d3ab44 Add regression test 2019-07-28 09:05:57 -07:00
Anders Hejlsberg
742cabaac4 Merge branch 'master' into fix32349 2019-07-23 10:31:46 -07:00
Sheetal Nandi
607c9c5e26 Fix missing tokenToString for the backtick
Fixes #32073
2019-07-16 13:30:38 -07:00
Anders Hejlsberg
044d70fc24 Add regression tests 2019-07-12 17:57:05 -10:00
Anders Hejlsberg
303297aa27 Merge pull request #32362 from microsoft/fix32230
Fix type parameter inference cache invalidation logic
2019-07-12 16:57:34 -07:00
Wesley Wigham
37f2e5972f Cache & widen assigned js prototype type (#32381) 2019-07-12 12:49:34 -07:00
Anders Hejlsberg
c53246fa35 Add regression test 2019-07-11 10:47:27 -10:00
Wesley Wigham
6839973bf7 Generate a unique type parameter name for each nested type parameter (#31544)
* Generate a unique type parameter name for each nested type parameter

* Add testcase from 31605

* Fix typo

* Liiiiiine eeeendingggggss
2019-07-10 17:12:20 -07:00
Wesley Wigham
daf0a73346 Fix lookup of optional methods in declaration emit (#32094) 2019-07-10 16:39:07 -07:00
Andrew Branch
094a001982 Did you forget to use await? on arguments of function calls 2019-07-08 14:33:25 -07:00
Andrew Branch
a3a076d79f Did you forget to use await? for call and construct signatures 2019-07-08 14:01:25 -07:00
Andrew Branch
48fc6b8b17 Did you forget to use await? on iterables 2019-07-08 13:59:59 -07:00
Andrew Branch
c48e34ef91 Did you forget to use await? for operators 2019-07-08 13:50:56 -07:00
Wesley Wigham
0bea4bd3c9 Widen object literal this types (#32240) 2019-07-03 15:58:21 -07:00
Anders Hejlsberg
340f81035f Merge pull request #32178 from microsoft/improveTupleDestructuring
Simplify tuple destructuring logic
2019-07-02 17:25:12 -07:00
Anders Hejlsberg
440ed83f29 Merge pull request #32079 from microsoft/instantiationCountLimiter
Add type instantiation count limiter
2019-07-02 17:19:39 -07:00
Anders Hejlsberg
8e75382ce3 Add regression test 2019-07-01 17:49:36 -10:00
Wesley Wigham
3765651d82 Fix not emitted statement in then clauses producing syntactically invalid output (#32010)
* Fix not emitted statement in then clauses producing syntactically invalid output

* Refactor to common code, apply to all embedded statements
2019-07-01 13:39:18 -07:00
Anders Hejlsberg
b7b7a6626c Add regression tests 2019-06-28 17:09:22 -10:00
Daniel Rosenwasser
410b71751e Merge pull request #32034 from dragomirtitian/GH-32013-improve-error-messages-for-calling-types
Improved error message for calling/constructing types
2019-06-28 16:08:18 -07:00
Titian Cernicova-Dragomir
e4bca9649a Improved error spans for call errors:
1. When calling a non-callable expression the error span is on the call target not on the whole call
2. When calling a method, the error for overload resolution now includes the arguments (this was previously regressed by #31414)
2019-06-28 23:53:47 +03:00
Titian Cernicova-Dragomir
bc07eec015 Added tests for new error messages on calls to unions. 2019-06-28 23:23:17 +03:00
Titian Cernicova-Dragomir
768318b30c Improved error message for calling/constructing types 2019-06-28 23:23:16 +03:00
Wesley Wigham
b4a1a5996f Rework declaration emit visibility calculation for namespaces (#32156)
* Rework declaration visibility for namespaces

* Accept skipped baselines
2019-06-28 13:23:15 -07:00