Skip to content

Releases: angular/angular

v15.0.0-rc.0

Compare
Choose a tag to compare
v15.0.0-rc.0 Pre-release
Pre-release

15.0.0-rc.0 (2022-10-19)

common

Commit Description
fix - 4f52d4e474 don't generate srcset if noopImageLoader is used (#47804)
fix - fa4798095e update size error to mention 'fill' mode (#47797)
fix - 23f210c0ab warn if using supported CDN but not built-in loader (#47330)

compiler-cli

Commit Description
fix - 309b2cde51 implement more host directive validations as diagnostics (#47768)

localize

Commit Description
fix - b6fd814542 update ng add schematic to support Angular CLI version 15 (#47763)

router

Commit Description
fix - 79e9e8ab77 Delay router scroll event until navigated components have rendered (#47563)

Special Thanks

Alan Agius, Alex Castle, Andrew Kushnir, Andrew Scott, Bob Watson, Charles Barnes, Charles Lyding, Kara Erickson, Kristiyan Kostadinov, Paul Gschwendtner, Virginia Dooley, WD Snoeijer, abergquist and urugator

v14.2.7

Compare
Choose a tag to compare

14.2.7 (2022-10-19)

Special Thanks

Bob Watson, Charles Barnes, Joey Perrott, Virginia Dooley, WD Snoeijer, abergquist and urugator

v15.0.0-next.6

Compare
Choose a tag to compare
v15.0.0-next.6 Pre-release
Pre-release

15.0.0-next.6 (2022-10-12)

Breaking Changes

compiler-cli

  • Invalid constructors for DI may now report compilation errors

    When a class inherits its constructor from a base class, the compiler may now
    report an error when that constructor cannot be used for DI purposes. This may
    either be because the base class is missing an Angular decorator such as
    @Injectable() or @Directive(), or because the constructor contains parameters
    which do not have an associated token (such as primitive types like string).
    These situations used to behave unexpectedly at runtime, where the class may be
    constructed without any of its constructor parameters, so this is now reported
    as an error during compilation.

    Any new errors that may be reported because of this change can be resolved either
    by decorating the base class from which the constructor is inherited, or by adding
    an explicit constructor to the class for which the error is reported.

core

  • Angular no longer supports Node.js versions 14.[15-19].x and 16.[10-12].x. Current supported versions of Node.js are 14.20.x, 16.13.x and 18.10.x.
  • TypeScript versions older than 4.8 are no longer supported.

forms

  • setDisabledState will always be called when a ControlValueAccessor is attached. You can opt-out with FormsModule.withConfig or ReactiveFormsModule.withConfig.

router

  • relativeLinkResolution is no longer configurable in
    the Router. This option was used as a means to opt out of a bug fix.

Deprecations

common

  • The DATE_PIPE_DEFAULT_TIMEZONE token is now deprecated in favor
    of the DATE_PIPE_DEFAULT_OPTIONS token, which accepts an object
    as a value and the timezone can be defined as a field (called timezone)
    on that object.

router

  • The RouterLinkWithHref directive is deprecated, use the RouterLink directive instead. The RouterLink contains the code from the RouterLinkWithHref to handle elements with href attributes.

common

Commit Description
feat - c0c7efaf7c add provideLocationMocks() function to provide Location mocks (#47674)
feat - 75e6297f09 add preload tag on server for priority img (#47343)
feat - 4fde292bb5 Add automatic srcset generation to ngOptimizedImage (#47547)
feat - 9483343ebf Add fill mode to NgOptimizedImage (#47738)
feat - bdb5371033 add injection token for default DatePipe configuration (#47157)

compiler

Commit Description
fix - 39b72e208b update element schema (#47552)
fix - 48b354a83e update element schema (#47552)

compiler-cli

Commit Description
fix - 38078e7adb add missing period to error message (#47744)
fix - bc54687c7b exclude abstract classes from strictInjectionParameters requirement (#44615)
fix - 19ad4987f9 use @ts-ignore. (#47636)
perf - a792bf1703 minimize filesystem calls when generating shims (#47682)

core

Commit Description
feat - 1b9fd46d14 add support for Node.js version 18 (#47730)
feat - ed11a13c3c drop support for TypeScript 4.6 and 4.7 (#47690)
feat - db28badfe6 enable the new directive composition API (#47642)
feat - 7de1469be6 introduce EnvironmentProviders wrapper type (#47669)

forms

Commit Description
feat - a8569e3802 export forms utility functions: isFormArray, isFormGroup… (#47718)
fix - 96b7fe93af call setDisabledState on ControlValueAcessor when control is enabled (#47576)

http

Commit Description
feat - 3ba99e286a allow for child HttpClients to request via parents (#47502)
feat - 84d0d33c35 introduce provideHttpClientTesting provider function (#47502)
feat - 62c7a7a16e introduce functional interceptors (#47502)
feat - e47b129070 introduce the provideHttpClient() API (#47502)
fix - ea16a98dfe better handle unexpected undefined XSRF tokens (#47683)

language-service

Commit Description
feat - bebef5fb43 Quick fix to import a component when its selector is used (#47088)

router

Commit Description
feat - 7bee28d037 add a migration to remove relativeLinkResolution usages (#47604)
feat - f73ef21442 merge RouterLinkWithHref into RouterLink (#47630)
feat - 16c8f55663 migrate RouterLinkWithHref references to RouterLink (#47599)
feat - 07017a7bd3 prevent provideRouter() from usage in @component (#47669)
fix - 7b89d95c0e Remove deprecated relativeLinkResolution (#47623)

Special Thanks

Alan Agius, AleksanderBodurri, Alex Castle, Alex Rickabaugh, Andrew Kushnir, Andrew Scott, Aristeidis Bampakos, Bob Watson, Charles Lyding, Dylan Hunn, Ferdinand Malcher, George Kalpakas, Jessica Janiuk, Joey Perrott, JoostK, Joshua Morony, Kristiyan Kostadinov, Martin Probst, Mathew Berg, Matthias Weiß, Paul Gschwendtner, Peter Dickten, Renan Ferro, Sri Ram, WD Snoeijer, arturovt, jaybell, markostanimirovic and Álvaro Martínez

v14.2.6

Compare
Choose a tag to compare

14.2.6 (2022-10-12)

compiler-cli

Commit Description
fix - 3fd176a905 add missing period to error message (#47744)
perf - c3821f5ab5 minimize filesystem calls when generating shims (#47682)

Special Thanks

Alan Agius, Andrew Kushnir, Andrew Scott, Aristeidis Bampakos, Bob Watson, Charles Lyding, Joey Perrott, Joshua Morony, Mathew Berg, Paul Gschwendtner, Peter Dickten, Renan Ferro, Sri Ram, WD Snoeijer, markostanimirovic and Álvaro Martínez

v15.0.0-next.5

Compare
Choose a tag to compare
v15.0.0-next.5 Pre-release
Pre-release

15.0.0-next.5 (2022-10-05)

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

compiler-cli

Commit Description
fix - 2e1dddec45 support hasInvalidatedResolutions. (#47585)

core

Commit Description
docs - e3cef4a784 deprecate providedIn: NgModule and providedIn: 'any' (#47616)

localize

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

router

Commit Description
feat - da58801f95 auto-unwrap default exports when lazy loading (#47586)
feat - c3f857975d 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

v14.2.5

Compare
Choose a tag to compare

14.2.5 (2022-10-05)

Special Thanks

Alexander Wiebe, Ciprian Sauliuc, Dmytro Mezhenskyi, George Kalpakas, Joe Martin (Crowdstaffing), Jordan, Ole M, Paul Gschwendtner, Pawel Kozlowski and mgechev

v15.0.0-next.4

Compare
Choose a tag to compare
v15.0.0-next.4 Pre-release
Pre-release

15.0.0-next.4 (2022-09-28)

Breaking Changes

router

  • The title property is now required on ActivatedRouteSnapshot

Deprecations

core

  • The bit field signature of Injector.get() has been deprecated, in favor of the new options object.
  • The bit field signature of TestBed.inject() has been deprecated, in favor of the new options object.

core

Commit Description
feat - 841c8e5138 support object-based DI flags in Injector.get() (#46761)
feat - 120555a626 support object-based DI flags in TestBed.inject() (#46761)
fix - aef8d0bb02 correctly check for typeof of undefined in ngDevMode check (#47480)
fix - 85330f3fd9 update isDevMode to rely on ngDevMode (#47475)

language-service

Commit Description
feat - e7ee53c541 support to fix invalid banana in box (#47393)

router

Commit Description
fix - 6a88bad019 Ensure ActivatedRouteSnapshot#title has correct value (#47481)

Special Thanks

Alan Agius, Alex Rickabaugh, Andrew Kushnir, Andrew Scott, Ashley Hunter, Doug Parker, Jessica Janiuk, JiaLiPassion, Kristiyan Kostadinov, Rokas Brazdžionis, Simona Cotin and ivanwonder

v14.2.4

Compare
Choose a tag to compare

14.2.4 (2022-09-28)

compiler-cli

Commit Description
perf - a4b66fe1e5 cache source file for reporting type-checking diagnostics (#47508)

core

Commit Description
fix - 2c46b5ab24 correctly check for typeof of undefined in ngDevMode check (#47480)

Special Thanks

Alan Agius, Ashley Hunter, Doug Parker, Jessica Janiuk, JoostK, Kristiyan Kostadinov, Rokas Brazdžionis and Simona Cotin

v15.0.0-next.3

v15.0.0-next.3 Pre-release
Pre-release

15.0.0-next.3 (2022-09-21)

animations

Commit Description
fix - d11b1d99b0 make sure that the useAnimation function delay is applied (#47468)

compiler-cli

Commit Description
perf - 8fcadaad48 cache source file for reporting type-checking diagnostics (#47471)

Special Thanks

AleksanderBodurri, Andrew Kushnir, Andrew Scott, Bob Watson, George Kalpakas, JiaLiPassion, Joey Perrott, JoostK, Kristiyan Kostadinov, Mauro Mattos, Pawel Kozlowski, Sabareesh Kappagantu, angular-robot[bot], dario-piotrowicz, fabioemoutinho and famzila

v14.2.3

Compare
Choose a tag to compare

14.2.3 (2022-09-21)

animations

Commit Description
fix - bba2dae812 make sure that the useAnimation function delay is applied (#47468)

Special Thanks

AleksanderBodurri, Andrew Kushnir, Andrew Scott, Bob Watson, George Kalpakas, Joey Perrott, Mauro Mattos, dario-piotrowicz, fabioemoutinho and famzila