18.0.0-next.1 (2024-03-20)
compiler
Commit | Description |
---|---|
capture data bindings for content projection purposes in blocks (#54876) |
compiler-cli
Commit | Description |
---|---|
symbol feature detection for the compiler (#54711) |
core
Commit | Description |
---|---|
Prevent markForCheck during change detection from causing infinite loops (#54900)
|
platform-browser-dynamic
Commit | Description |
---|---|
unused RESOURCE_CACHE_PROVIDER API has been removed (#54875)
|
platform-server
Commit | Description |
---|---|
remove deprecated platformDynamicServer API (#54874)
| |
remove deprecated ServerTransferStateModule API (#54874)
| |
remove deprecated useAbsoluteUrl and baseUrl from PlatformConfig (#54874)
| |
remove legacy URL handling logic (#54874) |
router
Commit | Description |
---|---|
Allow Route.redirectTo to be a function which returns a string or UrlTree (#52606) | |
Routed components never inherit RouterOutlet EnvironmentInjector (#54265)
|
Breaking Changes
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
- 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. - Providers available to the routed components always
come from the injector heirarchy of the routes and never inherit from
theRouterOutlet
. 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 an
NgModule
or through explicitproviders
on the route config.