PackageTrack

npm · #4400 most downloaded on npm

@angular/platform-browser

22.1.4angular/angular

Angular - library for using Angular in a web browser

Release timeline

1101 releases since 2016
20162026

Releases

  1. 14.2.428 Sept 2022
    Release notes

    compiler-cli

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

    core

    Commit Type Description
    2c46b5ab24 fix 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

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.2.3"></a>

    Open source →
  2. 14.2.321 Sept 2022
    Release notes

    animations

    Commit Type Description
    bba2dae812 fix 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

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.2.2"></a>

    Open source →
  3. 14.2.215 Sept 2022
    Release notes

    animations

    Commit Type Description
    937e6c5b3d fix make sure that the animation function delay is applied (#47285)

    common

    Commit Type Description
    c9bdf9bab1 fix rename rawSrc -> ngSrc in NgOptimizedImage directive (#47362) (#47396)

    core

    Commit Type Description
    a3e1303f04 fix imply @Optional flag when a default value is provided (#47242)

    forms

    Commit Type Description
    80c66a1e57 fix don't prevent default behavior for forms with method="dialog" (#47308)

    Special Thanks

    Abhishek Rawat, Andrew Kushnir, Benjamin Chanudet, Bob Watson, George Kalpakas, Ikko Ashimine, Kristiyan Kostadinov, Marc Wrobel, Mariia Subkov, Pawel Kozlowski, Sebastian, abergquist, dario-piotrowicz, onrails and vyom1611

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.2.1"></a>

    Open source →
  4. 14.2.17 Sept 2022
    Release notes

    common

    Commit Type Description
    c0d7ac9ec2 fix improve formatting of image warnings (#47299)
    1875ce520a fix use DOCUMENT token to query for preconnect links (#47353)

    compiler

    Commit Type Description
    0e35829580 fix avoid errors for inputs with Object-builtin names (#47220)

    service-worker

    Commit Type Description
    6091786696 fix include headers in requests for assets (#47260)
    28d33505fd fix only consider GET requests as navigation requests (#47263)

    Special Thanks

    Aristeidis Bampakos, Asaf M, Bingo's Code, Bob Watson, Daniel Ostrovsky, George Kalpakas, Giovanni Alberto Rivas, Jeremy Elbourn, Jobayer Hossain, Joe Martin (Crowdstaffing), Joey Perrott, JoostK, Kara Erickson, Kristiyan Kostadinov, Maina Wycliffe, Sabareesh Kappagantu, Simona Cotin, Sonu Sindhu, Yann Provoost, abergquist, jaybell and vyom1611

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.2.0"></a>

    Open source →
  5. 14.2.025 Aug 2022
    Release notes

    animations

    Commit Type Description
    b96e571897 fix fix stagger timing not handling params (#47208)

    common

    Commit Type Description
    b380fdd59e feat add a density cap for image srcsets (#47082)
    7ce497e5bc feat add built-in Imgix loader (#47082)
    bff870db61 feat add cloudflare loader (#47082)
    86e77a5d55 feat add Image directive skeleton (#45627) (#47082)
    0566205a02 feat Add image lazy loading and fetchpriority (#47082)
    4e952ba216 feat add loaders for cloudinary & imagekit (#47082)
    e854a8cdde feat add loading attr to NgOptimizedImage (#47082)
    8d3701cb4c feat add warnings re: image distortion (#47082)
    d5f7da2120 feat define public API surface for NgOptimizedImage directive (#47082)
    d3c3426aa4 feat detect LCP images in NgOptimizedImage and assert if priority is set (#47082)
    451b85ca17 feat explain why width/height is required (#47082)
    586274fe65 feat provide an ability to exclude origins from preconnect checks in NgOptimizedImage (#47082)
    57f3386e5b feat support custom srcset attributes in NgOptimizedImage (#47082)
    7baf9a46cd feat verify that priority images have preconnect links (#47082)
    f81765b333 feat warn if rendered size is much smaller than intrinsic (#47082)
    e2ab99b95e fix allow null/undefined to be passed to ngClass input (#39280) (#46906)
    bedf537951 fix allow null/undefined to be passed to ngStyle input (#47069)
    f9511bf6e8 fix avoid interacting with a destroyed injector (#47243)
    dc29e21b14 fix consider density descriptors with multiple digits as valid (#47230)
    801daf82d1 fix detect data: and blob: inputs in NgOptimizedImage directive (#47082)
    fff8056e7f fix fix formatting on oversized image error (#47188) (#47232)
    1ca2ce19ab fix remove default for image width (#47082)
    c5db867ddc fix remove duplicate deepForEach (#47189)
    1cf43deb18 fix sanitize rawSrc and rawSrcset values in NgOptimizedImage directive (#47082)
    d71dfe931f fix set bound width and height onto host element (#47082)
    32caa8b669 fix support density descriptors with 2+ decimals (#47197) (#47232)
    ae4405f0bf fix throw if srcset is used with rawSrc (#47082)
    0c8eb8bc82 perf monitor LCP only for images without priority attribute (#47082)

    compiler-cli

    Commit Type Description
    ea89677c12 feat support more recent version of tsickle (#47018)

    core

    Commit Type Description
    d1e83e1b30 feat add createComponent function (#46685)
    10becab70e feat add reflectComponentType function (#46685)
    4b377d3a6d feat introduce createApplication API (#46475)
    31429eaccc feat support TypeScript 4.8 (#47038)
    796840209c fix align TestBed interfaces and implementation (#46635)

    forms

    Commit Type Description
    426af91a42 feat add FormBuilder.record() method (#46485)
    b302797de4 fix Correctly infer FormBuilder types involving [value, validators] shorthand in more cases. (#47034)

    language-service

    Commit Type Description
    598b72bd05 feat support fix the component missing member (#46764)

    platform-browser

    Commit Type Description
    07606e3181 feat add isEmpty method to the TransferState class (#46915)

    platform-server

    Commit Type Description
    2b4d7f6733 feat support document reference in render functions (#47032)

    router

    Commit Type Description
    0abb67af59 feat allow guards and resolvers to be plain functions (#46684)
    75df404467 feat Create APIs for using Router without RouterModule (#47010)
    10289f1f6e feat expose resolved route title (#46826)
    8600732b09 feat Expose the default matcher for Routes used by the Router (#46913)
    422323cee0 feat improve typings for RouterLink boolean inputs (#47101)
    26ea97688c feat Make router directives standalone (#46758)
    2a43beec15 fix Fix route recognition behavior with some versions of rxjs (#47098)

    service-worker

    Commit Type Description
    383090858c feat support sendRequest as a notificationclick action (#46912)
    3f548610dd fix export NoNewVersionDetectedEvent (#47044)
    482b6119c2 fix update golden index.md (#47044)

    Special Thanks

    Alex Rickabaugh, Andrew Kushnir, Andrew Scott, Bob Watson, Cédric Exbrayat, Dylan Hunn, Emmanuel Roux, FatalMerlin, George Kalpakas, Ilia Mirkin, Jan Kuehle, Jeremy Elbourn, Jessica Janiuk, JiaLiPassion, Kalbarczyk, Kara Erickson, Katie Hempenius, Kristiyan Kostadinov, Merlin, Paul Gschwendtner, Pawel Kozlowski, Tristan Sprößer, Victor Porof, angular-robot[bot], dario-piotrowicz, ivanwonder and vyom

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.1.3"></a>

    Open source →
  6. 14.2.0-rc.017 Aug 2022pre-release

    Nothing published for this version

  7. 14.2.0-next.110 Aug 2022pre-release

    Nothing published for this version

  8. 14.2.0-next.03 Aug 2022pre-release

    Nothing published for this version

  9. 14.1.317 Aug 2022
    Release notes

    compiler

    Commit Type Description
    0583227708 fix infinite loop in parser assignment expression with invalid left-hand expression (#47151)

    Special Thanks

    AlirezaEbrahimkhani, Alma Eyre, Andrew Scott, Bob Watson, George Kalpakas, Kalbarczyk, Kristiyan Kostadinov, Leosvel Pérez Espinosa, Roman Matusevich and Sonu Kapoor

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.1.2"></a>

    Open source →
  10. 14.1.210 Aug 2022
    Release notes

    core

    Commit Type Description
    5ff715c549 fix check if transplanted views are attached to change detector (#46974)

    router

    Commit Type Description
    439d77e852 fix Fix route recognition behavior with some versions of rxjs (#47098) (#47112)

    Special Thanks

    4javier, Andrew Kushnir, Andrew Scott, AntonioCardenas, Bob Watson, Bruno Barbosa, Eduardo Speroni, Edward, George Kalpakas, Jan Melcher, Kristiyan Kostadinov, Mladen Jakovljević, Paul Gschwendtner, Pawel Kozlowski, Roman Matusevich, Vovch, ashide2729, ileil and onrails

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.1.1"></a>

    Open source →
  11. 14.1.13 Aug 2022
    Release notes

    core

    Commit Type Description
    3606917732 fix improve the missing control flow directive message (#46903)

    router

    Commit Type Description
    79825d3f10 fix Do not call preload method when not necessary (#47007)
    05f3f7445a fix Use correct return type for provideRoutes function (#46941)

    Special Thanks

    Alan Agius, Andrew Kushnir, Andrew Quinn, Andrew Scott, Aristeidis Bampakos, Asaf M, Bob Watson, Cédric Exbrayat, Durairaj Subramaniam, George Kalpakas, Ivaylo Kirov, J Rob Gant, Kristiyan Kostadinov, Marek Hám, Paul Gschwendtner, Roman Matusevich and Simona Cotin

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.1.0"></a>

    Open source →
  12. 14.1.020 Jul 2022
    Release notes

    Deprecations

    core

    • The createNgModuleRef is deprecated in favor of newly added createNgModule one.
    • The bit field signature of inject() has been deprecated, in favor of the new options object. Correspondingly, InjectFlags is deprecated as well.

    animations

    Commit Type Description
    55308f2df5 feat add provideAnimations() and provideNoopAnimations() functions (#46793)

    common

    Commit Type Description
    4a2e7335b1 feat make the CommonModule pipes standalone (#46401)
    a7597dd080 feat make the CommonModule directives standalone (#46469)

    compiler

    Commit Type Description
    33ce3883a5 feat Add extended diagnostic to warn when missing let on ngForOf (#46683)
    6f11a58040 feat Add extended diagnostic to warn when text attributes are intended to be bindings (#46161)
    9e836c232f feat warn when style suffixes are used with attribute bindings (#46651)

    compiler-cli

    Commit Type Description
    93c65e7b14 feat add extended diagnostic for non-nullable optional chains (#46686)
    131d029da1 feat detect missing control flow directive imports in standalone components (#46146)
    6b8e60c06a fix improve the missingControlFlowDirective message (#46846)

    core

    Commit Type Description
    e8e8e5f171 feat add createComponent function
    b5153814af feat add reflectComponentType function
    96c6139c9a feat add ability to set inputs on ComponentRef (#46641)
    a6d5fe202c feat alias createNgModuleRef as createNgModule (#46789)
    71e606d3c3 feat expose EnvironmentInjector on ApplicationRef (#46665)
    19e6d9ccd3 feat import AsyncStackTaggingZone if available (#46693)
    a7a14df5f8 feat introduce EnvironmentInjector.runInContext API (#46653)
    fa52b6e906 feat options object to supersede bit flags for inject() (#46649)
    af20112222 feat support the descendants option for ContentChild queries (#46638)
    945a3ad359 fix Fix runInContext for NgModuleRef injector (#46877)
    bb7c80477b fix make parent injector argument required in createEnvironmentInjector (#46397)

    http

    Commit Type Description
    82acbf919b feat improve error message for nullish header (#46059)

    router

    Commit Type Description
    53ca936366 feat Add ability to create UrlTree from any ActivatedRouteSnapshot (#45877)
    de058bba99 feat Add CanMatch guard to control whether a Route should match (#46021)
    6c1357dd7d feat Add stable cancelation code to NavigationCancel event (#46675)
    a4ce273e50 feat Add the target RouterStateSnapshot to NavigationError (#46731)
    abe3759e24 fix allow to return UrlTree from CanMatchFn (#46455)
    e8c7dd10e9 fix Ensure APP_INITIALIZER of enabledBlocking option completes (#46026)
    ce20ed067f fix Ensure Route injector is created before running CanMatch guards (#46394)
    6a7b818d94 fix Ensure target RouterStateSnapshot is defined in NavigationError (#46842)
    f94c6f433d fix Expose CanMatchFn as public API (#46394)
    e8ae0fe3e9 fix Fix cancelation code for canLoad rejections (#46752)

    upgrade

    Commit Type Description
    e9cb0454dc feat more closely align UpgradeModule#bootstrap() with angular.bootstrap() (#46214)

    Special Thanks

    AleksanderBodurri, Alex Rickabaugh, Andrew Kushnir, Andrew Scott, Cédric Exbrayat, Dmitrij Kuba, Dylan Hunn, George Kalpakas, Jessica Janiuk, JiaLiPassion, Joey Perrott, John Vandenberg, JoostK, Keith Li, Or'el Ben-Ya'ir, Paul Gschwendtner, Pawel Kozlowski, SyedAhm3r, arturovt, mariu, markostanimirovic and mgechev

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.0.7"></a>

    Open source →
  13. 14.1.0-rc.013 Jul 2022pre-release

    Nothing published for this version

  14. 14.1.0-next.46 Jul 2022pre-release

    Nothing published for this version

  15. 14.1.0-next.329 Jun 2022pre-release

    Nothing published for this version

  16. 14.1.0-next.223 Jun 2022pre-release

    Nothing published for this version

  17. 14.1.0-next.115 Jun 2022pre-release

    Nothing published for this version

  18. 14.1.0-next.08 Jun 2022pre-release

    Nothing published for this version

  19. 14.0.720 Jul 2022
    Release notes

    animations

    Commit Type Description
    5bdbb6285b fix make sure falsy values are added to _globalTimelineStyles (#46863)

    compiler

    Commit Type Description
    41253f9c46 fix inputs/outputs incorrectly parsed in jit mode (#46813)

    core

    Commit Type Description
    4e77c7fbf3 fix do not invoke jasmine done callback multiple times with waitForAsync

    Special Thanks

    Andrew Kushnir, Andrew Scott, Bob Watson, Cédric Exbrayat, Doug Parker, George Kalpakas, Jessica Janiuk, Kristiyan Kostadinov, Paul Gschwendtner, acvi, dario-piotrowicz, jnizet and piyush132000

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.0.6"></a>

    Open source →
  20. 14.0.613 Jul 2022
    Release notes

    compiler-cli

    Commit Type Description
    99697dae66 fix only consider used pipes for inline type-check requirement (#46807)

    forms

    Commit Type Description
    4f469cbef3 fix expose ControlConfig in public API (#46594)
    e8c8b695f2 fix Move all remaining errors in Forms to use RuntimeErrorCode. (#46654)

    localize

    Commit Type Description
    14863acb1a fix add --project option to ng-add schematic (#46664)

    Special Thanks

    Alan Agius, Andrew Scott, Bob Watson, Dylan Hunn, George Kalpakas, Ivaylo Kirov, Jessica Janiuk, JoostK, Joshua VanAllen, Lukas Matta, Marcin Wosinek, Nicolas Molina Monroy, Paul Gschwendtner, SoulsMark, Uday Sony, dario-piotrowicz, markostanimirovic and zhysky

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.0.5"></a>

    Open source →
  21. 14.0.56 Jul 2022
    Release notes

    router

    Commit Type Description
    a3bd65e2b8 fix Ensure APP_INITIALIZER of enabledBlocking option completes (#46634)

    Special Thanks

    Alan Agius, Alex Rickabaugh, Andrew Kushnir, Andrew Scott, Aristeidis Bampakos, Bob Watson, George Kalpakas, Paul Gschwendtner and Pawel Kozlowski

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.0.4"></a>

    Open source →
  22. 14.0.429 Jun 2022
    Release notes

    animations

    Commit Type Description
    51be9bbe29 fix cleanup DOM elements when the root view is removed (#45143)
    999aca86c8 fix enable shadowElements to leave when their parent does (#46459)

    common

    Commit Type Description
    42aed6b13e fix handle CSS custom properties in NgStyle (#46451)

    core

    Commit Type Description
    1e7f22f00a fix trigger ApplicationRef.destroy when Platform is destroyed (#46497)
    8bde2dbc71 fix Update ngfor error code to be negative (#46555)
    57e8fc00eb fix Updates error to use RuntimeError code (#46526)

    forms

    Commit Type Description
    74a26d870e fix Convert existing reactive errors to use RuntimeErrorCode. (#46560)
    747872212d fix Update a Forms validator error to use RuntimeError (#46537)

    router

    Commit Type Description
    d6fac9e914 fix Ensure that new RouterOutlet instances work after old ones are destroyed (#46554)

    Special Thanks

    Alan Agius, Alex Rickabaugh, Andrew Kushnir, Andrew Scott, Bezael, Chad Ramos, Chellappan, Cédric Exbrayat, Dylan Hunn, George Kalpakas, Jeremy Meiss, Jessica Janiuk, Joey Perrott, KMathy, Kristiyan Kostadinov, Paul Gschwendtner, Pawel Kozlowski, Ramesh Thiruchelvam, Vaibhav Kumar, arturovt, dario-piotrowicz and renovate[bot]

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.0.3"></a>

    Open source →
  23. 14.0.322 Jun 2022
    Release notes

    animations

    Commit Type Description
    3dd7bb3f8f fix reset the start and done fns on player reset (#46364)

    core

    Commit Type Description
    c086653655 fix deduplicate imports of standalone components in JIT compiler (#46439)
    5d3b97e1f8 fix handle NgModules with standalone pipes in TestBed correctly (#46407)

    platform-server

    Commit Type Description
    6ad7b40a6f fix invalid style attribute being generated for null values (#46433)

    Special Thanks

    4javier, Aakash, Alan Agius, Andrew Kushnir, Aristeidis Bampakos, Dany Paredes, Derek Cormier, JoostK, Kristiyan Kostadinov, Paul Gschwendtner, Ramesh Thiruchelvam, behrooz bozorg chami, dario-piotrowicz, markostanimirovic, renovate[bot] and web-dave

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.0.2"></a>

    Open source →
  24. 14.0.215 Jun 2022
    Release notes

    common

    Commit Type Description
    ef5cba3df7 fix allow null in ngComponentOutlet (#46280)

    compiler-cli

    Commit Type Description
    8ecfd71fd7 fix don't emit empty providers array (#46301)
    b92c1a6ada fix use inline type-check blocks for components outside rootDir (#46096)

    core

    Commit Type Description
    3fd8948b4a fix Resolve forwardRef declarations for jit (#46334)

    Special Thanks

    Alex Rickabaugh, Andrew Scott, Badawi7, Daniel Schmitz, Derek Cormier, JoostK, Kevin Davila, Kristiyan Kostadinov, Paul Draper, Paul Gschwendtner, Tom Eustace, Totati, Younes Jaaidi, alefra, dario-piotrowicz, markostanimirovic, mgechev, piyush132000, sten-bone and vivekkoya

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.0.1"></a>

    Open source →
  25. 14.0.18 Jun 2022
    Release notes

    bazel

    Commit Type Description
    b00d237c0e fix update API extractor version (#46259)
    9a0a7bac21 perf reduce input files for ng_package rollup and type bundle actions (#46187)

    forms

    Commit Type Description
    dde0b7f4b3 fix allow FormBuilder.group(...) to accept optional fields. (#46253)

    Special Thanks

    Adrien Crivelli, Alan Agius, Alex Rickabaugh, Andrew Kushnir, Andrew Scott, Dylan Hunn, Fabrizio Fallico, George Kalpakas, Jelle Bruisten, JoostK, Kristiyan Kostadinov, Krzysztof Platis, Paul Gschwendtner, Phalgun Vaddepalli, San Leen, dario-piotrowicz, mgechev and wellWINeo

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.0.0"></a>

    Open source →
  26. 14.0.02 Jun 2022
    Release notes

    Blog post "Angular v14 is now available".

    Breaking Changes

    animations

    • The AnimationDriver.getParentElement method has become required, so any implementors of this interface are now required to provide an implementation for this method. This breakage is unlikely to affect application developers, as AnimationDriver is not expected to be implemented in user code.

    common

    • Adds new required class member that any implementors of the LocationStrategy will need to satisfy. Location does not depend on PlatformLocation anymore.

    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.

    core

    • Support for Node.js v12 has been removed as it will become EOL on 2022-04-30. Please use Node.js v14.15 or later.

    • TypeScript versions older than 4.6 are no longer supported.

    • Forms [email] input coercion

      Forms [email] input value will be considered as true if it is defined with any value rather than false and 'false'.

    • Since Ivy, TestBed doesn't use AOT summaries. The aotSummaries fields in TestBed APIs were present, but unused. The fields were deprecated in previous major version and in v14 those fields are removed. The aotSummaries fields were completely unused, so you can just drop them from the TestBed APIs usage.

    forms

    • Forms classes accept a generic.

      Forms model classes now accept a generic type parameter. Untyped versions of these classes are available to opt-out of the new, stricter behavior.

    • objects with a length key set to zero will no longer validate as empty.

      This is technically a breaking change, since objects with a key length and value 0 will no longer validate as empty. This is a very minor change, and any reliance on this behavior is probably a bug anyway.

    http

    • Queries including + will now actually query for + instead of space. Most workarounds involving custom codecs will be unaffected. Possible server-side workarounds will need to be undone.

    • JSONP will throw an error when headers are set on a request

      JSONP does not support headers being set on requests. Before when a request was sent to a JSONP backend that had headers set the headers were ignored. The JSONP backend will now throw an error if it receives a request that has any headers set. Any uses of JSONP on requests with headers set will need to remove the headers to avoid the error.

    platform-browser

    • This change may cause a breaking change in unit tests that are implicitly depending on a specific number and sequence of change detections in order for their assertions to pass.

    • This may break invalid calls to TransferState methods.

      This tightens parameter types of TransferState usage, and is a minor breaking change which may reveal existing problematic calls.

    router

    • The type of Route.pathMatch is now stricter. Places that use pathMatch will likely need to be updated to have an explicit Route/Routes type so that TypeScript does not infer the type as string.

    • When returning a Promise from the LoadChildrenCallback, the possible type is now restricted to Type<any>|NgModuleFactory<any> rather than any.

    • initialNavigation: 'enabled' was deprecated in v11 and is replaced by initialNavigation: 'enabledBlocking'.

    • The type of component on ActivatedRoute and ActivatedRouteSnapshot includes string. In reality, this is not the case. The component cannot be anything other than a component class.

      • The type of initialUrl is set to string|UrlTree but in reality, the Router only sets it to a value that will always be UrlTree
      • initialUrl is documented as "The target URL passed into the Router#navigateByUrl() call before navigation" but the value actually gets set to something completely different. It's set to the current internal UrlTree of the Router at the time navigation occurs.

      With this change, there is no exact replacement for the old value of initialUrl because it was never intended to be exposed. Router.url is likely the best replacement for this. In more specific use-cases, tracking the finalUrl between successful navigations can also be used as a replacement.

    • Lazy loaded configs are now also validated once loaded like the initial set of routes are. Lazy loaded modules which have invalid Route configs will now error. Note that this is only done in dev mode so there is no production impact of this change.

    • When a guard returns a UrlTree, the router would previously schedule the redirect navigation within a setTimeout. This timeout is now removed, which can result in test failures due to incorrectly written tests. Tests which perform navigations should ensure that all timeouts are flushed before making assertions. Tests should ensure they are capable of handling all redirects from the original navigation.

    • Previously, resolvers were waiting to be completed before proceeding with the navigation and the Router would take the last value emitted from the resolver. The router now takes only the first emitted value by the resolvers and then proceeds with navigation. This is now consistent with Observables returned by other guards: only the first value is used.

    zone.js

    • in TaskTrackingZoneSpec track a periodic task until it is cancelled

      The breaking change is scoped only to the plugin zone.js/plugins/task-tracking. If you used TaskTrackingZoneSpec and checked the pending macroTasks e.g. using (this.ngZone as any)._inner ._parent._properties.TaskTrackingZone.getTasksFor('macroTask'), then its behavior slightly changed for periodic macrotasks. For example, previously the setInterval macrotask was no longer tracked after its callback was executed for the first time. Now it's tracked until the task is explicitly cancelled, e.g with clearInterval(id).

    Deprecations

    common

    • The ngModuleFactory input of the NgComponentOutlet directive is deprecated in favor of a newly added ngModule input. The ngModule input accepts references to the NgModule class directly, without the need to resolve module factory first.

    forms

    • The initialValueIsDefault option has been deprecated and replaced with the otherwise-identical nonNullable option, for the sake of naming consistency.
    • It is now deprecated to provide both AbstractControlOptions and an async validators argument to a FormControl. Previously, the async validators would just be silently dropped, resulting in a probably buggy forms. Now, the constructor call is deprecated, and Angular will print a warning in devmode.

    router

    • The resolver argument of the RouterOutletContract.activateWith function and the resolver field of the OutletContext class are deprecated. Passing component factory resolvers are no longer needed. The ComponentFactoryResolver-related symbols were deprecated in @angular/core package since v13.

    animations

    Commit Type Description
    a6fa37bc6e feat make validateStyleProperty check dev-mode only (#45570)
    79d334b138 feat provide warnings for non-animatable CSS properties (#45212)
    f8dc660605 fix allow animations with unsupported CSS properties (#44729)
    2a75754ee8 fix apply default params when resolved value is null or undefined (#45339)
    e46b379204 fix implement missing transition delay (#44799)
    5c7c56bc85 perf improve algorithm to balance animation namespaces (#45057)
    4c778cdb28 perf made errors in the animations package tree shakeable (#45004)
    7a81481fb2 perf Remove generic objects in favor of Maps (#44482)
    6642e3c8fd perf remove no longer needed CssKeyframes classes (#44903)
    59559fdbac refactor make AnimationDriver.getParentElement required (#45114)

    common

    Commit Type Description
    31d7c3bd71 feat add getState method to LocationStrategy interface (#45648)
    c89cf63059 feat support NgModule as an input to the NgComponentOutlet (#44815)
    38c03a2035 feat support years greater than 9999 (#43622)
    bedb257afc fix cleanup URL change listeners when the root view is removed (#44901)
    10691c626b fix properly cast http param values to strings (#42643)
    05d50b849b perf make NgLocalization token tree-shakable (#45118)

    compiler

    Commit Type Description
    bb8d7091c6 fix exclude empty styles from emitted metadata (#45459)
    4d6a1d6722 fix scope css keyframes in emulated view encapsulation (#42608)
    f03e313f24 fix scope css keyframes in emulated view encapsulation (#42608)

    compiler-cli

    Commit Type Description
    9cf14ff03d feat exclude abstract classes from strictInjectionParameters requirement (#44615)
    0072eb48ba feat initial implementation of standalone components (#44812)
    2142ffd295 feat propagate standalone flag to runtime (#44973)
    6f653e05f9 feat standalone types imported into NgModule scopes (#44973)
    752ddbc165 feat Support template binding to protected component members (#45823)
    3d13343975 fix better error messages for NgModule structural issues (#44973)
    046dad1a8d fix fix issue with incremental tracking of APIs for pipes (#45672)
    27b4af7240 fix full side-effectful registration of NgModules with ids (#45024)
    32c625d027 fix handle forwardRef in imports of standalone component (#45869)
    06050ac2b4 fix handle inline type-check blocks in nullish coalescing extended check (#45454)
    a524a50361 fix handle standalone components with cycles (#46029)
    724e88e042 fix preserve forwardRef for component scopes (#46139)
    9cfea3d522 fix report invalid imports in standalone components during resolve phase (#45827)
    c0778b4dfc fix Support resolve animation name from the DTS (#45107)
    f2e5234e07 fix update unknown tag error for aot standalone components (#45919)
    35f20afcac fix use existing imports for standalone dependencies (#46029)
    8155428ba6 perf ignore the module.id anti-pattern for NgModule ids (#45024)

    core

    Commit Type Description
    174ce7dd13 feat add ApplicationRef.destroy method (#45624)
    5771b18a98 feat add the bootstrapApplication function (#45674)
    69018c9f42 feat allow for injector to be specified when creating an embedded view (#45156)
    94c949a60a feat allow for injector to be specified when creating an embedded view (#45156)
    e702cafcf2 feat allow to throw on unknown elements in tests (#45479)
    6662a97c61 feat allow to throw on unknown elements in tests (#45479)
    a6675925b0 feat allow to throw on unknown properties in tests (#45853)
    6eaaefd22e feat drop support for Node.js 12 (#45286)
    c9d566ce4b feat drop support for TypeScript 4.4 and 4.5 (#45394)
    b568a5e708 feat implement importProvidersFrom function (#45626)
    d5a6cd1111 feat implement EnvironmentInjector with adapter to NgModuleRef (#45626)
    5a10fc4f82 feat implement standalone directives, components, and pipes (#45687)
    e461f716d4 feat move ANIMATION_MODULE_TYPE injection token into core (#44970)
    94bba76a4a feat support TypeScript 4.6 (#45190)
    29039fcdbc feat support TypeScript 4.7 (#45749)
    225e4f2dbe feat triggerEventHandler accept optional eventObj (#45279)
    401dec46eb feat update TestBed to recognize Standalone Components (#45809)
    35653ce337 fix add more details to the MISSING_INJECTION_CONTEXT error (#46166)
    d36fa111eb fix avoid Closure Compiler error in restoreView (#45445)
    0bc77f4cab fix better error message when unknown property is present (#46147)
    f3eb7d9ecb fix Ensure the StandaloneService is retained after closure minification (#45783)
    701405fa71 fix handle AOT-compiled standalone components in TestBed correctly (#46052)
    ddce357d1d fix improve TestBed declarations standalone error message (#45999)
    ba9f30c9a6 fix include component name into unknown element/property error message (#46160)
    9fa6f5a552 fix incorrectly inserting elements inside <template> element (#43429)
    d5719c2e0f fix input coercion (#42803)
    be161bef79 fix memory leak in event listeners inside embedded views (#43075)
    fa755b2a54 fix prevent BrowserModule providers from being loaded twice (#45826)
    3172b4cc99 fix produce proper error message for unknown props on <ng-template>s (#46068)
    4f1a813596 fix restore NgModule state correctly after TestBed overrides (#46049)
    3f7ecec59b fix set correct context for inject() for component ctors (#45991)
    4e413d9240 fix support nested arrays of providers in EnvironmentInjector (#45789)
    fde4942cdf fix throw if standalone components are present in @NgModule.bootstrap (#45825)
    560188bf12 fix update unknown property error to account for standalone components in AOT (#46159)
    df339d8abf fix update unknown tag error for jit standalone components (#45920)
    aafac7228f fix verify standalone component imports in JiT (#45777)
    e9317aee71 perf allow checkNoChanges mode to be tree-shaken in production (#45913)
    071c8af8ba perf avoid storing LView in __ngContext__ (#45051)
    a96c4827c4 perf make Compiler, ApplicationRef and ApplicationInitStatus tree-shakable (#45102)
    45d98e7ca5 perf make IterableDiffers and KeyValueDiffers tree-shakable (#45094)
    1e60fe0a3e perf make LOCALE_ID and other tokens from ApplicationModule tree-shakable (#45102)
    88f1168506 perf only track LViews that are referenced in __ngContext__ (#45172)
    9add714b13 refactor remove deprecated aotSummaries fields in TestBed config (#45487)

    devtools tabs

    Commit Type Description
    6c284ef32e fix stop scroll occurring at tabs level

    forms

    Commit Type Description
    2dbdebc646 feat Add FormBuilder.nonNullable. (#45852)
    e0a2248b32 feat Add a FormRecord type. (#45607)
    7ee121f595 feat Add untyped versions of the model classes for use in migration. (#45205)
    89d299105a feat Implement strict types for the Angular Forms package. (#43834)
    f490c2de4e feat support negative indices in FormArray methods. (#44848)
    39be06037d fix Add a nonNullable option to FormControl for consistency.
    4332897baa fix Add UntypedFormBuilder (#45268)
    5d13e58aed fix Allow NonNullableFormBuilder to be injected. (#45904)
    8dd3f82f94 fix Correct empty validator to handle objects with a property length: 0. (#33729)
    ff3f5a8d12 fix Fix a typing bug in FormBuilder. (#45684)
    fe0e42a996 fix Make UntypedFormBuilder assignable to FormBuilder, and vice versa. (#45421)
    b36dec6b5b fix not picking up disabled state if group is swapped out and disabled (#43499)
    9f6fa5b746 fix Prevent FormBuilder from distributing unions to control types. (#45942)
    aa7b857be8 fix Property renaming safe code (#45271)
    cae1e44608 fix Update the typed forms migration to use FormArray<T> instead of FormArray<T[]>. (#44933)
    d336ba96d9 fix Update the typed forms migration. (#45281)
    018550ed50 fix Value and RawValue should be part of the public API. (#45978)
    2e96cede3e fix Warn on FormControls that are constructed with both options and asyncValidators.

    http

    Commit Type Description
    76a9a24cdc fix encode + signs in query params as %2B (angular#11058) (#45111)
    d43c0e973f fix Throw error when headers are supplied in JSONP request (#45210)

    language-service

    Commit Type Description
    9d4af65e34 feat Provide plugin to delegate rename requests to Angular (#44696)
    3ae133c69e fix Fix detection of Angular for v14+ projects (#45998)

    localize

    Commit Type Description
    a50e2da64a fix ensure transitively loaded compiler code is tree-shakable (#45405)

    migrations

    Commit Type Description
    d56a537196 feat Add migration to add explicit Route/Routes type (#45084)

    ngcc

    Commit Type Description
    74a2e2e2ec fix cope with packages following APF v14+ (#45833)

    platform-browser

    Commit Type Description
    a01bcb8e7e fix do not run change detection when loading Hammer (#44921)
    b32647dc68 fix Make transfer state key typesafe. (#23020)
    c7bf75dd5e fix remove obsolete shim for Map comparison in Jasmine (#45521)
    23c4c9601e perf avoid including Testability by default in bootstrapApplication (#45885)

    platform-server

    Commit Type Description
    dff5586d52 feat implement renderApplication function (#45785)
    22c71be94c fix update renderApplication to move appId to options (#45844)

    router

    Commit Type Description
    f4fd1a8262 feat Add EnvironmentInjector to RouterOutlet.activateWith (#45597)
    910de8bc33 feat Add Route.title with a configurable TitleStrategy (#43307)
    4e0957a4e1 feat Add ability to specify providers on a Route (#45673)
    dea8c86cd5 feat add ariaCurrentWhenActive input to RouterLinkActive directive (#45167)
    41e2a68e30 feat add type properties to all router events (#44189)
    4962a4a332 feat Allow loadChildren to return a Route array (#45700)
    791bd31424 feat set stricter type for Route.title (#44939)
    50004c143b feat Support lazy loading standalone components with loadComponent (#45705)
    7fd416d060 fix Fix type of Route.pathMatch to be more accurate (#45176)
    1c11a57155 fix merge interited resolved data and static data (#45276)
    f8f3ab377b fix Remove any from LoadChildrenCallback type (#45524)
    d4fc12fa19 fix Remove deprecated initialNavigation option (#45729)
    989e840cce fix Remove unused string type for ActivatedRoute.component (#45625)
    64f837d2c0 fix Update Navigation#initialUrl to match documentation and reality (#43863)
    96fd29c6d2 fix validate lazy loaded configs (#45526)
    f13295f3a3 perf cancel the navigation instantly if at least one resolver doesn't emit any value (#45621)
    1d2f5c1101 refactor deprecate no longer needed resolver fields (#45597)
    7b367d9d90 refactor Remove unnecessary setTimeout in UrlTree redirects (#45735)
    c9679760b2 refactor take only the first emitted value of every resolver to make it consistent with guards (#44573)

    service-worker

    Commit Type Description
    ec0a0e0669 feat add cacheOpaqueResponses option for data-groups (#44723)
    bd04fbc05b feat emit a notification when the service worker is already up-to-date after check (#45216)

    Special Thanks

    Adrian Kunz, Alan Agius, AleksanderBodurri, Alex Rickabaugh, AlirezaEbrahimkhani, Amir Rustamzadeh, Andrew Kushnir, Andrew Scott, Chabbey François, Charles Lyding, Cédric Exbrayat, Daan De Smedt, David Schmidt, Derek Cormier, Dmitrij Kuba, Doug Parker, Dylan Hunn, Emma Twersky, George Kalpakas, George Looshch, Jan Kuehle, Jessica Janiuk, JiaLiPassion, JimMorrison723, Joe Martin (Crowdstaffing), Joey Perrott, JoostK, Kristiyan Kostadinov, Krzysztof Platis, Leosvel Pérez Espinosa, Maddie Klein, Mark Whitfeld, Martin Sikora, Michael-Doner, Michal Materowski, Minko Gechev, Paul Gschwendtner, Pawel Kozlowski, Payam Shahidi, Pusztai Tibor, Ricardo Mattiazzi Baumgartner, Roy Dorombozi, Ruslan Lekhman, Samuel Littley, Sergej Grilborzer, Sumit Arora, Tobias Speicher, Virginia Dooley, Zack Elliott, alirezaghey, ananyahs96, arturovt, cexbrayat, dario-piotrowicz, ivanwonder, kamikopi, markostanimirovic, markwhitfeld, mgechev, renovate[bot], twerske and zverbeta

    Earlier changelog entries can be found in CHANGELOG_ARCHIVE.md file.

    Open source →
  27. 14.0.0-rc.331 May 2022pre-release

    Nothing published for this version

  28. 14.0.0-rc.225 May 2022pre-release

    Nothing published for this version

  29. 14.0.0-rc.118 May 2022pre-release

    Nothing published for this version

  30. 14.0.0-rc.011 May 2022pre-release

    Nothing published for this version

  31. 14.0.0-next.164 May 2022pre-release

    Nothing published for this version

  32. 14.0.0-next.1527 Apr 2022pre-release

    Nothing published for this version

  33. 14.0.0-next.1420 Apr 2022pre-release

    Nothing published for this version

  34. 14.0.0-next.1313 Apr 2022pre-release

    Nothing published for this version

  35. 14.0.0-next.1212 Apr 2022pre-release

    Nothing published for this version

  36. 14.0.0-next.116 Apr 2022pre-release

    Nothing published for this version

  37. 14.0.0-next.1030 Mar 2022pre-release

    Nothing published for this version

  38. 14.0.0-next.925 Mar 2022pre-release

    Nothing published for this version

  39. 14.0.0-next.825 Mar 2022pre-release

    Nothing published for this version

  40. 14.0.0-next.716 Mar 2022pre-release

    Nothing published for this version

  41. 14.0.0-next.69 Mar 2022pre-release

    Nothing published for this version

  42. 14.0.0-next.52 Mar 2022pre-release

    Nothing published for this version

  43. 14.0.0-next.423 Feb 2022pre-release

    Nothing published for this version

  44. 14.0.0-next.317 Feb 2022pre-release

    Nothing published for this version

  45. 14.0.0-next.28 Feb 2022pre-release

    Nothing published for this version

  46. 14.0.0-next.12 Feb 2022pre-release

    Nothing published for this version

  47. 14.0.0-next.026 Jan 2022pre-release

    Nothing published for this version

  48. 13.4.06 Apr 2023
    Release notes

    common

    Commit Type Description
    ae34dbca1b feat Backport NgOptimizedImage to v13

    Special Thanks

    Alex Castle and Paul Gschwendtner

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="15.2.6"></a>

    Open source →
  49. 13.3.1221 Nov 2022
    Release notes

    Breaking Changes

    core

    • Existing iframe usages may have security-sensitive attributes applied as an attribute or property binding in a template or via host bindings in a directive. Such usages would require an update to ensure compliance with the new stricter rules around iframe bindings.

    core

    Commit Type Description
    b1d7b79ff4 fix hardening attribute and property binding rules for <iframe> elements (#48029)

    Special Thanks

    Andrew Kushnir, Andrew Scott, George Looshch, Joey Perrott and Paul Gschwendtner

    <!-- CHANGELOG SPLIT MARKER -->

    <a name="14.2.12"></a>

    Open source →
  50. 13.3.1131 May 2022

    Nothing published for this version

  51. 13.3.1025 May 2022

    Nothing published for this version

  52. 13.3.918 May 2022

    Nothing published for this version

  53. 13.3.812 May 2022

    Nothing published for this version

  54. 13.3.711 May 2022

    Nothing published for this version

  55. 13.3.64 May 2022

    Nothing published for this version

  56. 13.3.527 Apr 2022

    Nothing published for this version

  57. 13.3.420 Apr 2022

    Nothing published for this version

  58. 13.3.313 Apr 2022

    Nothing published for this version

  59. 13.3.26 Apr 2022

    Nothing published for this version

  60. 13.3.130 Mar 2022

    Nothing published for this version