34540 Commits

Author SHA1 Message Date
Rahul Kamat 27b2a4af3a refactor(core): Update async-test.ts to use globalThis polyfill (#57505)
This updates async-test to use globalThis instead of what it was using.

PR Close #57505
2025-09-16 15:10:05 +00:00
Matthieu Riegler c80d9baf81 docs: update doc to clear up difference between toObservable/ outputToObservable (#63836)
TLDR: only `toObservable` emits synchronously on subscription.

fixes #57224

PR Close #63836
2025-09-16 15:00:54 +00:00
Matthieu Riegler 89e6636d18 docs: high level architecture mention in readme (#63828)
fixes #59293

PR Close #63828
2025-09-16 15:00:16 +00:00
Shuaib Hasan Akib 7eb5f9a999 docs: remove leading $ from script examples (#63795)
Copy-pasting commands like `$ pnpm lint` caused errors in shells (e.g. zsh). Updated docs to use `pnpm lint` directly so they run without modification.

PR Close #63795
2025-09-16 14:54:03 +00:00
Angular Robot 881fe73209 build: update dependency aspect_rules_js to v2.6.0 (#63822)
See associated pull request for more information.

PR Close #63822
2025-09-16 14:52:33 +00:00
arturovt 4a23f6e79d refactor(core): wrap checkNoChanges body in if (ngDevMode) for better tree-shaking (#63387)
The `checkNoChanges` method previously used an early-return guard:

  if (!ngDevMode) return;
  // dev-only code ...

In production builds, `ngDevMode` is replaced with `false`, so the
guard compiles to `return;`. However, bundlers like ESBuild
still keep the remaining statements after the return as unreachable
code instead of removing them. This leaves behind unnecessary dead
code in the output.

This commit updates the method to instead wrap the full body:

  if (ngDevMode) {
    // dev-only code ...
  }

With this change, the method collapses to an empty function in
production builds:

  checkNoChanges() {}

This ensures that the dev-only logic and its dependencies
(e.g. `checkNoChangesInternal`, `UseExhaustiveCheckNoChanges`) can be
fully tree-shaken, reducing bundle size.

PR Close #63387
2025-09-15 21:11:40 +00:00
SkyZeroZx 19462fc807 docs(benchpress): Remove TODOs in Statistic (#63534)
Remove TODOs in Statistic

PR Close #63534
2025-09-15 20:36:18 +00:00
hawkgs 636cd0d3ae fix(devtools): router tree legend overflow (#63813)
Set `overflow` to `hidden` so the router tree legend doesn't overflow its parent container.

PR Close #63813
2025-09-15 19:37:20 +00:00
Matthieu Riegler 5fd0082ccf refactor(compiler-cli): Add a diagnostic to detect forbiden invocations of required initializers (#63614)
The diagnostic will raise an error when required initializers (input, model, queries) are invoked the context of property initializers and contructors.

Docs will be provided in a follow-up

fixes #63602

PR Close #63614
2025-09-15 19:34:32 +00:00
Matthieu Riegler 7fb5a8087e fix(compiler): Add support for aria-invalid (#63748)
The `aria-invalid` attribute was supported but the `ariaInvalid` property was unknown by the schema.

fixes #63744

PR Close #63748
2025-09-15 18:41:17 +00:00
Uaena_Alex_John a2ea2ec615 docs: Update outputs.md to demonstrate how to use event data (#63732)
PR Close #63732
2025-09-15 17:09:19 +00:00
Jessica Janiuk cd36189ba7 ci: update pullapprove public-api rules (#63737)
This reduces the required reviews to 1 and requested reviewers to 2 to reduce friction.

PR Close #63737
2025-09-15 17:03:43 +00:00
Kristiyan Kostadinov 38c9921ff3 fix(compiler-cli): signal not invoked diagnostic not raised when input has same name in template (#63754)
The diagnostic that flags signals which haven't been invoked has some logic to skip over inputs, however it was looking at the used directives across the entire template, not the ones on the specific node.

Fixes #63739.

PR Close #63754
2025-09-15 15:50:45 +00:00
Walter Breakell e0b9ecbad4 docs: correct grammar in next steps intro paragraph (#63803)
PR Close #63803
2025-09-15 15:50:10 +00:00
Matthieu Riegler 233094e425 docs: fix detail about linkedSignal's previous value. (#63811)
fixes #63655

PR Close #63811
2025-09-15 15:46:23 +00:00
Damian Sire f4a1572861 docs: update Gemini model version in AI overview (#63800)
This change updates the Gemini model version from 2.0 Flash to 2.5 Flash on the AI overview page to align with the official Genkit documentation.

The source documentation at https://genkit.dev/docs/frameworks/angular/ has been updated, and this commit ensures our documentation reflects that change accurately.

PR Close #63800
2025-09-15 15:45:50 +00:00
SkyZeroZx b05552fc7a docs: add documentation for NG02802 warning about HttpTransferCache headers (#63802)
add documentation for NG02802 warning about HttpTransferCache headers

PR Close #63802
2025-09-15 15:38:24 +00:00
SkyZeroZx 653089d213 test(platform-server): add test for transfer state data in nested defer blocks (#63801)
Add test for transfer state data in nested defer blocks

PR Close #63801
2025-09-15 15:35:00 +00:00
Damian Sire 134c31bd1b docs: clarify usage of docs-infra scope in commit messages (#63799)
The contribution guide is updated to provide clearer instructions on when to use the `docs-infra` scope versus the `docs` type.

This change helps contributors understand that `docs-infra` should only be used for infrastructure-related changes (application code, tooling, configuration) within the `/adev` directory. For simple content modifications, such as editing a `.md` file, `docs` without a scope is the correct choice.

PR Close #63799
2025-09-15 15:33:15 +00:00
Angular Robot 03bf4df6e0 build: lock file maintenance (#63807)
See associated pull request for more information.

PR Close #63807
2025-09-15 15:30:33 +00:00
Oleg Ivanitski 13e4255f9e fix(docs-infra): fix guide content width (#63798)
This commit fixes the width of the content section, specifically the
reactive forms and template-driven forms section

Closes #63798

PR Close #63798
2025-09-15 15:25:41 +00:00
Shuaib Hasan Akib 6178d36a7d docs(docs-infra): add missing type="button" for accessibility and to remove dev tools warning (#63784)
PR Close #63784
2025-09-15 15:25:09 +00:00
Damian Sire c536035cbc docs: correct typos in AI design patterns guide (#63788)
PR Close #63788
2025-09-15 15:03:00 +00:00
Shuaib Hasan Akib 6a616f81f3 docs(docs-infra): code style improvement and component update (#63557)
- Improved code style consistency in docs-infra
- Updated app.component.ts for enhancements

Co-authored-by: Matthieu Riegler <kyro38@gmail.com>

PR Close #63557
2025-09-15 15:02:24 +00:00
Angular Robot d1919262f3 build: update pnpm to v10.16.1 (#63794)
See associated pull request for more information.

PR Close #63794
2025-09-15 14:43:32 +00:00
Angular Robot c8cde0f153 build: update cross-repo angular dependencies (#63786)
See associated pull request for more information.

PR Close #63786
2025-09-15 14:41:23 +00:00
Joey Perrott 2ebdd57eae build: update branches and versioning information (#63772)
Update the branches and versioning guide to include information about the `target: feature` and `target: automation` labels.

PR Close #63772
2025-09-12 21:45:49 +00:00
Jessica Janiuk c8d3439814 refactor(core): Reorganize and cleanup animations code (#63775)
This is a pure re-organization of the animations code. No functionality changes, but it should be easier to navigate now. Utility classes have been moved to a `utils.ts` file. The related functions in the instructions have been grouped closer together.

PR Close #63775
2025-09-12 21:41:52 +00:00
Angular Robot 9def49211a build: update pnpm to v10.16.0 (#63770)
See associated pull request for more information.

PR Close #63770
2025-09-12 17:45:15 +00:00
Angular Robot 15b6e1a8ab build: update cross-repo angular dependencies (#63768)
See associated pull request for more information.

PR Close #63768
2025-09-12 17:22:04 +00:00
martincampagnoli 8449001f8c docs: update signal-queries.md (#63726)
PR Close #63726
2025-09-12 16:48:54 +00:00
Angular Robot f2051e7f72 build: update cross-repo angular dependencies (#63765)
See associated pull request for more information.

PR Close #63765
2025-09-12 16:47:25 +00:00
Alan Agius fc850a5db5 ci: add automation label to update cdk apis and cli help workflow (#63753)
Adds the 'target: automation' label to the 'update-cdk-apis' and 'update-cli-help' jobs in the 'update-cdk-apis-and-cli-help.yml' workflow. This will help to better track and manage automation tasks.

PR Close #63753
2025-09-12 16:45:23 +00:00
Matthieu Riegler 9de50b1e7d docs(docs-infra): move the navigation related files (#63729)
* separate directory
* dedicated file for redirections

PR Close #63729
2025-09-12 16:05:04 +00:00
Shuaib Hasan Akib 895f0fb814 docs: update Creating service with CLI (#63714)
Update adev/src/content/guide/di/creating-injectable-service.md

Co-authored-by: Matthieu Riegler <kyro38@gmail.com>

PR Close #63714
2025-09-12 15:51:18 +00:00
Jessica Janiuk 3ec8a5c753 fix(core): Prevent leave animations on a move operation (#63745)
When a user has `animate.leave` on a list of items in a `@for`, but are only showing a subset using a computed, removing the second to last item results in a move operation on the last item. There's no native atomic move API in the browser. So this results in the element being detached and attached at its new index. The detaching of the node resulted in leave animations firing.
This fix addresses this by adding a flag in the `LView[ANIMATIONS]` `AnimationLViewData` interface to allow for skipping animations. During list reconciliation, we set this flag so that the animations are skipped over. The flag is flipped back after the move operation is complete.

There is one complication that results from this. The index adjustment of elements in the list happens synchronously while the leave animation is asynchronous. This results in the leaving item getting shifted to the end of the list. This is not ideal but likely can be addressed in a future refactor.

fixes: #63544

PR Close #63745
2025-09-12 15:21:25 +00:00
Angular Robot 4ee399388e build: update cross-repo angular dependencies (#63751)
See associated pull request for more information.

PR Close #63751
2025-09-12 15:07:34 +00:00
Shuaib Hasan Akib 8e84429203 docs(docs-infra): replace deprecated big tag (#63738)
Update adev/src/content/introduction/what-is-angular.md

Co-authored-by: Joey Perrott <josephperrott@gmail.com>

PR Close #63738
2025-09-12 15:04:57 +00:00
Jens Kuehlers 185ac24ab6 docs: fix links and remove second banner (#63755)
PR Close #63755
2025-09-12 09:51:16 +02:00
Angular Robot e5de4109e6 build: update cross-repo angular dependencies to v20.2.3 (#63741)
See associated pull request for more information.

PR Close #63741
2025-09-11 21:36:02 +00:00
Joey Perrott 00b87a7c26 build: automatically select a random available port when running adev locally (#63740)
Previously we relied on the default port of 4200, but if it was already in use then we would run into issues where the cli provided a prompt which we were unable to respond to. Instead we now request port 0 which will automatically find an available port.

PR Close #63740
2025-09-11 21:17:59 +00:00
SkyZeroZx 50b3e9f4c4 docs: Adds guide for extending Angular service worker (#63629)
Documents how to create custom service worker scripts to handle push notifications, background sync, and other events by importing and extending Angular's default behavior

PR Close #63629
2025-09-11 17:40:48 +00:00
Jens Kuehlers b62cadbe5d docs: add banner for Angular AI developer event (#63734)
PR Close #63734
2025-09-11 16:50:31 +00:00
Angular Robot a686e34da1 docs: update Angular CLI help (#63736)
Updated Angular CLI help contents.

PR Close #63736
2025-09-11 16:44:54 +00:00
Angular Robot 4c3fda7dc3 docs: update Angular CDK apis (#63735)
Updated Angular CDK api files.

PR Close #63735
2025-09-11 16:44:21 +00:00
Angular Robot b7bc11098d build: update cross-repo angular dependencies (#63722)
See associated pull request for more information.

PR Close #63722
2025-09-11 16:32:28 +00:00
Alan Agius 58ddd8bff6 ci: fallback to last known branch when branch does not exist downstream (#63733)
When a new branch is created for a feature, it may not exist in the downstream repo. For example, during an exceptional minor release. In such scenarios, we fallback to the last known branch. This was previously handled in a catch block, but this change makes the fallback more explicit.

PR Close #63733
2025-09-11 16:31:58 +00:00
Rocky Meza 219462fe0f refactor(core): Split consumerBefore/AfterComputation (#62549)
This makes it possible to batch effects, where we can "reopen" consumers
during initial render and then finalize them after we are finally done
adding all the effects to a batch:

```
function createBatch() {
  const effect = // ... create effect node
  resetConsumerBeforeComputation(effect);
  return effect;
}

// pseudo-code
function appendEffect(effectBatch, updater) {
  if (value is a signal) {
    const prevConsumer = setActiveConsumer(effectBatch.node);
    const output = value();
    setActiveConsumer(prevConsumer);
    effectBatch.push({ signal, updater });
    return output;
  }
}

function finalizeBatch(effectBatch) {
  if (effectBatch.length > 0) {
    finalizeConsumerAfterComputation(effectBatch.node);
  }
}

const effectBatch = createBatchEffectNode();
appendEffect(signal1, (newValue) => /* something */);
appendEffect(signal2, (newValue) => /* something different */);
finalizeBatch(effectBatch);
```

PR Close #62549
2025-09-11 15:47:34 +00:00
Alan Agius c36cd73b78 ci: correctly set branchName for the CDK (#63718)
This was incorrect which is causing the Github Action to fail

PR Close #63718
2025-09-11 15:40:28 +00:00
Alan Agius 32ff9eb566 build: mark pnpapi as external for esbuild (#63723)
In the `deploy-docs-site` GitHub action, esbuild fails to resolve `pnpapi` during the bundling process. This is because `pnpapi` is a dependency that is available in the Node.js environment at runtime and should not be bundled.

This commit marks `pnpapi` as an external dependency for esbuild to prevent it from being bundled and resolve the build failure.

```
✘ [ERROR] Could not resolve "pnpapi" [plugin bazel-sandbox]
```

See: https://github.com/angular/angular/pull/63722#issuecomment-3278922553

PR Close #63723
2025-09-11 15:36:34 +00:00