New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature names are misleading #1990
Comments
And then change the prefixes as they advance? ex: |
Yes. |
Thanks for logging this @domenic. Are you also proposing dropping the |
Hmm, the |
This sounds like a good change to me. I'll just throw out, I think the That stuff could be limited by linting too of course, just wanted to add it as a data point. |
@loganfsmyth Alternatively you can set the |
Is it possible to move away from stages, and publish the experimental implementations as babel plugins in entirely separate npm packages? E.g. |
@RickWong Yep:
|
Maybe |
Including the stage in the name is even more fragile. It could change multiple times a year. |
@sebmck right. Re-reading the whole thread now I think your idea about moving proposed/experimental features to the separate packages is the best one. |
This will be fixed by Babel 6 which uses the ES2015 naming to refer to plugins that transform ES2015 syntax. All other plugins that relate to experimental/non-standard syntax and transformations are white labelled with just their name. |
I know I've mentioned this on Twitter and @sebmck has agreed, but I wanted to make sure it was logged somewhere I could keep track. Please close if it's a dupe.
Naming all future speculative proposals as "es7" is highly misleading. Let's take a look:
So basically 1/9 of the supposed "ES7" features is on track for ES2016, in my personal view at least. Which is totally fine! There will be another ES2017 train next year. Features which receive enough scrutiny and acceptance can get on that train.
But in the meantime, Babel is creating a bad environment by saying that certain features are "ES7". I honestly think that people don't pay attention to the stages; they just say "of course I'd like to enable es7.classProperties; it'll be in ES7, after all, which is the next version!" This kind of "feature marketing" is harmful both to the ecosystem and to Babel's credibility.
My counterproposal would be one of:
Remove the "es7." prefix entirely. Features happen when they happen. Version numbers are a figment of the imagination; implementers implement features independently, without care for which European Computer Manufacturer's Association-stamped Word document those features live in.
Alternately:
Add "nonstandard." prefix to below stage 2, and "proposed." prefix to stage 2 onward, removing the "es7." prefix. This should clearly communicate that these early-stage features are just ideas that someone has, and are just as likely to be weeded out and abandoned by the committee as they are to advance.
The text was updated successfully, but these errors were encountered: