Changelog History
Page 1
-
v14.0.0-rc.0 Changes
May 11, 2022bazel
Commit Type Description π§ d48e0ccc01 fix core
Commit Type Description e9317aee71 perf allow checkNoChanges
mode to be tree-shaken in production (#45913)forms
Commit Type Description 5d13e58aed fix Allow NonNullableFormBuilder to be injected. (#45904) 9f6fa5b746 fix Prevent FormBuilder from distributing unions to control types. (#45942) language-service
Commit Type Description 13fad9febe fix Add resource files as roots to their associated projects (#45601) ngcc
Commit Type Description π¦ 74a2e2e2ec fix π» platform-browser
Commit Type Description β 23c4c9601e perf Special Thanks
AleksanderBodurri, Andrew Kushnir, Andrew Scott, CΓ©dric Exbrayat, Dylan Hunn, George Kalpakas, JayMartMedia, JoostK, Kristiyan Kostadinov, Paul Gschwendtner, Ted.chang, Thomas Mair, Will δΏε₯, dario-piotrowicz, mgechev and α·ααα±α·α αα¨αα¨α²α»α¨ααα
<!-- CHANGELOG SPLIT MARKER -->
-
v14.0.0-next.9 Changes
March 25, 2022Special Thanks
Paul Gschwendtner
<!-- CHANGELOG SPLIT MARKER -->
-
v14.0.0-next.8 Changes
March 25, 2022π₯ Breaking Changes
core
- π TypeScript versions older than 4.6 are no longer supported. ### 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 usedTaskTrackingZoneSpec
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 thesetInterval
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 withclearInterval(id)
.π fixes 45350
animations
Commit Type Description β 79d334b138 feat 0οΈβ£ 2a75754ee8 fix bazel
Commit Type Description π· dc72f3007a fix compiler
Commit Type Description fffa023803 fix scope css rules within @layer
blocks (#45396)compiler-cli
Commit Type Description 27b4af7240 fix full side-effectful registration of NgModules with ids (#45024) 8155428ba6 perf ignore the module.id anti-pattern for NgModule ids (#45024) core
Commit Type Description π c9d566ce4b feat be161bef79 fix memory leak in event listeners inside embedded views (#43075) forms
Commit Type Description fe0e42a996 fix Make UntypedFormBuilder assignable to FormBuilder, and vice versa. (#45421) Special Thanks
Alan Agius, Alex Rickabaugh, AlirezaEbrahimkhani, Ben Brook, Dylan Hunn, George Kalpakas, Joey Perrott, JoostK, Kristiyan Kostadinov, Krzysztof Platis, Mike, Paul Gschwendtner, Tobias Speicher, alirezaghey, arturovt, dario-piotrowicz, khai and mgechev
<!-- CHANGELOG SPLIT MARKER -->
-
v14.0.0-next.7 Changes
March 16, 2022core
Commit Type Description 225e4f2dbe feat triggerEventHandler accept optional eventObj (#45279) forms
Commit Type Description 9db9091349 fix improve error message for invalid value accessors (#45192) Special Thanks
Alan Agius, Alistair Kane, Amer Yousuf, Andrew Kushnir, Andrew Scott, Derek Cormier, Jessica Janiuk, JiaLiPassion, Lee Cooper, Paul Gschwendtner, alirezaghey and why520crazy
<!-- CHANGELOG SPLIT MARKER -->
-
v14.0.0-next.6 Changes
March 09, 2022π₯ Breaking Changes
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.
### compiler
| Commit | Type | Description |
| -- | -- | -- |
| 2b7553db6f | fix | compute correct offsets when interpolations have HTML entities (#44811) |
### core
| Commit | Type | Description |
| -- | -- | -- |
π | 6eaaefd22e | feat | drop support for Node.js 12 (#45286) |
π | 94bba76a4a | feat | support TypeScript 4.6 (#45190) |
| 9fa6f5a552 | fix | incorrectly inserting elements inside
<template>
element (#43429) | ### forms | Commit | Type | Description | | -- | -- | -- | | 4332897baa | fix | Add UntypedFormBuilder (#45268) | | aa7b857be8 | fix | Property renaming safe code (#45271) | β‘οΈ | d336ba96d9 | fix | Update the typed forms migration. (#45281) | ### language-service | Commit | Type | Description | | -- | -- | -- | | be220fa683 | fix | Prioritize Angular-specific completions over DOM completions (#45293) | ### π· service-worker | Commit | Type | Description | | -- | -- | -- | π· | bd04fbc05b | feat | emit a notification when the service worker is already up to date after check (#45216) | | 3ecf93020c | fix | file system hash in batch of 500 elements (#45262) | ## Special Thanks Alan Agius, Andrew Kushnir, Andrew Scott, Anner Visser, Aristeidis Bampakos, Dylan Hunn, George Kalpakas, JiaLiPassion, Joey Perrott, JoostK, Kristiyan Kostadinov, Luca, Mladen JakovljeviΔ, Paul Gschwendtner, Srikanth Kolli, ananyahs96 and nanda18
<!-- CHANGELOG SPLIT MARKER -->
- π 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.
### compiler
| Commit | Type | Description |
| -- | -- | -- |
| 2b7553db6f | fix | compute correct offsets when interpolations have HTML entities (#44811) |
### core
| Commit | Type | Description |
| -- | -- | -- |
π | 6eaaefd22e | feat | drop support for Node.js 12 (#45286) |
π | 94bba76a4a | feat | support TypeScript 4.6 (#45190) |
| 9fa6f5a552 | fix | incorrectly inserting elements inside
-
v14.0.0-next.5 Changes
March 02, 2022π₯ Breaking Changes
router
The type of
Route.pathMatch
is now more strict. Places that use β‘οΈpathMatch
will likely need to be updated to have an explicitRoute
/Routes
type so that TypeScript does not infer the type asstring
.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.common
Commit Type Description 7671a1e40d fix canceled JSONP requests won't throw console error with missing callback function (#36807) 05d50b849b perf make NgLocalization
token tree-shakable (#45118)core
Commit Type Description 69018c9f42 feat allow for injector to be specified when creating an embedded view (#45156) β‘οΈ c5df474c7c fix 88f1168506 perf only track LViews that are referenced in ngContext (#45172) forms
Commit Type Description 7ee121f595 feat Add untyped versions of the model classes for use in migration. (#45205) localize
Commit Type Description π¦ ca5603b09b fix router
Commit Type Description 7fd416d060 fix Fix type of Route.pathMatch to be more accurate (#45176) π¨ c9679760b2 refactor Special Thanks
Andrew Kushnir, Andrew Scott, Charles Lyding, Dmitrij Kuba, Dylan Hunn, Guillaume Bonnet, Jessica Janiuk, JiaLiPassion, JoostK, Kristiyan Kostadinov, Martin Sikora, Paul Gschwendtner, Theodore Brown and dario-piotrowicz
<!-- CHANGELOG SPLIT MARKER -->
-
v14.0.0-next.4 Changes
February 23, 2022π₯ 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, asAnimationDriver
is not expected to be implemented in user code. ### animations | Commit | Type | Description | | -- | -- | -- | π | f8dc660605 | fix | allow animations with unsupported CSS properties (#44729) | π¨ | 59559fdbac | refactor | makeAnimationDriver.getParentElement
required (#45114) | ### compiler-cli | Commit | Type | Description | | -- | -- | -- | π | c0778b4dfc | fix | Support resolve animation name from the DTS (#45107) | ### core | Commit | Type | Description | | -- | -- | -- | | 071c8af8ba | perf | avoid storing LView in ngContext (#45051) | | a96c4827c4 | perf | makeCompiler
,ApplicationRef
andApplicationInitStatus
tree-shakable (#45102) | | 1e60fe0a3e | perf | makeLOCALE_ID
and other tokens fromApplicationModule
tree-shakable (#45102) | ## Special Thanks Alan Cohen, AlirezaEbrahimkhani, Andrew Kushnir, Andrew Scott, Daniele Maltese, David Wolf, JiaLiPassion, JoostK, Kristiyan Kostadinov, Paul Gschwendtner, arturovt, dario-piotrowicz, ivanwonder and manuelkroiss
<!-- CHANGELOG SPLIT MARKER -->
- The
-
v14.0.0-next.3 Changes
February 17, 2022animations
Commit Type Description 5c7c56bc85 perf improve algorithm to balance animation namespaces (#45057) π¦ 4c778cdb28 perf common
Commit Type Description π bedb257afc fix compiler
Commit Type Description 1b91e1049e perf chain element start/end instructions (#44994) core
Commit Type Description e461f716d4 feat move ANIMATION_MODULE_TYPE injection token into core (#44970) 822439fddd fix ViewContainerRef.createComponent
should consult module injector when custom one is provided (#44966)45d98e7ca5 perf make IterableDiffers
andKeyValueDiffers
tree-shakable (#45094)Special Thanks
Alan Cohen, AlirezaEbrahimkhani, Amer Yousuf, Andrew Kushnir, Aristeidis Bampakos, Dario Piotrowicz, Dylan Hunn, Esteban Gehring, George Kalpakas, Jessica Janiuk, JiaLiPassion, Joey Perrott, JoostK, Kristiyan Kostadinov, Mina Hosseini Moghadam, Patrick Cameron, Srdjan Milic, Yousaf Nawaz, arturovt, dario-piotrowicz, markostanimirovic, mgechev and zuckjet
<!-- CHANGELOG SPLIT MARKER -->
-
v14.0.0-next.2 Changes
February 07, 2022π₯ Breaking Changes
forms
- 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'.
- 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 value0
will no longer validate as empty. This is a very minor change, and any reliance on this behavior is probably a bug anyway. ### π» 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 tightens parameter types of
TransferState
usage, and is a minor breaking change which may reveal existing problematic calls. This may break invalid calls toTransferState
methods. ### router - The type of
initialUrl
is set tostring|UrlTree
but in reality, theRouter
only sets it to a value that will always beUrlTree
.initialUrl
is 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 internalUrlTree
of the Router at the time navigation occurs. With this change, there is no exact replacement for the old value ofinitialUrl
because it was enver intended to be exposed.Router.url
is likely the best replacement for this. In more specific use-cases, tracking thefinalUrl
between successful navigations can also be used as a replacement. ### animations | Commit | Type | Description | | -- | -- | -- | | e46b379204 | fix | implement missing transition delay (#44799) | ### common | Commit | Type | Description | | -- | -- | -- | π | 38c03a2035 | feat | support years greater than 9999 (#43622) | ### compiler | Commit | Type | Description | | -- | -- | -- | | db6cf7e7c1 | fix | allow banana-in-a-box bindings to end with non-null assertion (#37809) | ### compiler-cli | Commit | Type | Description | | -- | -- | -- | | 0072eb48ba | feat | initial implementation of standalone components (#44812) | ### core | Commit | Type | Description | | -- | -- | -- | | d5719c2e0f | fix | input coercion (#42803) | ### forms | Commit | Type | Description | | -- | -- | -- | | 8dd3f82f94 | fix | Correct empty validator to handle objects with a propertylength: 0
. (#33729) | | ebf2fc5224 | fix | incorrectly keeping track of ngModel with ngFor inside a form (#40459) | ### http | Commit | Type | Description | | -- | -- | -- | π | 28393031b1 | perf | remove IE special status handling (#44354) | ### π» platform-browser | Commit | Type | Description | | -- | -- | -- | | a01bcb8e7e | fix | do not run change detection when loading Hammer (#44921) | | b32647dc68 | fix | Make transfer state key typesafe. (#23020) | ### router | Commit | Type | Description | | -- | -- | -- | | 791bd31424 | feat | set stricter type for Route.title (#44939) | π | 64f837d2c0 | fix | UpdateNavigation#initialUrl
to match documentation and reality (#43863) | ### β¬οΈ upgrade | Commit | Type | Description | | -- | -- | -- | | 202a1a5631 | fix | Do not trigger duplicate navigation events from Angular Router (#43441) | ## Special Thanks Alan Agius, Alex Rickabaugh, Andrew Kushnir, Andrew Scott, Daniel DΓaz, Dario Piotrowicz, Doug Parker, Jayson Acosta, Joey Perrott, JoostK, Kristiyan Kostadinov, Olivier Capuozzo, Payam Shahidi, Pusztai Tibor, Ramzan, Ruslan Lekhman, Sergej Grilborzer, Shai Reznik, TANMAY SRIVASTAVA, arturovt, dario-piotrowicz, iRealNirmal, jhonyeduardo, markostanimirovic, mgechev and zuckjet
<!-- CHANGELOG SPLIT MARKER -->
-
v14.0.0-next.16 Changes
May 04, 2022π₯ Breaking Changes
router
- π
initialNavigation: 'enabled'
was deprecated in v11 and is replaced byinitialNavigation: 'enabledBlocking'
. ### common | Commit | Type | Description | | -- | -- | -- | | 10691c626b | fix | properly cast http param values to strings (#42643) | ### compiler | Commit | Type | Description | | -- | -- | -- | π | bb8d7091c6 | fix | exclude empty styles from emitted metadata (#45459) | ### compiler-cli | Commit | Type | Description | | -- | -- | -- | | 9cf14ff03d | feat | exclude abstract classes fromstrictInjectionParameters
requirement (#44615) | π | 752ddbc165 | feat | Support template binding to protected component members (#45823) | | 32c625d027 | fix | handle forwardRef in imports of standalone component (#45869) | | 9cfea3d522 | fix | report invalid imports in standalone components during resolve phase (#45827) | ### core | Commit | Type | Description | | -- | -- | -- | β | 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) | π | 29039fcdbc | feat | support TypeScript 4.7 (#45749) | β‘οΈ | 401dec46eb | feat | update TestBed to recognize Standalone Components (#45809) | | f3eb7d9ecb | fix | Ensure theStandaloneService
is retained after closure minification (#45783) | π» | fa755b2a54 | fix | preventBrowserModule
providers from being loaded twice (#45826) | π | 4e413d9240 | fix | support nested arrays of providers inEnvironmentInjector
(#45789) | | fde4942cdf | fix | throw if standalone components are present in@NgModule.bootstrap
(#45825) | | aafac7228f | fix | verify standalone component imports in JiT (#45777) | ### forms | Commit | Type | Description | | -- | -- | -- | | 2dbdebc646 | feat | AddFormBuilder.nonNullable
. (#45852) | ### platform-server | Commit | Type | Description | | -- | -- | -- | | dff5586d52 | feat | implementrenderApplication
function (#45785) | β‘οΈ | 22c71be94c | fix | updaterenderApplication
to moveappId
to options (#45844) | ### router | Commit | Type | Description | | -- | -- | -- | | 41e2a68e30 | feat | add type properties to all router events (#44189) | π | d4fc12fa19 | fix | Remove deprecated initialNavigation option (#45729) | ## Special Thanks AleksanderBodurri, Alex Rickabaugh, Andrew Kushnir, Andrew Scott, Charles Lyding, CΓ©dric Exbrayat, Dylan Hunn, George Kalpakas, JoostK, Kristiyan Kostadinov, Paul Gschwendtner, Pawel Kozlowski, Ryan Day, Zack Elliott, cexbrayat and dario-piotrowicz
<!-- CHANGELOG SPLIT MARKER -->
- π