feat(jqLite): provide support for element.one()
feat(ngAnimate): provide configuration support to match specific className values to trigger animations

Closes #5357
Closes #5283
docs(CHANGELOG): add v1.2.6 changes
chore(release): improve the release script
chore(release): cut v1.2.6 release
chore(release): start v1.2.7
chore(release): add codename for 1.2.7
docs(guide): fix typo

Closes #5481
chore(release): update cdn version
style($http): fix a semi-colon
docs(guide/forms): code style changes for an example

Closes #5499
docs(guide/forms): update example

Right now, non-integers such as 'aawefwae' are valid.
This ensures that only integers are valid. Hopefully that makes the example more powerful.

Closes #5501
chore: update Karma and SauceLabs launcher

This should improve stability as it contains capture timeout (if a browser does not capture in a given timeout it gets killed) and retry (if a browser fails to start, Karma will try n times before failing).
fix($sanitize): consider `size` attribute as valid/allowed attribute

The "size" attribute gets set on <font> elements when using HTML5 rich
text editors, or elements with the contenteditable attribute, that rely
on the 'fontSize' command (execCommand).

Closes #5522
fix(ngRoute): instantiate controller when template is empty

Before this change, $route controllers are not instantiated if the template is falsy, which includes
the empty string. This change tests if the template is not undefined, rather than just falsy, in
order to ensure that templates are instantiated even when the template is empty, which people may
have some reason to do.

This "bug" was reported in http://robb.weblaws.org/2013/06/21/angularjs-vs-emberjs/, as a "gotcha"
for AngularJS / ngRoute.

Closes #5550
perf(Scope): limit propagation of $broadcast to scopes that have listeners for the event

Update $on and $destroy to maintain a count of event keys registered for each scope and its children.
$broadcast will not descend past a node that has a count of 0/undefined for the $broadcasted event key.

Closes #5341
Closes #5371
fix($location): re-assign history after BFCache back on Android browser

Closes #5425
fix(input): prevent double $digest when using jQuery trigger.

If an event was performed natively, jQuery sets the isTrigger property.
When triggering event manually, the field is not present. Manually
triggered events are performed synchronously which causes the "$digest
already in progress" error.

Closes #5293
chore(release.sh): push both the release commit and tag
fix(input): use apply on change event only when one isn't already in progress

Closes #5293