BT

Ember.js 2.0 Celebrated for Backwards Compatibility

| by James Chesters Follow 1 Followers on Aug 18, 2015. Estimated reading time: 3 minutes |

Ember 2.0 has been released -- with zero new features.

In the blog post Ember.JS 2.0 Released Yehuda Katz and Matthew Beale highlight "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."

The decision has been met warmly by the JavaScript community, who have widely praised the framework for remaining backwards compatible with 1.13.

Katz and Beale explain that Ember 2.0 only removes the features that were deprecated in Ember 1.13, meaning that apps that run on Ember 1.13 without deprecation warnings should also run on Ember 2.0.

They continue

Since Ember 1.0, adherence to semantic versioning has helped us grow an amazing community. Ember powers extremely ambitious applications, and most of those applications have been able to move forward over 13+ releases as new features arrived.

We are committed to giving every Ember codebase a path into 2.x. To ensure this, we've flagged everything removed in 2.0 with a deprecation in the 1.x series. If your app runs on Ember 1.13 without raising deprecations, it should run on 2.0. There are no new features to adapt to or adopt.

While Ember 2.0 might not come with any new features, it drops several APIs including Views, Controllers, ReduceComputed and ArrayComputed.

Views and Controllers are both supported by the ember-legacy-views and ember-legacy-controllers compatibility addons respectively, that will be maintained until at least Ember 2.6. ReduceComputed and ArrayComputed have both been made obsolete by the Glimmer rendering engine, introduced in Ember 1.13, which makes their function redundant.

On Hacker News, in the discussion Ember.js 2.0 Released, many were quick to commend the Ember team. User nercury commented

If your app runs on Ember 1.13 without raising deprecations, it should run on 2.0.

Every framework should take note: that's how you avoid creating another framework and fragmenting community! It's is great to see this in action. Amazing work.

Not everyone in the JavaScript community was pleased with Ember's path to 2.0. Tom Marsh commented "Have you seen the changes between 1.8 and 1.13? It might as well be a new framework. So far moving from 1.8 to 1.8 on CLI has taken my team 3 months, and we still need to migrate to 1.13 if we are to remain supported."

Ember co-creator Tom Dale replied "I'm really sorry it's felt like a slog for your team. We've learned a lot from the transition from 1.x -> 2.0, and definitely didn't get everything right. That said, we think we can refine the 2.x -> 3.0 transition to make it much smoother based on what we've learned."

On Reddit, in the related discussion Ember.js 2.0 Released user awj defended the framework, saying

Ember moves fast. The entire JavaScript world moves fast. Maybe it's "too fast" for a lot of people's level of involvement/commitment due to their project needs.

 

But Ember, unlike the vast majority of projects I've worked with, puts a lot of effort into not breaking things. Yeah it's moving fast, yeah there are new concepts coming at you from all angles, but it's not like you upgrade from 1.12 to 1.13 and everything just breaks inexplicably.

Katz and Beale also addressed some of the issues developers may have experienced

In the lead-up to breaking changes in Ember 2.0, we made a number of mistakes that caused our users to experience a great deal of churn.

 

The feeling of "churn" is contrary to all our release process goals. In addition to the continued maintenance of a six-week release cycle, we have a number of tweaks to the process planned for 2.x. These are intended to help us avoid a similar problem late in the 2.x cycle.

Among these "tweaks" are LTS (Long-Term Support) Releases, more informative deprecations and improved deprecation tooling.

Ember.js is released via an MIT licence. InfoQ readers can contribute to Ember.js via its GitHub project. Full info on the Ember 2.0 release can be found in the changelog.

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Progressive by Denys Slipetskyy

I like this framework more and more while it evolves ... was lucky to not put my bid on Angular

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

1 Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT