Update angular monorepo to v19 (next) (major) #444
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
>= 14.2.0 < 17.0.0
->< 20.0.0
^14.2.7
->^19.0.0
^14.2.7
->^19.0.0
^14.2.7
->^19.0.0
>= 14.2.0 < 17.0.0
->< 20.0.0
^14.2.7
->^19.0.0
^14.2.7
->^19.0.0
^14.2.7
->^19.0.0
Release Notes
angular/angular (@angular/common)
v19.0.0
Compare Source
Breaking Changes
compiler
this.foo
property reads no longer refer to template context variables. If you intended to read the template variable, do not usethis.
.core
Generally this PR has two implications:
effects which are triggered outside of change detection run as part of
the change detection process instead of as a microtask. Depending on the
specifics of application/test setup, this can result in them executing
earlier or later (or requiring additional test steps to trigger; see below
examples).
effects which are triggered during change detection (e.g. by input
signals) run earlier, before the component's template.
We've seen a few common failure cases:
Tests which used to rely on the
Promise
timing of effects now need toawait whenStable()
or call.detectChanges()
in order for effects torun.
Tests which use faked clocks may need to fast-forward/flush the clock to
cause effects to run.
effect()
s triggered during CD could rely on the application being fullyrendered (for example, they could easily read computed styles, etc). With
the change, they run before the component's updates and can get incorrect
answers. The recent
afterRenderEffect()
API is a natural replacement forthis style of effect.
effect()
s which synchronize with the forms system are particularlytiming-sensitive and might need to adjust their initialization timing.
ExperimentalPendingTasks
has been renamed toPendingTasks
.Angular directives, components and pipes are now standalone by default. Specify for declarations that are currently declared in s. for v19 will take care of this automatically.
The
autoDetect
feature ofComponentFixture
will nowattach the fixture to the
ApplicationRef
. As a result, errors duringautomatic change detection of the fixture be reported to the
ErrorHandler
.This change may cause custom error handlers to observe new failures that were previously unreported.
Render default fallback with empty
projectableNodes
.When passing an empty array to
projectableNodes
in thecreateComponent
API, the default fallback content of theng-content
will be rendered if present. To prevent rendering the default content, passdocument.createTextNode('')
as aprojectableNode
.For example:
Errors that are thrown during
ApplicationRef.tick
will now be rethrown when using
TestBed
. These errors should beresolved by ensuring the test environment is set up correctly to
complete change detection successfully. There are two alternatives to
catch the errors:
it synchronously and expect the error. For example, a jasmine test
could write
expect(() => TestBed.inject(ApplicationRef).tick()).toThrow()
TestBed
will reject any outstandingComponentFixture.whenStable
promises. A jasmine test,for example, could write
expectAsync(fixture.whenStable()).toBeRejected()
.As a last resort, you can configure errors to not be rethrown by
setting
rethrowApplicationErrors
tofalse
inTestBed.configureTestingModule
.The timers that are used for zone coalescing and hybrid
mode scheduling (which schedules an application state synchronization
when changes happen outside the Angular zone) will now run in the zone
above Angular rather than the root zone. This will mostly affect tests
which use
fakeAsync
: these timers will now be visible tofakeAsync
and can be affected by
tick
orflush
.The deprecated
factories
property inKeyValueDiffers
has been removed.elements
hybrid scheduler, timing of change detection around custom elements has
changed subtly. These changes make elements more efficient, but can cause
tests which encoded assumptions about how or when elements would be checked
to require updating.
localize
name
option in theng add
@localize`` schematic has been removed in favor of theproject
option.platform-browser
BrowserModule.withServerTransition
method has been removed. Please use theAPP_ID
DI token to set the application id instead.router
Router.errorHandler
property has been removed.Adding an error handler should be configured in either
withNavigationErrorHandler
withprovideRouter
or theerrorHandler
property in the extra options of
RouterModule.forRoot
. In addition,the error handler cannot be used to change the return value of the
router navigation promise or prevent it from rejecting. Instead, if you
want to prevent the promise from rejecting, use
resolveNavigationPromiseOnError
.Resolve
interface now includesRedirectCommand
.common
compiler
typeof
keyword in template expressions. (#58183)this.a
should always refer to class propertya
(#55183):host
parsing in pseudo-selectors (#58681):host:host-context(.foo)
(#58681)compiler-cli
core
standalone: false
. (#57643)run
method onExperimentalPendingTasks
(#56546)undefined
without needing to include it in the type argument ofinput
(#57621)allowSignalWrites
(#57874)resource()
API for async dependencies (#58255)rxResource()
(#58255)standalone
totrue
(#58169)afterRenderEffect
(#57549)outputFromObservable
&outputToObservable
to stable. (#58214)takeUntilDestroyed
to stable. (#58200)@let
syntax (#57813)ViewContext
is retained after closure minification (#57903)None
for empty component styles (#57130)factories
Property inKeyValueDiffers
(#58064)elements
output()
-shaped outputs (#57535)ComponentRef.setInput
& remove custom scheduler (#56728)forms
http
withRequestsMadeViaParent
to stable. (#58221)language-service
@Input
to signal-input (#57214)localize
name
option. (#58063)migrations
ng generate
schematic (#57805)platform-browser
BrowserModule.withServerTransition
method (#58062)platform-server
PlatformRef
when error happens during thebootstrap()
phase (#58112)router
routerOutletData
input toRouterOutlet
directive (#57051)injector
onOutletContext
(#58343)service-worker
v18.2.12
Compare Source
compiler-cli
v18.2.11
Compare Source
core
v18.2.10
Compare Source
compiler
localize
v18.2.9
Compare Source
compiler-cli
v18.2.8
Compare Source
compiler
compiler-cli
core
platform-server
PlatformRef
when error happens during thebootstrap()
phase (#58112) (#58135)v18.2.7
Compare Source
common
compiler-cli
core
http
migrations
upgrade
v18.2.6
Compare Source
v18.2.5
Compare Source
compiler-cli
core
@let
declaration with array whenpreparingForHydration
(#57816)migrations
v18.2.4
Compare Source
compiler
migrations
v18.2.3
Compare Source
http
v18.2.2
Compare Source
core
http
router
upgrade
v18.2.1
Compare Source
core
fakeAsync
(#56932)migrations
v18.2.0
Compare Source
Breaking Changes
zone.js
fakeAsync
will now flush pending timers at the end ofthe given function by default. To opt-out of this, you can use
{flush: false}
in options parameter offakeAsync
compiler
compiler-cli
jit: true
opt-out (#56892)@NgModule
classes withjit: true
(#57212)core
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.