AngularJS - 1.2.25 is out

Latest stable AngularJS version is out. 1.2.25 hypnotic-gesticulation (2014-09-16) has been released. Stay up to date!

1.2.25 hypnotic-gesticulation (2014-09-16)

Bug Fixes

  • i18n: fix typo at i18n generation code (1b6d74cc)
  • ngLocale: Regenerate Locale Files (06c76694)
  • select: update option labels when model changes (d89d59f4, #9025)

1.2.24 static-levitation (2014-09-09)

Bug Fixes

  • $browser: detect changes to the browser url that happened in sync (2ece4d03, #6976)
  • $compile: - render nested transclusion at the root of a template (9d9cdfb5, #8914, #8925) - render nested transclusion at the root of a template (466320f6, #8914, #8925)
  • $location: - don’t call toString on null values (c12e8d46) - remove an unused parameter of $location.url (c65796d4) - allow numeric location setter arguments (68a09ba7, #7054)
  • $parse: disallow passing Function to Array.sort (b39e1d47)
  • form: ensure concurrent animations use setClass (d7548fdf, #8166)
  • input: check scope.$$phase only on $rootScope (36e6de1d)
  • ngEventDirs: - check scope.$$phase only on $rootScope (2712c2f1, #8891) - execute blur and focus expression using scope.$evalAsync (54f0bc0f, #4979, #5945, #8803, #6910, #5402)
  • ngRepeat: improve errors for duplicate items (1812af58)
  • numberFilter: format numbers that round to zero as nonnegative (7e02fa07, #8489)
  • orderBy: allow arrayLike objects to be ordered (94b0f2d3, #8944)

Breaking Changes

The blur and focus event fire synchronously, also during DOM operations that remove elements. This lead to errors as the Angular model was not in a consistent state. See this fiddle for a demo.

This change executes the expression of those events using scope.$evalAsync if an $apply is in progress, otherwise keeps the old behavior.

Fixes #4979 Fixes #5945 Closes #8803 Closes #6910 Closes #5402

1.2.23 superficial-malady (2014-08-22)

Bug Fixes

  • $location: - rewrite relative URI correctly if path==='/' in legacy html5Mode (c6e4defc, #8684) - don’t call indexOf() of undefined href attribute (74a7afcb, #7721, #8681)
  • $sanitize: sanitize javascript urls with comments (4f387050, #8274)
  • Angular: make Date comparison in equals() NaN-aware (98f60372, #8650, #8715)
  • copy: clear array destinations correctly for non-array sources (888b0f54, #8610, #8702)
  • input: - use lowercase method to account for undefined type (456026ef) - by default, do not trim input[type=password] values (ebece0bc, #8250, #8230)
  • linky: handle quotes around email addresses (effc98fd, #8520)
  • minErr: encode btstrpd error input to strip angle brackets (aaf9c5e5, #8683)
  • ngHref: remove attribute when empty value instead of ignoring (ed56872b, #2755)

Breaking Changes

Previously, input[type=password] would trim values by default, and would require an explicit ng-trim=”false” to disable the trimming behaviour. After this CL, ng-trim no longer affects input[type=password], and will never trim the password value.

Closes #8250 Closes #8230

comments powered by Disqus