Looking at backbonejs.org you’d be forgiven for thinking the project has stagnated somewhat. It’s currently at version 0.9.2, released back in March, 2012. So what’s going on? It turns out a huge amount of work! The developers have committed a slew of changes since then. The latest version and commit history is readily available in the master Backbone.js branch on GitHub. Since March there has been consistent activity on the master branch, including community contributions. The core developers are working hard on releasing 1.0.
If you’ve been sticking with the version from the Backbone.js website (0.9.2), you’re probably wondering what’s changed between that version and the current code in the master branch. Here’s a summary of the new features and tweaks:
- Backbone can run without
Backbone.Viewhow has a
disposemethod for preventing memory leaks: #1461
classNamecan be functions: #1520
- Collections can be unsorted: #1342
Backbone.Collection.addhas an optional
mergeflag for merging models with identical IDs: #1220
- Collections can now be cloned
- Success callbacks now receive the original
- ‘off’ is chainable when there are no events
In addition to these changes, there are a lot of fixes, refactored internals, and documentation improvements.
If you’re interested in testing this against your Backbone-powered apps, then download the Backbone.js edge version to try it out. I’m not sure when the next major version will be released, but I’ll be watching both the Backbone.js Google Group and GitHub repository for news.