Commit Graph

26895 Commits

Author SHA1 Message Date
Dylan Hunn 3feb9aea2e release: cut the v16.0.0-rc.3 release 16.0.0-rc.3 2023-04-27 00:27:24 -07:00
Andrew Scott e7ed4ab125 refactor(core): separate render and change detection instructions (#50017)
Both the render and update instructions live in the same file and are
only separated via a "render*" vs "refresh*" naming convention. This
commit moves these functions to completely separate files.

PR Close #50017
2023-04-26 23:49:07 -07:00
Angular Robot 0e8fef9a70 build: update all non-major dependencies (#49990)
See associated pull request for more information.

PR Close #49990
2023-04-26 13:13:30 -07:00
Angular Robot 93b7261ef1 build: update eslint dependencies to v5.59.1 (#49991)
See associated pull request for more information.

PR Close #49991
2023-04-26 13:12:48 -07:00
Angular Robot 72ce27115d docs: update Angular CLI help [16.0.x] (#50031)
Updated Angular CLI help contents.

PR Close #50031
2023-04-26 12:40:48 -07:00
Angular Robot c183d65db4 build: update io_bazel_rules_sass digest to 236d2fc (#50006)
See associated pull request for more information.

PR Close #50006
2023-04-26 12:40:16 -07:00
Andrew Scott 2505018eaa refactor(core): Rename 'transplanted' view refresh flag and counters to be generic (#50000)
It's likely that the flag and counters used to track transplanted views
needing a refresh will be reused to signal views as well. The two follow
a similar rule: While the parents might not be "Dirty", there is still a
child/descendant view somewhere that needs to be refreshed during change
detection.

PR Close #50000
2023-04-26 11:29:49 -07:00
Angular Robot b6189cd055 build: update dependency patch-package to v7 (#50002)
See associated pull request for more information.

PR Close #50002
2023-04-26 11:29:14 -07:00
Angular Robot 2b284763fe build: update github/codeql-action action to v2.3.0 (#49992)
See associated pull request for more information.

PR Close #49992
2023-04-26 11:28:12 -07:00
Alan Agius cc099e7aa0 fix(docs-infra): add work-break to a tags in .cli-option (#50012)
This commit fixes a styling issue were the default values are not being displayed in https://angular.io/cli/build which is because in some cases the option description has a long anchor tag which causes the content to be pushed to the right and gets hidden.

PR Close #50012
2023-04-26 09:25:00 -07:00
Andrew Kushnir b88421bfc5 refactor(platform-server): avoid using platformDynamicServer when ngJitMode is disabled (#50007)
This commit refactors the logic of the `platform-server` to avoid using `platformDynamicServer` when `ngJitMode` is disabled. This is needed to avoid including JIT compiler into the source code of the server bundle, when this compil
er is not needed.

PR Close #50007
2023-04-26 09:23:52 -07:00
Alan Agius 74c925c19c fix(platform-browser): export deprecated TransferState as type (#50015)
Prior to this commit `TransferState` re-export could not be used as a type.

Closes #50014

PR Close #50015
2023-04-26 09:21:08 -07:00
Matthieu Riegler a15294009f refactor(core): Error code for Component Id collision (#49986)
The commit add an error code for the Component Id collision and documentation page to fix the issue.

PR Close #49986
2023-04-26 09:19:58 -07:00
Alan Agius 9aff146dad docs: update universal guide to include standalone methods (#49993)
This commit updates the universal guide to include standalone methods.

PR Close #49993
2023-04-26 09:18:36 -07:00
Alan Agius bb5c6bf869 docs: update ssr example files (#49993)
`app.server.module` was renamed to `app.module.server`. See: https://github.com/angular/angular-cli/pull/25058

PR Close #49993
2023-04-26 09:18:36 -07:00
Alan Agius 4fabe4c294 docs: update file structure to include standalone application files (#49993)
This commit updates the docs to include standalone files.

PR Close #49993
2023-04-26 09:18:36 -07:00
Alan Agius c0d698ec5b docs: update links to reference the version compatibility guide (#49995)
This commit updates several docs to reference the version compatibility guide instead of the `package.json`.

PR Close #49995
2023-04-26 09:17:57 -07:00
Andrew Scott d26d4103f8 refactor(core): Use bit shift operator instead of manually writing numbers (#49987)
The LViewFlags are using manually written 0bxxxxx numbers which can be very hard to read
once there are more than a handful of 0s and 1s. The bit shifting feels a lot more
legible.

PR Close #49987
2023-04-25 17:23:29 -07:00
Matthieu Riegler 9e0a651a5a build(elements): remove unecessary filegroup. (#49982)
This is uneccessary now. All supported browsers support custom elements.

PR Close #49982
2023-04-25 09:30:59 -07:00
Matthieu Riegler 8b0f13eadd refactor(docs-infra): remove semi rule from eslintrc. (#49970)
The `semi` rule a duplicate since `plugin:@angular-eslint/ng-cli-compat--formatting-add-on` already includes `@typescript-eslint/semi` as error.

PR Close #49970
2023-04-25 09:30:16 -07:00
Jessica Janiuk 4240f4a35a refactor(core): improve error message when dom node is not found (#49977)
This adds context to the error message in the case that a DOM node is not found during the hydration process. It outputs the expected DOM structure based on the lView and tNode rather than an unhelpful text message.

PR Close #49977
2023-04-25 09:29:47 -07:00
Matthieu Riegler 58975d9754 build: bump license year (#49984)
Bumping to 2023

Fixes #49983

PR Close #49984
2023-04-25 09:29:19 -07:00
Alan Agius 7cdf710092 docs: add v16 in version compatibility table (#49994)
This commit add version v16 in the version compatibility table.

PR Close #49994
2023-04-25 09:28:45 -07:00
Andrew Scott 5cdf6bc089 refactor(core): Synchronously emit the current signal value in toObservable (#49894)
As described in
https://github.com/angular/angular/discussions/49681#discussioncomment-5628930,
if an `Observable` created from a signal with `toObservable` is
subscribed to in a template, it will initially have `null` as the value.
Immediately after the template is done executing, effects are flushed
and this results in the `AsyncPipe` getting a new value before the
`checkNoChanges` pass, resulting in `ExpressionChanged` error.

```
template: '{{obs$ | async}}'
...
obs$ = toObservable(signal(0));
```

Instead, this commit updates the `toObservable` to synchronously emit
the initial value to the Observable stream.

Side note here: We don't exactly encourage this pattern. Instead of
using `AsyncPipe`, the template should just read signals.

PR Close #49894
2023-04-25 09:27:38 -07:00
Matthieu Riegler b4531f1d82 fix(core): typing of TestBed Common token. (#49997)
Both `ComponentFixtureAutoDetect`  and `ComponentFixtureNoNgZone` are mistyped. Tokens are only instantiated with booleans.

PR Close #49997
2023-04-25 09:27:08 -07:00
Alan Agius 022ed5adb0 test: remove unused size goldens (#49976)
These test has been deleted as such the size check golden here is redundant.
PR Close #49976
2023-04-24 11:56:37 -07:00
Matthieu Riegler fed4c28de0 refactor(core): call publishSignalConfiguration when bootstraping a standalone component. (#49968)
`publishSignalConfiguration` was not called when bootstraping an app using `boostrapApplication()`

PR Close #49968
2023-04-24 11:54:05 -07:00
Angular Robot e3ee11f1e7 build: update cross-repo angular dependencies (#49964)
See associated pull request for more information.

PR Close #49964
2023-04-24 11:53:26 -07:00
Lars Gyrup Brink Nielsen b5da47be0f docs(core): correct description of actively supported versions (#49945)
PR Close #49945
2023-04-24 11:52:20 -07:00
Lars Gyrup Brink Nielsen 08dd9d5196 docs(core): combine compatibility for minor versions sharing dependencies (#49945)
PR Close #49945
2023-04-24 11:52:20 -07:00
Matthieu Riegler b882fdbba5 refactor(compiler-cli): remove unecessary type assertion (#49971)
microsoft/TypeScript#43966 was fixed in 4.3.1

PR Close #49971
2023-04-24 11:51:18 -07:00
Qiuran Hu e17267f08f docs: fix typo in lazy-loading feature modules doc (#49972)
PR Close #49972
2023-04-24 10:52:46 -07:00
Jessica Janiuk 9172e63973 test(core): Add hydration symbols test (#49955)
Add symbols tracking test for hydration.

PR Close #49955
2023-04-24 09:57:52 -07:00
Jessica Janiuk 2ccfebd774 test(core): add size tracking test for hydration apps (#49955)
This adds test to track size regressions when
hydration is enabled.

PR Close #49955
2023-04-24 09:57:52 -07:00
Alan Agius de240e37f3 ci: do not install Java in the test execturor (#49975)
Java is now only needed for `test_zonejs` as all closure related tests have been removed from the framework.

PR Close #49975
2023-04-24 09:57:24 -07:00
Alan Agius 5fe2adec98 docs: remove no longer available tests from readme (#49975)
This commit removes no longer available integration tests from the readme.

PR Close #49975
2023-04-24 09:57:24 -07:00
Alan Agius 96529fa9ff build: update integration test node_modules (#49975)
This commit updates the tests node_modules to be ignored.

PR Close #49975
2023-04-24 09:57:23 -07:00
Jessica Janiuk 6d7be42da7 fix(core): add newline to hydration mismatch error (#49965)
This adds a newline after the hydration mismatch errors to provide more separation and readability.

PR Close #49965
2023-04-24 09:52:45 -07:00
Rushikesh Kavar bc9d0b71c6 docs: applicability of NgModule providers (#49966)
saying that providers of this NgModule is available to components,pipes and directive of "this" ngModule is not accurate sentence to describe the fact.
I am referring from: https://angular.io/guide/hierarchical-dependency-injection.
It says that "ModuleInjector is configured by the @NgModule.providers and NgModule.imports property. ModuleInjector is a flattening of all the providers arrays that can be reached by following the NgModule.imports recursively."
So, any component,pipe or directive of other NgModule within same ModuleInjector can use providers of this NgModule.
PR Close #49966
2023-04-24 09:51:58 -07:00
Matthieu Riegler da681ee712 refactor(core): throw an error when APP_INITIALIZER token is not an array. (#49860)
Providing a non-multi token for `APP_INITIALIZER` now throws `INVALID_MULTI_PROVIDER` (NG209)

PR Close #49860
2023-04-23 18:31:24 -07:00
Andrew Kushnir a2b6b9d584 refactor(platform-browser): log a warning when a custom or a noop ZoneJS is used with hydration (#49944)
Hydration relies on a signal from ZoneJS when it becomes stable inside an application, so that Angular can start serialization process on the server or post-hydration cleanup on the client (to remove DOM nodes that remained unclaimed).

Providing a custom or a "noop" ZoneJS implementation may lead to a different timing of the "stable" event, thus triggering the serialization or the cleanup too early or too late. This is not yet a fully supported configuration.

This commit adds a warning (non-blocking) for those cases.

PR Close #49944
2023-04-23 18:23:29 -07:00
Matthieu Riegler 917548cef4 docs: remove the warning about shadowDom support (#49961)
ShadowDom support is now ubiquitous since 2020 and all evergreen browsers.

PR Close #49961
2023-04-23 18:22:47 -07:00
Matthieu Riegler 8d32acf8d0 docs: remove mention of the webworker platform issues (#49947)
The Webworker platform was remove in v10, we can remove this part.

Fixes #49934

PR Close #49947
2023-04-23 18:21:00 -07:00
Payam Valadkhan 4ee06b1a29 refactor(compiler-cli): Add experimental local compilation mode. (#49846)
In this mode the compiler generates code based on each individual source file without using its dependencies. This mode is suitable only for fast edit/refresh during development.

PR Close #49846
2023-04-23 18:19:35 -07:00
Angular Robot 0ade007119 build: update cross-repo angular dependencies (#49956)
See associated pull request for more information.

PR Close #49956
2023-04-21 09:06:25 -07:00
Angular Robot 2948a022e5 build: update cross-repo angular dependencies to v16.0.0-rc.2 (#49941)
See associated pull request for more information.

PR Close #49941
2023-04-20 14:51:02 -07:00
Andrew Kushnir 60fe29ec13 refactor(core): hydrate components of the same type used with and without ngSkipHydration (#49943)
This commit updates hydration logic to hanlde a case when the same component is used multiple times in a template and in some of those cases, component is opted-out of hydration, for example:

```
<cmp ngSkipHydration />
<cmp />
```

Previously, the first occurrence of the `<cmp>` would result in storing the `ssrId` on a TView as `null` (since hydration is disabled for the component) and the second component instance reused the `null` as a value, thus also skipping hydration.

With the changes from this commit, the `ssrId` would be set when we come across a hydratable instance. We also make sure that the `ssrId` value never changes after we first set it to a non-`null` value.

PR Close #49943
2023-04-20 14:50:33 -07:00
lonikadze ca74af8b82 docs: replaces "comp: docs" label to "area: docs" (#49952)
Fixes #49951

PR Close #49952
2023-04-20 14:50:03 -07:00
skrtheboss 9180f98f0e fix(core): ensure takeUntilDestroyed unregisters onDestroy listener on unsubscribe (#49901)
The takeUntilDestroyed must always remove the onDestroy listener,
in the teardown logic.

PR Close #49901
2023-04-19 19:55:09 +00:00
Jessica Janiuk 2f4b61e164 release: cut the v16.0.0-rc.2 release 16.0.0-rc.2 2023-04-19 12:37:03 -07:00