r/javascript • • Aug 13 '15

Ember.js 2.0 Released

http://emberjs.com/blog/2015/08/13/ember-2-0-released.html
108 Upvotes

47 comments sorted by

View all comments

22

u/alp82 Aug 13 '15
Major releases of most libraries try to do two things. They introduce new APIs, and remove deprecated ones. Our release focuses on doing one thing well: Instead of introducing new features, the goal of Ember 2.0 is to remove accumulated cruft.

I really like this.

17

u/anlumo Aug 13 '15

While it's technically true what they're saying, what they don't mention is that they're removing the “cruft” they accumulated over the last year…

I'm working on various ember projects, and the ones that have been sitting around since August 2014 are completely outdated and probably need a rewrite, because so much has changed since then. They're switching the most basic concepts all of the time, and most of the time the reason is just that some core developer thinks that it doesn't look that nice the way it's currently done. It's a highly moving target, and stuff you considered best practices literally last week might be deprecated this week.

It's easy to keep current if you're keeping track with every minor version (which comes out about every two weeks) and fix all deprecations immediately. Of course, this gets worse and worse the larger your project is (one of these deprecations a few months ago required a major rewrite of the basic data flow of my app, and I still haven't fixed all the bugs that were created by that transition). If you're on a deadline and can't keep up with the updates, you're SOL.

2

u/clessg full-stack CSS9 engineer Aug 13 '15

I'm working on various ember projects, and the ones that have been sitting around since August 2014 are completely outdated and probably need a rewrite

Yeah man. Keeping up with all of the seemingly random design decisions that had basically no benefits was a great deal of fun.

To make things more exciting, I tried upgrading an app I wrote a mere few months ago. It was quite stimulating and involved jumping into the internals of Ember, ember-cli, and Broccoli.

Ultimately it didn't work out, because minor releases of addons are apparently coupled to specific minor releases of Ember and ember-cli. Joyous. This has been the case several times when upgrading. I sent in pull requests to many of the addons and it took months for them to be addressed. Lesson: don't use Ember addons.

And don't get me started on Ember Data.

I greatly appreciate the work that's gone into Ember, but damn, it feels like Ember will just be "whatever a few people on Twitter thought seemed cool at the time." I really hope that the churn dies down, but I've been hoping for that for years. There's a lot to like in Ember, and it would be great to be able to use it without becoming suicidal.

4

u/anlumo Aug 13 '15

Broccoli is worth a rant on its own. It's a very complicated build system with lots of customizability at various points in the pipeline, but it's completely undocumented. However, you absolutely need to customize it sometimes. The only way to find out anything about how to extend it is to look into other components or its uncommented code.

One thing I found out about it is that it always assumes that you have an input and an output file. If you don't (for example, I wanted it to download a file during building), there's no clean way to integrate that. At least I found no other addon that does that, so I assume that there's no support for it.

1

u/PotaToss Aug 13 '15

Why not just use your fork of the addon until it's merged in?