<a name="15.0.0-next.5"></a>
15.0.0-next.5 (2022-10-05)
Breaking Changes
compiler
will become:
@keyframes host-my-cmp_foo { ... }
Any TypeScript/JavaScript code which relied on the names of keyframes rules
will no longer match.
The recommended solutions in this case are to either:
- change the component's view encapsulation to the None or ShadowDom
- define keyframes rules in global stylesheets (e.g styles.css)
- define keyframes rules programmatically in code.
router
- Previously, the
RouterOutlet would immediately
instantiate the component being activated during navigation. Now the
component is not instantiated until the change detection runs. This
could affect tests which do not trigger change detection after a router
navigation. In rarer cases, this can affect production code that relies
on the exact timing of component availability.
## Deprecations
### core
- - The ability to pass an
NgModule to the providedIn option for
@Injectable and InjectionToken is now deprecated.
providedIn: NgModule was intended to be a tree-shakable alternative to
NgModule providers. It does not have wide usage, and in most cases is used
incorrectly, in circumstances where providedIn: 'root' should be
preferred. If providers should truly be scoped to a specific NgModule, use
NgModule.providers instead.
- The ability to set
providedIn: 'any' for an @Injectable or
InjectionToken is now deprecated.
providedIn: 'any' is an option with confusing semantics and is almost
never used apart from a handful of esoteric cases internal to the framework.
compiler
| Commit | Description |
| -- | -- |
|
| scope css keyframes in emulated view encapsulation (#42608) |
compiler-cli
| Commit | Description |
| -- | -- |
|
| support hasInvalidatedResolutions. (#47585) |
core
| Commit | Description |
| -- | -- |
|
| deprecate providedIn: NgModule and providedIn: 'any' (#47616) |
localize
| Commit | Description |
| -- | -- |
|
| add polyfill in polyfills array instead of polyfills.ts (#47569) |
router
| Commit | Description |
| -- | -- |
|
| auto-unwrap default exports when lazy loading (#47586) |
|
| make RouterOutlet name an Input so it can be set dynamically (#46569) |
Special Thanks
Alan Agius, Alex Rickabaugh, Alexander Wiebe, Andrew Kushnir, Andrew Scott, Ciprian Sauliuc, Dmytro Mezhenskyi, Dylan Hunn, George Kalpakas, Joe Martin (Crowdstaffing), Jordan, Kristiyan Kostadinov, Martin Probst, Ole M, Paul Gschwendtner, Pawel Kozlowski, dario-piotrowicz and mgechev