zhengbli
56cb07ae91
avoid using the global name
2016-08-10 12:34:27 -07:00
Ryan Cavanaugh
2f6f74d0c8
Merge pull request #10243 from joshaber/iterable-readonlyarray
...
Make ReadonlyArray iterable.
2016-08-10 10:34:12 -07:00
Wesley Wigham
ecc51af1ec
Allow OSX to fail while we investigate ( #10255 )
...
The random test timeouts are an issue.
2016-08-10 10:01:16 -07:00
Andy
bc5f41ebe4
Merge pull request #10227 from Microsoft/for_of
...
Fix loop over array to use for-of instead of for-in
2016-08-10 06:07:06 -07:00
Anders Hejlsberg
557fc38446
Merge pull request #10235 from Microsoft/fixDiscriminantWithNullableType
...
Fix discriminant type guards with nullable type
2016-08-09 21:03:35 -07:00
joshaber
8975cd7024
Make ReadonlyArray iterable.
2016-08-09 23:00:47 -04:00
Anders Hejlsberg
9d4547c5d0
Optimize format of type list id strings used in maps
2016-08-09 16:33:45 -07:00
Nathan Shively-Sanders
80963baf50
Always use thisType when generating tuple id
2016-08-09 15:37:15 -07:00
Nathan Shively-Sanders
6a8f4cb676
Delay tuple type constraint resolution
...
Create a new tuple that stores the this-type.
2016-08-09 14:48:11 -07:00
Anders Hejlsberg
6c0bca0ae5
Add regression test
2016-08-09 13:39:12 -07:00
Anders Hejlsberg
a5ea55ab65
Ignore null, undefined, void when checking for discriminant property
2016-08-09 13:39:00 -07:00
Nathan Shively-Sanders
d34bbe5f58
Add explanatory comment to resolveTupleTypeMembers
2016-08-09 12:47:43 -07:00
Nathan Shively-Sanders
7e115bbbef
Use correct this in tuple type parameter constraints
...
Instantiate this in tuple types used as type parameter constraints
2016-08-09 12:44:08 -07:00
Andy Hanson
4f54c6c228
Fix loop over array to use for-of instead of for-in
2016-08-09 06:55:21 -07:00
Anders Hejlsberg
3f1ec7ad4b
Merge pull request #10216 from Microsoft/structurallyIdenticalInstanceof
...
Improve instanceof with structurally identical types
2016-08-08 22:14:50 -07:00
Anders Hejlsberg
fe1854e441
Accept new baselines
2016-08-08 17:43:41 -07:00
Anders Hejlsberg
9277b3f5ad
Add test
2016-08-08 17:40:53 -07:00
Anders Hejlsberg
5ebfad6e4a
Introduce isTypeInstanceOf function
2016-08-08 17:40:27 -07:00
Anders Hejlsberg
624e52e834
Improve instanceof for structurally identical types
2016-08-08 16:40:59 -07:00
Ryan Cavanaugh
5adceb92a7
Remove use strict
2016-08-08 15:40:25 -07:00
Ryan Cavanaugh
40f0c6018d
use transpileModule
2016-08-08 15:36:38 -07:00
Yui
3f6aa3f3f0
Fix 10076: Fix Tuple Destructing with "this" ( #10208 )
...
* Call checkExpression eventhough there is no appropriate type from destructuring of array
* Add tests and baselines
2016-08-08 14:45:29 -07:00
Ryan Cavanaugh
eac7a48c5f
Fix non-strict-compliant test
2016-08-08 14:39:31 -07:00
Ryan Cavanaugh
53d54c2b28
Make baselines faster by not writing out unneeded files
2016-08-08 14:30:27 -07:00
Ryan Cavanaugh
e724e883e6
Duh
2016-08-08 13:31:45 -07:00
Ryan Cavanaugh
ce7f554090
Speed up fourslash tests
2016-08-08 13:15:25 -07:00
Wesley Wigham
30e95df91e
Reduce worker count to 3 ( #10210 )
...
Since we saw a starvation issue on one of @sandersn's PRs.
2016-08-08 13:11:02 -07:00
Anders Hejlsberg
8ea90ab28b
Merge pull request #10194 from Microsoft/fixInstanceofNarrowing
...
Fix instanceof narrowing
2016-08-08 11:51:34 -07:00
Anders Hejlsberg
f6a850b988
Merge pull request #10188 from Microsoft/discriminantPropertyCheck
...
Discriminant property checks
2016-08-08 11:49:33 -07:00
Anders Hejlsberg
ba521de66d
Accept new baselines
2016-08-08 09:45:12 -07:00
Anders Hejlsberg
ce5a3f466d
Add more tests
2016-08-08 09:44:43 -07:00
Anders Hejlsberg
a0c5608770
Update comment
2016-08-08 09:44:24 -07:00
Nathan Shively-Sanders
acfdfe0560
Merge pull request #10103 from Microsoft/narrowing-a-type-parameter-intersects-concrete-types
...
Correctly narrow unconstrained type parameters
2016-08-08 09:22:32 -07:00
Nathan Shively-Sanders
5f665ad353
Merge pull request #9996 from joshaber/patch-1
...
Add `find` and `findIndex` to ReadonlyArray
2016-08-08 09:11:09 -07:00
Nathan Shively-Sanders
2845d2f8b8
Improve naming and documentation from PR
2016-08-08 09:04:46 -07:00
Nathan Shively-Sanders
e25db39ab4
Merge branch 'master' into narrowing-a-type-parameter-intersects-concrete-types
2016-08-08 08:42:28 -07:00
Anders Hejlsberg
67b3fe58fa
Add regression test
2016-08-07 08:53:36 -07:00
Anders Hejlsberg
f50226b481
Accept new baselines
2016-08-07 07:53:36 -07:00
Anders Hejlsberg
01f865dee7
Fix instanceof operator narrowing issues
2016-08-07 07:48:40 -07:00
Godfrey Chan
cc2dc3acb0
Emit more efficient/concise "empty" ES6 ctor
...
When there are property assignments in a the class body of an inheriting
class, tsc current emit the following compilation:
```ts
class Foo extends Bar {
public foo = 1;
}
```
```js
class Foo extends Bar {
constructor(…args) {
super(…args);
this.foo = 1;
}
}
```
This introduces an unneeded local variable and might force a reification
of the `arguments` object (or otherwise reify the arguments into an
array).
This is particularly bad when that output is fed into another transpiler
like Babel. In Babel, you get something like this today:
```js
var Foo = (function (_Bar) {
_inherits(Foo, _Bar);
function Foo() {
_classCallCheck(this, Foo);
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_Bar.call.apply(_Bar, [this].concat(args));
this.foo = 1;
}
return Foo;
})(Bar);
```
This causes a lot of needless work/allocations and some very strange
code (`.call.apply` o_0).
Admittedly, this is not strictly tsc’s problem; it could have done a
deeper analysis of the code and optimized out the extra dance. However,
tsc could also have emitted this simpler, more concise and semantically
equivalent code in the first place:
```js
class Foo extends Bar {
constructor() {
super(…arguments);
this.foo = 1;
}
}
```
Which compiles into the following in Babel:
```js
var Foo = (function (_Bar) {
_inherits(Foo, _Bar);
function Foo() {
_classCallCheck(this, Foo);
_Bar.apply(this, arguments);
this.foo = 1;
}
return Foo;
})(Bar);
```
Which is well-optimized (today) in most engines and much less confusing
to read.
As far as I can tell, the proposed compilation has exactly the same
semantics as before.
Fixes #10175
2016-08-06 23:24:44 -07:00
Anders Hejlsberg
1375505a1f
Add tests
2016-08-06 09:06:56 -07:00
Anders Hejlsberg
37e96b3a06
Stricter check for discriminant properties in type guards
2016-08-06 09:01:35 -07:00
gcnew
46f5e5fad1
Surface noErrorTruncation option
2016-08-06 01:23:31 +03:00
Wesley Wigham
269b828538
Fix lssl task ( #9967 )
2016-08-05 14:16:29 -07:00
Wesley Wigham
02a79e3f81
Try using runtests-parallel for CI ( #9970 )
...
* Try using runtests-parallel for CI
* Put worker count setting into .travis.yml
* Reduce worker count to 4 - 8 wasnt much different from 4-6 but had contention issues causing timeouts
2016-08-05 13:50:21 -07:00
Nathan Shively-Sanders
cabd276ddc
Fix more lint
2016-08-05 10:28:03 -07:00
Yui
ceab31cf0d
Port PR #10016 to Master ( #10100 )
...
* Treat namespaceExportDeclaration as declaration
* Update baselines
* wip - add tests
* Add tests
* Show "export namespace" for quick-info
2016-08-05 10:12:01 -07:00
Nathan Shively-Sanders
8f638f7ecd
Fix lint
2016-08-05 09:58:30 -07:00
Andy
b54aec1c12
Merge pull request #10153 from Microsoft/tsx_toString
...
Don't allow properties inherited from Object to be automatically included in TSX attributes
2016-08-05 05:57:24 -07:00
Nathan Shively-Sanders
798be6f4f9
Add new test baseline and delete else in binder
...
The extra `else` caused a ton of test failures!
2016-08-04 15:17:08 -07:00