Do we still need `@ember-decorators/babel-transforms`
Closed this issue · 4 comments
ember-cli-babel
is not provides babel-transforms
do we still need to install @ember-decorators/babel-transforms
. I believe some changes are required to use is directly from ember-cli-babel
because I have tried removing @ember-decorators/babel-transforms
and got an error that obviously points to the fact that babel-transforms
is not found.
ember-cli-babel
provides the legacy "stage 1" decorator transforms as Ember now uses these transforms according to the RFC #440 "Decorator Support".
ember-concurrency-decorators
and many other decorator addons are still based on the stage 2 decorators. If you install @ember-decorators/babel-transforms
, you'll get the stage 2 decorators instead of the stage 1 decorators which would be added by ember-cli-babel
.
ember-concurrency-decorators
and other decorator addons will soon be "updated" to stage 1 decorators to be compatible with the latest vanilla Ember.js. I'm currently holding out for a polyfill that makes stage 1 decorators consumable in stage 2 decorator apps, so that we don't break these apps with a new release.
I'm experiencing problems as a result of this in conjunction with MS Edge 18.
If I get rid of @ember-decorators/babel-transforms
we can't build using ember-concurrency-decorators
because the emberr-cli-babel
transforms can't deal with
@task
*foo () {}
Would be happy to try and help to expedite a solution, but not sure there's anything useful I can do?
Until babel/babel#9852 is fixed, we can't use the above syntax with stage 1 / vanilla ember-cli-babel
. The only possible syntax would be:
@task
foo = function*() {};
// or with just ember-concurrency
@task(function*() {}) foo;
I released 1.0.0-beta.1
which reverts back to the stage 1 / legacy decorators and completely drops support for stage 2 and @ember-decorators/babel-transforms
.
The above comment regarding the syntax still holds true though.