1859 Commits

Author SHA1 Message Date
Nathan Shively-Sanders
170e1bdddb Test error w/exported class extending intersection 2017-02-15 13:53:42 -08:00
Mohamed Hegazy
ae02db4950 Merge pull request #13936 from Microsoft/FixObjectCreate
Fix #13932: Change the order of overloads and allow union for `Object.create`
2017-02-14 13:29:41 -08:00
Mohamed Hegazy
13cb66c555 Merge pull request #13913 from Microsoft/allowExportDeclarationsInAmbientNamespaces
Allow export declarations in ambient namespaces
2017-02-14 11:44:07 -08:00
Nathan Shively-Sanders
477d9f2e48 Merge pull request #13796 from Microsoft/fix-duplicate-identifier-reporting
Fix duplicate identifier reporting in classes
2017-02-14 11:42:48 -08:00
Mohamed Hegazy
ef3b1138bb Merge branch 'master' into FixObjectCreate 2017-02-13 20:41:19 -08:00
Mohamed Hegazy
143edff303 Merge remote-tracking branch 'origin/master' into usePromise 2017-02-13 15:15:24 -08:00
Mohamed Hegazy
765e57b318 Update tests 2017-02-13 15:03:26 -08:00
Vladimir Matveev
f673f48fad inject pre-finally and after-finally edges into flow graph to possible ignore pre-finally during flow walk (#13845) 2017-02-13 14:36:12 -08:00
Nathan Shively-Sanders
ba8330cba6 Merge pull request #14006 from Microsoft/better-discriminated-union-errors
Improve discriminated union error messages
2017-02-13 14:14:22 -08:00
Nathan Shively-Sanders
46d9f37020 Merge pull request #12033 from Microsoft/add-undefined-to-default-valued-parameters
Add undefined to default-initialised parameters
2017-02-13 13:30:46 -08:00
Nathan Shively-Sanders
06522989b9 Merge pull request #13930 from Microsoft/no-subtype-reduction-in-includeFalsyTypes
No subtype reduction in includeFalsyTypes
2017-02-13 13:09:07 -08:00
Yui
bc1058e50a Merge pull request #13871 from Microsoft/master-fix13709
[Fix 13709] - Emit __esmodule
2017-02-13 12:32:50 -08:00
Anders Hejlsberg
7cd0e1a0e6 Merge pull request #13990 from Microsoft/fixPrivateProtected
Properly handle private and protected properties in intersections
2017-02-13 08:13:38 -10:00
Nathan Shively-Sanders
1c7628e653 Improve discriminated union error messages
Assignability errors for discriminated unions now check the value of the
discriminant to decide which member of the union to check for
assignability.

Previously, assignability didn't know about discriminated unions and
would check every member, issuing errors for the last member of the
union if assignability failed.

For example:

```ts
type Square = { kind: "sq", size: number }
type Rectangle = { kind: "rt", x: number, y: number }
type Circle = { kind: "cr", radius: number }
type Shape =
    | Square
    | Rectangle
    | Circle;
let shape: Shape = {
    kind: "sq",
    x: 12,
    y: 13,
}
```

`typeRelatedToSomeType` now checks whether each property in the source
type is a discriminant. It finds `kind` and proceeds to look for the
type in the target union that has `kind: "sq"`. If it finds it, which it
does in this example (`Square`), then it checks only assignbility to
`Square`.

The result is that the error now says that property 'size' is missing in
type `{ kind: "sq", x: number, y: number }` instead of saying that that
"sq" is not assignable to type "cr" like it did before.

Fixes #10867
2017-02-10 14:01:47 -08:00
Anders Hejlsberg
88961a276d Add tests 2017-02-09 17:47:04 -08:00
Mohamed Hegazy
2fc634f460 Merge pull request #13905 from Microsoft/optionalParametersInJSFunctions
Treat function paramters in a .js file with no JSDoc as optional
2017-02-09 16:46:19 -08:00
Mohamed Hegazy
4ec68481ba Merge pull request #13903 from Microsoft/jsPropertyWidening
Widen special JS property declarations to match regular property declarations
2017-02-09 15:08:35 -08:00
Mohamed Hegazy
24ddbe4b60 Widen after sub-type-reduction took place 2017-02-09 14:55:07 -08:00
Nathan Shively-Sanders
270c0b80d9 Merge pull request #13959 from Microsoft/fix-assigned-type-of-assignment-nested-in-literals
Fix assigned type of assignment nested in literals
2017-02-09 12:59:46 -08:00
Yui
f7b20624cf Merge pull request #13916 from Microsoft/master-fix13602
[Master] Fix 13602 preserve comment following element in node list
2017-02-09 12:51:22 -08:00
Nathan Shively-Sanders
a46cb033db Add for-of test case 2017-02-08 16:14:36 -08:00
Nathan Shively-Sanders
125dd57a75 Fix assigned type of assignment nested in literals
Fixes #12946
2017-02-08 13:28:23 -08:00
Mohamed Hegazy
f4080a4f9e Add test for #13925 2017-02-07 18:23:22 -08:00
Kanchalai Tanglertsampan
229ba43664 Allow export "__esModule" in system 2017-02-07 14:23:31 -08:00
Mohamed Hegazy
ab60d319b2 Fix #13932: Change the order of overloads and allow union for Object.create 2017-02-07 14:07:55 -08:00
Kanchalai Tanglertsampan
80eae169ee Emit leading comment before brace token 2017-02-07 11:56:44 -08:00
Kanchalai Tanglertsampan
eedc465763 Merge branch 'master' into master-fix13709
# Conflicts:
#	src/compiler/transformers/module/module.ts
2017-02-07 10:02:23 -08:00
Nathan Shively-Sanders
e03509affa No subtype reduction in includeFalsyTypes
It's not really needed and caused #13826.
2017-02-07 09:47:10 -08:00
Yui T
d7371043c4 Add test and baseline 2017-02-06 20:08:13 -08:00
Kanchalai Tanglertsampan
7fd404dbbc Add tests and update baselines 2017-02-06 18:14:08 -08:00
Nathan Shively-Sanders
669ecab631 Test property initialiser forward reference errors 2017-02-06 16:05:40 -08:00
Mohamed Hegazy
4a6b6d0a04 Allow export declarations in ambient namespaces 2017-02-06 15:34:43 -08:00
Mohamed Hegazy
82a3feaadc Treat function paramters in a .js file with no JSDoc as optional 2017-02-06 11:54:13 -08:00
Mohamed Hegazy
914150f2f1 Widen special JS property declarations to match regular property declarations 2017-02-06 09:57:12 -08:00
Nathan Shively-Sanders
ce629f03a7 Test duplicate identifier reporting in classes 2017-01-31 14:16:25 -08:00
Nathan Shively-Sanders
7cf595a381 Test removing undefined from initialized, annotated parameters 2017-01-30 15:00:50 -08:00
Nathan Shively-Sanders
cca68adf87 Import helpers skips __assign when target >= ES6
Instead, Object.assign is emitted.
2017-01-30 12:42:19 -08:00
Nathan Shively-Sanders
bb40819f75 Update tests and baselines 2017-01-27 14:30:11 -08:00
Nathan Shively-Sanders
a67b80d5fa Merge pull request #13726 from Microsoft/allow-super-to-access-method-signatures
Allow super to access method signatures
2017-01-27 10:27:22 -08:00
Nathan Shively-Sanders
4d67b0c2b6 Allow super to access method signatures
Previously, super was only allowed to access method *declarations*. But
method signatures can come from interfaces that merge with classes, and
should also be accessible as methods on super.
2017-01-27 09:53:57 -08:00
Nathan Shively-Sanders
cabcaaadcb Property assignment is not an assignment target
In a destructuring assignment, a property assignment is not an
assignment target. Its initialiser is. For example:

```ts
({ source: target} = o);
```

Here, `target` is the assignment target. `source` is not. Previously,
both were assignment targets.
2017-01-26 16:08:55 -08:00
Vladimir Matveev
71d1a3f051 property handle misspelled namepath in @typedef tag (#13702) 2017-01-26 11:38:50 -08:00
Nathan Shively-Sanders
e96b17b4f1 Merge branch 'master' into add-undefined-to-default-valued-parameters 2017-01-25 16:03:49 -08:00
Ryan Cavanaugh
76b1e95c3d Always call checkExpression on JSX attribute values
Fixes #13676
2017-01-25 10:40:59 -08:00
Vladimir Matveev
abc30b26c7 handle cases when body of for-of statement is expanded after loop conversion (#13677) 2017-01-25 09:53:34 -08:00
Andy Hanson
a68a7cea3f Merge branch 'master' into import_star_namespace 2017-01-25 07:03:35 -08:00
Mohamed Hegazy
4888e4f958 Merge pull request #13636 from ds300/preserve-jsx-but-output-.js-files
Add option to output .js files while preserving jsx
2017-01-23 23:22:45 -08:00
David Sheldrick
7bf52ee1fd add notifications and tests for jsx react-native es3 2017-01-23 22:08:39 +01:00
Andy
6a192ceb6b Merge pull request #13598 from Microsoft/node_modules_bundled_emit
Clean up code for getting emitted files
2017-01-23 11:48:37 -08:00
Vladimir Matveev
4ee8213dde do not capture 'arguments' when property name 'arguments' is met (#13600)
do not capture 'arguments' when property name 'arguments' is met
2017-01-20 19:59:26 -08:00