Update angular to v18 (major) - autoclosed
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
@angular-devkit/build-angular | devDependencies | major | 17.3.8 -> 18.0.4 |
@angular/animations (source) | dependencies | major | ^17.0.2 -> ^18.0.0 |
@angular/cli | devDependencies | major | 17.3.8 -> 18.0.4 |
@angular/common (source) | dependencies | major | ^17.0.2 -> ^18.0.0 |
@angular/compiler (source) | dependencies | major | ^17.0.2 -> ^18.0.0 |
@angular/compiler-cli (source) | devDependencies | major | 17.3.10 -> 18.0.3 |
@angular/core (source) | dependencies | major | ^17.0.2 -> ^18.0.0 |
@angular/forms (source) | dependencies | major | ^17.0.2 -> ^18.0.0 |
@angular/platform-browser (source) | dependencies | major | ^17.0.2 -> ^18.0.0 |
@angular/platform-browser-dynamic (source) | dependencies | major | ^17.0.2 -> ^18.0.0 |
@angular/router (source) | dependencies | major | ^17.0.2 -> ^18.0.0 |
Release Notes
angular/angular-cli (@angular-devkit/build-angular)
v18.0.4
@angular/build
Commit | Type | Description |
---|---|---|
791ef809d | fix | do not reference sourcemaps in web workers and global stylesheet bundles when hidden setting is enabled |
20fc6ca05 | fix | generate module preloads next to script elements in index HTML |
3a1bf5c8a | fix | Initiate PostCSS only once |
78c611754 | fix | issue warning when auto adding @angular/localize/init
|
v18.0.3
@angular/cli
Commit | Type | Description |
---|---|---|
b709d2a24 | fix | add schema.json options to parsed command, also when a version is passed to ng add <package>@​<version>
|
@angular/build
Commit | Type | Description |
---|---|---|
43a2a7d13 | fix | avoid escaping rebased Sass URL values |
9acb5c7ca | fix | disable JS transformer persistent cache on web containers |
346df4909 | fix | improve Sass rebaser ident token detection |
6526a5f59 | fix | watch all related files during a Sass error |
v18.0.2
@schematics/angular
Commit | Type | Description |
---|---|---|
9967c04b8 | fix | check both application builder packages in SSR schematic |
92b48ab14 | fix | set builders assets option correctly for new applications |
@angular/build
Commit | Type | Description |
---|---|---|
3bb06c37d | fix | disable Worker wait loop for Sass compilations in web containers |
c4cf35923 | fix | print Sass @warn location |
352879804 | fix | support valid self-closing MathML tags in HTML index file |
476f3084a | fix | support valid self-closing SVG tags in HTML index file |
@angular/pwa
Commit | Type | Description |
---|---|---|
acbffd236 | fix | set manifest icons location to match assets builder option |
v18.0.1
@schematics/angular
Commit | Type | Description |
---|---|---|
01842f515 | fix | use angular.dev in readme |
@angular/build
Commit | Type | Description |
---|---|---|
7d253e9cd | fix | avoid rebasing URLs with function calls |
6b6a76a99 | fix | disable persistent disk caching inside webcontainers by default |
ba70a50b6 | fix | handle esbuild-browser polyfills option as string during ng serve
|
706423aca | fix | only import persistent cache store with active caching |
v18.0.0
Breaking Changes
@angular/cli
- The
ng doc
command has been removed without a replacement. To perform searches, please visit www.angular.dev - Node.js support for versions <18.19.1 and <20.11.1 has been removed.
@angular-devkit/build-angular
-
By default, the index.html file is no longer emitted in the browser directory when using the application builder with SSR. Instead, an index.csr.html file is emitted. This change is implemented because in many cases server and cloud providers incorrectly treat the index.html file as a statically generated page. If you still require the old behavior, you can use the
index
option to specify theoutput
file name."architect": { "build": { "builder": "@​angular-devkit/build-angular:application", "options": { "outputPath": "dist/my-app", "index": { "input": "src/index.html", "output": "index.html" } } } }
-
The support for the legacy Sass build pipeline, previously accessible via
NG_BUILD_LEGACY_SASS
when utilizing webpack-based builders, has been removed.
Deprecations
@angular-devkit/schematics
-
NodePackageLinkTask
in@angular-devkit/schematics
. A custom task should be created instead.
@angular/cli
Commit | Type | Description |
---|---|---|
ac3019570 | feat | add ng dev alias to ng serve
|
4087728c3 | feat | support for Node.js v22 |
41ab6c8c3 | fix | add --version option |
df4dde95d | fix | add @angular/build package to update group list |
1039f6d79 | fix | change update guide link to angular.dev |
f4670fcb1 | fix | eliminate prompts during ng version command |
a99ec6a54 | fix | keep cli package first in update package group metadata |
dd786d495 | fix | only add --version option on default command |
03eee0545 | refactor | remove ng doc command |
c7b208555 | refactor | remove support for Node.js versions <18.19.1 and <20.11.1 |
@schematics/angular
Commit | Type | Description |
---|---|---|
b2ac5fac7 | feat | allow application migration to use new build package in projects where possible |
6530aa11b | feat | replace assets with public directory |
725883713 | feat | use eventCoalescing option by default (standalone bootstrap) |
508d97da7 | feat | use ngZoneEventCoalescing option by default (module bootstrap) |
f452589e2 | feat | use TypeScript bundler module resolution for new projects |
95a4d6ee5 | fix | add less dependency in application migration if needed |
c46aa084f | fix | add postcss dependency in application migration if needed |
157329384 | fix | add spaces around eventCoalescing option |
23cc337aa | fix | keep deployUrl option when migrating to application builder |
@angular-devkit/architect
Commit | Type | Description |
---|---|---|
ddd08efef | fix | resolve builder aliases from containing package |
@angular-devkit/build-angular
Commit | Type | Description |
---|---|---|
53c319aaa | feat | add support for the poll option in the library builder |
83d1d233a | feat | enhance Sass rebasing importer for resources URL defined in variables and handling of external paths |
d51cb598a | feat | inject event-dispatch in SSR HTML page |
0b03829bc | feat | move i18n extraction for application builder to new build system package |
4ffe07aa2 | feat | move Vite-based dev-server for application builder to new build system package |
d1c632af9 | feat | support native async/await when app is zoneless |
37fc7f0cc | fix | disable Vite prebundling when script optimizations are enabled |
2acf95a94 | fix | do not generate an index.html file in the browser directory when using SSR. |
8a54875cb | fix | handle wrapping of class expressions emitted by esbuild |
97973059e | refactor | remove Sass legacy implementation |
@angular-devkit/schematics
Commit | Type | Description |
---|---|---|
797584583 | refactor | deprecate NodePackageLinkTask
|
@angular/build
Commit | Type | Description |
---|---|---|
810d213e1 | feat | introduce new official build system package |
b7a0792b3 | fix | add a maximum rendering timeout for SSG |
411115303 | fix | add console note about development server raw file size |
921fa7cf4 | fix | add missing ansi-colors and picomatch dependencies |
791cf75af | fix | check both potential build packages in Angular version check |
4d7cd5e3e | fix | correctly wrap class expressions with static properties or blocks emitted by esbuild |
57f448a0f | fix | decode URL pathname decoding during SSG fetch |
940e382db | fix | disable Vite prebundling when script optimizations are enabled |
70dbc7a6e | fix | emit error for invalid self-closing element in index HTML |
44b401747 | fix | ensure input index HTML file triggers rebuilds when changed |
dff4deaeb | fix | ensure recreated files are watched |
17931166d | fix | format sizes using decimal byte units consistently |
2085365e0 | fix | only generate shallow preload links for initial files |
33cd47c85 | fix | properly configure headers for media resources and HTML page |
d10fece2c | fix | properly rebase Sass url() values with leading interpolations |
3f2963835 | perf | add persistent caching of JavaScript transformations |
a15eb7d1c | perf | improve rebuild time for file loader usage with prebundling |
angular/angular (@angular/animations)
v18.0.3
benchpress
Commit | Type | Description |
---|---|---|
ebf00aa0659 | fix | adjust supported browser names for headless chrome (#56360) |
core
Commit | Type | Description |
---|---|---|
dbd0fa00f8c | fix | async EventEmitter should contribute to app stability (#56308) |
625ca3e2b3f | fix | signals should be tracked when embeddedViewRef.detectChanges is called (#55719) |
localize
Commit | Type | Description |
---|---|---|
d6dd3dbdb09 | fix | add @angular/localize/init as polyfill in angular.json (#56300) |
migrations
Commit | Type | Description |
---|---|---|
c07e1b33569 | fix | resolve error in standalone migration (#56302) |
v18.0.2
core
Commit | Type | Description |
---|---|---|
78cf9bfc0e | fix | Do not migrate HttpClientModule imports on components. (#56067) |
616cdef474 | fix | don't coerce all producers to consumers on liveness change (#56140) |
2a440e1064 | fix | Fix shouldPreventDefaultBeforeDispatching bug (#56188) |
290a47d842 | fix | handle missing withI18nSupport() call for components that use i18n blocks (#56175) |
migrations
Commit | Type | Description |
---|---|---|
b70b80ba55 | fix | do not generate aliased variables with the same name (#56154) |
v18.0.1
compiler
Commit | Type | Description |
---|---|---|
419ffa2026 | fix | optimize track function that only passes $index (#55872) |
compiler-cli
Commit | Type | Description |
---|---|---|
4c7efc005a | fix | interpolatedSignalNotInvoked diagnostic for class, style, attribute and animation bindings (#55969) |
core
Commit | Type | Description |
---|---|---|
4e6ea0e19c | fix | handle elements with local refs in event replay serialization logic (#56076) |
d73a0175cb | fix | link errors to ADEV (#55554) |
985a215b10 | fix | typo in zoneless warning (#55974) |
migrations
Commit | Type | Description |
---|---|---|
ba85d08158 | fix | handle empty ngSwitchCase (#56105) |
v18.0.0
Blog post "Angular v18 is now available".
Breaking Changes
animations
- Deprecated
matchesElement
method has been removed fromAnimationDriver
as it is unused.
common
- The deprecated
isPlatformWorkerUi
andisPlatformWorkerApp
have been removed without replacement, as they serve no purpose since the removal of the WebWorker platform.
compiler
- Angular only supports writable expressions inside of two-way bindings.
compiler-cli
-
- Angular no longer supports TypeScript versions older than 5.4.
core
-
OnPush
views at the root of the application need to be marked dirty for their host bindings to refresh. Previously, the host bindings were refreshed for all root views without respecting theOnPush
change detection strategy. -
OnPush
views at the root of the application need to be marked dirty for their host bindings to refresh. Previously, the host bindings were refreshed for all root views without respecting theOnPush
change detection strategy. -
The
ComponentFixture
autoDetect
feature will no longer refresh the component's host view when the component isOnPush
and not marked dirty. This exposes existing issues in components which claim to beOnPush
but do not correctly callmarkForCheck
when they need to be refreshed. If this change causes test failures, the easiest fix is to change the component toChangeDetectionStrategy.Default
. -
ComponentFixture.whenStable
now matches theApplicationRef.isStable
observable. Prior to this change, stability of the fixture did not include everything that was considered inApplicationRef
.whenStable
of the fixture will now include unfinished router navigations and unfinishedHttpClient
requests. This will cause tests thatawait
thewhenStable
promise to time out when there are incomplete requests. To fix this, remove thewhenStable
, instead wait for another condition, or ensureHttpTestingController
mocks responses for all requests. Try addingHttpTestingController.verify()
before yourawait fixture.whenStable
to identify the open requests. Also, make sure your tests wait for the stability promise. We found many examples of tests that did not, meaning the expectations did not execute within the test body.In addition,
ComponentFixture.isStable
would synchronously switch to true in some scenarios but will now always be asynchronous. -
Angular will ensure change detection runs, even when the state update originates from outside the zone, tests may observe additional rounds of change detection compared to the previous behavior.
This change will be more likely to impact existing unit tests. This should usually be seen as more correct and the test should be updated, but in cases where it is too much effort to debug, the test can revert to the old behavior by adding
provideZoneChangeDetection({schedulingMode: NgZoneSchedulingMode.NgZoneOnly})
to theTestBed
providers.Similarly, applications which may want to update state outside the zone and not trigger change detection can add
provideZoneChangeDetection({schedulingMode: NgZoneSchedulingMode.NgZoneOnly})
to the providers inbootstrapApplication
or addschedulingMode: NgZoneSchedulingMode.NgZoneOnly
to theBootstrapOptions
ofbootstrapModule
. -
When Angular runs change detection, it will continue to refresh any views attached to
ApplicationRef
that are still marked for check after one round completes. In rare cases, this can result in infinite loops when certain patterns continue to mark views for check usingChangeDetectorRef.detectChanges
. This will be surfaced as a runtime error with theNG0103
code. -
async
has been removed, usewaitForAsync
instead. -
The
ComponentFixture.autoDetect
feature now executes change detection for the fixture withinApplicationRef.tick
. This more closely matches the behavior of how a component would refresh in production. The order of component refresh in tests may be slightly affected as a result, especially when dealing with additional components attached to the application, such as dialogs. Tests sensitive to this type of change (such as screenshot tests) may need to be updated. Concretely, this change means that the component will refresh before additional views attached toApplicationRef
(i.e. dialog components). Prior to this change, the fixture component would refresh after other views attached to the application. -
The exact timing of change detection execution when using event or run coalescing with
NgZone
is now the first of eithersetTimeout
orrequestAnimationFrame
. Code which relies on this timing (usually by accident) will need to be adjusted. If a callback needs to execute after change detection, we recommendafterNextRender
instead of something likesetTimeout
. -
Newly created and views marked for check and reattached during change detection are now guaranteed to be refreshed in that same change detection cycle. Previously, if they were attached at a location in the view tree that was already checked, they would either throw
ExpressionChangedAfterItHasBeenCheckedError
or not be refreshed until some future round of change detection. In rare circumstances, this correction can cause issues. We identified one instance that relied on the previous behavior by reading a value on initialization which was queued to be updated in a microtask instead of being available in the current change detection round. The component only read this value during initialization and did not read it again after the microtask updated it. -
Testability methods
increasePendingRequestCount
,decreasePendingRequestCount
andgetPendingRequestCount
have been removed. This information is tracked with zones.
http
-
By default we now prevent caching of HTTP requests that require authorization . To opt-out from this behaviour use the
includeRequestsWithAuthHeaders
option inwithHttpTransferCache
.Example:
withHttpTransferCache({ includeRequestsWithAuthHeaders: true, })
platform-browser
- Deprecated
StateKey
,TransferState
andmakeStateKey
have been removed from@angular/platform-browser
, use the same APIs from@angular/core
.
platform-browser-dynamic
- No longer used
RESOURCE_CACHE_PROVIDER
APIs have been removed.
platform-server
-
deprecated
platformDynamicServer
has been removed. Add animport @​angular/compiler
and replace the usage withplatformServer
-
deprecated
ServerTransferStateModule
has been removed.TransferState
can be use without providing this module. -
deprecated
useAbsoluteUrl
andbaseUrl
been removed fromPlatformConfig
. Provide and absoluteurl
instead. -
Legacy handling or Node.js URL parsing has been removed from
ServerPlatformLocation
.The main differences are;
-
pathname
is always suffixed with a/
. -
port
is empty whenhttp:
protocol and port in url is80
-
port
is empty whenhttps:
protocol and port in url is443
-
router
- Guards can now return
RedirectCommand
for redirects in addition toUrlTree
. Code which expects onlyboolean
orUrlTree
values inRoute
types will need to be adjusted. - This change allows
Route.redirectTo
to be a function in addition to the previous string. Code which expectsredirectTo
to only be a string onRoute
objects will need to be adjusted. - When a a guard returns a
UrlTree
as a redirect, the redirecting navigation will now usereplaceUrl
if the initial navigation was also using thereplaceUrl
option. If this is not desirable, the redirect can configure newNavigationBehaviorOptions
by returning aRedirectCommand
with the desired options instead ofUrlTree
. - Providers available to the routed components always
come from the injector heirarchy of the routes and never inherit from
the
RouterOutlet
. This means that providers available only to the component that defines theRouterOutlet
will no longer be available to route components in any circumstances. This was already the case whenever routes defined providers, either through lazy loading anNgModule
or through explicitproviders
on the route config. - Providers available to the routed components always
come from the injector heirarchy of the routes and never inherit from
the
RouterOutlet
. This means that providers available only to the component that defines theRouterOutlet
will no longer be available to route components in any circumstances. This was already the case whenever routes defined providers, either through lazy loading anNgModule
or through explicitproviders
on the route config.
Deprecations
common
-
getCurrencySymbol
,getLocaleCurrencyCode
,getLocaleCurrencyName
,getLocaleCurrencySymbol
,getLocaleDateFormat
,getLocaleDateTimeFormat
,getLocaleDayNames
,getLocaleDayPeriods
,getLocaleDirection
,getLocaleEraNames
,getLocaleExtraDayPeriodRules
,getLocaleExtraDayPeriods
,getLocaleFirstDayOfWeek
,getLocaleId
,getLocaleMonthNames
,getLocaleNumberFormat
,getLocaleNumberSymbol
,getLocalePluralCase
,getLocaleTimeFormat
,getLocaleWeekEndRange
,getNumberOfCurrencyDigits
core
-
@Component.interpolation
is deprecated. Use Angular's delimiters instead.
http
-
HttpClientModule
,HttpClientXsrfModule
andHttpClientJsonpModule
As mentionned, those modules can be replaced by provider function only.
animations
Commit | Type | Description |
---|---|---|
bcce85af72 | refactor | remove deprecated matchesElement from AnimationDriver (#55479) |
common
Commit | Type | Description |
---|---|---|
d34c033902 | refactor | Deprecate Local Data API functions (#54483) |
3b0de30b37 | refactor | remove deprecated isPlatformWorkerApp and isPlatformWorkerUi API (#55302) |
compiler
Commit | Type | Description |
---|---|---|
91b007e58f | fix | add math elements to schema (#55631) |
33d0102304 | fix | allow comments between connected blocks (#55966) |
7fc7f3f05f | fix | capture all control flow branches for content projection in if blocks (#54921) |
a369f43fbd | fix | capture switch block cases for content projection (#54921) |
eb625d3783 | fix | declare for loop aliases in addition to new name (#54942) |
f824911510 | fix | For FatalDiagnosticError , hide the message field without affecting the emit (#55160) |
a040fb720a | fix | maintain multiline CSS selectors during CSS scoping (#55509) |
39624c6b12 | fix | output input flags as a literal (#55215) |
eba92cfa55 | fix | prevent usage of reserved control flow symbol in custom interpolation context. (#55809) |
7d5bc1c628 | fix | remove container index from conditional instruction (#55190) |
4eb0165750 | fix | remove support for unassignable expressions in two-way bindings (#55342) |
e1650e3b13 | fix | throw error if item name and context variables conflict (#55045) |
compiler-cli
Commit | Type | Description |
---|---|---|
5bd188a394 | feat | add partial compilation support for deferred blocks (#54908) |
b02b31a915 | feat | drop support for TypeScript older than 5.4 (#54961) |
78188e877a | fix | add diagnostic if initializer API is used outside of an initializer (#54993) |
69a83993b3 | fix | do not throw when retrieving TCB symbol for signal input with restricted access (#55774) |
4f4f41016e | fix | dom property binding check in signal extended diagnostic (#54324) |
7a16d7e969 | fix | don't type check the bodies of control flow nodes in basic mode (#55360) |
8d93597a82 | fix | fix type narrowing of @if with aliases (#55835) |
9b424d7224 | fix | preserve original reference to non-deferrable dependency (#54759) |
694ba79cbf | fix | report cases where initializer APIs are used in a non-directive class (#54993) |
6219341d26 | fix | report errors when initializer APIs are used on private fields (#54981) |
c04ffb1fa6 | fix | use switch statements to narrow Angular switch blocks (#55168) |
core
Commit | Type | Description |
---|---|---|
a730f09ae9 | feat | Add a public API to establish events to be replayed and an attribute to mark an element with an event handler. (#55356) |
fdd560ea14 | feat | Add ability to configure zone change detection to use zoneless scheduler (#55252) |
bce5e2344f | feat | Add build target for jsaction contract binary. (#55319) |
666d646575 | feat | Add event delegation library to queue up events and replay them when the application is ready (#55121) |
5f06ca8f55 | feat | add HOST_TAG_NAME token (#54751) |
a600a39d0c | feat | add support for fallback content in ng-content (#54854) |
146306a141 | feat | add support for i18n hydration (#54823) |
f09c5a7bc4 | feat | Add zoneless change detection provider as experimental (#55329) |
d28614b90e | feat | Modify EventType from an enum to an object. (#55323) |
ac863ded48 | feat | provide ExperimentalPendingTasks API (#55487) |
1ee9f32621 | feat | Synchronize changes from internal JSAction codebase. (#55182) |
d888da4606 | fix |
ApplicationRef.tick should respect OnPush for host bindings (#53718) |
64f870c12b | fix |
ApplicationRef.tick should respect OnPush for host bindings (#53718) (#53718) |
8cad4e8cbe | fix |
ComponentFixture autoDetect respects OnPush flag of host view (#54824) |
658cf8c384 | fix |
ComponentFixture stability should match ApplicationRef (#54949) |
2fc11eae9e | fix | account for re-projected ng-content elements with fallback content (#54854) |
0cbd73c6e9 | fix | add warning when using zoneless but zone.js is still loaded (#55769) |
d5edfde6ee | fix | afterRender hooks registered outside change detection can mark views dirty (#55623) |
de7447d15e | fix | Angular should not ignore changes that happen outside the zone (#55102) |
ba8e465974 | fix | Change Detection will continue to refresh views while marked for check (#54734) |
5a10f405d3 | fix | complete the removal of deprecation async function (#55491) |
24bc0ed4f2 | fix | ComponentFixture autodetect should detect changes within ApplicationRef.tick (#54733) |
1c0ec56c46 | fix | correctly project single-root content inside control flow (#54921) |
840c375255 | fix | do not save point-in-time setTimeout and rAF references (#55124) |
10c5cdb49c | fix | ensure change detection runs in a reasonable timeframe with zone coalescing (#54578) |
ad045efd4b | fix | Ensure views marked for check are refreshed during change detection (#54735) |
69085ea26e | fix | error about provideExperimentalCheckNoChangesForDebug uses wrong name (#55824) |
0147e0b85a | fix | exhaustive checkNoChanges should only do a single pass (#55839) |
e02bcf89cf | fix | Fix clearing of pending task in zoneless cleanup implementation (#55074) |
0cec9e4f9a | fix | Fix null dereference error addEvent (#55353) |
44c0ed83a6 | fix | hide implementation details of ExperimentalPendingTasks (#55516) |
314112de99 | fix | Prevent markForCheck during change detection from causing infinite loops (#54900) |
a5fa279b6e | fix | prevent i18n hydration from cleaning projected nodes (#54823) |
6534c035c0 | fix | Remove deprecated Testability methods (#53768) |
a5c57c7484 | fix | resolve error for multiple component instances that use fallback content (#55478) |
f44a5e4604 | fix | support content projection and VCRs in i18n (#54823) |
0510930a25 | fix | TestBed should not override NgZone from initTestEnvironment (#55226) |
e9a0c86766 | fix | TestBed should not override NgZone from initTestEnvironment (#55226) |
700c0520bb | fix | Update ApplicationRef.tick loop to only throw in dev mode (#54848) |
a99cb7ce5b | fix | zoneless scheduler should check if Zone is defined before accessing it (#55118) |
1fd63e9cff | refactor | deprecate @Component.interpolation (#55778) |
forms
Commit | Type | Description |
---|---|---|
1c736dc3b2 | feat | Unified Control State Change Events (#54579) |
61007dced0 | fix | Add event for forms submitted & reset (#55667) |
2e27ca9ddf | fix | Allow canceled async validators to emit. (#55134) |
http
Commit | Type | Description |
---|---|---|
6f88d80758 | feat | allow caching requests with different origins between server and client (#55274) |
8eacb6e4b9 | feat | exclude caching for authenticated HTTP requests (#55034) |
d9b339fdbc | fix | resolve withRequestsMadeViaParent behavior with withFetch (#55652) |
ef665a40a5 | refactor | Deprecate HttpClientModule & related modules (#54020) |
language-service
Commit | Type | Description |
---|---|---|
6d1b82df32 | fix | allow external projects to use provided compiler options (#55035) |
a48afe0d94 | fix | avoid generating TS syntactic diagnostics for templates (#55091) |
bd236cc150 | fix | implement getDefinitionAtPosition for Angular templates (#55269) |
4166dfc1b6 | fix | prevent underlying TS Service from handling template files (#55003) |
b7f2fd4739 | fix | use type-only import in plugin factory (#55996) |
migrations
Commit | Type | Description |
---|---|---|
f914f6a362 | feat | Migration schematics for HttpClientModule (#54020) |
8459ee46cb | fix | handle more cases in HttpClientModule migration (#55640) |
c4b2f18709 | fix | migrate HttpClientTestingModule in test modules (#55803) |
bb4a4016a9 | fix | preserve existing properties in HttpClientModule migration (#55777) |
f93e5180be | fix | resolve multiple structural issues with HttpClient migration (#55557) |
platform-browser
Commit | Type | Description |
---|---|---|
45ae7a6b60 | feat | add withI18nSupport() in developer preview (#55130) |
23f914f101 | fix | Use the right namespace for mathML. (#55622) |
cba336d4f1 | refactor | remove deprecated transfer state APIs (#55474) |
platform-browser-dynamic
Commit | Type | Description |
---|---|---|
eb20c1a8b1 | refactor | unused RESOURCE_CACHE_PROVIDER API has been removed (#54875) |
platform-server
Commit | Type | Description |
---|---|---|
5674c644ab | fix | add nonce attribute to event record script (#55495) |
e71e869112 | fix | remove event dispatch script from HTML when hydration is disabled (#55681) |
07ac017731 | refactor | remove deprecated platformDynamicServer API (#54874) |
e8b588d8b7 | refactor | remove deprecated ServerTransferStateModule API (#54874) |
3b1967ca64 | refactor | remove deprecated useAbsoluteUrl and baseUrl from PlatformConfig (#54874) |
2357d3566c | refactor | remove legacy URL handling logic (#54874) |
router
Commit | Type | Description |
---|---|---|
4a42961393 | feat |
withNavigationErrorHandler can convert errors to redirects (#55370) |
8735af08b9 | feat | Add ability to return UrlTree with NavigationBehaviorOptions from guards (#45023) |
87f3f27f90 | feat | Allow resolvers to return RedirectCommand (#54556) |
2b802587f2 | feat | Allow Route.redirectTo to be a function which returns a string or UrlTree (#52606) |
60f1d681e0 | fix | preserve replaceUrl when returning a urlTree from CanActivate (#54042) |
3839cfbb18 | fix | Routed components never inherit RouterOutlet EnvironmentInjector (#54265) |
da906fdafc | fix | Routed components never inherit RouterOutlet EnvironmentInjector (#54265) |
service-worker
Commit | Type | Description |
---|---|---|
3bc63eaaf3 | fix | avoid running CDs on controllerchange (#54222) |
e598634c10 | fix | remove controllerchange listener when app is destroyed (#55365) |
v17.3.11
17.3.11 (2024-06-05)
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.