33397 Commits

Author SHA1 Message Date
Matthieu Riegler ceb1bc0741 docs: update control flow migration command (#61750)
PR Close #61750
2025-05-29 18:15:56 -04:00
Vlad Boisa 435ab6df87 docs: fix broked link Routing guide (#61749)
Fix typo in link for correct display of the link
PR Close #61749
2025-05-29 18:14:14 -04:00
hawkgs 8bd1a3aab4 docs(docs-infra): fix update guide version dropdown on Firefox (#61744)
Fixes #58776

PR Close #61744
2025-05-29 18:12:41 -04:00
Matthieu Riegler 1802d36cb1 docs: remove ngIf/ngFor/ngSwitch from the directive overview (#61708)
PR Close #61708
2025-05-29 17:57:52 -04:00
Matthieu Riegler 5ae61cc24f docs: remove unnecessary mention of ngIf/ngFor from llms-full (#61694)
PR Close #61694
2025-05-29 17:56:50 -04:00
Matthieu Riegler 3fbb72b863 docs: remove the constructor DI from the learn angular tutorial (#61693)
PR Close #61693
2025-05-29 17:55:03 -04:00
Matthieu Riegler 9df5f508ca docs: update API examples to modern angular (#61688)
PR Close #61688
2025-05-29 17:53:29 -04:00
Matthieu Riegler f27b86ac06 docs: replace @Input/@Output in docs (#61686)
This commit also remove some unused examples

PR Close #61686
2025-05-29 17:51:31 -04:00
Matthieu Riegler 17b31d1d5b docs: update learn-angular tutorial to use input/output (#61607)
This replaces the example that were using the decorators.

PR Close #61607
2025-05-29 17:50:30 -04:00
mgechev a20a9d7a44 docs: update the roadmap to reflect v20 progress (#61406)
PR Close #61406
2025-05-29 17:44:49 -04:00
Matthieu Riegler f7d33ee479 docs: setup redirect for zoneless (#61737)
PR Close #61737
2025-05-28 17:44:46 -07:00
Andrew Scott a0d599e14d docs: link to v20 blog post in changelog (#61734)
PR Close #61734
2025-05-28 12:28:15 -07:00
Andrew Scott aed8a77348 docs: update versions.json with v20 (#61732)
This updates the versions.json to make v20 consistent with other versions

PR Close #61732
2025-05-28 11:11:24 -07:00
Andrew Scott 10352401bc release: bump version of in memory web api (#61731)
PR Close #61731
2025-05-28 10:53:18 -07:00
Andrew Scott bf7816e292 build: bump peer deps for angular-in-memory-web-api (#61730)
bumps peer deps to v20 for in memory web api
2025-05-28 10:35:38 -07:00
Jens Kuehlers 2c8de90a5f docs: update version picker for v20 (#61727)
PR Close #61727
2025-05-28 10:28:19 -07:00
Devin Chasanoff 23a855bb8e docs: add v20 dev event banner (#61723)
PR Close #61723
2025-05-28 10:27:36 -07:00
Andrew Scott 55306bd432 docs: update tutorials and playground to v20 (#61728)
update boilerplates to use v20 final

PR Close #61728
2025-05-28 10:03:56 -07:00
Andrew Scott 40e2b5b4d1 release: cut the v20.0.0 release 20.0.0 2025-05-28 06:52:44 -07:00
Andrew Scott 0502cf26c5 release: cut the v20.0.0-rc.3 release 20.0.0-rc.3 2025-05-27 15:59:11 -07:00
Matthieu Riegler 925a41c285 Revert "fix(core): call DestroyRef on destroy callback if view is destroyed (#58008)" (#61625)
This reverts commit 5f7f04634f.

PR Close #61625
2025-05-27 15:21:21 -07:00
Matthieu Riegler 87659baa01 docs(docs-infra): limit file interactions on tutorials. (#61696)
The restricted mode on the code editor prevents renaming, deleting or adding files.

PR Close #61696
2025-05-27 11:33:11 -07:00
Angular Robot cc5a393a27 build: lock file maintenance (#61681)
See associated pull request for more information.

PR Close #61681
2025-05-26 11:56:37 +00:00
arturovt 833c69b618 refactor(platform-browser): replace isPlatformServer with ngServerMode (#59496)
In this commit, we switch from using the `isPlatformServer` runtime call to the `ngServerMode`.

Note: constructors haven't been touched in order to prevent any breaking changes for the public API.

PR Close #59496
2025-05-26 11:14:28 +00:00
Angular Robot 360660db17 build: update all non-major dependencies (#61667)
See associated pull request for more information.

PR Close #61667
2025-05-26 11:13:25 +00:00
Joey Perrott 3731cce85d build: migrate examples to use rules_js (#61650)
Migrate examples to use ng_project and ts_project for building

PR Close #61650
2025-05-26 11:01:00 +00:00
Angular Robot 2f1f6eeb57 build: update cross-repo angular dependencies (#61680)
See associated pull request for more information.

PR Close #61680
2025-05-26 10:27:08 +00:00
Kristiyan Kostadinov eceacbc18b fix(migrations): preserve comments when removing unused imports (#61674)
Updates the unused imports schematic to preserve comments inside the array. THis is necessary for some internal use cases.

PR Close #61674
2025-05-26 10:26:22 +00:00
Matthieu Riegler 6ca7590666 fix(compiler): lexer support for template literals in object literals (#61601)
This commit fixes a shortcoming of the lexer with template literals

fixes #61572

PR Close #61601
2025-05-26 10:24:19 +00:00
Joey Perrott 308404eca7 build: update common's locales to use rules_js (#61629)
Use ts_project to build the common locales

PR Close #61629
2025-05-26 10:18:15 +00:00
Joey Perrott d366a9811d build: update tools directory to use rules_js for building (#61657)
Use ts_project for building the tools directory targets

PR Close #61657
2025-05-26 09:58:03 +00:00
Kristiyan Kostadinov 117e570ded refactor(core): replace propertyInterpolateX with property (#61639)
Replaces the `propertyInterpolateX` instructions with calls to `property` and the `interpolate` helper. This allows us to drop the dedicated interpolation instructions and simplify the runtime for future work.

PR Close #61639
2025-05-26 09:21:24 +00:00
Kristiyan Kostadinov d1ed9ac41b refactor(core): simplify single interpolations (#61639)
Updates the `ɵɵinterpolate` instruction so it doesn't call into `interpolation1` under the hood since it requires a prefix/suffix and we know there isn't one.

PR Close #61639
2025-05-26 09:21:24 +00:00
Kristiyan Kostadinov 6409e58160 refactor(core): replace classMapInterpolateX with classMap (#61639)
Replaces the `classMapInterpolateX` instructions with `classMap` plus a call to `interpolate` in order to simplify the runtime. The only difference between `classMapInterpolateX` and `classMap` was that the former passes `keyValueArraySet` into `checkStylingMap` while the latter passes `classKeyValueArraySet`. This doesn't appear to matter, because the interpolation instructions always have a string value which means that the function is never called.

PR Close #61639
2025-05-26 09:21:24 +00:00
Kristiyan Kostadinov e64141f038 refactor(core): replace styleMapInterpolateX with styleMap (#61639)
Replaces the `styleMapInterpolateX` instructions with the existing `styleMap` and a passed-in interpolated value in order to simplify the runtime.

PR Close #61639
2025-05-26 09:21:24 +00:00
Kristiyan Kostadinov 6b60a88766 refactor(core): replace stylePropInterpolateX with styleProp (#61639)
Replaces all of the `stylePropInterpolateX` instructions with the existing `styleProp` with an interpolated value.

PR Close #61639
2025-05-26 09:21:24 +00:00
Jonathan Meier 556413d440 refactor(compiler-cli): remove hardcoded config for unused standalone imports rule enablement (#61622)
The hardcoded config was introduced because suppressing the diagnostic
via `extendedDiagnostics` in the TS config was unreliable in google3.
This has since been fixed and the workaround is no longer needed.

PR Close #61622
2025-05-26 09:20:28 +00:00
Alan Agius f6ee2811cb ci: remove sync angular-robot forked repository workflow (#61675)
Renovate now supports syncing of non-default base branches, making this workflow obsolete.

PR Close #61675
2025-05-26 09:18:33 +00:00
Angular Robot 6498629752 build: update dependency google-closure-compiler to v20250520 (#61673)
See associated pull request for more information.

PR Close #61673
2025-05-26 09:14:22 +00:00
Alan Agius f355fbc446 build: disable esbuild metadata file generation (#61636)
Disables creation of the esbuild meta.json file, which is not utilized in the build process. This streamlines the output and avoids generating unused artifacts.

PR Close #61636
2025-05-26 08:57:44 +00:00
Alan Agius 49bac6bb66 build: exclude esbuild metadata files from distributable packages (#61636)
Prevents esbuild generated metadata files from being included in build artifacts. This reduces package size and avoids shipping unnecessary internal build data.

PR Close #61636
2025-05-26 08:57:44 +00:00
Joey Perrott 9eefc5dcd4 build: migrate localize package to use rules_js (#61613)
Use ts_project to build localize package

PR Close #61613
2025-05-26 08:53:55 +00:00
Alan Agius e25e6c95a2 fix(compiler): remove TypeScript from linker (#61635)
This commit removes the direct dependency on TypeScript within the linker, addressing a performance overhead that was adding between 500ms to 1s to compilation times for applications.

The primary cause of this overhead was the linker's direct reliance on TypeScript's which was caused by importing from barrel files. While convenient, barrel files are detrimental to code splitting and code motion. They force the bundling of all exported modules, even if only a subset is actually used.

By removing the usage of this barrel file and restructuring the imports to be more granular, we can avoid unnecessary TypeScript imports.
 Furthermore, TypeScript has now been changed to an optional peer dependency as using only the linker does not require TypeScript.

(cherry picked from commit 7cf2425fb5)

PR Close #61635
2025-05-26 08:48:24 +00:00
Rafal Slawik 2e5362a469 feat(common): accept undefined inputs in NgTemplateOutlet (#61404)
Extend types of inputs to include `undefined` to avoid `?? null` when using singals (e.g. `viewChild`).

Fixes #51225

PR Close #61404
2025-05-25 14:26:44 -07:00
Charles Lyding f1568efcbe docs: add initial experimental vitest testing guide (#61483)
An initial guide to use the experimental unit testing system with the
vitest runner has been added. This includes setup instructions for switching
from the karma/jasmine based system.
Additional content for configuration and potential migration of existing
projects may be added in future changes.

PR Close #61483
2025-05-23 15:39:38 -07:00
Joey Perrott 968bbe9609 build: migrate platform-browser and platform-browser-dynamic package to use rules_js (#61623)
Use ts_project and ng_project to build platform-browser and platform-browser-dynamic package

PR Close #61623
2025-05-23 15:14:02 -07:00
Andrew Scott aa7190d972 fix(common): avoid injecting ApplicationRef in FetchBackend (#61649)
fixes a circular dependency caused by injecting applicationRef

fixes #61644

PR Close #61649
2025-05-23 10:04:13 -07:00
Jessica Janiuk 5bdd29121b Revert "fix(core): Testing should not throw when Zone does not patch test FW APIs (#61628)" (#61637)
This reverts commit 3d4ddd2247.

PR Close #61637
2025-05-23 07:38:18 +00:00
Andrew Scott f400e9c156 release: cut the zone.js-0.15.1 release (#61632)
PR Close #61632
2025-05-22 14:53:20 -07:00
Andrew Scott eb4abc2ddb refactor(zone.js): Add a withProxyZone helper that might be used for unpatched test frameworks (#61626)
As an alternative to monkey patching vitest, this change adds a method that could be used
for manually running functions inside a shared proxy zone. If used inocrrectly,
this would mean that
the `fakeAsync` closure may not capture all timers and microtasks if it
invokes things created in a zone that was already forked (e.g. creating
a component in a beforeEach:
https://github.com/angular/angular/blob/2699dd65558d70fadeac1e9b420841f3dfc3a059/packages/zone.js/lib/jasmine/jasmine.ts#L363-L371)

PR Close #61626
2025-05-22 13:39:32 -07:00