Skip to content
This repository was archived by the owner on Apr 12, 2024. It is now read-only.

V1.4.x material breakage rollback #13503

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
151 commits
Select commit Hold shift + click to select a range
4994acd
fix(filters): ensure `formatNumber` observes i18n decimal separators
petebacondarwin Sep 14, 2015
7a413df
feat($http): add `$xhrFactory` service to enable creation of custom x…
sjurba Jun 18, 2015
698af19
fix($parse): do not convert to string computed properties multiple times
lgalfaso Sep 19, 2015
808f984
docs($cacheFactory): fix call to `isUndefined()` in example
Sep 21, 2015
5a98e80
fix($compile): use createMap() for $$observe listeners when initializ…
jbedard Dec 14, 2014
a7f3761
fix($parse): block assigning to fields of a constructor
lgalfaso Sep 20, 2015
dbc6985
fix(ngOptions): prevent frozen select ui in IE
Narretz Mar 23, 2015
fa01571
docs(guide/Directives): fix link formatting
Narretz Sep 22, 2015
7295c60
fix(ngMessages): prevent race condition with ngAnimate
petebacondarwin Sep 21, 2015
fa8c399
fix(ngAnimate): callback detection should only use RAF when necessary
matsko Sep 16, 2015
215dff3
revert: chore(core): introduce $$body service
matsko Sep 17, 2015
9d3704c
fix(ngAnimate): ensure anchoring uses body as a container when needed
matsko Sep 18, 2015
1731d09
docs(ngList): whitespace -> newline
Narretz Sep 23, 2015
ea82962
build(travis): gracefully shut down the sauce connect tunnel after th…
IgorMinar Sep 23, 2015
9fde564
build(travis): fix typo in a comment
IgorMinar Sep 23, 2015
9c1f8ea
chore(check-node-modules): make check/reinstall node_modules work acr…
gkalpak Sep 9, 2015
9b72843
build(travis): make sauce connect process query a bit more specific
IgorMinar Sep 23, 2015
e52d731
feat($animateCss): add support for temporary styles via `cleanupStyles`
matsko Sep 24, 2015
c4a1b61
docs($animateCss): `options.transition` should be `options.transition…
matsko Sep 24, 2015
fa3ddba
docs(ngModel): align $viewValue description with $setViewValue
Narretz Sep 23, 2015
655c52a
docs(guide/Directives): let myTabs directive ctrl use inline array no…
s-light Sep 5, 2015
03a4a96
test(ngOptions): clarify a test description
Narretz Sep 26, 2015
68d4dc5
fix(ngOptions): skip comments when looking for option elements
Narretz Sep 25, 2015
8c618d8
docs($http): link to usage where config is mentioned; make drier
Narretz Sep 25, 2015
2f61145
chore(CHANGELOG): update with changes for 1.4.7
matsko Sep 29, 2015
3485ba1
docs(guide/Using $location): note that the fakeBrowser is not for act…
Narretz Oct 1, 2015
48d0ffc
docs(guide/Forms): fix indentation.
koyner Oct 1, 2015
f9387c6
docs(guide/Running in Production): fix an incorrect indefinite article
flowersinthesand Oct 1, 2015
3a8d135
docs($httpProvider): fix description of useLegacyPromiseExtensions
johnz133 Sep 29, 2015
4262f15
docs(ngAnimate): fix typos in examples
Oct 1, 2015
690b69b
docs(tutorial): update tutorial copy to reflect updates to tutorial s…
spectre6000 Oct 1, 2015
99fc6cd
docs(tutorial): updates for the text for animations in step 12
spoonraker Sep 2, 2015
256d9a9
docs(ngAnimate): simplify `$animateCss` example code
matsko Oct 5, 2015
7b2ecf4
fix(ngOptions): override select option registration
Narretz Sep 28, 2015
91b7cd9
fix(ngMock): reset cache before every test
petebacondarwin Oct 5, 2015
bf5ac52
style(ngOptions): fix missing closing brace
petebacondarwin Oct 6, 2015
5ec5aa7
style(ngOptionsSpec): remove excess space
petebacondarwin Oct 6, 2015
3397a03
docs(ngOptions): rephrased a sentence for clarity
thinegod Oct 5, 2015
9bd1645
docs($animate): fixed typo ("an animations" -> "any animations")
RaghavRamesh Oct 6, 2015
216724b
docs(constant): fix pluralization
nebulou5 Oct 6, 2015
4fc40bc
fix(limitTo): start at 0 if `begin` is negative and exceeds input length
gkalpak Sep 8, 2015
0e6a700
Revert "fix(ngOptions): skip comments when looking for option elements"
Narretz Oct 7, 2015
540338f
refactor($compile): move $scope.$on('$destroy') handler out of initia…
jbedard Aug 9, 2015
6f1e0ba
refactor($compile): rename variables to clarify their purpose
petebacondarwin Oct 7, 2015
f08a0c5
refactor($compile): initialize removeWatchCollection at the start
petebacondarwin Oct 7, 2015
3d2b1be
refactor($compile): check removeWatches before calling
petebacondarwin Oct 7, 2015
fea8240
docs($sce): fix typo
rgksugan Oct 7, 2015
9dd33c0
docs(tutorial): update angular module versions to reflect tutorial files
spectre6000 Oct 1, 2015
46d24ae
docs(ngInclude): add workaround for using onload function with SVG in…
kutyel Oct 7, 2015
8e5c4e9
test(ngResource): fix typos in tests
chrisjlee Oct 8, 2015
786a1a4
docs(ngOptions): add info about preselecting complex models
Narretz Oct 8, 2015
8a944b0
docs(guide/Directives): improve description of linking function
hahla Oct 6, 2015
27d441b
docs(guide/Scopes): fix grammar
Oct 14, 2015
e403682
fix($parse): evaluate once simple expressions in interpolations
lgalfaso Oct 2, 2015
fe17c0e
docs(tutorial): add a note about Chrome or Firefox not being available
risan Oct 16, 2015
70edec9
fix(Angular.js): fix `isArrayLike` for unusual cases
jackcviers Nov 8, 2013
d3da55c
fix(isArrayLike): handle jQuery objects of length 0
lgalfaso Oct 26, 2015
7bf5429
docs($animateCss): add missing documentation for the `structural` option
sevdog Oct 13, 2015
c1f34e8
fix(jqLite): ensure mouseenter works with svg elements on IE
Dec 2, 2014
cb51116
fix(ngInput): change URL_REGEXP to better match RFC3987
andrewaustin Mar 20, 2015
59f1f4e
fix(ngAria): don't add tabindex to radio and checkbox inputs
marcysutton Oct 14, 2015
62ed26a
docs($anchorScroll): fix link to HTML5 spec
srawlins Oct 27, 2015
980fb39
docs(ngOptions): explain the caveats of using `select as` and `track …
ryanhart2 Oct 2, 2015
bcc257b
docs($q): add a note re. difference in exception handling vs ES6
Oct 15, 2015
0f58334
fix(ngOptions): skip comments and empty options when looking for options
petebacondarwin Oct 7, 2015
2116857
docs(ngModelOptions): add missing user.data result for updateOn: blur…
Charlie-Hua Oct 20, 2015
87b0055
fix($rootScope): stop IE9 memory leak when destroying scopes
petebacondarwin May 1, 2015
c690946
fix($http): apply `transformResponse` even when `data` is empty
gkalpak Sep 30, 2015
2a5a52a
fix($cacheFactory): check key exists before decreasing cache size count
tealtail Jul 11, 2015
1c0f721
test($rootScope): ensure that only child scopes are disconnected
petebacondarwin Oct 28, 2015
7170f9d
fix($resource): allow XHR request to be cancelled via timeout promise
netman92 Aug 23, 2015
6bd6dbf
fix($animate): ensure leave animation calls `close` callback
sreeramu Jul 6, 2015
5758d73
docs(select): document the `multiple` attribute
Puigcerber Oct 19, 2015
44c9d16
docs($rootScope): improve clarity and consistency
michaelgeorgeattard Oct 16, 2015
2512a81
docs(error/ctreq): fix typo
Narretz Oct 30, 2015
7a4124c
docs($location): improve style
bertyhell Oct 12, 2015
1bba358
chore(package.json): add commitizen, adapter and npm script
petebacondarwin Oct 31, 2015
3fa9aba
chore(package.json): update dgeni-packages to 0.11.0
petebacondarwin Oct 31, 2015
5b4713e
chore(protractor-conf.js): remove dangling comma
chrisjlee Oct 8, 2015
55ad192
perf($compile): use static jquery data method to avoid creating new i…
jbedard Jun 6, 2015
de2a56b
docs(angular-mocks): clarify `angular.mock.module` usage with objects
matthewjh Jul 15, 2015
838cf4b
fix(merge): clone elements instead of treating them like simple objects
luckylooke Jul 7, 2015
2f8db1b
fix(merge): ensure that jqlite->jqlite and DOM->DOM
petebacondarwin Nov 2, 2015
6e44643
docs(tutorial/0 - Bootstrapping): mention that the setup must be comp…
Narretz Nov 2, 2015
2b285c7
docs(ngInclude): fix incorrect link
Narretz Nov 2, 2015
8d841c3
docs(ngRepeat): fix link to MDN
JonyD Nov 2, 2015
d4b359f
test(merge): fix check on jquery object
petebacondarwin Nov 2, 2015
ce6a96b
perf(merge): remove unnecessary wrapping of jqLite element
gkalpak Nov 3, 2015
ca53dfc
docs(ngRepeat): add more info about watching and tracking
Narretz Nov 3, 2015
bbc2a0a
docs(guide/Directives): change "it" to possessive
jodytate Nov 4, 2015
b0c19f8
docs(guide/Concepts): remove unused `refresh` property
dkrugman Nov 5, 2015
b268c0b
docs(changelog, migration): add BC notice for setting ngOptions as at…
Narretz Nov 6, 2015
ab9b021
docs(changelog, migration): add BC notice for ngMessages evaluation
Narretz Nov 6, 2015
91ef94d
refactor($compile): simplify multi element directive check
jbedard Nov 6, 2015
74da034
fix($compile): fix scoping of transclusion directives inside replace …
petebacondarwin Nov 10, 2015
7503441
fix($compile): bind all directive controllers correctly when using `b…
jtorbicki Mar 18, 2015
b9f7c45
fix($compile): evaluate against the correct scope with bindToControll…
gkalpak Oct 6, 2015
5d8861f
fix($compile): bind all directive controllers correctly when using `b…
petebacondarwin Nov 10, 2015
83098b9
docs(contributing): fix typo (a unambiguous => an unambiguous)
ericcarraway Nov 11, 2015
34590e1
docs(readme): fix typo (setup => set up)
ericcarraway Nov 12, 2015
6f8ddb6
fix($location): ensure `$locationChangeSuccess` fires even if URL end…
rrsivabalan Nov 4, 2015
22f6602
fix(jqLite): deregister special `mouseenter` / `mouseleave` events co…
petebacondarwin Nov 12, 2015
d129354
perf(copy): only validate/clear user specified destination
jbedard Jun 9, 2015
19fab4a
perf(copy): avoid regex in isTypedArray
jbedard Jun 9, 2015
75e8764
chore(CHANGELOG): update with changes for 1.4.8
matsko Nov 19, 2015
937942f
fix(core): ensure animate runner is the same with and without animations
matsko Nov 19, 2015
d2cd8b9
docs(error/nobase): making <base> visible in html
anasqadrei Nov 20, 2015
7a36128
docs(angular.element): note that it does not find elements by tag nam…
keropodium Oct 16, 2015
057f78d
docs(angular.element): add more info, fix formatting
Narretz Nov 20, 2015
f780aba
docs(guide/Conceptual Overview): add missing object in sentence
aperala Nov 19, 2015
54c4041
feat(ngLocale): add support for standalone months
Narretz Sep 14, 2015
4e94864
chore(i18n): update locale files with standalone months
Narretz Sep 14, 2015
f163c90
fix(ngOptions): don't $dirty multiple select after compilation
m-amr Nov 18, 2015
01387ba
docs(numberFilter): change decimalPlaces to fractionSize
rahatarmanahmed Nov 17, 2015
1d9ad76
docs($swipe): remove reference to ngCarousel
O-Mutt Nov 20, 2015
a806979
docs($timeout): reword sentence for clarity
etsuo Nov 14, 2015
da11c1b
chore(bower/publish): read dist-tag from correct package.json
petebacondarwin Nov 24, 2015
7bb2414
fix($parse): handle interceptors with `undefined` expressions
lgalfaso Nov 24, 2015
45c5688
test($compile): add test for undefined non-optional reference binding
petebacondarwin Nov 25, 2015
8cdafe4
docs(tutorial/2 - Angular Templates): add closing parenthesis
JoanClaret Nov 24, 2015
592bf51
fix($animateCss): consider options.delay value for closing timeout
Narretz Nov 23, 2015
e509ab5
style($animateCssSpec): remove dump from test
Narretz Nov 29, 2015
6454f51
docs(guide/Scopes): fix grammar
Nov 30, 2015
b3da880
docs($parse): fix typo in error message description
daviskoh Sep 25, 2015
374a302
docs($controller): fix typo
xieranmaya Dec 1, 2015
9c49eb1
fix(formatNumber): cope with large and small number corner cases
petebacondarwin Dec 1, 2015
7a81e6f
fix(ngAnimate): do not alter the provided options data
matsko Oct 26, 2015
be01ceb
fix(ngAnimate): ignore children without animation data when closing them
Narretz Dec 1, 2015
c5bf9da
fix($http): throw if url passed is not a string
Dec 3, 2015
37b6ed3
docs(ngModelController): improve $rollbackViewValue description & exa…
Narretz Dec 3, 2015
55ac985
docs($resource): fix mixed singular/plural
marcusradell Dec 4, 2015
43c4029
docs(tutorial/step_08): fix tense
sijanmilan Dec 5, 2015
d2b08a0
docs(changelog, guide/migration): add BC notes for observing unset at…
Narretz Dec 7, 2015
f53a7f6
docs(guide/Expressions): note that new operator is unavailable
bhovhannes Dec 2, 2015
158f1ae
docs(orderBy): make examples consistent
zainengineer Nov 28, 2015
e45f9b6
docs(guide/Unit Testing): fix typo
Narretz Dec 7, 2015
e26256f
docs(guide/$location): fix table header formatting
gkalpak Dec 7, 2015
2995b54
fix(input): add missing chars to URL validation regex
Dec 7, 2015
8709539
docs(guide/migration): add info for 1.3 checkbox breaking change
Narretz Dec 8, 2015
ff228fb
revert: fix($resource): allow XHR request to be cancelled via timeout…
gkalpak Dec 7, 2015
de19342
refactor($resource): change if-block to switch-block for readability
gkalpak Dec 8, 2015
0292e6a
docs($resource): add note about _promises as timeout_ not being suppo…
gkalpak Dec 8, 2015
4748652
fix($resource): don't allow using promises as `timeout` and log a war…
gkalpak Dec 8, 2015
33cc75e
chore(angularFiles): the animateRunner.js file doesn't exist for ngAn…
matsko Dec 8, 2015
c98e08f
fix($animateCss): remove animation end event listeners on close
Narretz Dec 7, 2015
85e392f
fix(ngOptions): don't skip optgroup elements with value === ''
Narretz Dec 10, 2015
0c1b54f
fix($animate): correctly access minErr
Narretz Dec 8, 2015
7caf913
test($animate): ensure that pin() arguments are elements
Narretz Dec 10, 2015
1329e0f
fix($animate): allow animations when pinned element is parent element
Narretz Dec 2, 2015
194ade2
docs(select): fix typo
ReneFerwerda Dec 10, 2015
b98dcfa
revert: fix($animateCss): remove animation end event listeners on close
IgorMinar Dec 11, 2015
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 2 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ install:
- npm config set loglevel http
- npm install -g npm@2.5
# Instal npm dependecies and ensure that npm cache is not stale
- scripts/npm/install-dependencies.sh
- npm install

before_script:
- mkdir -p $LOGS_DIR
Expand All @@ -61,6 +61,7 @@ script:
- ./scripts/travis/build.sh

after_script:
- ./scripts/travis/tear_down_browser_provider.sh
- ./scripts/travis/print_logs.sh

notifications:
Expand Down
201 changes: 198 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,146 @@
<a name="1.4.8"></a>
# 1.4.8 ice-manipulation (2015-11-19)


## Bug Fixes

- **$animate:** ensure leave animation calls `close` callback
([6bd6dbff](https://github.com/angular/angular.js/commit/6bd6dbff4961a601c03e9465442788781d329ba6),
[#12278](https://github.com/angular/angular.js/issues/12278), [#12096](https://github.com/angular/angular.js/issues/12096), [#13054](https://github.com/angular/angular.js/issues/13054))
- **$cacheFactory:** check key exists before decreasing cache size count
([2a5a52a7](https://github.com/angular/angular.js/commit/2a5a52a76ccf60c6e8c5d881e90e11a2666a6d3c),
[#12321](https://github.com/angular/angular.js/issues/12321), [#12329](https://github.com/angular/angular.js/issues/12329))
- **$compile:**
- bind all directive controllers correctly when using `bindToController`
([5d8861fb](https://github.com/angular/angular.js/commit/5d8861fb2f203e8a688b6044cbd1140cd79fd049),
[#11343](https://github.com/angular/angular.js/issues/11343), [#11345](https://github.com/angular/angular.js/issues/11345))
- evaluate against the correct scope with bindToController on new scope
([b9f7c453](https://github.com/angular/angular.js/commit/b9f7c453e00d6938106f414952f74d5e5fdcb993),
[#13021](https://github.com/angular/angular.js/issues/13021), [#13025](https://github.com/angular/angular.js/issues/13025))
- fix scoping of transclusion directives inside replace directive
([74da0340](https://github.com/angular/angular.js/commit/74da03407782d679951cd8f693860cea214f2580),
[#12975](https://github.com/angular/angular.js/issues/12975), [#12936](https://github.com/angular/angular.js/issues/12936), [#13244](https://github.com/angular/angular.js/issues/13244))
- **$http:** apply `transformResponse` even when `data` is empty
([c6909464](https://github.com/angular/angular.js/commit/c690946469e09cfe6b774e63dbe14ace92ce6cb7),
[#12976](https://github.com/angular/angular.js/issues/12976), [#12979](https://github.com/angular/angular.js/issues/12979))
- **$location:** ensure `$locationChangeSuccess` fires even if URL ends with `#`
([6f8ddb6d](https://github.com/angular/angular.js/commit/6f8ddb6d4329441e8d4a856978413aa9b9bd918f),
[#12175](https://github.com/angular/angular.js/issues/12175), [#13251](https://github.com/angular/angular.js/issues/13251))
- **$parse:** evaluate once simple expressions only once
([e4036824](https://github.com/angular/angular.js/commit/e403682444fa08af4f3491badf2f3a10d7595699),
[#12983](https://github.com/angular/angular.js/issues/12983), [#13002](https://github.com/angular/angular.js/issues/13002))
- **$resource:** allow XHR request to be cancelled via a timeout promise
([7170f9d9](https://github.com/angular/angular.js/commit/7170f9d9ca765c578f8d3eb4699860a9330a0a11),
[#12657](https://github.com/angular/angular.js/issues/12657), [#12675](https://github.com/angular/angular.js/issues/12675), [#10890](https://github.com/angular/angular.js/issues/10890), [#9332](https://github.com/angular/angular.js/issues/9332))
- **$rootScope:** prevent IE9 memory leak when destroying scopes
([87b0055c](https://github.com/angular/angular.js/commit/87b0055c80f40589c5bcf3765e59e872bcfae119),
[#10706](https://github.com/angular/angular.js/issues/10706), [#11786](https://github.com/angular/angular.js/issues/11786))
- **Angular.js:** fix `isArrayLike` for unusual cases
([70edec94](https://github.com/angular/angular.js/commit/70edec947c7b189694ae66b129568182e3369cab),
[#10186](https://github.com/angular/angular.js/issues/10186), [#8000](https://github.com/angular/angular.js/issues/8000), [#4855](https://github.com/angular/angular.js/issues/4855), [#4751](https://github.com/angular/angular.js/issues/4751), [#10272](https://github.com/angular/angular.js/issues/10272))
- **isArrayLike:** handle jQuery objects of length 0
([d3da55c4](https://github.com/angular/angular.js/commit/d3da55c40f1e1ddceced5da51e364888ff9d82ff))
- **jqLite:**
- deregister special `mouseenter` / `mouseleave` events correctly
([22f66025](https://github.com/angular/angular.js/commit/22f66025db262417ebb78c1ce1f4d7058dca3fd3),
[#12795](https://github.com/angular/angular.js/issues/12795), [#12799](https://github.com/angular/angular.js/issues/12799))
- ensure mouseenter works with svg elements on IE
([c1f34e8e](https://github.com/angular/angular.js/commit/c1f34e8eeb5105767f6cbf4727b8c5664be2a261),
[#10259](https://github.com/angular/angular.js/issues/10259), [#10276](https://github.com/angular/angular.js/issues/10276))
- **limitTo:** start at 0 if `begin` is negative and exceeds input length
([4fc40bc9](https://github.com/angular/angular.js/commit/4fc40bc9320a1d5902e648b70fa79c7cf7e794c7),
[#12775](https://github.com/angular/angular.js/issues/12775), [#12781](https://github.com/angular/angular.js/issues/12781))
- **merge:**
- ensure that jqlite->jqlite and DOM->DOM
([2f8db1bf](https://github.com/angular/angular.js/commit/2f8db1bf01173b546a2868fc7b8b188c2383fbff))
- clone elements instead of treating them like simple objects
([838cf4be](https://github.com/angular/angular.js/commit/838cf4be3c671903796dbb69d95c0e5ac1516a06),
[#12286](https://github.com/angular/angular.js/issues/12286))
- **ngAria:** don't add tabindex to radio and checkbox inputs
([59f1f4e1](https://github.com/angular/angular.js/commit/59f1f4e19a02e6e6f4c41c15b0e9f3372d85cecc),
[#12492](https://github.com/angular/angular.js/issues/12492), [#13095](https://github.com/angular/angular.js/issues/13095))
- **ngInput:** change URL_REGEXP to better match RFC3987
([cb51116d](https://github.com/angular/angular.js/commit/cb51116dbd225ccfdbc9a565a66a170e65d26331),
[#11341](https://github.com/angular/angular.js/issues/11341), [#11381](https://github.com/angular/angular.js/issues/11381))
- **ngMock:** reset cache before every test
([91b7cd9b](https://github.com/angular/angular.js/commit/91b7cd9b74d72a48d844c5c3e0e9dee03405e0ca),
[#13013](https://github.com/angular/angular.js/issues/13013))
- **ngOptions:**
- skip comments and empty options when looking for options
([0f58334b](https://github.com/angular/angular.js/commit/0f58334b7b9a9d3d6ff34e9754961b6f67731fae),
[#12190](https://github.com/angular/angular.js/issues/12190), [#13029](https://github.com/angular/angular.js/issues/13029), [#13033](https://github.com/angular/angular.js/issues/13033))
- override select option registration to allow compilation of empty option
([7b2ecf42](https://github.com/angular/angular.js/commit/7b2ecf42c697eb8d51a0f2d73b324bd900139e05),
[#11685](https://github.com/angular/angular.js/issues/11685), [#12972](https://github.com/angular/angular.js/issues/12972), [#12968](https://github.com/angular/angular.js/issues/12968), [#13012](https://github.com/angular/angular.js/issues/13012))


## Performance Improvements

- **$compile:** use static jquery data method to avoid creating new instances
([55ad192e](https://github.com/angular/angular.js/commit/55ad192e4ab79295ab15ecaaf8f6b9e7932a0336))
- **copy:**
- avoid regex in `isTypedArray`
([19fab4a1](https://github.com/angular/angular.js/commit/19fab4a1d79d2445795273f1622344353cf4d104))
- only validate/clear if the user specifies a destination
([d1293540](https://github.com/angular/angular.js/commit/d1293540e13573eb9ea5f90730bb9c9710c345db),
[#12068](https://github.com/angular/angular.js/issues/12068))
- **merge:** remove unnecessary wrapping of jqLite element
([ce6a96b0](https://github.com/angular/angular.js/commit/ce6a96b0d76dd2e5ab2247ca3059d284575bc6f0),
[#13236](https://github.com/angular/angular.js/issues/13236))


## Breaking Changes


<a name="1.4.7"></a>
# 1.4.7 dark-luminescence (2015-09-29)


## Bug Fixes

- **$compile:** use createMap() for $$observe listeners when initialized from attr interpolation
([5a98e806](https://github.com/angular/angular.js/commit/5a98e806ef3c59916bb4668268125610b11effe8),
[#10446](https://github.com/angular/angular.js/issues/10446))
- **$parse:**
- block assigning to fields of a constructor
([a7f3761e](https://github.com/angular/angular.js/commit/a7f3761eda5309f76b73c6fb1d3173a270112899),
[#12860](https://github.com/angular/angular.js/issues/12860))
- do not convert to string computed properties multiple times
([698af191](https://github.com/angular/angular.js/commit/698af191ded2465ca4e0f97959b75fede5a531ab))
- **filters:** ensure `formatNumber` observes i18n decimal separators
([4994acd2](https://github.com/angular/angular.js/commit/4994acd26e582eec8a92b139bfc09ca79a9b8835),
[#10342](https://github.com/angular/angular.js/issues/10342), [#12850](https://github.com/angular/angular.js/issues/12850))
- **jqLite:** properly handle dash-delimited node names in `jqLiteBuildFragment`
([cdd1227a](https://github.com/angular/angular.js/commit/cdd1227a308edd34d31b67f338083b6e0c4c0db9),
[#10617](https://github.com/angular/angular.js/issues/10617), [#12759](https://github.com/angular/angular.js/issues/12759))
- **ngAnimate:**
- ensure anchoring uses body as a container when needed
([9d3704ca](https://github.com/angular/angular.js/commit/9d3704ca467081f16b71b011eb50c53d5cdb2f34),
[#12872](https://github.com/angular/angular.js/issues/12872))
- callback detection should only use RAF when necessary
([fa8c399f](https://github.com/angular/angular.js/commit/fa8c399fadc30b78710868fe59d2930fdc17c7a5))
- **ngMessages:** prevent race condition with ngAnimate
([7295c60f](https://github.com/angular/angular.js/commit/7295c60ffb9f2e4f32043c538ace740b187f565a),
[#12856](https://github.com/angular/angular.js/issues/12856), [#12903](https://github.com/angular/angular.js/issues/12903))
- **ngOptions:**
- prevent frozen select ui in IE
([dbc69851](https://github.com/angular/angular.js/commit/dbc698517ff620b3a6279f65d4a9b6e3c15087b9),
[#11314](https://github.com/angular/angular.js/issues/11314), [#11795](https://github.com/angular/angular.js/issues/11795))


## Features

- **$animateCss:** add support for temporary styles via `cleanupStyles`
([e52d731b](https://github.com/angular/angular.js/commit/e52d731bfd1fbb6c616125fbde2fb365722254b7),
[#12930](https://github.com/angular/angular.js/issues/12930))
- **$http:** add `$xhrFactory` service to enable creation of custom xhr objects
([7a413df5](https://github.com/angular/angular.js/commit/7a413df5e47e04e20a1c93d35922050bbcbfb492),
[#2318](https://github.com/angular/angular.js/issues/2318), [#9319](https://github.com/angular/angular.js/issues/9319), [#12159](https://github.com/angular/angular.js/issues/12159))


## Breaking Changes


<a name="1.4.6"></a>
# 1.4.6 multiplicative-elevation (2015-09-17)

Expand Down Expand Up @@ -170,8 +313,6 @@ the built-in pattern validator:
```




<a name="1.4.5"></a>
# 1.4.5 permanent-internship (2015-08-28)

Expand Down Expand Up @@ -1340,7 +1481,6 @@ mechanism.

- **ngMessages:** due to [c9a4421f](https://github.com/angular/angular.js/commit/c9a4421fc3c97448527eadef1f42eb2f487ec2e0),


The `ngMessagesInclude` attribute is now its own directive and that must
be placed as a **child** element within the element with the ngMessages
directive. (Keep in mind that the former behaviour of the
Expand All @@ -1363,6 +1503,26 @@ end of the container containing the ngMessages directive).
</div>
```

- **ngMessages:** due to [c9a4421f](https://github.com/angular/angular.js/commit/c9a4421fc3c97448527eadef1f42eb2f487ec2e0),

it is no longer possible to use interpolation inside the `ngMessages` attribute expression. This technique
is generally not recommended, and can easily break when a directive implementation changes. In cases
where a simple expression is not possible, you can delegate accessing the object to a function:

```html
<div ng-messages="ctrl.form['field_{{$index}}'].$error">...</div>
```
would become
```html
<div ng-messages="ctrl.getMessages($index)">...</div>
```
where `ctrl.getMessages()`
```javascript
ctrl.getMessages = function($index) {
return ctrl.form['field_' + $index].$error;
}
```

- **$http:** due to [5da1256](https://github.com/angular/angular.js/commit/5da1256fc2812d5b28fb0af0de81256054856369),

`transformRequest` functions can no longer modify request headers.
Expand Down Expand Up @@ -1818,6 +1978,12 @@ But in practice this is not what people want and so this change iterates over pr
in the order they are returned by Object.keys(obj), which is almost always the order
in which the properties were defined.

- **ngOptions:** due to [7fda214c](https://github.com/angular/angular.js/commit/7fda214c4f65a6a06b25cf5d5aff013a364e9cef),

setting the ngOptions attribute expression after the element is compiled, will no longer trigger the ngOptions behavior.
This worked previously because the ngOptions logic was part of the select directive, while
it is now implemented in the ngOptions directive itself.

- **select:** due to [7fda214c](https://github.com/angular/angular.js/commit/7fda214c4f65a6a06b25cf5d5aff013a364e9cef),

the `select` directive will now use strict comparison of the `ngModel` scope value against `option`
Expand Down Expand Up @@ -2420,7 +2586,36 @@ We also added a documentation page focused on security, which contains some of t
[#9578](https://github.com/angular/angular.js/issues/9578), [#9751](https://github.com/angular/angular.js/issues/9751))


## Breaking Changes

- **$observe:** Due to [531a8de7](https://github.com/angular/angular.js/commit/531a8de72c439d8ddd064874bf364c00cedabb11),
observers no longer register on undefined attributes. For example, if you were using `$observe` on
an absent optional attribute to set a default value, the following would not work anymore:

```html
<my-dir></my-dir>
```

```js
// link function for directive myDir
link: function(scope, element, attr) {
attr.$observe('myAttr', function(newVal) {
scope.myValue = newVal ? newVal : 'myDefaultValue';
})
}
```

Instead, check if the attribute is set before registering the observer:

```js
link: function(scope, element, attr) {
if (attr.myAttr) {
// register the observer
} else {
// set the default
}
}
```

<a name="1.3.0"></a>
# 1.3.0 superluminal-nudge (2014-10-13)
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ chances of your issue being dealt with quickly:
* **Angular Version(s)** - is it a regression?
* **Browsers and Operating System** - is this a problem with all browsers or only IE8?
* **Reproduce the Error** - provide a live example (using [Plunker][plunker] or
[JSFiddle][jsfiddle]) or a unambiguous set of steps.
[JSFiddle][jsfiddle]) or an unambiguous set of steps.
* **Related Issues** - has a similar issue been reported before?
* **Suggest a Fix** - if you can't fix the bug yourself, perhaps you can point to what might be
causing the problem (line of code or commit)
Expand Down
2 changes: 1 addition & 1 deletion Gruntfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -305,7 +305,7 @@ module.exports = function(grunt) {

shell: {
"npm-install": {
command: path.normalize('scripts/npm/install-dependencies.sh')
command: 'node scripts/npm/check-node-modules.js'
},

"promises-aplus-tests": {
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ piece of cake. Best of all?? It makes development fun!

Building AngularJS
---------
[Once you have your environment setup](http://docs.angularjs.org/misc/contribute) just run:
[Once you have your environment set up](http://docs.angularjs.org/misc/contribute) just run:

grunt package

Expand Down
3 changes: 1 addition & 2 deletions angularFiles.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ var angularFiles = {

'src/ng/anchorScroll.js',
'src/ng/animate.js',
'src/ng/animateRunner.js',
'src/ng/animateCss.js',
'src/ng/browser.js',
'src/ng/cacheFactory.js',
Expand Down Expand Up @@ -92,15 +93,13 @@ var angularFiles = {
'angularModules': {
'ngAnimate': [
'src/ngAnimate/shared.js',
'src/ngAnimate/body.js',
'src/ngAnimate/rafScheduler.js',
'src/ngAnimate/animateChildrenDirective.js',
'src/ngAnimate/animateCss.js',
'src/ngAnimate/animateCssDriver.js',
'src/ngAnimate/animateJs.js',
'src/ngAnimate/animateJsDriver.js',
'src/ngAnimate/animateQueue.js',
'src/ngAnimate/animateRunner.js',
'src/ngAnimate/animation.js',
'src/ngAnimate/module.js'
],
Expand Down
6 changes: 6 additions & 0 deletions docs/app/assets/css/docs.css
Original file line number Diff line number Diff line change
Expand Up @@ -589,6 +589,12 @@ ul.events > li {
vertical-align: top;
}

.table > tbody > tr.head > td,
.table > tbody > tr.head > th {
border-bottom: 2px solid #ddd;
padding-top: 50px;
}

@media only screen and (min-width: 769px) and (max-width: 991px) {
.main-body-grid {
margin-top: 160px;
Expand Down
2 changes: 1 addition & 1 deletion docs/content/error/$compile/ctreq.ngdoc
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ but the required directive controller is not present on the current DOM element

To resolve this error ensure that there is no typo in the required controller name and that the required directive controller is present on the current element.

If the required controller is expected to be on a ancestor element, make sure that you prefix the controller name in the `require` definition with `^`.
If the required controller is expected to be on an ancestor element, make sure that you prefix the controller name in the `require` definition with `^`.

If the required controller is optionally requested, use `?` or `^?` to specify that.

Expand Down
4 changes: 2 additions & 2 deletions docs/content/error/$location/nobase.ngdoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
@ngdoc error
@name $location:nobase
@fullName $location in HTML5 mode requires a <base> tag to be present!
@fullName $location in HTML5 mode requires a `<base>` tag to be present!
@description

If you configure {@link ng.$location `$location`} to use
Expand All @@ -15,7 +15,7 @@ $locationProvider.html5Mode({
});
```

Note that removing the requirement for a <base> tag will have adverse side effects when resolving
Note that removing the requirement for a `<base>` tag will have adverse side effects when resolving
relative paths with `$location` in IE9.

The base URL is then used to resolve all relative URLs throughout the application regardless of the
Expand Down
Loading