angular.js v0.10.0 Release Notes

Release Date: 2011-09-02 // over 12 years ago
  • ๐Ÿ”‹ Features

    • ๐Ÿ‘€ complete rewrite of the Scope implementation with several API and semantic changes. Please see:
    • โž• added event system to scopes (see [$on], [$emit] and [$broadcast])
    • โž• added i18n and l10n support for date, currency and number filters see [i18n] docs for more info
    • โž• added localizable [ng:pluralize] widget
    • โž• added [ng:cloak] directive for hiding uncompiled templates

    ๐Ÿ› Bug Fixes

    • ๐Ÿ‘‰ make [ng:class] friendly towards other code adding/removing classes (commit)
    • ๐Ÿ›  several [jqLite] bugfixes and improvements
    • [ng:href], [ng:src] and friends now work properly when no expression is present in the attribute value. (Issue #534)
    • ๐Ÿ”ฆ expose missing [lowercase], [uppercase] and [isDate] APIs.

    ๐Ÿ“„ Docs

    • ๐Ÿ“„ many (but not all just yet) api docs were proof-read and improved

    ๐Ÿ’ฅ Breaking Changes:

    • many scope related changes:
      • $onEval is no more (use $watch with a fn as the only param if you really miss it)
      • $eval without params doesn't trigger model mutation observations (use $apply/$digest instead)
      • $digest propagates through the scope tree automatically (this is the desired behavior anyway)
      • $watch various API changes
      • scope is now the first argument passed into the $watch listener
      • this in the $watch listener is undefined instead of current scope
      • objects and arrays are watched and compared by equality and not just identity
      • the initial execution of the $watch listener now executes asynchronously with respect to the code registering it via $watch
      • exceptionHandler argument is no more
      • initRun argument is no more
      • angular.scope does not create child scopes by taking parent as the first argument - use $new instead
      • scope.$set and scope.$get were removed, use direct property assignment instead or $eval
    • ๐Ÿšš $route.onChange was removed and replaced with $beforeRouteChange, $afterRouteChange and $routeUpdate events that can be used together with the new $routeParams service
    • angular.equals() now uses === instead of == when comparing primitives