fad1354 | Alex Rickabaugh | 24 January 2024, 20:50:52 UTC | release: cut the v17.2.0-next.0 release | 24 January 2024, 21:00:51 UTC |
9e10af4 | nikvarma | 12 January 2024, 08:00:48 UTC | docs: typo Chat to chart fix (#53892) PR Close #53892 | 24 January 2024, 20:23:51 UTC |
a2a0b33 | Pawel Kozlowski | 24 January 2024, 19:21:37 UTC | docs: release notes for the v17.1.1 release (#54056) PR Close #54056 | 24 January 2024, 19:35:15 UTC |
7751645 | Paul Gschwendtner | 22 January 2024, 14:43:01 UTC | refactor(compiler): support JIT for signal-based queries (#54019) Similar to signal-based inputs, we support signal-based queries in JIT by expecting a decorator to be added. This is a consequence of the design, given that JIT requires query declaration information before the class is initialized- but ironically there is no way to collect this information without instantiating the class. A JIT transform in the Angular CLI will automatically generate these decorators for testing. PR Close #54019 | 24 January 2024, 15:13:31 UTC |
17a47c4 | Paul Gschwendtner | 22 January 2024, 12:57:09 UTC | refactor(compiler-cli): additional diagnostics for signal-based queries (#54019) This commit introduces three additional diagnostics for queries: - If a query (either using decorator or signal-based) is declared on a static class member, a diagnostic is raised. - If a signal-based query is mixed with a query decorator, a diagnostic is raised. Similar to signal inputs. - If a singal-based query is also declared in the directive/component class decorator metadata, a diagnostic is raised. PR Close #54019 | 24 January 2024, 15:13:31 UTC |
a7017a0 | Paul Gschwendtner | 19 January 2024, 13:14:02 UTC | refactor(core): improve safety of input/query initializer API detection (#54019) Due to some refactorings, we were only checking the function name and whether it originates from an import. We should also verify the module. This seems like logic we lost in the refactorings. PR Close #54019 | 24 January 2024, 15:13:31 UTC |
3b6f636 | Paul Gschwendtner | 19 January 2024, 12:11:34 UTC | refactor(compiler-cli): collapse multiple query advance statements (#54019) Collapses multiple sibling query advance statements into single query advance invocations. This will help reducing generated code for directives/components with many queries. PR Close #54019 | 24 January 2024, 15:13:31 UTC |
998af32 | Paul Gschwendtner | 19 January 2024, 11:43:49 UTC | refactor(compiler-cli): move more query generation logic to dedicated file (#54019) Without any modifications, this commit moves more of the the query generation logic into its dedicated file. PR Close #54019 | 24 January 2024, 15:13:31 UTC |
09f9423 | Max | 24 January 2024, 02:59:30 UTC | docs: fix typo in Custom directives section (#54044) There was a grammatically incorrect sentence in the What is Angular page, Custom directives section. This change makes it more correct. PR Close #54044 | 24 January 2024, 14:32:22 UTC |
25f91e3 | Paul Gschwendtner | 24 January 2024, 11:30:40 UTC | build: ensure zone.js typing test is hermetic (#54048) Currently the ZoneJS typing tests executes outside of Bazel, as a legacy artifact of the monorepo merging (as it seems - not ideal at all). Looks like this test relies on its own node modules, that were NOT locked using a yarn lock file. This commit adds one, and specifically locks it to a `@types/node` version that does not include the most recent patch release (which seemingly introduced a breaking change) that causes issues with TypeScript's lib checking. Whenever we perform lock file maintenance in the future, we have the following options: - Consider disabling lib checking via `skipLibCheck` for this test. This may be acceptable. - Continue locking the node version, - Waiting for chokidar to comply with the new signature - Waiting for the breaking change to be rolled back. Culprit change: https://github.com/DefinitelyTyped/DefinitelyTyped/pull/68300 PR Close #54048 | 24 January 2024, 13:57:05 UTC |
bc85551 | Andrew Scott | 22 January 2024, 17:12:44 UTC | fix(router): revert commit that replaced `last` helper with native `Array.at(-1)` (#54021) While `Array.at` is technically supported in all browsers we officially support, the change was needlessly breaking without any real benefit. PR Close #54021 | 24 January 2024, 09:54:52 UTC |
aeaec86 | Andrew Kushnir | 18 January 2024, 05:51:57 UTC | refactor(compiler-cli): rephrase an error message related to `@defer` and local compilation (#54030) This commit updates the error message to cover cases when imported symbols have eager references inside of a file. PR Close #54030 | 24 January 2024, 09:08:50 UTC |
a3787bd | Alan Agius | 17 January 2024, 17:59:46 UTC | docs: update docs to reflect changes in Angular CLI version 17.1 (#53949) This changes include mentioning the experimental application builder migration and changes to the `outputPath` and `optimization` option. PR Close #53949 | 23 January 2024, 17:56:18 UTC |
454d5e9 | Younes Jaaidi | 23 January 2024, 01:07:52 UTC | test(core): fix test with false-negative risk (#54025) change assertion to handle the case where the function doesn't throw PR Close #54025 | 23 January 2024, 15:58:56 UTC |
d99bc8a | Dylan Hunn | 23 January 2024, 00:34:01 UTC | refactor(compiler): ICUs should roll up to the root i18n block for application (#54026) Previously, if an ICU was inside a nested i18n root, it would use the nested root to calculate whether it should be applied. Now, we use the root i18n block. PR Close #54026 | 23 January 2024, 14:09:36 UTC |
f81a436 | Paul Gschwendtner | 18 January 2024, 12:48:08 UTC | test: add compliance tests for signal-based queries (#53978) This commit adds compliance tests to ensure that the generated output of signal-based queries matches our expectation. Note: collapsing query advance instructions is not implemented yet. PR Close #53978 | 23 January 2024, 09:24:37 UTC |
d4c84a9 | Paul Gschwendtner | 18 January 2024, 12:18:14 UTC | refactor(compiler-cli): generate partial compilation output for signal-based queries (#53978) This commit ensures that libraries can use signal-based queries, and the partial compilation output will capture their metadata. The linker is updated to support parsing this. Two notes: 1. Older linker versions are not capable of parsing this, so the minimum version for signal-based queries is adjusted when such are used. 2. We only emit `isSignal` metadata for queries when signal queries are used. This enables libraries to continue supporting older linker versions, if signal-based queries are not used. PR Close #53978 | 23 January 2024, 09:24:36 UTC |
df828e9 | Paul Gschwendtner | 18 January 2024, 10:44:47 UTC | test: add compiler integration test for signal-based queries (#53978) Adds a compiler integration test for recognizing signal-based queries, and emitting the expected output. Concrete output will be verified via the compliance tests. PR Close #53978 | 23 January 2024, 09:24:36 UTC |
d57c1f5 | Paul Gschwendtner | 18 January 2024, 10:44:09 UTC | refactor(core): correct types for queries where locator was not split at compile time (#53978) Currently, Angular tries to recognize string locators/predicates for queries at compile time, and attempts to split multi-selector predicates into an array as generated output. This is a a performance optimization. In practice, this works most of the time because the compiler can detect string locactors/predicates through static analysis. Though, there are cases where it's not possible. That is when advanced constructs are used, identifier references etc. that ultimately evaluate to a string. Currently this breaks with queries and also surfaces now with signal-based queries. PR Close #53978 | 23 January 2024, 09:24:36 UTC |
8f936a4 | Paul Gschwendtner | 17 January 2024, 17:08:27 UTC | refactor(compiler-cli): recognize signal-based queries in class initializers (#53978) This commit uses the initializer API recognition that we built for signal-based inputs, and teaches the compiler to recognize class members that refer to `viewChild`, `viewChildren`, `contentChild` or `contentChildren`. Those will declare signal-based view or content queries. PR Close #53978 | 23 January 2024, 09:24:36 UTC |
35ee10e | Paul Gschwendtner | 16 January 2024, 13:54:39 UTC | refactor(compiler-cli): support generation of signal-based queries (#53978) This commit introduces the compiler output generation for signal-based queries. Signal-based queries will have new creation-mode instructions and update instructions to advance the current query indices in the global shared context. An output like the following is the expected output for signal-based queries: ``` i0.ɵɵdefineComponent({ viewQuery: function App_Query(rf, ctx) { if (rf & 1) { i0.ɵɵviewQuery(ctx.d, _c0, 5); i0.ɵɵviewQuerySignal(ctx.ds1, _c0, 5); i0.ɵɵviewQuerySignal(ctx.ds2, _c0, 5); } if (rf & 2) { let _t; // only change-detected queries need explicit refresh i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.d = _t.first); // we bump up current query index by 2 positions since there are 2 signal-based queries i0.ɵɵqueryAdvance(2); } … }, … }); ``` Note: For now, the collapsing of multiple advance instructions is not implemented. This will be a follow-up. Note 2: A couple of query helpers are now in their own file. This makes it easier to focus on query-specific compiler code. The new function is called `createQueryCreateCall`, which is a modified variant of the existing function that previously only generated query parameters. PR Close #53978 | 23 January 2024, 09:24:36 UTC |
7ed3927 | Paul Gschwendtner | 16 January 2024, 15:04:27 UTC | refactor(compiler-cli): expose helper for recognizing initializer APIs (#53978) The new `input` API is recognized using class member initializers. We want to support similar APIs for queries, using e.g. `viewChild` or `viewChild.required`. This commit extracts the input recognition API and makes it reusable, so that the same logic can be used to detect queries on a class member. Additional changes: - replacing `coreModule` with the simpler `isCore` parameter. This is more readable. - support for detecting a list of API names on a single class member. This allows us to detect possible query functions on the same class member without having to check X times. We simply check for the initializer API pattern and check if one API function name matches. PR Close #53978 | 23 January 2024, 09:24:36 UTC |
9e22d60 | Aristeidis Bampakos | 14 September 2023, 14:35:04 UTC | docs: update Aristeidis Bampakos bio (#51779) PR Close #51779 | 23 January 2024, 09:22:23 UTC |
9384537 | Matthieu Riegler | 19 January 2024, 21:52:14 UTC | refactor(devtools): migrate to standalone (#53998) Migrated with the schematics and cleanup by hand. PR Close #53998 | 23 January 2024, 08:53:24 UTC |
ff5575a | Matthieu Riegler | 19 January 2024, 20:01:59 UTC | refactor(devtools): remove date utility. (#53997) We can use the `toIsoString()` function instead ! PR Close #53997 | 23 January 2024, 08:52:14 UTC |
3e35f74 | Srinath Vayalpati | 06 December 2023, 16:14:32 UTC | docs: fixed req.method in http client testing (#53395) PR Close #53395 | 23 January 2024, 08:50:59 UTC |
24290bc | ilir.beqiri | 21 January 2024, 23:10:50 UTC | docs: fix typo at component template metadata property (#54015) Rename the component metadata property, templateUrl to template in the reactive forms tutorial step PR Close #54015 | 23 January 2024, 08:47:43 UTC |
5c1bbf2 | Matthieu Riegler | 20 January 2024, 20:56:38 UTC | docs: update version compatibility table for aio & adev (#54008) PR Close #54008 | 23 January 2024, 08:46:56 UTC |
6186e52 | divyasudagoni | 22 January 2024, 02:05:03 UTC | docs: move import statement of ngmodule from standalone component to module code #53952 (#54016) PR Close #54016 | 22 January 2024, 18:43:37 UTC |
3e13840 | Payam Valadkhan | 11 January 2024, 00:09:10 UTC | feat(compiler-cli): support host directives for local compilation mode (#53877) At the moment local compilation breaks for host directives because the current logic relies on global static analysis. This change creates a local version by cutting the diagnostics and copying the directive identifier as it is to the generated code without attempting to statically resolve it. PR Close #53877 | 22 January 2024, 13:44:24 UTC |
b774e22 | Payam Valadkhan | 16 January 2024, 07:37:13 UTC | feat(compiler-cli): make it configurable to generate alias reexports (#53937) At the moment when unified host is selected (through option `_useHostForImportGeneration`) the compiler always generates alias reexports. Such reexports are mainly generated to satisfy strict dependency condition for generated files. Such condition is no longer the case for G3. At the same time, these alias reexports make it impossible to mix locally compiled targets with globally compiled targets. More precisely, a globally compiled target may not be able to consume a locally compiled target as its dependency since the former may import from the alias reexports which do not exist in the latter due to local compilation mode. So, to make global-local compilation interop possible, it is required to be able to turn off alias reexport generation. PR Close #53937 | 22 January 2024, 13:20:26 UTC |
ec03e46 | Joey Perrott | 19 January 2024, 19:03:52 UTC | refactor: migrate bazel, benchpress, elements and misc to prettier formatting (#53995) Migrate formatting to prettier for bazel, benchpress, elements and misc from clang-format PR Close #53995 | 22 January 2024, 08:07:15 UTC |
bbbe477 | Joey Perrott | 18 January 2024, 18:38:04 UTC | refactor: migrate animations to prettier formatting (#53977) Migrate formatting to prettier for animations from clang-format PR Close #53977 | 19 January 2024, 19:08:57 UTC |
711cb41 | Joey Perrott | 16 January 2024, 21:35:47 UTC | refactor(devtools): migrate devtools to prettier formatting (#53945) Migrate formatting to prettier for devtools from clang-format PR Close #53945 | 19 January 2024, 18:09:54 UTC |
4be2534 | Tomasz Ducin | 07 December 2023, 22:55:05 UTC | refactor(devtools): improving type safety (#53436) This PR reduces the number of unnecessary `any` occurrences in devtools packages. PR Close #53436 | 19 January 2024, 16:35:25 UTC |
30f00d8 | Paul | 07 November 2023, 11:21:17 UTC | docs: update start-data.md (#52577) PR Close #52577 | 19 January 2024, 16:34:45 UTC |
3aea2e6 | Matthieu Riegler | 19 January 2024, 14:18:17 UTC | build: Adding myself for devtools approval (#53989) This to help Alex with the reviewing of devtools PRs. PR Close #53989 | 19 January 2024, 16:33:21 UTC |
c8ee528 | Paul Gschwendtner | 19 January 2024, 11:32:37 UTC | build: update g3 sync config to match internal one (#53987) There were some changes to the Copybara config that should be reflected here as well. PR Close #53987 | 19 January 2024, 16:18:11 UTC |
5ae85e4 | Andrew Scott | 09 January 2024, 18:24:29 UTC | refactor(core): node removal notifies scheduler only when animations are enabled (#53857) Node removal is immediate and does not require change detection to run when animations are not provided. This refactor makes the animation engine notify the scheduler rather than doing it on all node removals. PR Close #53857 | 19 January 2024, 09:28:24 UTC |
cc34e5f | Joey Perrott | 18 January 2024, 18:32:56 UTC | refactor: migrate scripts to prettier formatting (#53976) Migrate formatting to prettier for scripts from clang-format PR Close #53976 | 19 January 2024, 09:22:06 UTC |
1d1c413 | Jessica Janiuk | 18 January 2024, 17:50:13 UTC | docs: updates defer guide to reflect updated default defer block test behavior (#53975) This updates the deferrable view guide to specify playthrough as the default with examples of configuring to manual. PR Close #53975 | 19 January 2024, 09:16:35 UTC |
ee68df9 | Angular Robot | 18 January 2024, 17:05:48 UTC | build: update all non-major dependencies (#53979) See associated pull request for more information. PR Close #53979 | 19 January 2024, 09:11:29 UTC |
a057b61 | Joey Perrott | 17 January 2024, 20:09:53 UTC | ci: provide proper location for artifacts to allow for firebase to find the artifacts for deployment (#53960) Move the artifacts during deployment into adev/ so that its at the same level as the firebase.json file. PR Close #53960 | 18 January 2024, 17:08:30 UTC |
c67647b | Angular Robot | 18 January 2024, 10:08:02 UTC | build: update cross-repo angular dependencies (#53970) See associated pull request for more information. PR Close #53970 | 18 January 2024, 16:16:34 UTC |
3d9e8b2 | Ankita Sood | 23 October 2023, 03:25:34 UTC | docs: add ankita (#52319) add Ankita as GDE in contributors.json PR Close #52319 | 18 January 2024, 13:28:35 UTC |
8737544 | lilbeqiri | 15 January 2024, 01:24:52 UTC | build(devtools): prevent underscores from being added at build time (#53921) Add the keepNames config property to esbuild in order to prevent prepending of underscores to the class names. PR Close #53921 | 18 January 2024, 09:22:12 UTC |
a566c5c | Sasidharan SD | 12 December 2023, 19:14:25 UTC | docs: fix broken code example (#53531) PR Close #53531 | 18 January 2024, 09:16:19 UTC |
65ff0f8 | Sasidharan SD | 08 January 2024, 20:19:06 UTC | docs: fix spelling errors in tutorials steps (#53840) PR Close #53840 | 18 January 2024, 09:14:47 UTC |
e227275 | Matthieu Riegler | 06 December 2023, 16:02:03 UTC | refactor(devtools): Add support for signals. (#53269) The devtools now support signals. Writable signals of primitives are editable. Object Signal and other non-writable signals (like computed) are not editable. Co-authored-by: Tomasz Ducin <tomasz.ducin@gmail.com> PR Close #53269 | 18 January 2024, 00:47:17 UTC |
7dd5673 | Matthieu Riegler | 01 January 2024, 22:21:47 UTC | refactor(compiler): remove mentions of unused compiler options. (#53746) Those options where removed in #49672. PR Close #53746 | 18 January 2024, 00:41:35 UTC |
ff51e09 | macvag | 06 January 2024, 11:42:04 UTC | docs: fix broken hyperlink in tutorials first app search (#53816) PR Close #53816 | 18 January 2024, 00:40:06 UTC |
b4c7167 | Dylan Hunn | 17 January 2024, 22:47:28 UTC | docs: release notes for the v17.1.0 release | 17 January 2024, 22:47:35 UTC |
4fd78a9 | Dylan Hunn | 17 January 2024, 21:47:20 UTC | revert: no longer depend on `forwardRef` changes (#53961) Revert only the part of the signal queries PRs that depends on the forward ref changes, which were reverted. PR Close #53961 | 17 January 2024, 21:56:07 UTC |
d0ce011 | Dylan Hunn | 17 January 2024, 20:37:24 UTC | Revert "refactor(core): improve forwardRef typings (#53880)" (#53961) This reverts commit af6f6e6448edffcd644b0bb6ce155c3ca4270971. PR Close #53961 | 17 January 2024, 21:56:07 UTC |
a7f8d9d | cexbrayat | 11 January 2024, 17:21:11 UTC | refactor(compiler-cli): interpolatedSignalNotInvoked diagnostic for input signals (#53883) This updates the extended diagnotic to handle input signals as well. PR Close #53883 | 17 January 2024, 19:36:43 UTC |
f80fabb | Matthieu Riegler | 15 January 2024, 17:24:29 UTC | refactor(router): Use Nullish coalescing assignment when possible. (#53930) Inspired by #53923, lets simplify code when possible. PR Close #53930 | 17 January 2024, 19:36:11 UTC |
455b645 | Joey Perrott | 17 January 2024, 17:48:55 UTC | ci: use ng-dev-previews project for previews (#53958) Rather than use the actual adev site, we should be using the ng-dev-preview site PR Close #53958 | 17 January 2024, 19:19:27 UTC |
b0e0f00 | Andrew Kushnir | 12 January 2024, 20:06:46 UTC | refactor(compiler): extra diagnostics for `@defer` in local compilation mode (#53899) This commit adds extra logic to produce a diagnostic in case `@Component.deferredImports` contain types from imports that also bring eager symbols. This would result in retaining a regular import and generating a dynamic import, which would not allow to defer-load dependencies. PR Close #53899 | 17 January 2024, 18:46:15 UTC |
df6c205 | Jessica Janiuk | 17 January 2024, 17:42:14 UTC | fix(core): Change defer block fixture default behavior to playthrough (#53956) This inverts the default behavior of test bed to use playthrough for defer blocks instead of manual. fixes: #53686 PR Close #53956 | 17 January 2024, 18:45:42 UTC |
f9781f9 | Joey Perrott | 17 January 2024, 15:43:17 UTC | refactor: migrate modules to prettier formatting (#53954) Migrate formatting to prettier for modules directory from clang-format PR Close #53954 | 17 January 2024, 17:41:59 UTC |
616df43 | Pawel Kozlowski | 05 January 2024, 16:40:31 UTC | test(core): support type tests for different authoring functions (#53829) The new type testing infrastructure was introduced for the input-as-signals authoring functions. This commit modifies this infrastructure to make it more generic and support queries-as-signals. PR Close #53829 | 17 January 2024, 17:15:14 UTC |
e1ac52a | Pawel Kozlowski | 05 January 2024, 16:38:39 UTC | refactor(core): introduce query-as-signal authoring functions (#53829) This commit adds signatures of the quer-as-signal authoring functions and their respective type tests. PR Close #53829 | 17 January 2024, 17:15:14 UTC |
6007af9 | Matthieu Riegler | 14 January 2024, 22:17:18 UTC | docs: add `platform-browser/animations/async` entry to AIO (#53914) fixes #53912 PR Close #53914 | 17 January 2024, 17:14:42 UTC |
66e940a | Daniel Puckowski | 16 January 2024, 20:50:00 UTC | feat(compiler): scope selectors in @starting-style (#53943) make sure selectors inside @starting-style queries are correctly scoped PR Close #53943 | 17 January 2024, 17:14:11 UTC |
0accc64 | Joey Perrott | 17 January 2024, 16:42:06 UTC | ci: use the config from adev for adev previews (#53955) Properly use the adev firebase config. PR Close #53955 | 17 January 2024, 17:13:42 UTC |
08233b8 | Andrew Kushnir | 12 January 2024, 22:47:07 UTC | refactor(compiler): enable `register` and `resolve` phases for local compilation (#53901) This commit update the logic to enable `register` and `resolve` phases for local compilation. Those phases will be useful for local compilation in certain cases (will be used in followup PRs). PR Close #53901 | 17 January 2024, 17:03:55 UTC |
e1b9b66 | Joey Perrott | 09 January 2024, 21:01:56 UTC | ci: set up previews of adev (#53941) Set up preview actions to allow for a preview of the adev site to be deployed for a PR with the `adev: preview` label. PR Close #53941 | 17 January 2024, 03:18:30 UTC |
d04f98d | Joey Perrott | 16 January 2024, 17:38:10 UTC | ci: run adev tests on CI (#53941) Run tests in adev for CI PR Close #53941 | 17 January 2024, 03:18:30 UTC |
dc62446 | Joey Perrott | 16 January 2024, 21:51:06 UTC | refactor: migrate tools to prettier formatting (#53947) Migrate formatting to prettier for tools directory from clang-format PR Close #53947 | 17 January 2024, 03:17:49 UTC |
4ca81b0 | AleksanderBodurri | 16 January 2024, 23:31:54 UTC | docs(devtools): update development docs (#53948) These docs are out of date with how we currently build devtools in dev mode and as a browser extension. This commit brings these docs up to date. PR Close #53948 | 17 January 2024, 03:17:18 UTC |
426bcb9 | AleksanderBodurri | 16 January 2024, 23:30:55 UTC | docs(devtools): remove devtools/CONTRIBUTING.md (#53948) This is an artifact left over form the repo merge. There is already an existing CONTRIBUTING.md for this repo PR Close #53948 | 17 January 2024, 03:17:17 UTC |
6581ac9 | Pawel Kozlowski | 15 January 2024, 11:14:08 UTC | refactor(core): re-organize queries code (#53922) This commit splits the query implementation and instructions into a separate files. This is a pattern frequently used by other functional areas of the framework and is a preparation for introducing queries-as-signals where we are going to see more instructions delegating to the same core functionality. PR Close #53922 | 17 January 2024, 00:00:34 UTC |
e9c659a | Ilija Leko | 28 November 2023, 14:14:01 UTC | docs: fix-build-path-in-http-server-command (#53226) PR Close #53226 | 16 January 2024, 17:37:10 UTC |
760b1f3 | Paul Gschwendtner | 12 January 2024, 12:54:29 UTC | fix(compiler-cli): do not throw fatal error if extended type check fails (#53896) Currently when the extended type check fails due to an import reference that cannot be generated, the fatal diagnostic is not caught and not properly exposed as a `ts.Diagnostic` that can be gracefully handled. This is inconsistent to non-extended type checking diagnostics. This is problematic because Angular CLI applications currently fail in obscure ways because: - the CLI does not expect `getDiagnosticsForFile` to actually throw runtime errors. - the CLI does not seem to properly print these errors given the parallel workers and build excection, and those errors are especially hard to debug because there is no `stack` for `FatalDiagnosticError`'s. Example: `MyDir` is not exported and the type check block cannot reference it. PR Close #53896 | 16 January 2024, 17:36:36 UTC |
02b8e11 | Joey Perrott | 10 January 2024, 18:30:38 UTC | build(docs-infra): enable prerendering for adev (#53871) Enable the prerender option for adev's angular.json file. PR Close #53871 | 16 January 2024, 17:35:44 UTC |
a2087a1 | Angular Robot | 11 January 2024, 04:06:45 UTC | build: update cross-repo angular dependencies (#53606) See associated pull request for more information. PR Close #53606 | 12 January 2024, 18:27:01 UTC |
1af3ae3 | Sasidharan SD | 09 January 2024, 14:55:30 UTC | docs: remove repeated sentence (#53853) PR Close #53853 | 12 January 2024, 18:26:32 UTC |
af6f6e6 | Pawel Kozlowski | 11 January 2024, 16:12:57 UTC | refactor(core): improve forwardRef typings (#53880) This commit improves the forwardRef typings for better type safety and inference. PR Close #53880 | 12 January 2024, 18:26:01 UTC |
1f8c53c | Andrew Scott | 09 January 2024, 00:16:24 UTC | fix(core): TestBed should still use the microtask queue to schedule effects (#53843) Prior to this commit, `TestBed` would require tests call `flushEffects` or `fixture.detectChanges` in order to execute effects. In general, we want to discourage authoring tests like this because it makes the timing of change detection and effects differ from what happens in the application. Instead, developers should perform actions and `await` (or `flush`/`tick` when using `fakeAsync`) some `Promise` so that Angular can react to the changes in the same way that it does in the application. Note that this still _allows_ developers to flush effects synchronously with `flushEffects` and `detectChanges` but also enables the <action>, `await` pattern described above. PR Close #53843 | 11 January 2024, 20:05:57 UTC |
79fbc4e | Andrew Kushnir | 15 December 2023, 20:19:01 UTC | refactor(compiler-cli): add tests for defer blocks and local compilation (#53591) This commit adds tests to cover local compilation support for `@defer` blocks. PR Close #53591 | 10 January 2024, 23:28:59 UTC |
8ca0b05 | Andrew Kushnir | 15 December 2023, 20:11:07 UTC | refactor(compiler): update TemplateDefinitionBuilder to support local compilation (#53591) This commit updates the logic of the `TemplateDefinitionBuilder` to support local compilation and generate a single dependency function for all explicitly deferred deps within a component. PR Close #53591 | 10 January 2024, 23:28:58 UTC |
df685ed | Andrew Kushnir | 15 December 2023, 20:06:32 UTC | refactor(compiler-cli): add checks to prevent same deps in `imports` and `deferredImports` (#53591) This commit updates the typechecker logic to prevent same deps in `imports` and `deferredImports`. PR Close #53591 | 10 January 2024, 23:28:58 UTC |
a2aa23d | Andrew Kushnir | 15 December 2023, 20:03:01 UTC | refactor(compiler): add support for internal `deferredImports` field (#53591) This commit updates the logic to add support for internal `deferredImports` field in compiler. PR Close #53591 | 10 January 2024, 23:28:58 UTC |
b780d39 | Andrew Kushnir | 15 December 2023, 19:30:33 UTC | refactor(compiler-cli): update DeferredSymbolTracker to use explicit deps config (#53591) This commit updates the `DeferredSymbolTracker` class to take info account the `onlyExplicitDeferDependencyImports` flag. The `DeferredSymbolTracker` class also exposes a new API to register import declarations as explicitly deferred, which will be used in followup commits. PR Close #53591 | 10 January 2024, 23:28:58 UTC |
d28cf00 | Andrew Kushnir | 15 December 2023, 19:24:26 UTC | refactor(compiler-cli): add an internal config to enforce explicit deps in `@defer` for local compilation mode (#53591) This commit adds an internal config option to enforce explicit deps in `@defer` for local compilation mode. PR Close #53591 | 10 January 2024, 23:28:58 UTC |
6eb5e37 | Andrew Kushnir | 15 December 2023, 19:18:51 UTC | refactor(compiler): add an internal API to check is an element is inside a defer block (#53591) This commit updates the logic to expose an internal API on the `R3BoundTarget` to check if an element belongs to any defer block. PR Close #53591 | 10 January 2024, 23:28:58 UTC |
7d1d604 | Andrew Kushnir | 15 December 2023, 19:12:17 UTC | refactor(compiler-cli): store full Pipe metadata in typechecking code (#53591) This commit updates typechecker to store full Pipe metadata in internal data strctures, so that this information is available to more places in the code, which will be updated in a followup commit. PR Close #53591 | 10 January 2024, 23:28:58 UTC |
869ebc5 | Andrew Kushnir | 15 December 2023, 19:02:57 UTC | refactor(compiler-cli): extract various logic into separate functions (#53591) This commit updates a few places to extract the logic into a separate functions which will be reused in a few places in followup commits. PR Close #53591 | 10 January 2024, 23:28:58 UTC |
4af7e0c | Joey Perrott | 09 January 2024, 16:45:52 UTC | build: set up adev testing (#53854) Set up testing for the adev directory PR Close #53854 | 10 January 2024, 23:22:36 UTC |
9bbc415 | Andrew Scott | 10 January 2024, 22:29:11 UTC | docs: release notes for the v17.1.0-rc.0 release | 10 January 2024, 22:38:55 UTC |
debe484 | Andrew Scott | 10 January 2024, 22:29:05 UTC | release: bump the next branch to v17.2.0-next.0 | 10 January 2024, 22:38:55 UTC |
3877635 | Andrew Scott | 10 January 2024, 22:11:28 UTC | docs: release notes for the v17.0.9 release | 10 January 2024, 22:13:54 UTC |
863be4b | Paul Gschwendtner | 10 January 2024, 19:01:14 UTC | feat(core): expose new `input` API for signal-based inputs (#53872) Enables signal inputs for existing Zone based components. This is a next step we are taking to bring signal inputs earlier to the Angular community. The goal is to enable early access for the ecosystem to signal inputs, while we are continuing development of full signal components as outlined in the RFC. This will allow the ecosystem to start integrating signals more deeply, prepare for future migrations, and improves code quality and DX for existing components (especially for OnPush). Based on our work on full signal components, we've gathered more information and learned new things. We've improved the API by introducing a way to intuitively declare required inputs, as well as improved the API around initial values. We even support non-primitive initial values as the first argument to the `input` function now. ```ts @Directive({..}) export class MyDir { firstName = input<string>(); // string|undefined lastName = input.required<string>(); // string age = input(0); // number ``` PR Close #53872 | 10 January 2024, 20:33:31 UTC |
b2066d4 | Paul Gschwendtner | 10 January 2024, 17:35:41 UTC | refactor(compiler-cli): detect input functions without partial evaluation (#53872) This allows us to ensure signal inputs and a potential JIT transform remain single file compilation compatible. The consequences are that options need to be statically analyzable more strictly, compared to loosened restrictions with static interpretation where e.g. `alias` can be defined through a shared variable. PR Close #53872 | 10 January 2024, 20:33:31 UTC |
f6a32c0 | David LJ | 10 January 2024, 11:15:59 UTC | docs: fix & update apf links to pkg examples (#53866) PR Close #53866 | 10 January 2024, 18:43:54 UTC |
7862686 | Paul Gschwendtner | 08 January 2024, 17:16:07 UTC | test(core): add acceptance unit tests for signal inputs (#53808) Adds AOT and JIT unit tests for signal inputs that verify integration of signal inputs for our users. PR Close #53808 | 10 January 2024, 12:21:06 UTC |
74099a3 | Paul Gschwendtner | 08 January 2024, 15:40:41 UTC | test: add infrastructure to run signal acceptance tests with JIT and AOT (#53808) Adds infrastructure to run signal input tests with JIT (using the transform) and AOT. Acceptance tests for signal inputs will run with both variants. In the future we can consider expanding this infrastructure for all of our acceptance tests, but that's a different story. PR Close #53808 | 10 January 2024, 12:21:06 UTC |
39ea8b3 | Paul Gschwendtner | 08 January 2024, 15:39:20 UTC | refactor(compiler-cli): drop dependency on external modules for input recognition (#53808) Improves the recognition of the `input`/`input.required` functions to not depend on external module resolution. This is useful for local compilation and for transforms operating on a single file/ isolated module. PR Close #53808 | 10 January 2024, 12:21:06 UTC |
e934f3a | Paul Gschwendtner | 08 January 2024, 13:18:26 UTC | refactor(compiler-cli): add diagnostic for inputs declared on static members (#53808) Currently when someone declares a signal or non-signal input on a static class member, the compiler will not yield any diagnostic. We can detect these mistakes and report a diagnostic to help our users. PR Close #53808 | 10 January 2024, 12:21:06 UTC |
40b0467 | Paul Gschwendtner | 08 January 2024, 13:09:53 UTC | refactor(compiler-cli): diagnostics ensuring signal inputs are declared properly (#53808) This commit addds two diagnostics for two scenarios where signal inputs are declared incorrectly: - a signal input is also annotated with `@Input` in the TypeScript sources. - a signal input is also declared in the `inputs` option of `@Directive/`@Component`. PR Close #53808 | 10 January 2024, 12:21:05 UTC |