angular v15.0.0-next.5 Release Notes

Release Date: 2022-10-05 // over 1 year ago
  • ๐Ÿ’ฅ Breaking Changes

    compiler

    • ๐Ÿ›  Keyframes names are now prefixed with the component's "scope name". For example, the following keyframes rule in a component definition, whose "scope name" is host-my-cmp:

      @keyframes foo { ... }

    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 Type Description
    051f75648d fix scope css keyframes in emulated view encapsulation (#42608)

    compiler-cli

    Commit Type Description
    ๐Ÿ‘ 2e1dddec45 fix

    core

    Commit Type Description
    ๐Ÿ—„ e3cef4a784 docs

    localize

    Commit Type Description
    400a6b5e37 fix add polyfill in polyfills array instead of polyfills.ts (#47569)

    router

    Commit Type Description
    0๏ธโƒฃ da58801f95 feat
    c3f857975d feat 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

    <!-- CHANGELOG SPLIT MARKER -->