Commit Graph
13494 Commits
Author SHA1 Message Date
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
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
Wesley Wigham c1f2aba364 Cache substitution types (#30775) 2019-04-05 14:37:47 -07:00
Anders Hejlsberg f93f8d32c4 Tweak union type inference to restore previous behavior 2019-04-05 13:23:54 -07:00
Sheetal Nandi 8684c3bfb8 Merge pull request #30740 from Microsoft/moduleAndAmbientResolutionConflict
When old program resolved to module and that file is included, dont consider as ambient resolution.
2019-04-05 12:15:06 -07:00
Nathan Shively-Sanders 0b3b4ea127 Added error for class properties used within their own declaration (#29395)
* Added error for class properties used within their own declaration

Fixes #5987.

Usages of a class property in a preceding property already gave an error, but the following doesn't yet:

```ts
class Test {
    x: number = this.x;
}
```

As with other use-before-declare checking, IIFEs are not treated as invalid uses.

* Accepted 'witness' baselines; removed unnecessary !==

* Addressed quick feedback items

* Accepted odd new baseline

* Fixed post-merge introduced lint errors

* Updated baselines again
2019-04-05 09:06:36 -07:00
Anders Hejlsberg d69aeb4af6 T[K] ignores index signatures in T's constraint 2019-04-04 15:28:34 -07:00
Wesley Wigham 16450a027a Change the default type parameter constraints and defaults to unknown from {} (#30637)
* Change the default type parameter constraint and default to unknown from {}

* Relax unknown checking outside of strictNullChecks a bit

* Increase strictness on index signatures with type `unknown` so inference doesnt change surprisingly

* Remove redundant switch
2019-04-04 12:25:15 -07:00
Andrew Branch 8c51115be1 Merge pull request #30734 from andrewbranch/bug/30664
Fall back from `globalReadonlyArrayType` to `globalArrayType` when transpiling
2019-04-04 11:57:08 -07:00
Andrew Branch da3fdd11c1 Fix arity error sometimes reaching out of bounds of the arguments actually present 2019-04-04 11:47:26 -07:00