22# 1.5.0-rc.1 quantum-fermentation (2016-01-15)
33
44
5+ ## Features
6+
7+ - **$compile:**
8+ - Allow ES6 classes as controllers with `bindToController: true`
9+ ([8955cfb6](https://github.com/angular/angular.js/commit/8955cfb6462f79a32caa641ffc002f1522f08220))
10+ - Allow ES6 classes as controllers with `bindToController: true`
11+ ([b0248b78](https://github.com/angular/angular.js/commit/b0248b7894649aa1e083698c66d01679fa66d1c1))
12+ - **$compileProvider:** - allow registering components with the component() method
13+ ([feeb19787ca6e23e15578a4d1319f1c33853290c](https://github.com/angular/angular.js/commit/feeb19787ca6e23e15578a4d1319f1c33853290c))
14+ - **component:**
15+ - default controllerAs to `$ctrl`
16+ ([d91cf167](https://github.com/angular/angular.js/commit/d91cf167960d47ce38fec0d33cab6119268623f0),
17+ [#13664](https://github.com/angular/angular.js/issues/13664), [#13710](https://github.com/angular/angular.js/issues/13710))
18+ - disallow non-isolate scopes
19+ ([f31c5a39](https://github.com/angular/angular.js/commit/f31c5a3924629795cd9169e69b9e20efd4a9d927),
20+ [#13710](https://github.com/angular/angular.js/issues/13710))
21+ - allow `component()` helper to copy over custom annotations
22+ ([90975db5](https://github.com/angular/angular.js/commit/90975db5f91dfe44fa5dc4542e92c68e0d425929),
23+ [#13741](https://github.com/angular/angular.js/issues/13741))
24+ - **$injector:** support instantiating classes.
25+ ([8b6b4282](https://github.com/angular/angular.js/commit/8b6b42827186e5e4eb7a56f6b824c560a5058bd2))
26+ - **ngMock:** add support for `$animate.closeAndFlush()`
27+ ([e1def1b8](https://github.com/angular/angular.js/commit/e1def1b8fe543fde09abda076d66606027f7dbeb),
28+ [#13005](https://github.com/angular/angular.js/issues/13005), [#13576](https://github.com/angular/angular.js/issues/13576), [#13707](https://github.com/angular/angular.js/issues/13707))
29+ - **ngMock.$componentController:** add helper to instantiate controllers for components
30+ ([dd14e0c4](https://github.com/angular/angular.js/commit/dd14e0c44d2963d217cd4eb28f1ad6e6a643d63f),
31+ [#13683](https://github.com/angular/angular.js/issues/13683), [#13711](https://github.com/angular/angular.js/issues/13711))
32+
33+
534## Bug Fixes
635
736- **$animate:**
2453 ([de9777d8](https://github.com/angular/angular.js/commit/de9777d8193531472df4b57fdeb6650d7f7c1846),
2554 [#12656](https://github.com/angular/angular.js/issues/12656), [#13333](https://github.com/angular/angular.js/issues/13333))
2655- **$compile:**
27- - Add missing variable declaration
56+ - add missing variable declaration
2857 ([6cdbda7c](https://github.com/angular/angular.js/commit/6cdbda7cf1cfc1d49eb98d42d8e823e65bebb90d))
29- - Fix namespace detection for achor elements
58+ - fix namespace detection for anchor elements
3059 ([c9e6cf9b](https://github.com/angular/angular.js/commit/c9e6cf9be0d549fba234956f7e263f40d1bb1e76))
31- - **$compileProvider:** remove the ability to set the `restrict` option on `component()` helper
60+ - **component:**
61+ - remove the ability to set the `restrict` option on `component()` helper
3262 ([25bc5318](https://github.com/angular/angular.js/commit/25bc53180248bf5e8a6467c55d913cfa38fc7a3b),
3363 [#13741](https://github.com/angular/angular.js/issues/13741))
64+ - use `false` as default value for `transclude` in `component()` helper
65+ ([6a47c0d7](https://github.com/angular/angular.js/commit/6a47c0d75d0c6f0bfb3b5492d1f05ec900387744),
66+ [#13566](https://github.com/angular/angular.js/issues/13566), [#13581](https://github.com/angular/angular.js/issues/13581))
67+ - allow passing template/templateUrl in array notation
68+ ([99d601a0](https://github.com/angular/angular.js/commit/99d601a048ac2b82e2f74ae88c96773e5d1a7258))
3469- **$controller:** allow identifiers containing `$`
3570 ([4e1b36c2](https://github.com/angular/angular.js/commit/4e1b36c21686ad0ca4930d1d81f77a7d9cc35851),
3671 [#13736](https://github.com/angular/angular.js/issues/13736))
3772- **$injector:** workaround for MS Edge class detection
3873 ([fabc6ab5](https://github.com/angular/angular.js/commit/fabc6ab5b01dc687aa8385da067752ba34da6524))
3974- **$q:** make instanceof work for $q promises
4075 ([b3ef5e08](https://github.com/angular/angular.js/commit/b3ef5e08528f5f1916876032700a016448fb196a))
41- - **Module:** allow passing template/templateUrl in array notation
42- ([99d601a0](https://github.com/angular/angular.js/commit/99d601a048ac2b82e2f74ae88c96773e5d1a7258))
4376- **copy:**
4477 - add support for ArrayBuffer, handle multiple references to ArrayBuffer
4578 ([986647a9](https://github.com/angular/angular.js/commit/986647a968858121c1de472fc4913221dc8d339a))
5487- **linky:** throw error if input is not a string
5588 ([98c2db7f](https://github.com/angular/angular.js/commit/98c2db7f9c2d078a408576e722407d518c7ee10a),
5689 [#13547](https://github.com/angular/angular.js/issues/13547), [#13693](https://github.com/angular/angular.js/issues/13693))
57- - **loader:** use `false` as default value for `transclude` in component helper
58- ([6a47c0d7](https://github.com/angular/angular.js/commit/6a47c0d75d0c6f0bfb3b5492d1f05ec900387744),
59- [#13566](https://github.com/angular/angular.js/issues/13566), [#13581](https://github.com/angular/angular.js/issues/13581))
6090- **ngAnimate:**
6191 - only copy over the animation options once
6292 ([d4fa3313](https://github.com/angular/angular.js/commit/d4fa3313088a03d15ccbf266583d6ecaa0d22241),
82112 [#13583](https://github.com/angular/angular.js/issues/13583), [#13583](https://github.com/angular/angular.js/issues/13583), [#13663](https://github.com/angular/angular.js/issues/13663))
83113
84114
85- ## Features
115+ ## Breaking Changes
86116
87- - **$compile:**
88- - Allow ES6 classes as controllers with `bindToController: true`
89- ([8955cfb6](https://github.com/angular/angular.js/commit/8955cfb6462f79a32caa641ffc002f1522f08220))
90- - Allow ES6 classes as controllers with `bindToController: true`
91- ([b0248b78](https://github.com/angular/angular.js/commit/b0248b7894649aa1e083698c66d01679fa66d1c1))
92- - **$compileProvider:** allow `component()` helper to copy over custom annotations
93- ([90975db5](https://github.com/angular/angular.js/commit/90975db5f91dfe44fa5dc4542e92c68e0d425929),
94- [#13741](https://github.com/angular/angular.js/issues/13741))
95- - **$injector:** support instantiating classes.
96- ([8b6b4282](https://github.com/angular/angular.js/commit/8b6b42827186e5e4eb7a56f6b824c560a5058bd2))
97- - **component:**
98- - default controllerAs to be $ctrl
99- ([d91cf167](https://github.com/angular/angular.js/commit/d91cf167960d47ce38fec0d33cab6119268623f0),
100- [#13664](https://github.com/angular/angular.js/issues/13664), [#13710](https://github.com/angular/angular.js/issues/13710))
101- - disallow non-isolate scopes
102- ([f31c5a39](https://github.com/angular/angular.js/commit/f31c5a3924629795cd9169e69b9e20efd4a9d927),
103- [#13710](https://github.com/angular/angular.js/issues/13710))
104- - **ngMock:** add support for `$animate.closeAndFlush()`
105- ([e1def1b8](https://github.com/angular/angular.js/commit/e1def1b8fe543fde09abda076d66606027f7dbeb),
106- [#13005](https://github.com/angular/angular.js/issues/13005), [#13576](https://github.com/angular/angular.js/issues/13576), [#13707](https://github.com/angular/angular.js/issues/13707))
107- - **ngMock.$componentController:** add helper to instantiate controllers for components
108- ([dd14e0c4](https://github.com/angular/angular.js/commit/dd14e0c44d2963d217cd4eb28f1ad6e6a643d63f),
109- [#13683](https://github.com/angular/angular.js/issues/13683), [#13711](https://github.com/angular/angular.js/issues/13711))
117+ - **$component**:
118+ *These breaking changes affect only applications updating from previous 1.5 beta / rc versions*
110119
120+ - Due to [d91cf167](https://github.com/angular/angular.js/commit/d91cf167960d47ce38fec0d33cab6119268623f0),
121+ the default `controllerAs` value for components is now `$ctrl` (previously the name of the component was used).
122+ To migrate, either set `controllerAs` to the component name, or change the property name in your templates
123+ to `$ctrl`
111124
112- ## Breaking Changes
125+ - Due to [25bc5318](https://github.com/angular/angular.js/commit/25bc5318), it is no longer possible to
126+ set the `restrict` option on directives created via the `module.component()` helper.
127+ All components are now element directives (`restrict: 'E'`). If you need a directive that is not an element then you must use the
128+ `module.directive()` helper instead.
113129
114- - **$compileProvider**: due to [25bc5318](https://github.com/angular/angular.js/commit/25bc5318),
130+ - Due to [f31c5a39](https://github.com/angular/angular.js/commit/f31c5a3924629795cd9169e69b9e20efd4a9d927),
131+ components are now always created with `scope: {}` (isolate scope). Previously, it was also possible to create components
132+ with `scope: true` or `scope: false`. If your components rely on this scope configuration, you will have to
133+ create a regular directive instead.
115134
116- This release removes the ability to set the `restrict` option on directives created via the `module.component()` helper.
117- All components are now element directives . If you need a directive that is not an element then you must use the
118- `module.directive()` helper instead .
135+ - Due to [6a47c0d7](https://github.com/angular/angular.js/commit/6a47c0d75d0c6f0bfb3b5492d1f05ec900387744),
136+ the `transclude` property is now `false` by default (previously `true`) . If you created components that expected
137+ transclusion then you must change your code to specify `transclude: true` .
119138
120139- **linky:** due to [98c2db7f](https://github.com/angular/angular.js/commit/98c2db7f9c2d078a408576e722407d518c7ee10a),
121140
@@ -129,12 +148,6 @@ values through `linky`, you need to explicitly convert them to strings first.
129148Since input values could be initialized asynchronously, `undefined` or `null` will still be
130149returned unchanged (without throwing an error).
131150
132- - **loader:** due to [6a47c0d7](https://github.com/angular/angular.js/commit/6a47c0d75d0c6f0bfb3b5492d1f05ec900387744),
133-
134- Angular 1.5.0.beta.2 introduced the `module.component` helper where `transclude` was true by default.
135- This changes the default for `transclude` to `false`. If you created components that expected
136- transclusion then you must change your code to specify `transclude: true`.
137-
138151
139152<a name="1.5.0-rc.0"></a>
140153# 1.5.0-rc.0 oblong-panoptikum (2015-12-09)
0 commit comments