-
Notifications
You must be signed in to change notification settings - Fork 12k
build: update angular #23244
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
build: update angular #23244
Conversation
65b7a6c
to
3828035
Compare
9cfae85
to
504127f
Compare
504127f
to
d2b74be
Compare
d2b74be
to
da5cec2
Compare
2fcb8da
to
2c3af8c
Compare
Important: We made some larger changes to the release tool in |
Cherry-pick of angular#23244
This contains larger changes to improve releasing LTS versions. See: angular#23244 (comment)
This contains larger changes to improve releasing LTS versions. See: angular#23244 (comment)
This contains larger changes to improve releasing LTS versions. See: angular#23244 (comment)
@devversion, back-porting to the LTS branches would be problematic and it involves some additional work since the LTS branches use an older version of Bazel and nodejs rules. |
@alan-agius4 Interesting. Technically the update of |
Taking this offline as the update is coupled with the Bazel version. |
Conclusion: We will not backport to the v13 and v12 LTS branches because Dev-Infra team needs to see if we can split |
2c3af8c
to
d3c889e
Compare
d3c889e
to
4185d74
Compare
4185d74
to
1083650
Compare
1083650
to
ad2aed2
Compare
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
This PR contains the following updates:
b6e8050
->f0a4173
14.0.0-rc.2
->14.0.0
c24af14
->9c6801f
14.0.0-rc.1
->14.0.0
ee3b9d0
->ae2f0d8
^13.0.0
->^14.0.0
14.0.0-rc.2
->14.0.0
5736e09
->fe501dd
14.0.0-rc.2
->14.0.0
39e06aa
->f850e5f
14.0.0-rc.2
->14.0.0
69d6a50
->6d56144
^13.0.0
->^14.0.0
14.0.0-rc.2
->14.0.0
323ae68
->932b9d5
294d026
->3d03169
14.0.0-rc.2
->14.0.0
fe29911
->e5b3009
ac009f8
->3329e70
14.0.0-rc.2
->14.0.0
2e54c76
->2acc760
14.0.0-rc.1
->14.0.0
2e82b76
->07fe11a
925b6b3
->e41ae13
14.0.0-rc.2
->14.0.0
5fafb35
->d034336
14.0.0-rc.2
->14.0.0
6c0d95b
->9699999
14.0.0-rc.2
->14.0.0
cea3066
->6e3cb26
14.0.0-rc.2
->14.0.0
655e20d
->9c26303
14.0.0-rc.2
->14.0.0
86c3cdc
->d1a108d
🔡 If you wish to disable git hash updates, add
":disableDigestUpdates"
to the extends array in your config.Release Notes
angular/angular
v14.0.0
Compare Source
Blog post "Angular v14 is now available".
Breaking Changes
animations
AnimationDriver.getParentElement
method has become required, so anyimplementors of this interface are now required to provide an implementation
for this method. This breakage is unlikely to affect application developers,
as
AnimationDriver
is not expected to be implemented in user code.common
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:
None
orShadowDom
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:
None
orShadowDom
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
aotSummaries
fields in TestBed APIs were present, but unused. The fields were deprecated in previous major version and in v14 those fields are removed. TheaotSummaries
fields 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
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.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 reques
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
TransferState
methods.This tightens parameter types of
TransferState
usage, and is a minor breaking change which may reveal existing problematic calls.router
Route.pathMatch
is now more strict. Places that usepathMatch
will likely need to be updated to have an explicitRoute
/Routes
type so that TypeScript does not infer the type asstring
.Promise
from theLoadChildrenCallback
, the possible type is now restricted toType<any>|NgModuleFactory<any>
rather thanany
.initialNavigation: 'enabled'
was deprecated in v11 and is replaced byinitialNavigation: 'enabledBlocking'
.component
onActivatedRoute
andActivatedRouteSnapshot
includes
string
. In reality, this is not the case. The componentcannot be anything other than a component class.
initialUrl
is set tostring|UrlTree
but in reality,the
Router
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 valueactually gets set to something completely different. It's set to the
current internal
UrlTree
of the Router at the time navigationoccurs.
With this change, there is no exact replacement for the old value of
initialUrl
because it was enver intended to be exposed.Router.url
is likely the best replacement for this.In more specific use-cases, tracking the
finalUrl
between successfulnavigations can also be used as a replacement.
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.
UrlTree
, the router would previously schedulethe redirect navigation within a
setTimeout
. 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.
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.
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
andchecked the pending macroTasks e.g. using
(this.ngZone as any)._inner ._parent._properties.TaskTrackingZone.getTasksFor('macroTask')
, thenits behavior slightly changed for periodic macrotasks. For example,
previously the
setInterval
macrotask was no longer tracked after itscallback was executed for the first time. Now it's tracked until
the task is explicitly cancelled, e.g with
clearInterval(id)
.Deprecations
common
ngModuleFactory
input of theNgComponentOutlet
directive is deprecated in favor of a newly addedngModule
input. ThengModule
input accepts references to the NgModule class directly, without the need to resolve module factory first.forms
initialValueIsDefault
option has been deprecated and replaced with the otherwise-identicalnonNullable
option, for the sake of naming consistency.AbstractControlOption
s 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
resolver
argument of theRouterOutletContract.activateWith
function and theresolver
field of theOutletContext
class are deprecated. Passing component factory resolvers are no longer needed. TheComponentFactoryResolver
-related symbols were deprecated in@angular/core
package since v13.animations
AnimationDriver.getParentElement
required (#45114)common
NgLocalization
token tree-shakable (#45118)compiler
compiler-cli
strictInjectionParameters
requirement (#44615)standalone
flag to runtime (#44973)forwardRef
for component scopes (#46139)core
ApplicationRef.destroy
method (#45624)bootstrapApplication
function (#45674)importProvidersFrom
function (#45626)StandaloneService
is retained after closure minification (#45783)<template>
element (#43429)BrowserModule
providers from being loaded twice (#45826)<ng-template>
s (#46068)EnvironmentInjector
(#45789)@NgModule.bootstrap
(#45825)checkNoChanges
mode to be tree-shaken in production (#45913)__ngContext__
(#45051)Compiler
,ApplicationRef
andApplicationInitStatus
tree-shakable (#45102)IterableDiffers
andKeyValueDiffers
tree-shakable (#45094)LOCALE_ID
and other tokens fromApplicationModule
tree-shakable (#45102)__ngContext__
(#45172)aotSummaries
fields in TestBed config (#45487)devtools tabs
forms
FormBuilder.nonNullable
. (#45852)nonNullable
option toFormControl
for consistency.length: 0
. (#33729)FormArray<T>
instead ofFormArray<T[]>
. (#44933)http
language-service
| Commit | Type | Description |
| -- |
Configuration
📅 Schedule: Branch creation - "after 10pm every weekday,before 4am every weekday,every weekend" in timezone America/Tijuana, 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.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate. View repository job log here.