Because of the new transformation based emitter, ES6 code that used to incorrectly compile to ES5 and "work" is now broken in an ES6 emit and the ES5 emit. Basically, it has to do with the availability of this when passing a function to super() in a class. This effects the "unwrapping" of promises when subclassing (like our ExtensiblePromise and Task). The issue Microsoft/TypeScript#8060 describes it.
Because of the new transformation based emitter, ES6 code that used to incorrectly compile to ES5 and "work" is now broken in an ES6 emit and the ES5 emit. Basically, it has to do with the availability of
this
when passing a function tosuper()
in a class. This effects the "unwrapping" of promises when subclassing (like our ExtensiblePromise and Task). The issue Microsoft/TypeScript#8060 describes it.