Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(162)

Side by Side Diff: third_party/pkg/angular/CHANGELOG.md

Issue 257423008: Update all Angular libs (run update_all.sh). (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « third_party/pkg/angular/.travis.yml ('k') | third_party/pkg/angular/CONTRIBUTING.md » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <a name="v0.10.0"></a>
2 # v0.10.0 ostemad-teleportation (2014-04-17)
3
4 *NOTE:* Contains significant BREAKING CHANGES!
5
6 ## Bug Fixes
7
8 - **DateFilter:** cache DateFormat correctly
9 ([64cf96f1](https://github.com/angular/angular.dart/commit/64cf96f104f886036b6 f25d0bda5d1307f50d1d1),
10 [#882](https://github.com/angular/angular.dart/issues/882))
11 - **NgA:** Do not cause a scope digest
12 ([de21f4de](https://github.com/angular/angular.dart/commit/de21f4de1f39a4745ad 088805459848204457e23),
13 [#810](https://github.com/angular/angular.dart/issues/810))
14 - **NgControl:** Remove dead code
15 ([b30ebe0f](https://github.com/angular/angular.dart/commit/b30ebe0fbaef0e7aa39 d52a0bc8bf9cc2174386b))
16 - **angular.core:** re-export required annotations
17 ([6a9ea37c](https://github.com/angular/angular.dart/commit/6a9ea37cfb444bdfb5e 99af42a091c12d949b307))
18 - **animation:** temporary fix for Animation symbol conflict
19 ([82b4f3e1](https://github.com/angular/angular.dart/commit/82b4f3e12a6a5b1e079 c40c8341467089ab8fdf0))
20 - **application_factory:** add missing @MirrorsUsed targets
21 ([b5e835a0](https://github.com/angular/angular.dart/commit/b5e835a0e3b4bfd8b8b 44c260bb0466caa75ab93),
22 [#911](https://github.com/angular/angular.dart/issues/911))
23 - **bootstrap:** Rename bootstrapping methods
24 ([155582d1](https://github.com/angular/angular.dart/commit/155582d199e25aa69ff 803b228c3c3c0e5b9ac70))
25 - **change-detection:** When two identical pure functions removed
26 ([84781ef3](https://github.com/angular/angular.dart/commit/84781ef3377b4cdb92a 2cb3b98fb58468e34abc1),
27 [#787](https://github.com/angular/angular.dart/issues/787), [#788](https://gi thub.com/angular/angular.dart/issues/788))
28 - **change-detection:** properly watch map['key'] constructs
29 ([03f0a4c7](https://github.com/angular/angular.dart/commit/03f0a4c72709d74c3b4 d5f3fa168189efd7e5b97),
30 [#824](https://github.com/angular/angular.dart/issues/824))
31 - **cookies:** Make sure Cookies is injectable.
32 ([8952cbdd](https://github.com/angular/angular.dart/commit/8952cbdd70f32e8b920 942476648b1a8f1473480),
33 [#856](https://github.com/angular/angular.dart/issues/856))
34 - **core:** ensure change detection doesn't trigger an infinite loop while not i n debug mode
35 ([6ac105c9](https://github.com/angular/angular.dart/commit/6ac105c9bf662c8717d ab811c6c41ded9eed05ea))
36 - **dirty-checking:**
37 - handle simultaneous mutations and ref changes
38 ([28a79bc2](https://github.com/angular/angular.dart/commit/28a79bc21ef3a4a7b08 24249bfa31a668275c76e))
39 - fix removal of watch record on disconnected group.
40 ([d22899aa](https://github.com/angular/angular.dart/commit/d22899aa68f4da15673 821cb16f04d4f8c7a4dee))
41 - **doc:** add angular.core.annotation lib to docs
42 ([ad2e6b0e](https://github.com/angular/angular.dart/commit/ad2e6b0e76357e3aeae e0cd1726247059acc1f49))
43 - **docs:** reenable broken doc generation
44 ([e925a143](https://github.com/angular/angular.dart/commit/e925a1430e9de53d710 e175703c57aefd4dad700))
45 - **events:** make ShadowRootEventHandler play nice with static injection
46 ([d7683218](https://github.com/angular/angular.dart/commit/d76832181706a86dcef 1e0c3b60749f82a2e0e27))
47 - **example:** Adjust MirrorsUsed to make the Todo example work thru dart2js
48 ([ee4a448b](https://github.com/angular/angular.dart/commit/ee4a448b9defd4c9fda 1e86f3c9c37e5465f7e21))
49 - **export:** Add missing NgController to angualr.dart
50 ([7475ccc4](https://github.com/angular/angular.dart/commit/7475ccc44cec302a0bd 0745e99ec491ff3289427))
51 - **filters:**
52 - handle the current locale correctly
53 ([212b6f79](https://github.com/angular/angular.dart/commit/212b6f79560cc24b4a2 10c6f44e73a8408690fa9),
54 [#865](https://github.com/angular/angular.dart/issues/865))
55 - pass filters to all evals
56 ([25dfd32f](https://github.com/angular/angular.dart/commit/25dfd32ff9e1523ee92 20769871867111ed93c3b))
57 - **forms:** change valid_submit and invalid_submit to camelcase
58 ([e5baa502](https://github.com/angular/angular.dart/commit/e5baa50235aa3ec53f0 0f87b86dab78ef5882900),
59 [#793](https://github.com/angular/angular.dart/issues/793))
60 - **http:** fix header map type for http.call()
61 ([a6cc826a](https://github.com/angular/angular.dart/commit/a6cc826a1bbe580dd27 74b6d53e246a838d3425d))
62 - **jasmine:** don't swallow exceptions in afterEach
63 ([ae15983d](https://github.com/angular/angular.dart/commit/ae15983d2134bf0fb18 23f427654629f92c295d5))
64 - **mirror:** added missing mirrors declarations
65 ([0ebb49f8](https://github.com/angular/angular.dart/commit/0ebb49f84c12ec2c4b1 1f1cf75d230f601975ebc))
66 - **mock:** export test_injection from module
67 ([70546ca5](https://github.com/angular/angular.dart/commit/70546ca50dc5038ba91 1fcf972af90de492743d4))
68 - **mustache:** fix regression that fired an initial empty string
69 ([c71b8cfc](https://github.com/angular/angular.dart/commit/c71b8cfc935d1599b2c 1c7cef5a08ff4caee7010),
70 [#734](https://github.com/angular/angular.dart/issues/734))
71 - **ng-model:** Do not use valueAsNumber to work around dartbug.com/15788
72 ([019209e7](https://github.com/angular/angular.dart/commit/019209e79ce0752351f 2b8d74511fa39694d1e93),
73 [#694](https://github.com/angular/angular.dart/issues/694))
74 - **ng-repeat:** don't use iterable.length
75 ([cf2671ab](https://github.com/angular/angular.dart/commit/cf2671ab718d019a0ea a7d7e0483cae196aaa76c))
76 - **ng-view:** correct infinite loop in RouteProvider injection
77 ([be902f46](https://github.com/angular/angular.dart/commit/be902f46035b0ea9464 eafd12eb4470316ec82fe))
78 - **ng_mustache:** actually assign to _hasObservers
79 ([61c953d9](https://github.com/angular/angular.dart/commit/61c953d9be3e2626e15 9cd08ac585a67f412a37e))
80 - **parser:** changes parser to throw an error when it encounters an unexpected token
81 ([7c26ab0d](https://github.com/angular/angular.dart/commit/7c26ab0dbce3b8ebbde 26716e9dc1cfda1e38c71),
82 [#830](https://github.com/angular/angular.dart/issues/830), [#905](https://gi thub.com/angular/angular.dart/issues/905))
83 - **profiler:** Fix API
84 ([f032b376](https://github.com/angular/angular.dart/commit/f032b376c77b9b054d4 c2b2db7b29cb7f7c71102))
85 - **scope:** allow watching an empty string
86 ([bd0d4ffd](https://github.com/angular/angular.dart/commit/bd0d4ffdded131cd304 0c6ddda32c46f6553b629))
87 - **startup:** Avoid creating rarely needed objects
88 ([29bda806](https://github.com/angular/angular.dart/commit/29bda8061aa5240f544 5ac28a310990f4f3b80d0))
89 - **tagging-compiler:** support top level comments
90 ([dc75b016](https://github.com/angular/angular.dart/commit/dc75b0166cc93c08bf8 1fa364c247de3d97ad2c1))
91 - **test:** fixes for latest unittest lib
92 ([c8527208](https://github.com/angular/angular.dart/commit/c852720827584065fdc 5d48d5dc6d0e23770ebc1),
93 [#811](https://github.com/angular/angular.dart/issues/811))
94 - **transformer:**
95 - Serializing execution of transformers
96 ([8b06e673](https://github.com/angular/angular.dart/commit/8b06e673d72d0e98d8a 99ef159cc4ebc6fbf8c65),
97 [#889](https://github.com/angular/angular.dart/issues/889))
98 - crashes in metadata extraction while in pub serve
99 ([e35a5e17](https://github.com/angular/angular.dart/commit/e35a5e17e890d739ee5 46227fef98acbc66c1112),
100 [#888](https://github.com/angular/angular.dart/issues/888))
101 - Transformer needs html5lib 0.9.2
102 ([b52323e4](https://github.com/angular/angular.dart/commit/b52323e4e227d9de9a6 9134912845835733c20f7))
103 - **transformers:**
104 - fix accidental breakage due to library rename. Added tests.
105 ([88593eec](https://github.com/angular/angular.dart/commit/88593eec6499f937659 80087fcdf59a242ec9334))
106 - fix breakage from commit 3fb218180b17bdc9808e575e3a9aaf9928fef28b
107 ([5caadbf1](https://github.com/angular/angular.dart/commit/5caadbf10304c46da55 2f4fa118351a3d2de4571))
108 - **watch_group:** remove debugging print statement
109 ([93c7b9af](https://github.com/angular/angular.dart/commit/93c7b9afbec1154e086 9cb820210b401129ee4fe))
110
111
112 ## Features
113
114 - **AstParser:** Made the AST parser private to the scope
115 ([8944f0d9](https://github.com/angular/angular.dart/commit/8944f0d927a402f1841 60b6bfffdff664fb21ee4))
116 - **NgAnnotation:** Use `module` parameter to publish types.
117 ([5ec7e831](https://github.com/angular/angular.dart/commit/5ec7e831052ce1fe5af 70dc970941a4a884a9e02),
118 [#779](https://github.com/angular/angular.dart/issues/779))
119 - **NgBaseCss:** Add NgBaseCss, which adds css files to all components
120 ([06fc28a3](https://github.com/angular/angular.dart/commit/06fc28a319b9c0334a9 77c4a177348c6f6a3d003))
121 - **Scope:**
122 - Allow turning emission of scope stats from console.
123 ([18ecd950](https://github.com/angular/angular.dart/commit/18ecd950cd815677cba 35e26eb6069da19d73300),
124 [#836](https://github.com/angular/angular.dart/issues/836), [#857](https://gi thub.com/angular/angular.dart/issues/857))
125 - Mirror Scope methods in ngScope.
126 ([277f2832](https://github.com/angular/angular.dart/commit/277f283258b7dcdb499 4a1c78e6cee862386654d),
127 [#850](https://github.com/angular/angular.dart/issues/850), [#858](https://gi thub.com/angular/angular.dart/issues/858))
128 - **deploy:** Move all reflection behind separate import
129 ([9bf04eba](https://github.com/angular/angular.dart/commit/9bf04eba808f7fc1f4e 5285fad7feae360918718))
130 - **directives:** Add deprecated warning to applyAuthorStyle, resetStyleInherita nce
131 ([779ccb80](https://github.com/angular/angular.dart/commit/779ccb800d6db851004 18c3e4a89a6003048bcab),
132 [#838](https://github.com/angular/angular.dart/issues/838))
133 - **event_spec:** Add aaddTest to run an event test in an iit
134 ([a5999863](https://github.com/angular/angular.dart/commit/a5999863f85bf172c75 bd8f213d640b55f4a5cb8))
135 - **expect:**
136 - toHaveText handles shadow DOM. Deprecates JQuery.textWithShadow
137 ([0384346d](https://github.com/angular/angular.dart/commit/0384346db3b715f6a67 425d81825d2d20caae74f))
138 - Move JQuery.text to Expect.toHaveText() and element.text
139 ([dfe84d8f](https://github.com/angular/angular.dart/commit/dfe84d8f48e97db992d 1b70382a2e531b91a1607))
140 - **http:** Allow overriding of recording URL.
141 ([6ecf1d54](https://github.com/angular/angular.dart/commit/6ecf1d54a2c29403542 7fd3f274e1fb8e098f45e),
142 [#872](https://github.com/angular/angular.dart/issues/872))
143 - **karma:** Allow Firefox to execute Karma tests
144 ([4a6234b3](https://github.com/angular/angular.dart/commit/4a6234b350c7c25f7de 45fceb19bceb31573cb30))
145 - **metadata extractor:** Cache the fieldMetadataExtractor for greater performan ce
146 ([63c229c7](https://github.com/angular/angular.dart/commit/63c229c7f7dab901e65 0fb1c8b155d2bc006ca30))
147 - **ng-model:** support input type=date | datetime and all other date/time varia nts
148 ([90e0e076](https://github.com/angular/angular.dart/commit/90e0e0761d2ed59b6a7 0ba31f9ceb741593bcb26),
149 [#747](https://github.com/angular/angular.dart/issues/747))
150 - **ngElement:** add support for attributes
151 ([581861e5](https://github.com/angular/angular.dart/commit/581861e5f428b2fe433 56be012e1fe35b9f7499a))
152 - **ngRepeat:** make use of the new change detection
153 ([09871cb2](https://github.com/angular/angular.dart/commit/09871cb29b5345d4992 9895b2a490360eee69244))
154 - **parser:** Add support for named arguments.
155 ([18ceb4df](https://github.com/angular/angular.dart/commit/18ceb4dfa751615cecc 73ff38d7bb1744b914c0a),
156 [#762](https://github.com/angular/angular.dart/issues/762))
157 - **routing:** allow routing to view html
158 ([cdc89c43](https://github.com/angular/angular.dart/commit/cdc89c43664c5d451ae 92c83dd86922ccefd807c),
159 [#425](https://github.com/angular/angular.dart/issues/425), [#908](https://gi thub.com/angular/angular.dart/issues/908))
160 - **selector:** Collect bind- attributes. More tests. Cleanup
161 ([4707826b](https://github.com/angular/angular.dart/commit/4707826bd1dff114add b16372f58b7cfc19a8ffc))
162 - **template_cache_generator:** Support custom template path resolution
163 ([f5bf7eff](https://github.com/angular/angular.dart/commit/f5bf7effaacb9d2423e 033a8d7ade122eef6910c),
164 [#923](https://github.com/angular/angular.dart/issues/923))
165 - **transformers:** Add angular transformers to pub for no-mirror code generatio n
166 ([3fb21818](https://github.com/angular/angular.dart/commit/3fb218180b17bdc9808 e575e3a9aaf9928fef28b))
167 - **travis:**
168 - Firefox
169 ([23a3e35f](https://github.com/angular/angular.dart/commit/23a3e35f22489f66692 d0559421f33cff0926ab7),
170 [#801](https://github.com/angular/angular.dart/issues/801))
171 - Only submit if all the builds complete
172 ([633d323d](https://github.com/angular/angular.dart/commit/633d323d672ee67ab2d bbd1dd6711a45aa86b0b5))
173 - **view factory:** Each css file has its own &lt;style&gt; tag
174 ([4c81989f](https://github.com/angular/angular.dart/commit/4c81989fb404279c516 ef11a5dccf067831732e0))
175
176
177 ## Performance Improvements
178
179 - **DirtyCheckingChangeDetectorGroup:** Disable calls to _assertRecordsOk().
180 ([d6b9bb70](https://github.com/angular/angular.dart/commit/d6b9bb708af9b44b59e 482d1a8588c29a2a3608f),
181 [#813](https://github.com/angular/angular.dart/issues/813))
182 - **compiler:** 45x speedup. Cache the attribute keys.
183 ([556ef5cf](https://github.com/angular/angular.dart/commit/556ef5cfea30f210e5d 56b42a054f46bbfdcf640))
184 - **element_binder:** use every rather than reduce
185 ([27e2845d](https://github.com/angular/angular.dart/commit/27e2845d69597f2bfe4 da7aa00cc8bc614e8ad19))
186
187
188 ## Breaking Changes
189
190 - **NgAnnotation:** due to [5ec7e831](https://github.com/angular/angular.dart/co mmit/5ec7e831052ce1fe5af70dc970941a4a884a9e02),
191 `publishTypes` parameter is removed.
192
193 ```
194 @NgDirective(
195 publishTypes: [FooInt]
196 )
197 class Foo extends FooInt {
198 }
199 ```
200
201 becomes
202
203 ```
204 @NgDirective(
205 module: Foo.module,
206 visibility: NgDirective.LOCAL_VISIBILITY
207 )
208 class Foo extends FooInt {
209 module() => new Module()
210 ..factory(FooInt,
211 (i) => i.get(Foo),
212 visibility: NgDirective.LOCAL_VISIBILITY)
213 }
214 ```
215
216 Closes #779
217 - **bootstrap:** due to [155582d1](https://github.com/angular/angular.dart/commi t/155582d199e25aa69ff803b228c3c3c0e5b9ac70),
218
219 - import:
220 - angular/angular_dynamic.dart -> angular/application_factory.dart
221 - angular/angular_static.dart -> angular/application_factory_static.dart
222
223 - functions:
224 - dynamicApplication() -> applicationFactory()
225 - staticApplication() -> staticApplicationFactory()
226 - **forms:** due to [e5baa502](https://github.com/angular/angular.dart/commit/e5 baa50235aa3ec53f00f87b86dab78ef5882900),
227 All form code that uses control.valid_submit and control.invalid_submit will t hrow an error. Instead use control.validSubmit
228 and control.invalidSubmit to checkthe submission validitity on a control.
229
230 Closes #793
231 - **selector_spec:** due to [c03c538d](https://github.com/angular/angular.dart/c ommit/c03c538d31f01b7f543a03441fec613c2df2d641),
232 This relaxs the assumption that directives will be created in the same order e verywhere.
233 For #801
234 - **nameing:** due to [f055ab6f](https://github.com/angular/angular.dart/commit/ f055ab6f7c4fadfdbb6a46d8bc547b304586d95c)
235 Closes #902
236
237 BREAKING CHANGE: These are the renames
238
239 - Concepts:
240 ```
241 - Filter -> Formatter
242 ```
243
244 - Importing:
245 ```
246 - angular/directive/ng_a.dart -> angular/directive/a_href.dart
247 - angular/filter/currency.dart -> angular/formatter/currency.dart
248 - angular/filter/date.dart -> angular/formatter/date.dart
249 - angular/filter/filter.dart -> angular/formatter/filter.dart
250 - angular/filter/json.dart -> angular/formatter/json.dart
251 - angular/filter/limit_to.dart -> angular/formatter/limit_to.dart
252 - angular/filter/lowercase.dart -> angular/formatter/lowercase.dart
253 - angular/filter/module.dart -> angular/formatter/module.dart
254 - angular/filter/number.dart -> angular/formatter/number.dart
255 - angular/filter/order_by.dart -> angular/formatter/order_by.dart
256 - angular/filter/stringify.dart -> angular/formatter/stringify.dart
257 - angular/filter/uppercase.dart -> angular/formatter/uppercase.dart
258 ```
259
260 - Types:
261 ```
262 - NgA -> AHref
263 - NgAttachAware -> AttachAware
264 - NgDetachAware -> DetachAware
265 - NgShadowRootAware -> ShadowRootAware
266 - NgFilter -> Formatter
267 - NgInjectableService -> Injectable
268 - AbstractNgAnnotation -> Directive
269 - AbstractNgFieldAnnotation -> DirectiveAnnotation
270 - NgComponent -> Component
271 - NgController -> Controller
272 - NgDirective -> Decorator
273 - NgAnimate -> Animate
274 - NgZone -> VmTurnZone
275 - NgAnimationModule -> AnimationModule
276 - NgCoreModule -> CoreModule
277 - NgCoreDomModule -> CoreDomModule
278 - NgAnimationDirective -> NgAnimation
279 - NgAnimationChildrenDirective -> NgAnimationChildren
280 - FilterMap -> FormatterMap
281 - NgAttrMustacheDirective -> AttrMustache
282 - NgTextMustacheDirective -> TextMustache
283 ```
284
285 - Constants
286 ```
287 - NgDirective.LOCAL_VISIBILITY -> Directive.LOCAL_VISIBILITY
288 - NgDirective.CHILDREN_VISIBILITY -> Directive.CHILDREN_VISIBILITY
289 - NgDirective.DIRECT_CHILDREN_VISIBILITY -> Directive.DIRECT_CHILDREN_VISIBI LITY
290 ```
291
292 <a name="v0.9.10"></a>
293 # v0.9.10 llama-magnetism (2014-03-20)
294
295 ## Bug Fixes
296
297 - **Filter:** Add support for maps
298 ([b32beecf](https://github.com/angular/angular.dart/commit/b32beecfeeecf40a053 20b29e19b1572442542cf))
299 - **Jasmine:** Execute AfterEach methods
300 ([71b2855c](https://github.com/angular/angular.dart/commit/71b2855ceab53ec1afa 6b1b8950f3d12b58c4b2c))
301 - **NgModel:** ensure DOM value changes are only applied during scope.domWrite
302 ([419e9189](https://github.com/angular/angular.dart/commit/419e9189b482fc05414 6b51a44613ff543efb485))
303 - **NgModelValidators:** ensure all validators can properly toggle attribute val ues
304 ([98143034](https://github.com/angular/angular.dart/commit/98143034287f4a6adfd 08f4064e4a751c569b108))
305 - **NodeAttrs:** lazy init of observer listeners
306 ([144eb4c7](https://github.com/angular/angular.dart/commit/144eb4c76598a73a251 477efc91c1460f5052937))
307 - **animation:** correct broken build http://dartbug.com/17634
308 ([9891f333](https://github.com/angular/angular.dart/commit/9891f3339207e921a0a 50cac3d855eb4606b41bb))
309 - **change_detection:**
310 - should properly support objects with equality
311 ([9b480dad](https://github.com/angular/angular.dart/commit/9b480dad5f9eaf8609 9c6c1760a837d1eb6d6442),
312 [#735](https://github.com/angular/angular.dart/issues/735), [#670](https://gi thub.com/angular/angular.dart/issues/670))
313 - leaking watch records when removing deeply nested watch_groups
314 ([1ba5befb](https://github.com/angular/angular.dart/commit/1ba5befba3392769752 c1d163de7c691234fca15),
315 [#700](https://github.com/angular/angular.dart/issues/700))
316 - don't call reactionFn on deleted scope
317 ([0aacdc4f](https://github.com/angular/angular.dart/commit/0aacdc4f73b79f874a7 8783308feea471279db0d))
318 - **compiler:** Remove the Block/BlockFactory typedefs
319 ([9b790f49](https://github.com/angular/angular.dart/commit/9b790f490b16c283417 7df75f235da8d3347aa64))
320 - **component:** revert regression of injecting Element/Node into Component
321 ([d9fc724e](https://github.com/angular/angular.dart/commit/d9fc724e56e99b26192 e41eaef46607760f4ac2a))
322 - **forms:**
323 - ensure models are validated when validator attributes change
324 ([0622f3a9](https://github.com/angular/angular.dart/commit/0622f3a969b99b06c5f 07da10ceb756b720a3331))
325 - consider forms as pristine only when all the inner models are non-dirty
326 ([4458ce8e](https://github.com/angular/angular.dart/commit/4458ce8e0035f8250cc 35ec02906f63ba33c8974))
327 - store models instead of controls within the collection of errors
328 ([2928ae71](https://github.com/angular/angular.dart/commit/2928ae71b694be5e2a4 7eaa2cdd1d602f8ae26e9))
329 - **i18n:** properly restore locale after test WARNING
330 ([f16536ee](https://github.com/angular/angular.dart/commit/f16536eed937bcdb542 1ac61059ad40fe58ed2ef))
331 - **jasmine syntax:** Drop the wrapFn concept and let `_specs.dart` handle the s ync wrapper
332 ([1e971e6b](https://github.com/angular/angular.dart/commit/1e971e6b7c65958bbf9 a4779fbac944afaebb278))
333 - **jquery:** Deprecate renderedText() in favour of JQuery.textWithShadow()
334 ([364d9ff7](https://github.com/angular/angular.dart/commit/364d9ff712a635cd3b0 d86bff9e663105ffce86b))
335 - **ng-class:** remove previously registered watch
336 ([8b54f5e6](https://github.com/angular/angular.dart/commit/8b54f5e6c8d99a4b953 1edb78ec10e8177e53407),
337 [#725](https://github.com/angular/angular.dart/issues/725))
338 - **ng-repeat:** should correctly handle detached state
339 ([775bbce4](https://github.com/angular/angular.dart/commit/775bbce4060c3828c1c baeffcb8fc4092f46868b),
340 [#697](https://github.com/angular/angular.dart/issues/697))
341 - **ng-style:** watch in RO mode
342 ([51ee3298](https://github.com/angular/angular.dart/commit/51ee32987464832ddca 113528d899ea27f0b6f40),
343 [#721](https://github.com/angular/angular.dart/issues/721))
344 - **presubmit:**
345 - Set new token; correct env variable name
346 ([53aeb4aa](https://github.com/angular/angular.dart/commit/53aeb4aaea69bcd0ca2 1e6430b02a50de997f991))
347 - use https protocol for push
348 ([a2845a50](https://github.com/angular/angular.dart/commit/a2845a50e680555f4ef 129247d1d2045233a5f0f))
349 - correct presubmit authentication
350 ([8b430d10](https://github.com/angular/angular.dart/commit/8b430d100c6c99267c3 459310a762e6e831b4727))
351 - **scope:**
352 - allow concurrent fire/add/remove on listeners
353 ([e6689e37](https://github.com/angular/angular.dart/commit/e6689e37c800682a81d 7690c3b05baf732c307c6))
354 - should allow removing listener during an event
355 ([4662d494](https://github.com/angular/angular.dart/commit/4662d49477fdf0b5ef0 1f8d4f8aed8b87d77ea66),
356 [#695](https://github.com/angular/angular.dart/issues/695))
357 - add scope id for easier debugging.
358 ([5a368087](https://github.com/angular/angular.dart/commit/5a36808736efae4760c 8f9fdc5b291353ca9ec02))
359 - **tagging compiler:**
360 - a text child after a directive child
361 ([81030dde](https://github.com/angular/angular.dart/commit/81030dde483bf0b4bb9 43f31408733f3238286ee))
362 - ancestor injectables
363 ([81ad184d](https://github.com/angular/angular.dart/commit/81ad184d928625a97e1 5fd8baf3e6df21cf1efae))
364 - Sibling templates
365 ([167b4909](https://github.com/angular/angular.dart/commit/167b4909fca4c72a903 ccc695043f6a13d1a4b98))
366 - Transclusions with an existing ElementBinder
367 ([0e4cb8ed](https://github.com/angular/angular.dart/commit/0e4cb8ed82f98e6a3e9 dc2d131394a4d769cb0cc))
368 - Empty transclusions
369 ([b71a5009](https://github.com/angular/angular.dart/commit/b71a50092d6a529e21e 06f4080bbe50873eac997))
370 - **zone:** Avoid silently ignoring uncaught exceptions by default.
371 ([7bb1944e](https://github.com/angular/angular.dart/commit/7bb1944e3726dea221e 6ab33d4bc6f1de6a364c8),
372 [#710](https://github.com/angular/angular.dart/issues/710))
373
374 ## Features
375
376 - **NgModel:** introduce parsers and formatters
377 ([bed9fe15](https://github.com/angular/angular.dart/commit/bed9fe15f8b89b296a9 b519268bd3e3c326b6265))
378 - **Scope:** Improve ScopeStats reporting
379 ([1954e9e2](https://github.com/angular/angular.dart/commit/1954e9e293203466a50 f3931126ebde0335b885d),
380 [#744](https://github.com/angular/angular.dart/issues/744))
381 - **compiler:**
382 - Make the TaggingCompiler the default compiler
383 ([3ed50b5e](https://github.com/angular/angular.dart/commit/3ed50b5ebdf8013a3f9 d354846770c1e9f75497a))
384 - Tagging compiler
385 ([59516afb](https://github.com/angular/angular.dart/commit/59516afb37d1dd33dbd ca9e705646dad1afafd1d))
386 - Initial TagggingCompiler implementation
387 ([80163401](https://github.com/angular/angular.dart/commit/80163401e1524c2b5c9 0a8c0d66b263370a6c402))
388 - ViewFactory now takes a list of ElementBinders
389 ([eb559ad0](https://github.com/angular/angular.dart/commit/eb559ad05ca33e6c985 ceed492f20c9b2a88c5b9))
390 - Add an ElementBinder class and return it from Selector
391 ([41bc9a40](https://github.com/angular/angular.dart/commit/41bc9a40a17521285eb 7d342a5590c2a7b09be93))
392 - **core_dom:** introduce NgElement
393 ([1afa0b61](https://github.com/angular/angular.dart/commit/1afa0b61da45038ea19 2f34208ffb9e2a6081fd9))
394 - **doc:**
395 - Animation library documentation updates and fixes.
396 ([613030a0](https://github.com/angular/angular.dart/commit/613030a04c584040a09 cade196945fde9fa830cc),
397 [#760](https://github.com/angular/angular.dart/issues/760))
398 - Library description for angular.animate
399 ([0576f278](https://github.com/angular/angular.dart/commit/0576f27841c8842b0d8 4bfae8c4b202c39833beb))
400 - **element binder:**
401 - Make ElementBinder non-recursive and create an external tree
402 ([811b4607](https://github.com/angular/angular.dart/commit/811b46073af9fe2f7e3 53ce1b811898c1557bad8))
403 - ElementBinder.bind
404 ([b1a518bd](https://github.com/angular/angular.dart/commit/b1a518bd678ab4a4d53 f8915a9e3c34c87c5d3c1))
405 - **filters:** revert filter being restricted to top level
406 ([66cda204](https://github.com/angular/angular.dart/commit/66cda2046ea84d29edd 7a478509565989834e391))
407 - **forms:** append valid/invalid CSS classes for each validator on all controls
408 ([574065f5](https://github.com/angular/angular.dart/commit/574065f5b8183f4b6d9 ac7b66a2ae501a21ee2ac))
409 - **jasmine:** beforeEachModule syntax and injectifying its
410 ([4019046f](https://github.com/angular/angular.dart/commit/4019046f4b56a629f6d b71a6e1caff82b728940a),
411 [#727](https://github.com/angular/angular.dart/issues/727))
412 - **jquery:** Add shadowRoot() and use it in templateurl_spec
413 ([e1745c60](https://github.com/angular/angular.dart/commit/e1745c601a22030b424 1a93589cb13a4935049d1))
414 - **mock zone:** isAsyncQueueEmpty
415 ([c834837d](https://github.com/angular/angular.dart/commit/c834837dcb5b9220b15 70c7f96785d763a7b0968))
416 - **mustache:** Move unobserved mustache attributes to the flush phase
417 ([56647a36](https://github.com/angular/angular.dart/commit/56647a36d67fe3b4b28 967a78b193e90e0a65152),
418 [#734](https://github.com/angular/angular.dart/issues/734))
419 - **selector:** DirectiveSelector is real now: matchElement, matchText
420 ([eb4422a9](https://github.com/angular/angular.dart/commit/eb4422a9a2d0d0dbdb2 fb9d04fdcbcae99b65757))
421 - **spec:** Ignore ng-binding classes in html()
422 ([441daf79](https://github.com/angular/angular.dart/commit/441daf79a4e3fca8f42 379022f078327d4e69e59))
423 - **tagging compiler:**
424 - Create fewer ElementBinder lists
425 ([7e185219](https://github.com/angular/angular.dart/commit/7e185219a9a477330ea 8d2074bd9dad385bedd4b))
426 - Support comments
427 ([6fe02a07](https://github.com/angular/angular.dart/commit/6fe02a07431231a39c6 e174327b36533b91f0073))
428 - **travis:** Seperate Chrome and Dartium into two different jobs.
429 ([7c5bdb01](https://github.com/angular/angular.dart/commit/7c5bdb01dae79335406 79e070ace5dc9fe223cd2))
430 - **EventHandler** Add support for on-* style events
431 ([c28e6a02](https://github.com/angular/angular.dart/commit/c28e6a02d7ec3386c85 6bd6aa79f8ddee2ff09b9))
432
433 <a name="v0.9.9"></a>
434 # v0.9.9 glutinous-waterfall (2014-03-10)
435
436
437 ## Bug Fixes
438
439 - **DateFilter:**
440 - should work on other locale
441 ([d7e77de9](https://github.com/angular/angular.dart/commit/d7e77de92fd61fabd78 42eb0acb4d9236935dd76),
442 [#604](https://github.com/angular/angular.dart/issues/604))
443 - fix a wrong type
444 ([cec3edad](https://github.com/angular/angular.dart/commit/cec3edad1944a841188 2b0a87ea6193c25513392),
445 [#579](https://github.com/angular/angular.dart/issues/579))
446 - **Directive:** remove publishAs from NgDirective to avoid confusion.
447 ([7ee587f6](https://github.com/angular/angular.dart/commit/7ee587f6f959d89cfdd 87b0f615510405d693db9),
448 [#396](https://github.com/angular/angular.dart/issues/396))
449 - **MetadataExtractor:** ignore typedefs
450 ([37f1c321](https://github.com/angular/angular.dart/commit/37f1c32118383b250ba 2db6f21adf1737beb2b0a),
451 [#524](https://github.com/angular/angular.dart/issues/524))
452 - **NgAttachAware:** revert to original behavior and define stronger test
453 ([500446d1](https://github.com/angular/angular.dart/commit/500446d1f6d548bbc00 7957017cf7cae74c7f30c))
454 - **NgAttrMustacheDirective:** support parsing of multiline attribute values
455 ([a37e1576](https://github.com/angular/angular.dart/commit/a37e15761b5bbad2f32 308ccd0f765bd977fb0ca))
456 - **NgComponent:**
457 - Handle errors while loading CSS
458 ([b5aa130f](https://github.com/angular/angular.dart/commit/b5aa130f68c589e2e4a 8c6fad1dbd69078608be1),
459 [#411](https://github.com/angular/angular.dart/issues/411))
460 - Drop cssUrls, leaving cssUrl only
461 ([92ed26fb](https://github.com/angular/angular.dart/commit/92ed26fb1a00a239c16 4428979a2f53226ae4b2c))
462 - attach method was called earlier rathe then later.
463 ([3c594130](https://github.com/angular/angular.dart/commit/3c594130589f43a6f82 374a87bf498f2d5645ab5))
464 - **NgForm:**
465 - always return the first matching control when using map notation on a NgForm instance
466 ([95e66d6b](https://github.com/angular/angular.dart/commit/95e66d6bb28c3075952 e31cdbce3c044ed00fc8f))
467 - use map notation for controls and dot notation for instance properties
468 ([0cc1217b](https://github.com/angular/angular.dart/commit/0cc1217b80ceb2b9dd3 83d0e51e128be40bec9d4))
469 - **NgModelValidators:** ensure that number input types render invalid when non- numeric characters are present
470 ([476a8dbf](https://github.com/angular/angular.dart/commit/476a8dbfac40f695a02 e49a8e76590135e5867d2))
471 - **NodeCursor:** Removes nodeList() in favor of current
472 ([aaae1d60](https://github.com/angular/angular.dart/commit/aaae1d60832b331be62 b0fd94c65935ce68b2856),
473 [#644](https://github.com/angular/angular.dart/issues/644))
474 - **WatchGroup:** don't call reaction functions on removed WatchGroups
475 ([a7cabe35](https://github.com/angular/angular.dart/commit/a7cabe35a0a8bd9288d 517df3885245242da3676))
476 - **angular:** export GetterCache from dccd
477 ([c1655e8c](https://github.com/angular/angular.dart/commit/c1655e8c51b1133da70 f04e7630e733557806a9e))
478 - **binding:** call attach when attribute is not specified
479 ([1cb8eb9f](https://github.com/angular/angular.dart/commit/1cb8eb9f135c55a75af 2a0ada6401e5c8594b03b))
480 - **block_factory:**
481 - should not load template or call onShadowRoot when scope is destroyed
482 ([2e403504](https://github.com/angular/angular.dart/commit/2e403504845f2899dd8 b80f424a68eeb1c0e3fe6))
483 - should not call attach when scope is destroyed
484 ([72708e33](https://github.com/angular/angular.dart/commit/72708e3337deb95a579 cd8181a688e3e7859ebff))
485 - **bouncing_balls:** ball number can not go below 0
486 ([6de4f810](https://github.com/angular/angular.dart/commit/6de4f810f4bcdaf6397 39a97816cac8006eb5faf))
487 - **change-detection:**
488 - correctly process watch registration inside reaction FN.
489 ([d6bc9ab8](https://github.com/angular/angular.dart/commit/d6bc9ab871490148f93 7f0587f2e9d16beca62ee))
490 - Fix the handling of NaN & string values for maps
491 ([156d6386](https://github.com/angular/angular.dart/commit/156d6386f45c4f6c467 2432de28b1245da1c1515))
492 - Fix for comparing string by value
493 ([11f1bd87](https://github.com/angular/angular.dart/commit/11f1bd872a474bd2b99 f40027003c356abff6e21))
494 - reset next/prev on watchGroup.marker
495 ([4dfa2676](https://github.com/angular/angular.dart/commit/4dfa267698b56017fae 4b491b855767f030f3598))
496 - delay processing watch registration inside reaction fn.
497 ([cd4e2e3d](https://github.com/angular/angular.dart/commit/cd4e2e3d2dbab33e31c e1cfc3273e37d55ac9008))
498 - remove memory leak, use iterator
499 ([75fbded7](https://github.com/angular/angular.dart/commit/75fbded7ad2691eb439 1c56a595ab488842a85ed))
500 - remove memory leak
501 ([847af41f](https://github.com/angular/angular.dart/commit/847af41fd66d9016e32 cf5b3d8f86e91bae7e6d9))
502 - corrected adding group to sibling which had children
503 ([8583d08b](https://github.com/angular/angular.dart/commit/8583d08baf60ed63940 b3ff38967877327ccf03d))
504 - **change-detector:** handle double.NAN for collections (in JS)
505 ([07f9b240](https://github.com/angular/angular.dart/commit/07f9b240008a143964d 29153589c078aa85ddd09))
506 - **compiler:**
507 - don't wait indefinitly for non-null value on =>!
508 ([5451d63d](https://github.com/angular/angular.dart/commit/5451d63d135b271a52a f522343e67abfd30d7cb8))
509 - ensure parent controllers are exposed within the scope of their children
510 ([cad8cc4a](https://github.com/angular/angular.dart/commit/cad8cc4a64a223c677f 420acb800da89b1d0061c),
511 [#602](https://github.com/angular/angular.dart/issues/602))
512 - support filters in attribute expressions
513 ([8f020f99](https://github.com/angular/angular.dart/commit/8f020f998e8a4b7d5b5 95e5c44086fa2628fe8b3),
514 [#571](https://github.com/angular/angular.dart/issues/571), [#580](https://gi thub.com/angular/angular.dart/issues/580))
515 - **di:** Upgrade dependency of package di preventing problems with dart sdk 1.1 resolves #408
516 ([1f85a8ce](https://github.com/angular/angular.dart/commit/1f85a8cee164d85d6ee d43e7604a0190d1542d84),
517 [#408](https://github.com/angular/angular.dart/issues/408), [#583](https://gi thub.com/angular/angular.dart/issues/583))
518 - **dirty_checking_change_detector:** correctly truncate collection change recor d
519 ([c1937b4e](https://github.com/angular/angular.dart/commit/c1937b4eab87e227d2a a3b126740c93a6c75a353),
520 [#692](https://github.com/angular/angular.dart/issues/692))
521 - **doc:** Correct markdown for ElementProbe
522 ([5783de44](https://github.com/angular/angular.dart/commit/5783de448333cfd0d40 8c4c9663f1cc7e32a6350))
523 - Use a consistent name for the library
524 ([3f541fa4](https://github.com/angular/angular.dart/commit/3f541fa49a9543e8d3c 7a6c416b04934c591bf74))
525 - **doc-gen:**
526 - add docviewer flags for generating the new angulardart docs
527 ([99d9f2ae](https://github.com/angular/angular.dart/commit/99d9f2ae843fbda320f 87e505aecb8ba2f2db4ed))
528 - dartbug.com/16752
529 ([9a1ef31d](https://github.com/angular/angular.dart/commit/9a1ef31d66f151f22b7 9893e11251a6780605257))
530 - **dynamic_parser:** Handle reserved words correctly
531 ([271ecec0](https://github.com/angular/angular.dart/commit/271ecec05e21b1eddb7 663dd8297ab4b9ead4d19),
532 [#614](https://github.com/angular/angular.dart/issues/614))
533 - **eval access:** Do not crash on null cached value
534 ([bbcbd3e7](https://github.com/angular/angular.dart/commit/bbcbd3e70f289c1fcc2 32a38ac89038f83342d3c),
535 [#424](https://github.com/angular/angular.dart/issues/424))
536 - **forms:**
537 - do not reset input fields on valid submission
538 ([24e9c3dd](https://github.com/angular/angular.dart/commit/24e9c3dd3f1cc46bdb8 092f6deac0e4ad8732c1d))
539 - ensure fields, fieldsets & forms are marked as dirty when modified
540 ([ad60d55a](https://github.com/angular/angular.dart/commit/ad60d55a2f8cdd6c7f0 a246efdc79a5af85a833e))
541 - treat <input> with no type as type="text"
542 ([8f0a8a7f](https://github.com/angular/angular.dart/commit/8f0a8a7fe87517a65b2 c5ed2857c90ea87898a0b))
543 - **generator:**
544 - remove invalid sort on elements
545 ([e2a00abe](https://github.com/angular/angular.dart/commit/e2a00abe371bb2d9d3c 1d3c19849e075a32e92e4),
546 [#554](https://github.com/angular/angular.dart/issues/554))
547 - write files in sorted order for predictable tests
548 ([79b7525a](https://github.com/angular/angular.dart/commit/79b7525a790ce73a50c 2874e2f43110fbce61d16))
549 - Write URI in sorted order to prevent SHA churn
550 ([217839ef](https://github.com/angular/angular.dart/commit/217839ef3495506313a 226681a6c10a52e71df0f))
551 - **http_spec:** implement lastModified getter
552 ([e719e75e](https://github.com/angular/angular.dart/commit/e719e75e15ca01048d1 212ec403b8ee5ba3bfa74))
553 - **introspection:**
554 - Better error messages and checked mode support
555 ([9ad2a686](https://github.com/angular/angular.dart/commit/9ad2a686860b21e5555 87dd2986ca77b969919cc))
556 - Export all symbols. And a test.
557 ([691c4cab](https://github.com/angular/angular.dart/commit/691c4cab02115963fa9 74e55f5ee8f196c2aef13))
558 - warnings
559 ([70d83c53](https://github.com/angular/angular.dart/commit/70d83c53c350920fc27 942a9c3b4c83dff5c10b5),
560 [#497](https://github.com/angular/angular.dart/issues/497))
561 - **ng-attr:** remove camel-cased dom attributes
562 ([b5e45117](https://github.com/angular/angular.dart/commit/b5e45117c17fdd07d5d b659815eb49c2dca17b84),
563 [#567](https://github.com/angular/angular.dart/issues/567))
564 - **ng-class:** array syntax should not insert nulls
565 ([b982e326](https://github.com/angular/angular.dart/commit/b982e326cd7d3fbd4e5 3fbe7b65ba9adc0f5cf64),
566 [#513](https://github.com/angular/angular.dart/issues/513))
567 - **ng-event:** don't double digest
568 ([c38989a4](https://github.com/angular/angular.dart/commit/c38989a4496e47813d7 7e3d0cc4868691af7e166))
569 - **ng-pluralize:** use ${..} to interpolate
570 ([a630487d](https://github.com/angular/angular.dart/commit/a630487d302e396a920 e02c8db5d256a81d3dd1a),
571 [#572](https://github.com/angular/angular.dart/issues/572))
572 - **ng-value:** Add ng-value support for checked/radio/option
573 ([8fc2c0f4](https://github.com/angular/angular.dart/commit/8fc2c0f49aabc53ee62 40ad8063ecf6c9c8b8a1f))
574 - **ngControl:** unregister control from parent on detach
575 ([4c9b8044](https://github.com/angular/angular.dart/commit/4c9b804454e3e0f0cb6 80d9359834692fc9ec304),
576 [#684](https://github.com/angular/angular.dart/issues/684))
577 - **ngModel:**
578 - ensure checkboxes and radio buttons are flagged as dirty when changed
579 ([5766a6a1](https://github.com/angular/angular.dart/commit/5766a6a173dc1d65b92 93fd5bd0bcbc21b0791ec),
580 [#569](https://github.com/angular/angular.dart/issues/569), [#585](https://gi thub.com/angular/angular.dart/issues/585))
581 - process input type=number according to convention, using valueAsNumber
582 ([cf0160b8](https://github.com/angular/angular.dart/commit/cf0160b8c316a39ac9d 0fcce843c6f764429a1d4),
583 [#574](https://github.com/angular/angular.dart/issues/574), [#577](https://gi thub.com/angular/angular.dart/issues/577))
584 - ensure validation occurs when the model value changes upon digest
585 ([f34e0b31](https://github.com/angular/angular.dart/commit/f34e0b31a6f2f42457a 6d1a1b5b5aaa7e2ef86fe))
586 - evaluate user input using onInput instead of onKeyDown
587 ([64442974](https://github.com/angular/angular.dart/commit/64442974157211b49ba d6f28182a15aedd652efd))
588 - **ngShow:** Add/remove ng-hide class instead of ng-show class
589 ([0b88d2e8](https://github.com/angular/angular.dart/commit/0b88d2e8102db8b89f3 8b00c277b9023b260285e),
590 [#521](https://github.com/angular/angular.dart/issues/521))
591 - **package.json:** add repo, licenses and switch to devDependencies
592 ([d099db59](https://github.com/angular/angular.dart/commit/d099db5944e2287fbf9 7a13b1aa73f8082652e09),
593 [#544](https://github.com/angular/angular.dart/issues/544), [#545](https://gi thub.com/angular/angular.dart/issues/545))
594 - **parser:**
595 - disallow filters in a chain and inside expressions
596 ([5bcea649](https://github.com/angular/angular.dart/commit/5bcea6492f6d0fd39ba 316fa3b241c50bb94de8d))
597 - Correctly distinguish NoSuchMethodError
598 ([bde52abe](https://github.com/angular/angular.dart/commit/bde52abebd026d0226b 90bd84380a24d7a8eab4e))
599 - **parser, scope:** Allow nulls in binary operations.
600 ([59811752](https://github.com/angular/angular.dart/commit/59811752f57a87fe8f6 a6313fd8764f4d45b4c5c),
601 [#646](https://github.com/angular/angular.dart/issues/646))
602 - **parser_generator:** use parser getter/setter generator instead
603 ([42c8d8c8](https://github.com/angular/angular.dart/commit/42c8d8c89087932c1be 19965b6b649075919287d))
604 - **readme:** Read the Travis badge
605 ([6fe5692b](https://github.com/angular/angular.dart/commit/6fe5692b58e71c86f20 01659b9f8f78016d74ebf))
606 - **routing:** correctly scope routing to ng-app
607 ([3ab250a7](https://github.com/angular/angular.dart/commit/3ab250a706c84542c9e 618d9e98eea81d99a5d22))
608 - **scope:**
609 - fix null comparisons
610 ([fb0fe0e3](https://github.com/angular/angular.dart/commit/fb0fe0e3f8adb243126 46ee9bd01502be605ae7e),
611 [#646](https://github.com/angular/angular.dart/issues/646))
612 - incorrect stage message
613 ([2169a950](https://github.com/angular/angular.dart/commit/2169a950404bf8c68a9 f2d239580a27caf1d9779))
614 - correctly setup NgZone onError handler with ExceptionHandler
615 ([e8bc580c](https://github.com/angular/angular.dart/commit/e8bc580cfb2d3995fd1 13916894b26e98d07b8d6))
616 - return null to supress an analyzer error
617 ([fad457e9](https://github.com/angular/angular.dart/commit/fad457e96f2c6ee17e6 ce3c14a499e230e630ca5),
618 [#594](https://github.com/angular/angular.dart/issues/594))
619 - correctly handle canceled listeners bookkeeping
620 ([259ac5b1](https://github.com/angular/angular.dart/commit/259ac5b147652522a92 b40a12298891dd491c9a7))
621 - should not trigger assertions on fork
622 ([484f03dc](https://github.com/angular/angular.dart/commit/484f03dcce7bdc20a10 1d795d85eee58484d02c9))
623 - skip scopes without event on broadcast
624 ([ae22a6f3](https://github.com/angular/angular.dart/commit/ae22a6f3f82e321a923 a64a573b000485a3fd70e))
625 - createChild now requires context
626 ([6722e1a4](https://github.com/angular/angular.dart/commit/6722e1a45bb65a86211 c2eb3cef2a264bc7e871e))
627 - improve error msg on unstable model
628 ([c9bf23a0](https://github.com/angular/angular.dart/commit/c9bf23a095cc1863b70 75fa7bd2fd6bb6fbc9d38))
629 - allow sending emit/broadcast when no on()
630 ([d9dfe0f8](https://github.com/angular/angular.dart/commit/d9dfe0f830f2df3fb1e 811d6891c684f5080ee7c))
631 - Use Iterable instead of List
632 ([951fa178](https://github.com/angular/angular.dart/commit/951fa1783afa65f410a 2b82249850eed458ed294),
633 [#565](https://github.com/angular/angular.dart/issues/565))
634 - use correct filters when digesting scope tree
635 ([95f6503f](https://github.com/angular/angular.dart/commit/95f6503f1390159eeed fe6d14ea60ec0d70b9381))
636 - **select:** Corrected NPE if select multiple nested in ng-if
637 ([6228692b](https://github.com/angular/angular.dart/commit/6228692bbf0cc269999 cb3cb77374bb815120a4b),
638 [#428](https://github.com/angular/angular.dart/issues/428))
639 - **selector:** Allow two directives with the same selector
640 ([467b935e](https://github.com/angular/angular.dart/commit/467b935ee93a87913cf c8a025973ffd00e31bf2d),
641 [#471](https://github.com/angular/angular.dart/issues/471), [#481](https://gi thub.com/angular/angular.dart/issues/481))
642 - **template_cache_generator:** support traversal of partial files
643 ([f918d4dd](https://github.com/angular/angular.dart/commit/f918d4dd9ac7c777b01 97a700fd6af58103e4129),
644 [#662](https://github.com/angular/angular.dart/issues/662))
645 - **watch_group:** prevent removed watches from firing
646 ([a558a26f](https://github.com/angular/angular.dart/commit/a558a26ffdafddec986 f4fafab5bbe55ef6b0b48))
647
648
649 ## Features
650
651 - **Animation:** Animation for AngularDart.
652 ([5a36e773](https://github.com/angular/angular.dart/commit/5a36e773482bce7b4a7 97613516a56d1b628035b),
653 [#635](https://github.com/angular/angular.dart/issues/635))
654 - introduce ng-animate and ng-animate-children.
655 ([88d2af6f](https://github.com/angular/angular.dart/commit/88d2af6f81b11518cf3 59b85066a0f0677140b16),
656 [#661](https://github.com/angular/angular.dart/issues/661))
657 - **NgForm:** provide access to non-uniquely named control instances via form.co ntrols
658 ([6099c037](https://github.com/angular/angular.dart/commit/6099c0373f3b59bbeea 8c1dfd585bbb6a50a1833),
659 [#642](https://github.com/angular/angular.dart/issues/642))
660 - **NgModelValidator:**
661 - perform number validations on range input elements
662 ([710cd5b0](https://github.com/angular/angular.dart/commit/710cd5b0ff0a7b2dfe7 1536e3455523d3c939b5f),
663 [#682](https://github.com/angular/angular.dart/issues/682))
664 - provide support for min and max validations on number input fields
665 ([7dc55fbf](https://github.com/angular/angular.dart/commit/7dc55fbff47b99eb5e6 4cd63192a7a3e7b8eae88))
666 - **Scope:** Brand new scope implementation which takes advantage of the new cha nge detection
667 ([390aea5e](https://github.com/angular/angular.dart/commit/390aea5ee4318855584 911afb2ce4a2b86fc718c))
668 - **block:**
669 - Kill block events.
670 ([27308e9e](https://github.com/angular/angular.dart/commit/27308e9e334477370a3 417535af92540bfa3d24f),
671 [#659](https://github.com/angular/angular.dart/issues/659))
672 - Chain ElementProbe parents; add to shadowRoot
673 ([b77534e4](https://github.com/angular/angular.dart/commit/b77534e4cc8ed1996bf d1d5cc27f07e81748fb95),
674 [#625](https://github.com/angular/angular.dart/issues/625), [#630](https://gi thub.com/angular/angular.dart/issues/630))
675 - **blockhole:** Change blockhole to have the insert / remove / move methods.
676 ([c1e70ce8](https://github.com/angular/angular.dart/commit/c1e70ce8e0c8c510f0d ee4de043e78f61c3e9c3d),
677 [#689](https://github.com/angular/angular.dart/issues/689))
678 - **change-detection:** Initial implementation of new change-detection algorithm .
679 ([d0b2dd95](https://github.com/angular/angular.dart/commit/d0b2dd957b02215671f 9b2b8d8f30c05879ad8c5))
680 - **doc:** Documentation generation for NgAnimateModule.
681 ([a029ac5e](https://github.com/angular/angular.dart/commit/a029ac5edf7e1226dc2 a04fc4d55e41bceb26d36))
682 - **doc-gen:** Use new docviewer for generating docs
683 ([67fcafff](https://github.com/angular/angular.dart/commit/67fcafff85d3ff1c32b 610e247aa672d6eb91496))
684 - **forms:**
685 - use the ng-form attribute as the name of the inner form
686 ([8b989b6d](https://github.com/angular/angular.dart/commit/8b989b6d5866eea45a3 e867e3b3a56ac114ff59e),
687 [#681](https://github.com/angular/angular.dart/issues/681))
688 - introduce the control.hasError helper method
689 ([7b75af44](https://github.com/angular/angular.dart/commit/7b75af44bc4a998c83b d0a5a0339984e74766f55))
690 - expose getters for submitted, valid_submit and invalid_submit
691 ([9daaa0fc](https://github.com/angular/angular.dart/commit/9daaa0fcd5898ead0a6 2e577001dd2568eb17dfb),
692 [#601](https://github.com/angular/angular.dart/issues/601))
693 - provide support for touch and untouched control flags
694 ([634c62b1](https://github.com/angular/angular.dart/commit/634c62b1d9d77e3d341 3934b068c312afa637b43),
695 [#591](https://github.com/angular/angular.dart/issues/591))
696 - generate ng-submit-valid / ng-submit-invalid CSS classes upon form submissio n
697 ([4bf9447c](https://github.com/angular/angular.dart/commit/4bf9447cc64650d6c73 b66c844fb5396b4a2ae27))
698 - provide support for reseting forms, fieldsets and models
699 ([c75202d5](https://github.com/angular/angular.dart/commit/c75202d5d7ecabd0136 6f2198e0c0c3b5c087e59))
700 - add a test for input type="search"
701 ([87a60d1f](https://github.com/angular/angular.dart/commit/87a60d1f43b8a4f4e7e 31ca179e9de8cd2d94ce9))
702 - **ngModel:**
703 - Treat the values of number and range inputs as numbers
704 ([e703bd1b](https://github.com/angular/angular.dart/commit/e703bd1bc75f4d6420a fad0bbb975b3e23672ff8),
705 [#527](https://github.com/angular/angular.dart/issues/527))
706 - support the input[type="search"] field
707 ([ff736d92](https://github.com/angular/angular.dart/commit/ff736d92a16bc06b848 d0be4282dbf8f80b831c5),
708 [#466](https://github.com/angular/angular.dart/issues/466))
709 - **ngRepeat:** add track by support
710 ([07566457](https://github.com/angular/angular.dart/commit/07566457720c1fc9631 808432a2cb39c2edeccb8),
711 [#277](https://github.com/angular/angular.dart/issues/277), [#507](https://gi thub.com/angular/angular.dart/issues/507))
712 - **routing:** new DSL and deferred module loading
713 ([3db9ddd3](https://github.com/angular/angular.dart/commit/3db9ddd3d2ab9aa97df e2d0bdd5631190f6c6a56))
714 - **sanitization:** make NodeValidator injectable
715 ([47ab48ad](https://github.com/angular/angular.dart/commit/47ab48adf5cbcba6e7a 2c8607b1ce1be29014a83),
716 [#490](https://github.com/angular/angular.dart/issues/490), [#498](https://gi thub.com/angular/angular.dart/issues/498))
717 - **scope:**
718 - add scope digest stat collection
719 ([c066923d](https://github.com/angular/angular.dart/commit/c066923d8be4198e069 2b22c83b11aee81fed3ee),
720 [#609](https://github.com/angular/angular.dart/issues/609))
721 - add internal streams consistency checks
722 ([65213c30](https://github.com/angular/angular.dart/commit/65213c30e2e34ed3957 7f0785f3c80a297829c43))
723 - Experimental: Watch once, watch not null expressions
724 ([84762b10](https://github.com/angular/angular.dart/commit/84762b1028ef7e33451 9a5b322adf768dacd00c9))
725 - Allow expressions on non-scope context
726 ([e4dfb469](https://github.com/angular/angular.dart/commit/e4dfb469c5e322ad9b9 0bad0ec40ce54626a24c0))
727 - **scope2:** Basic implementation of Scope v2
728 ([3bde820e](https://github.com/angular/angular.dart/commit/3bde820e6cf0819d024 34afb41479552487323e7))
729 - **scripts:** robust authors.sh
730 ([ffe43c6c](https://github.com/angular/angular.dart/commit/ffe43c6cceafcdd8c6c ed170e99bbd7b50ec40fb),
731 [#586](https://github.com/angular/angular.dart/issues/586))
732 - **zone:** Allow escaping of auto-digest mechanism.
733 ([2df2660d](https://github.com/angular/angular.dart/commit/2df2660d876ee3cc600 47eb806704edc99c41dbf),
734 [#557](https://github.com/angular/angular.dart/issues/557))
735
736
737 ## Performance Improvements
738
739 - **change-detection:** optimize DirtyCheckingChangeDetector.collectChanges()
740 ([4453e3e8](https://github.com/angular/angular.dart/commit/4453e3e8a5602e6095c ecc899d8a32594ea48b4e),
741 [#693](https://github.com/angular/angular.dart/issues/693))
742 - **scope:**
743 - optim createChild() which always append at the end
744 ([78f0c826](https://github.com/angular/angular.dart/commit/78f0c82680123f146b4 e430db46bb2f59b214be1),
745 [#626](https://github.com/angular/angular.dart/issues/626))
746 - misc optimizations
747 ([7f36a8e1](https://github.com/angular/angular.dart/commit/7f36a8e1557cd55e737 9b1750fd4029e7eddd91b),
748 [#610](https://github.com/angular/angular.dart/issues/610))
749
750
751 ## BREAKING CHANGES
752
753 0.9.9 contains a major overhaul to the change-detection algorithm which is used behind the scenes
754 during scope digests. As a result, much of the scope API has changed to facilita te this new feature.
755
756 The biggest change is how scope properties are assigned on the scope. With earli er versions of
757 AngularDart, the scope object itself was treated like a map and any property acc essed using square
758 brackets would either set or get the associated value. With 0.9.9 this will not produce the same
759 effect. Instead all scope property getter and setter operations are to be facili tated within the
760 scope.context member. So in other words, all the scope property reading and writ ing that was done
761 in earlier versions is now done the same way, but on the `scope.context` member.
762
763 ```dart
764 // < 0.9.9
765 scope['prop'] = 'value'; //set
766 scope['prop']; //get
767
768 // >= 0.9.9
769 scope.context['prop'] = 'value'; //set
770 scope.context['prop']; //get
771 ```
772
773 ### Breaking Changes to the Scope API
774
775 #### 1. scope.$watch() is now scope.watch()
776 ```dart
777 //old code
778 scope.$watch('a.b.c', () {});
779
780 //new code (no more $ prefixing)
781 scope.watch('a.b.c', (value, previous) {});
782 ```
783
784 #### 2. scope context changes
785 ```dart
786 //old code
787 scope.$watch(() => o.foo; () {});
788
789 //new code (notice the context property)
790 scope.watch('foo', (value, _) {}, context: o);
791 ```
792
793 #### 3. watch de-registration
794 ```dart
795 //old code
796 var stopWatch = scope.$watch(...);
797 stopWatch();
798
799 //new code
800 Watch watch = scope.watch(...);
801 watch.remove();
802 ```
803
804 #### 4. Replace scope-level digests
805 ```dart
806 //old code
807 scope.$digest();
808
809 //new code
810 scope.rootScope.apply();
811
812 //Digest is now split between digest/flush so we need apply to call them both.
813 ```
814
815 #### 5. Changes to scope event listeners
816 ```dart
817 //old code
818 scope.$on('foo', (e, data) {});
819
820 //new code
821 scope.on('foo').listen((e) {var data = e.data;});
822
823
824 //old code
825 scope.$on('foo', (e, a, b, c) {});
826
827 //new code
828 scope.on('foo').listen((e) {MyEvent data = e.data;});
829
830
831 //old code
832 scope.$emit('foo', [a]);
833
834 //new code
835 scope.emit('foo', a);
836
837
838 //old code
839 scope.$emit('foo', [a, b ,c]);
840
841 //new code
842 scope.emit('foo', new MyEvent(a, b, c));
843 ```
844
845 #### 6. Creating new scopes
846 ```dart
847 //old code
848 scope.$new();
849
850 //new code
851 scope.createChild(new PrototypeMap(scope.context)));
852
853 //We have plans to allow any object to be the context.
854 //The PrototypeMap is a way to maintain consistent behavior.
855 ```
856
857 #### 7. EvalAsync
858 ```dart
859 //old code
860 scope.$evalAsync(() => null);
861
862 //new code
863 scope.runAsync(() => null);
864
865
866 //old code
867 scope.$evalAsync(
868 () => null,
869 outsideDigest: true);
870
871 //new code
872 scope.domRead(() => null);
873 ```
874
875 #### 8. scope.$$verifyDigestWillRun() has been removed
876 There is currently no replacement. We feel that we have the zone under control a nd there is no need for this method any more.
877
878 #### 9. scope.$disabled has been removed
879 There is currently no replacement.
880
881 #### 10. Watching collections
882 ```dart
883 //old code
884 scope.$watchSet(['ctrl.foo', 'ctrl.bar'], (values) {...});
885
886 //new code
887 scope.watch('[ctrl.foo, ctrl.bar]', (vars, _) {
888 var ctrlFoo = vars[0];
889 var ctrlBar = vars[1];
890 });
891 ```
892
893
894
1 <a name="v0.9.8"></a> 895 <a name="v0.9.8"></a>
2 # v0.9.8 cozy-porcupine (2014-02-19) 896 # v0.9.8 cozy-porcupine (2014-02-19)
3 897
4 898
5 ## Bug Fixes 899 ## Bug Fixes
6 900
7 - **DateFilter:** fix a wrong type 901 - **DateFilter:** fix a wrong type
8 ([cec3edad](https://github.com/angular/angular.dart/commit/cec3edad1944a841188 2b0a87ea6193c25513392), 902 ([cec3edad](https://github.com/angular/angular.dart/commit/cec3edad1944a841188 2b0a87ea6193c25513392),
9 [#579](https://github.com/angular/angular.dart/issues/579)) 903 [#579](https://github.com/angular/angular.dart/issues/579))
10 - **compiler:** support filters in attribute expressions 904 - **compiler:** support filters in attribute expressions
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
106 - **eval access:** Do not crash on null cached value 1000 - **eval access:** Do not crash on null cached value
107 ([bbcbd3e7](https://github.com/angular/angular.dart/commit/bbcbd3e70f289c1fcc2 32a38ac89038f83342d3c), 1001 ([bbcbd3e7](https://github.com/angular/angular.dart/commit/bbcbd3e70f289c1fcc2 32a38ac89038f83342d3c),
108 [#424](https://github.com/angular/angular.dart/issues/424)) 1002 [#424](https://github.com/angular/angular.dart/issues/424))
109 - **forms:** ensure fields, fieldsets & forms are marked as dirty when modified 1003 - **forms:** ensure fields, fieldsets & forms are marked as dirty when modified
110 ([ad60d55a](https://github.com/angular/angular.dart/commit/ad60d55a2f8cdd6c7f0 a246efdc79a5af85a833e)) 1004 ([ad60d55a](https://github.com/angular/angular.dart/commit/ad60d55a2f8cdd6c7f0 a246efdc79a5af85a833e))
111 - **generator:** 1005 - **generator:**
112 - write files in sorted order for predictable tests 1006 - write files in sorted order for predictable tests
113 ([79b7525a](https://github.com/angular/angular.dart/commit/79b7525a790ce73a50c 2874e2f43110fbce61d16)) 1007 ([79b7525a](https://github.com/angular/angular.dart/commit/79b7525a790ce73a50c 2874e2f43110fbce61d16))
114 - Write URI in sorted order to prevent SHA churn 1008 - Write URI in sorted order to prevent SHA churn
115 ([217839ef](https://github.com/angular/angular.dart/commit/217839ef3495506313a 226681a6c10a52e71df0f)) 1009 ([217839ef](https://github.com/angular/angular.dart/commit/217839ef3495506313a 226681a6c10a52e71df0f))
116 - **input:** treat <input> with no type as type="text" 1010 - **input:** treat `<input>` with no type as type="text"
117 ([8f0a8a7f](https://github.com/angular/angular.dart/commit/8f0a8a7fe87517a65b2 c5ed2857c90ea87898a0b)) 1011 ([8f0a8a7f](https://github.com/angular/angular.dart/commit/8f0a8a7fe87517a65b2 c5ed2857c90ea87898a0b))
118 - **ng-class:** array syntax should not insert nulls 1012 - **ng-class:** array syntax should not insert nulls
119 ([b982e326](https://github.com/angular/angular.dart/commit/b982e326cd7d3fbd4e5 3fbe7b65ba9adc0f5cf64), 1013 ([b982e326](https://github.com/angular/angular.dart/commit/b982e326cd7d3fbd4e5 3fbe7b65ba9adc0f5cf64),
120 [#513](https://github.com/angular/angular.dart/issues/513)) 1014 [#513](https://github.com/angular/angular.dart/issues/513))
121 - **ngModel:** evaluate user input using onInput instead of onKeyDown 1015 - **ngModel:** evaluate user input using onInput instead of onKeyDown
122 ([64442974](https://github.com/angular/angular.dart/commit/64442974157211b49ba d6f28182a15aedd652efd)) 1016 ([64442974](https://github.com/angular/angular.dart/commit/64442974157211b49ba d6f28182a15aedd652efd))
123 - **parser:** 1017 - **parser:**
124 - disallow filters in a chain and inside expressions 1018 - disallow filters in a chain and inside expressions
125 ([5bcea649](https://github.com/angular/angular.dart/commit/5bcea6492f6d0fd39ba 316fa3b241c50bb94de8d)) 1019 ([5bcea649](https://github.com/angular/angular.dart/commit/5bcea6492f6d0fd39ba 316fa3b241c50bb94de8d))
126 - Correctly distinguish NoSuchMethodError 1020 - Correctly distinguish NoSuchMethodError
(...skipping 374 matching lines...) Expand 10 before | Expand all | Expand 10 after
501 1395
502 # Semantic Version Conventions 1396 # Semantic Version Conventions
503 1397
504 http://semver.org/ 1398 http://semver.org/
505 1399
506 - *Stable*: All even numbered minor versions are considered API stable: 1400 - *Stable*: All even numbered minor versions are considered API stable:
507 i.e.: v1.0.x, v1.2.x, and so on. 1401 i.e.: v1.0.x, v1.2.x, and so on.
508 - *Development*: All odd numbered minor versions are considered API unstable: 1402 - *Development*: All odd numbered minor versions are considered API unstable:
509 i.e.: v0.9.x, v1.1.x, and so on. 1403 i.e.: v0.9.x, v1.1.x, and so on.
510 1404
OLDNEW
« no previous file with comments | « third_party/pkg/angular/.travis.yml ('k') | third_party/pkg/angular/CONTRIBUTING.md » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698