Wednesday, February 25, 2015

New AngularJS Releases 1.4.0-beta.5 and 1.3.14

The ongoing improvement of AngularJS 1.x continues with another sparkling pair of releases.

  • 1.4.0-beta.5 - karmic-stabilization
  • 1.3.14 - instantaneous-browserification
See the CHANGELOG for more detailed information.

CommonJS support

In both 1.4.0-beta.5 and 1.3.14 we have improved support for using Angular as CommonJS modules
with tools like Browserify, by providing entry points in our npm packages that load the module and expose the appropriate exports for consumption.

If you are using Browserify, you no longer need to provide shims for the core AngularJS modules. You can now write code that looks like:

var angular = require('angular');
angular.module('myMod', [
  require('angular-animate'),
  require('angular-mocks/ngMock'),
  require('angular-mocks/ngAnimateMock'),
  require('angular-i18n/en-us')
]);

Thanks to @bclinkinbeard@bendrucker, @kentcdodds, @caitp and @btford for their help in putting this together!

Bug Fixes

The 1.3.14 release contains fixes for ngModel, input directives and ngAria.
The 1.4.0-beta.5 release has these fixes along with others for $http, select and templateRequest.

New Features

In 1.4.0-beta.5 we have added support for disabling options in a select element using ngOptions, extended the limitTo filter so that the limited collection doesn't have to start at the beginning of the collection and ngMessages now supports creating message lists dynamically, which means that you can do clever things such as loading messages on the fly from a server.

Still more to come!

We are still actively developing the 1.4 branch, with a few key new features still to be
merged. Once 1.4.0 is released we are going to begin planning the 1.5 development schedule, so watch this space!

Tuesday, February 17, 2015

Preview of the New Angular Router

We've been working on a new router for both Angular 1 and Angular 2, and while APIs are still in flux, we want your feedback on the new router in 1.x.

You can read the docs, browse the code on GitHub, and install it with npm install angular-new-router

There's still lots more work to be done, but we want to know what you think. You can help out by filing issues and questions on GitHub.

What about ngRoute?

ngRoute isn't going anywhere, but it's unlikely to receive new features.

What's next?

We've been making good progress on Angular 2 – last week we demoed a todo list app written with Angular 2 at our Mountain View meetup. Next will be writing bindings for Angular 2 for this routing system.

We're also working on a proposal for making lazy loading easier at the DI level in Angular 1. Once this lands, the new router will be able to help you lazy load parts of your Angular 1 app.