Angular - commonly needed directives and services
Last release today
27 Aug 2026
Ships on a steady schedule
a new release about every 2 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
10 years old
1100 releases · first in 2016
Release timeline
1100 releases since 2016Releases
- 14.2.321 Sept 2022
Release notes
Open source →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>
- 14.2.215 Sept 2022
Release notes
Open source →animations
Commit Type Description 937e6c5b3d fix make sure that the animation function delay is applied (#47285) common
Commit Type Description c9bdf9bab1 fix rename rawSrc->ngSrcin 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>
- 14.2.17 Sept 2022
Release notes
Open source →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>
- 14.2.025 Aug 2022
Release notes
Open source →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 NgOptimizedImageand assert ifpriorityis 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:andblob:inputs inNgOptimizedImagedirective (#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 rawSrcandrawSrcsetvalues 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 priorityattribute (#47082)compiler-cli
Commit Type Description ea89677c12 feat support more recent version of tsickle(#47018)core
Commit Type Description d1e83e1b30 feat add createComponentfunction (#46685)10becab70e feat add reflectComponentTypefunction (#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 FormBuildertypes 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 isEmptymethod to theTransferStateclass (#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 Routesused by theRouter(#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 sendRequestas anotificationclickaction (#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>
- 14.2.0-rc.017 Aug 2022pre-release
Nothing published for this version
- 14.2.0-next.110 Aug 2022pre-release
Nothing published for this version
- 14.2.0-next.03 Aug 2022pre-release
Nothing published for this version
- 14.1.317 Aug 2022
Release notes
Open source →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>
- 14.1.210 Aug 2022
Release notes
Open source →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>
- 14.1.13 Aug 2022
Release notes
Open source →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>
- 14.1.020 Jul 2022
Release notes
Open source →Deprecations
core
- The
createNgModuleRefis deprecated in favor of newly addedcreateNgModuleone. - The bit field signature of
inject()has been deprecated, in favor of the new options object. Correspondingly,InjectFlagsis deprecated as well.
animations
Commit Type Description 55308f2df5 feat add provideAnimations()andprovideNoopAnimations()functions (#46793)common
Commit Type Description 4a2e7335b1 feat make the CommonModulepipes 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 createComponentfunctionb5153814af feat add reflectComponentTypefunction96c6139c9a feat add ability to set inputs on ComponentRef (#46641) a6d5fe202c feat alias createNgModuleRefascreateNgModule(#46789)71e606d3c3 feat expose EnvironmentInjector on ApplicationRef (#46665) 19e6d9ccd3 feat import AsyncStackTaggingZone if available (#46693) a7a14df5f8 feat introduce EnvironmentInjector.runInContextAPI (#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 runInContextforNgModuleRefinjector (#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 UrlTreefrom anyActivatedRouteSnapshot(#45877)de058bba99 feat Add CanMatch guard to control whether a Route should match (#46021) 6c1357dd7d feat Add stable cancelation code to NavigationCancelevent (#46675)a4ce273e50 feat Add the target RouterStateSnapshottoNavigationError(#46731)abe3759e24 fix allow to return UrlTreefromCanMatchFn(#46455)e8c7dd10e9 fix Ensure APP_INITIALIZERofenabledBlockingoption completes (#46026)ce20ed067f fix Ensure Route injector is created before running CanMatch guards (#46394) 6a7b818d94 fix Ensure target RouterStateSnapshotis defined inNavigationError(#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()withangular.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>
- The
- 14.1.0-rc.013 Jul 2022pre-release
Nothing published for this version
- 14.1.0-next.46 Jul 2022pre-release
Nothing published for this version
- 14.1.0-next.329 Jun 2022pre-release
Nothing published for this version
- 14.1.0-next.222 Jun 2022pre-release
Nothing published for this version
- 14.1.0-next.115 Jun 2022pre-release
Nothing published for this version
- 14.1.0-next.08 Jun 2022pre-release
Nothing published for this version
- 14.0.720 Jul 2022
Release notes
Open source →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 donecallback multiple times withwaitForAsyncSpecial 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>
- 14.0.613 Jul 2022
Release notes
Open source →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 --projectoption tong-addschematic (#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>
- 14.0.56 Jul 2022
Release notes
Open source →router
Commit Type Description a3bd65e2b8 fix Ensure APP_INITIALIZERofenabledBlockingoption 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>
- 14.0.429 Jun 2022
Release notes
Open source →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.destroywhen 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 RouterOutletinstances 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>
- 14.0.322 Jun 2022
Release notes
Open source →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>
- 14.0.215 Jun 2022
Release notes
Open source →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>
- 14.0.18 Jun 2022
Release notes
Open source →bazel
Commit Type Description b00d237c0e fix update API extractor version (#46259) 9a0a7bac21 perf reduce input files for ng_packagerollup 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>
- 14.0.02 Jun 2022
Release notes
Open source →Blog post "Angular v14 is now available".
Breaking Changes
animations
- The
AnimationDriver.getParentElementmethod 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, asAnimationDriveris 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
NoneorShadowDom - define keyframes rules in global stylesheets (e.g styles.css)
- define keyframes rules programmatically in code.
- change the component's view encapsulation to the
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
aotSummariesfields in TestBed APIs were present, but unused. The fields were deprecated in previous major version and in v14 those fields are removed. TheaotSummariesfields 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
lengthand value0will 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
TransferStatemethods.This tightens parameter types of
TransferStateusage, and is a minor breaking change which may reveal existing problematic calls.
router
-
The type of
Route.pathMatchis now stricter. Places that usepathMatchwill likely need to be updated to have an explicitRoute/Routestype so that TypeScript does not infer the type asstring. -
When returning a
Promisefrom theLoadChildrenCallback, the possible type is now restricted toType<any>|NgModuleFactory<any>rather thanany. -
initialNavigation: 'enabled'was deprecated in v11 and is replaced byinitialNavigation: 'enabledBlocking'. -
The type of
componentonActivatedRouteandActivatedRouteSnapshotincludesstring. In reality, this is not the case. The component cannot be anything other than a component class. -
- The type of
initialUrlis set tostring|UrlTreebut in reality, theRouteronly sets it to a value that will always beUrlTree initialUrlis documented as "The target URL passed into theRouter#navigateByUrl()call before navigation" but the value actually gets set to something completely different. It's set to the current internalUrlTreeof the Router at the time navigation occurs.
With this change, there is no exact replacement for the old value of
initialUrlbecause it was never intended to be exposed.Router.urlis likely the best replacement for this. In more specific use-cases, tracking thefinalUrlbetween successful navigations can also be used as a replacement. - The type of
-
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 asetTimeout. 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
Observablesreturned 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 usedTaskTrackingZoneSpecand 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 thesetIntervalmacrotask 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 withclearInterval(id).
Deprecations
common
- The
ngModuleFactoryinput of theNgComponentOutletdirective is deprecated in favor of a newly addedngModuleinput. ThengModuleinput accepts references to the NgModule class directly, without the need to resolve module factory first.
forms
- The
initialValueIsDefaultoption has been deprecated and replaced with the otherwise-identicalnonNullableoption, 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
resolverargument of theRouterOutletContract.activateWithfunction and theresolverfield of theOutletContextclass are deprecated. Passing component factory resolvers are no longer needed. TheComponentFactoryResolver-related symbols were deprecated in@angular/corepackage 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.getParentElementrequired (#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 NgLocalizationtoken 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 strictInjectionParametersrequirement (#44615)0072eb48ba feat initial implementation of standalone components (#44812) 2142ffd295 feat propagate standaloneflag 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 forwardReffor 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.destroymethod (#45624)5771b18a98 feat add the bootstrapApplicationfunction (#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 importProvidersFromfunction (#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 StandaloneServiceis 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 BrowserModuleproviders 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 checkNoChangesmode to be tree-shaken in production (#45913)071c8af8ba perf avoid storing LView in __ngContext__(#45051)a96c4827c4 perf make Compiler,ApplicationRefandApplicationInitStatustree-shakable (#45102)45d98e7ca5 perf make IterableDiffersandKeyValueDifferstree-shakable (#45094)1e60fe0a3e perf make LOCALE_IDand other tokens fromApplicationModuletree-shakable (#45102)88f1168506 perf only track LViews that are referenced in __ngContext__(#45172)9add714b13 refactor remove deprecated aotSummariesfields 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 nonNullableoption toFormControlfor 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 ofFormArray<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/Routestype (#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 renderApplicationfunction (#45785)22c71be94c fix update renderApplicationto moveappIdto options (#45844)router
Commit Type Description f4fd1a8262 feat Add EnvironmentInjectortoRouterOutlet.activateWith(#45597)910de8bc33 feat Add Route.titlewith a configurableTitleStrategy(#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 loadChildrento return aRoutearray (#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 anyfromLoadChildrenCallbacktype (#45524)d4fc12fa19 fix Remove deprecated initialNavigation option (#45729) 989e840cce fix Remove unused string type for ActivatedRoute.component (#45625) 64f837d2c0 fix Update Navigation#initialUrlto 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 cacheOpaqueResponsesoption 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.
- The
- 14.0.0-rc.331 May 2022pre-release
Nothing published for this version
- 14.0.0-rc.225 May 2022pre-release
Nothing published for this version
- 14.0.0-rc.118 May 2022pre-release
Nothing published for this version
- 14.0.0-rc.011 May 2022pre-release
Nothing published for this version
- 14.0.0-next.164 May 2022pre-release
Nothing published for this version
- 14.0.0-next.1527 Apr 2022pre-release
Nothing published for this version
- 14.0.0-next.1420 Apr 2022pre-release
Nothing published for this version
- 14.0.0-next.1313 Apr 2022pre-release
Nothing published for this version
- 14.0.0-next.1212 Apr 2022pre-release
Nothing published for this version
- 14.0.0-next.116 Apr 2022pre-release
Nothing published for this version
- 14.0.0-next.1030 Mar 2022pre-release
Nothing published for this version
- 14.0.0-next.925 Mar 2022pre-release
Nothing published for this version
- 14.0.0-next.825 Mar 2022pre-release
Nothing published for this version
- 14.0.0-next.716 Mar 2022pre-release
Nothing published for this version
- 14.0.0-next.69 Mar 2022pre-release
Nothing published for this version
- 14.0.0-next.52 Mar 2022pre-release
Nothing published for this version
- 14.0.0-next.423 Feb 2022pre-release
Nothing published for this version
- 14.0.0-next.317 Feb 2022pre-release
Nothing published for this version
- 14.0.0-next.28 Feb 2022pre-release
Nothing published for this version
- 14.0.0-next.12 Feb 2022pre-release
Nothing published for this version
- 14.0.0-next.026 Jan 2022pre-release
Nothing published for this version
- 13.4.06 Apr 2023
Release notes
Open source →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>
- 13.3.1221 Nov 2022
Release notes
Open source →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>
- 13.3.1131 May 2022
Nothing published for this version
- 13.3.1025 May 2022
Nothing published for this version
- 13.3.918 May 2022
Nothing published for this version
- 13.3.812 May 2022
Nothing published for this version
- 13.3.711 May 2022
Nothing published for this version
- 13.3.64 May 2022
Nothing published for this version
- 13.3.527 Apr 2022
Nothing published for this version
- 13.3.420 Apr 2022
Nothing published for this version
- 13.3.313 Apr 2022
Nothing published for this version
- 13.3.26 Apr 2022
Nothing published for this version
- 13.3.130 Mar 2022
Nothing published for this version
- 13.3.016 Mar 2022
Nothing published for this version