Daniel Rosenwasser
2eea21636b
Merge pull request #29242 from Kingwl/attach_property_to_default_export
...
add transformer for emit add property to default export
2019-04-18 23:30:48 -04:00
Andrew Branch
b6a0988052
Merge pull request #30776 from andrewbranch/feature/10178
...
Add flag to allow access to UMD globals from modules
2019-04-18 18:05:44 -07:00
Nathan Shively-Sanders
c3a9429420
Handle JSDoc backticks in the parser, not scanner ( #30939 )
...
* Scan backticks in jsdoc as a single token less often
Previously, matching backticks in jsdoc would always be scanned as one
token to aid parsing incorrect jsdoc that uses backticks for parameter
names:
``js
/** @param {string} `nope`
* @param {number} `not needed`
*/
```
However, this is wrong for code fences, which use triple backticks. This
fix parses a single backtick as a single token if it's immediately
followed by another backtick or by a newline. It retains the
questionable tokenisation of backticks-as-pairs in other cases, however.
A better fix might be to have the parser ignore backticks in jsdoc
instead.
* Add test case
* Handle jsdoc backticks in the parser, not scanner
Previously, the jsdoc scanner had ad-hoc handling of backticks that was
similar in structure to the normal scanner's handling, but much simpler.
This was a smaller code change, but is handled backwards: the special
case of backtick-quoted parameter names was handled in the scanner
instead of in the jsdoc identifier parsing code. That made it overapply
and block correct handling of asterisks across newlines, which was most
obvious in code fences inside jsdoc, as in #23517 .
Fixes #23517
* More cleanup
2019-04-18 09:35:40 -07:00
Anders Hejlsberg
33c3ce9cd0
Merge pull request #31002 from Microsoft/fixIsStringIndexSignatureOnlyType
...
Fix isStringIndexSignatureOnlyType function
2019-04-17 17:19:34 -07:00
Sheetal Nandi
0c18d032e7
Merge branch 'master' into incrementalLateSymbol
2019-04-17 15:41:53 -07:00
Sheetal Nandi
b9145f98e1
Merge pull request #30980 from Microsoft/configChangeForEmit
...
Make sure to emit again if change in compiler option affects emit
2019-04-17 15:14:12 -07:00
Anders Hejlsberg
a40b08d1d7
Merge pull request #30944 from Microsoft/fixInferenceToMappedType
...
Fix inference from enum object type to generic mapped type
2019-04-17 15:10:34 -07:00
Anders Hejlsberg
9b3b8e3203
Ignore generic mapped types in isStringIndexSignatureOnlyType
2019-04-17 14:59:28 -07:00
Nathan Shively-Sanders
4420d1083b
Add diagnostics for relation cache size ( #30999 )
...
* Add diagnostics for relation cache size
* Move to extendedDiagnostics
* Single method that returns a 3-property object
* Fix double-space lint
2019-04-17 14:32:18 -07:00
Anders Hejlsberg
50fdeccd7f
One more iteration
2019-04-17 13:58:05 -07:00
Sheetal Nandi
3af78ae77a
Revert and always use merged symbol to get members of late bound symbol
...
Fixes #30891
2019-04-17 12:58:12 -07:00
Wesley Wigham
169e485d90
Perform excess property checking on intersection and union members ( #30853 )
...
* Perform excess property checking on intersection and union members
* Allow partial union props to contain the undefined type
* Add test case from #30771
* Un-terse getPossiblePropertiesOfUnionType side-effecting code
* Fix bug exposed in RWC
* Cache results of getPossiblePropertiesOfUnionType
* Fix whitespace
2019-04-16 21:58:48 -07:00
Anders Hejlsberg
3435451dcc
Even more succinct
2019-04-16 18:26:24 -07:00
Anders Hejlsberg
efa16ac11f
Address CR feedback
2019-04-16 17:41:33 -07:00
Sheetal Nandi
15ae8a7273
Make sure to emit again if change in compiler option affects emit
...
Fixes #30736
2019-04-16 16:18:37 -07:00
Sheetal Nandi
3c67608715
When interfaces are merged, always ensure that the parent symbol of the late bound member symbol is declared symbol containing the node.
...
Ensure that resolvedMembers adds the late bound symbol even when its resolved sunce lateBoundMember may or may not be added to resolved members depending on when its checked
Fixes #30891
2019-04-16 12:36:46 -07:00
Anders Hejlsberg
f617d1641b
Merge pull request #30963 from Microsoft/fixObjectFlagsPropagation
...
Fix object flags propagation
2019-04-16 07:25:41 -10:00
Anders Hejlsberg
6ac0dbcaef
Propagate ObjectFlags.NonInferrableType through widening
2019-04-16 09:46:45 -07:00
Wesley Wigham
d405662eb6
Explicitly encode keyof behaviors for never and unknown into getIndexType ( #30753 )
...
* Explicitly encode keyof behaviors for never and unknown into getIndexType
* Merge similar cases
2019-04-15 17:52:13 -07:00
Anders Hejlsberg
cc2ea68492
Fix inference from enum object type to generic mapped type
2019-04-15 15:06:44 -07:00
Daniel Rosenwasser
3dc78b6f3b
Merge pull request #30916 from jack-williams/array-elaboration
...
Elaborate array and tuple relation errors
2019-04-15 14:00:22 -07:00
Andrew
13d9f08976
Gracefully parse 'super' with type arguments ( #10677 ) ( #30913 )
2019-04-15 13:06:29 -07:00
Jack Williams
2ea91a0e9c
Elaborate array and tuple relation errors
2019-04-15 18:16:38 +01:00
Anders Hejlsberg
b9f805f2f4
Remove incorrect optimization in getUnionConstraintOfIntersection
2019-04-13 08:15:28 -10:00
Adam Postma
e951455215
Update misspelling 'identifer' to 'identifier' ( #30894 )
...
* fix typo - identifer to identifier
* fix typo - identifer to identifier
2019-04-12 13:29:00 -07:00
Anders Hejlsberg
4574c7a375
Merge pull request #30877 from Microsoft/fixConditionalTypeSimplification
...
Fix conditional type simplification
2019-04-12 07:35:19 -10:00
Anders Hejlsberg
6282645e3c
Merge pull request #30857 from Microsoft/fixInferenceToIntersection
...
Fix inference to intersections
2019-04-12 07:34:40 -10:00
Anders Hejlsberg
6cd229b4b9
Merge pull request #30769 from Microsoft/saferIndexedAccessTypes
...
Improve soundness of indexed access types
2019-04-12 07:33:50 -10:00
Anders Hejlsberg
2ee2ffb8e7
Use object identity check instead of IsTypeIdenticalTo
2019-04-11 16:14:21 -10:00
Anders Hejlsberg
42302705f6
Merge pull request #30856 from Microsoft/nonInferrableType
...
Add a proper non-inferrable type
2019-04-11 11:45:17 -10:00
Anders Hejlsberg
ca47ddb583
Only infer to single naked type parameters in intersections
2019-04-10 17:41:51 -10:00
Anders Hejlsberg
4b813e310c
Simplify non-inferrable property check to rely on propagation
2019-04-10 17:05:07 -10:00
Anders Hejlsberg
411e7144a9
Add new nonInferrableType with ObjectFlags.NonInferrableType
2019-04-10 16:53:38 -10:00
Nathan Shively-Sanders
ff959096df
Fix some bad jsdoc comment indent ( #30838 )
...
* First draft
Solves the initial problem but breaks commentCommentParsing. I also
found a couple more interesting cases.
* Add more tests and fix their bugs
* Another test case
* Some cleanup
I may try do a little more; `margin += tag.end - tag.pos` bothers me a
bit.
* More cleanup
2019-04-10 08:22:09 -07:00
Anders Hejlsberg
c8ff4bd9b3
Properly filter mapped types in getIndexType with noIndexSignatures=true
2019-04-09 15:29:40 -10:00
Anders Hejlsberg
fa407cef85
Remove old comment
2019-04-09 07:51:12 -10:00
Anders Hejlsberg
eb1e7ec6db
Optimize T[K] where T has string index signature and no other members
2019-04-08 09:36:34 -10:00
Nathan Shively-Sanders
90b304aa5e
Merge pull request #30786 from Microsoft/always-check-class-extends
...
Always check extends clause of classes
2019-04-08 10:25:05 -07:00
Andrew Branch
786753d13f
Use suggestion instead of ignoring UMD global access
2019-04-08 09:46:48 -07:00
Andrew Branch
98cd89fbc1
Add affectsSemanticDiagnostics to flag (and move to right spot)
2019-04-08 09:46:48 -07:00
Andrew Branch
28b21df943
Add period to compiler flag description to match others
2019-04-08 09:46:47 -07:00
Andrew Branch
11e45162ea
Don’t emit diagnostic accessing UMD globals from modules when flag is set
2019-04-08 09:46:47 -07:00
Andrew Branch
2ee93bf0f2
Add allowUmdGlobalAccess flag
2019-04-08 09:46:46 -07:00
Anders Hejlsberg
b49a34375d
Simplify obtaining base constraint of T[K] for writing
2019-04-08 06:36:00 -10:00
Andrew Branch
bafa4c90c1
Merge pull request #30758 from andrewbranch/bug/30647
...
Fix crash when checking function call
2019-04-08 09:22:39 -07:00
Anders Hejlsberg
2b6e7304c1
Merge branch 'master' into tweakUnionTypeInference
2019-04-06 08:12:45 -10:00
Anders Hejlsberg
e1fd5e5225
Fix unsafe parameter coercions related to PragmaPseudoMap
2019-04-06 06:29:59 -10:00
Anders Hejlsberg
294580287d
Merge branch 'master' into saferIndexedAccessTypes
2019-04-05 16:23:48 -10:00
Nathan Shively-Sanders
1218f29662
Merge branch 'master' into always-check-class-extends
2019-04-05 16:41:15 -07:00
Nathan Shively-Sanders
dabf2a6af2
Always check extends clause of classes
...
Even if (1) @extends is provided and (2) we're not producing
diagnostics. That's because we need to know whether the extends clause
references an imported alias.
2019-04-05 16:37:27 -07:00