# v1.2.15 beer-underestimating (2014-03-21) ## Bug Fixes - **$$RAFProvider:** check for webkitCancelRequestAnimationFrame ([e84da228](https://github.com/angular/angular.js/commit/e84da2283c4e195be557f7b06c8783fe502acbbb), [#6526](https://github.com/angular/angular.js/issues/6526)) - **$$rAF:** always fallback to a $timeout incase native rAF isn't supported ([ee8e4a94](https://github.com/angular/angular.js/commit/ee8e4a946ed8f943e00846b88d8d51c0b2cd1fab), [#6654](https://github.com/angular/angular.js/issues/6654)) - **$compile:** support templates with thead and tfoot root elements ([ca0ac649](https://github.com/angular/angular.js/commit/ca0ac649971ae4fb50419b38f92a98d2226eb696), [#6289](https://github.com/angular/angular.js/issues/6289)) - **$http:** - allow sending Blob data using $http ([fbb125a3](https://github.com/angular/angular.js/commit/fbb125a3af164e52af2f8119175b04cbbed2f331), [#5012](https://github.com/angular/angular.js/issues/5012)) - don't covert 0 status codes to 404 for non-file protocols ([f108a2a9](https://github.com/angular/angular.js/commit/f108a2a994149ecc011e29f327bcb8e11adf72d9), [#6074](https://github.com/angular/angular.js/issues/6074), [#6155](https://github.com/angular/angular.js/issues/6155)) - **$rootScope:** - ng-repeat can't handle NaN values. #4605 ([e48c28fe](https://github.com/angular/angular.js/commit/e48c28fe9292efe7af6205b2be116d2350990c73), [#4605](https://github.com/angular/angular.js/issues/4605)) - $watchCollection should call listener with oldValue ([3dd95727](https://github.com/angular/angular.js/commit/3dd9572754c7bafec30dd625f5c611346959c969), [#2621](https://github.com/angular/angular.js/issues/2621), [#5661](https://github.com/angular/angular.js/issues/5661), [#5688](https://github.com/angular/angular.js/issues/5688), [#6736](https://github.com/angular/angular.js/issues/6736)) - **angular.bootstrap:** only allow angular to load once ([0d60f8d3](https://github.com/angular/angular.js/commit/0d60f8d367e38224696749b0f7de04bd60649815), [#5863](https://github.com/angular/angular.js/issues/5863), [#5587](https://github.com/angular/angular.js/issues/5587)) - **jqLite:** traverse `host` property for DocumentFragment in inheritedData() ([98d825e1](https://github.com/angular/angular.js/commit/98d825e10d3bf76f47e69abba857a8933c8cb7d9), [#6637](https://github.com/angular/angular.js/issues/6637)) - **ngAnimate:** setting classNameFilter disables animation inside ng-if ([a41a2a1d](https://github.com/angular/angular.js/commit/a41a2a1d2ce20f86ac2709592e4ada527160e580), [#6539](https://github.com/angular/angular.js/issues/6539)) - **ngCookie:** convert non-string values to string ([93d1c95c](https://github.com/angular/angular.js/commit/93d1c95c61dbfa565333bb64527a103242175af7), [#6151](https://github.com/angular/angular.js/issues/6151), [#6220](https://github.com/angular/angular.js/issues/6220)) - **ngTouch:** update workaround for desktop Webkit quirk ([01a34f51](https://github.com/angular/angular.js/commit/01a34f513bb567ed6d4c81d00d7c2a777c0dae01), [#6302](https://github.com/angular/angular.js/issues/6302)) - **orderBy:** support string predicates containing non-ident characters ([10d3e1e4](https://github.com/angular/angular.js/commit/10d3e1e4472ab9f5cf4418b6438ec2e0f2b0b288), [#6143](https://github.com/angular/angular.js/issues/6143), [#6144](https://github.com/angular/angular.js/issues/6144)) - **select:** avoid checking option element selected properties in render ([dc149de9](https://github.com/angular/angular.js/commit/dc149de9364c66b988f169f67cad39577ba43434), [#2448](https://github.com/angular/angular.js/issues/2448), [#5994](https://github.com/angular/angular.js/issues/5994), [#6769](https://github.com/angular/angular.js/issues/6769)) # 1.2.14 feisty-cryokinesis (2014-03-01) ## Bug Fixes - **$animate:** - delegate down to addClass/removeClass if setClass is not found ([18c41af0](https://github.com/angular/angular.js/commit/18c41af065006a804a3d38eecca7ae184103ece9), [#6463](https://github.com/angular/angular.js/issues/6463)) - ensure all comment nodes are removed during a leave animation ([f4f1f43d](https://github.com/angular/angular.js/commit/f4f1f43d5140385bbf070510975f72b65196e08a), [#6403](https://github.com/angular/angular.js/issues/6403)) - only block keyframes if a stagger is set to occur ([e71e7b6c](https://github.com/angular/angular.js/commit/e71e7b6cae57f25c5837dda98551c8e0a5cb720d), [#4225](https://github.com/angular/angular.js/issues/4225)) - ensure that animateable directives cancel expired leave animations ([e9881991](https://github.com/angular/angular.js/commit/e9881991ca0a5019d3a4215477738ed247898ba0), [#5886](https://github.com/angular/angular.js/issues/5886)) - ensure all animated elements are taken care of during the closing timeout ([99720fb5](https://github.com/angular/angular.js/commit/99720fb5ab7259af37f708bc4eeda7cbbe790a69), [#6395](https://github.com/angular/angular.js/issues/6395)) - fix for TypeError Cannot call method 'querySelectorAll' in cancelChildAnimations ([c914cd99](https://github.com/angular/angular.js/commit/c914cd99b3aaf932e3c0e2a585eead7b76621f1b), [#6205](https://github.com/angular/angular.js/issues/6205)) - **$http:** - do not add trailing question ([c8e03e34](https://github.com/angular/angular.js/commit/c8e03e34b27a8449d8e1bfe0e3801d6a67ae2c49), [#6342](https://github.com/angular/angular.js/issues/6342)) - send GET requests by default ([267b2173](https://github.com/angular/angular.js/commit/267b217376ed466e9f260ecfdfa15a8227c103ff), [#5985](https://github.com/angular/angular.js/issues/5985), [#6401](https://github.com/angular/angular.js/issues/6401)) - **$parse:** reduce false-positives in isElement tests ([5fe1f39f](https://github.com/angular/angular.js/commit/5fe1f39f027c6f2c6a530975dd5389d788d3c0eb), [#4805](https://github.com/angular/angular.js/issues/4805), [#5675](https://github.com/angular/angular.js/issues/5675)) - **input:** use ValidityState to determine validity ([c2d447e3](https://github.com/angular/angular.js/commit/c2d447e378dd72d1b955f476bd5bf249625b4dab), [#4293](https://github.com/angular/angular.js/issues/4293), [#2144](https://github.com/angular/angular.js/issues/2144), [#4857](https://github.com/angular/angular.js/issues/4857), [#5120](https://github.com/angular/angular.js/issues/5120), [#4945](https://github.com/angular/angular.js/issues/4945), [#5500](https://github.com/angular/angular.js/issues/5500), [#5944](https://github.com/angular/angular.js/issues/5944)) - **isElement:** reduce false-positives in isElement tests ([75515852](https://github.com/angular/angular.js/commit/75515852ea9742d3d84a0f463c2a2c61ef2b7323)) - **jqLite:** - properly toggle multiple classes ([4e73c80b](https://github.com/angular/angular.js/commit/4e73c80b17bd237a8491782bcf9e19f1889e12ed), [#4467](https://github.com/angular/angular.js/issues/4467), [#6448](https://github.com/angular/angular.js/issues/6448)) - make jqLite('