Commit graph

33337 commits

Author SHA1 Message Date
Andrew Scott
9b514b7501 docs: link to v20 blog post in changelog (#61734)
PR Close #61734
2025-05-28 12:28:14 -07:00
Andrew Scott
2a290ab30e 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:23 -07:00
Andrew Scott
449c540015 release: bump version of in memory web api (#61731)
PR Close #61731
2025-05-28 10:53:17 -07:00
Andrew Scott
d5ac3805f8 build: bump peer deps for angular-in-memory-web-api (#61729)
bumps peer deps to v20 for in memory web api

PR Close #61729
2025-05-28 10:29:44 -07:00
Jens Kuehlers
4e97ed96cd docs: update version picker for v20 (#61727)
PR Close #61727
2025-05-28 10:28:18 -07:00
Devin Chasanoff
7ea1750420 docs: add v20 dev event banner (#61723)
PR Close #61723
2025-05-28 10:27:36 -07:00
Andrew Scott
8cf7e2302f docs: update tutorials and playground to v20 (#61726)
update boilerplates to use v20 final

PR Close #61726
2025-05-28 09:41:42 -07:00
Andrew Scott
62be7fa7c5
docs: cherrypick v20 release notes to main (#61724)
cherrypick v20 release notes to changelog in main branch
2025-05-28 07:16:44 -07:00
Andrew Scott
1fd59c0298 docs: release notes for the v19.2.14 release 2025-05-28 06:39:06 -07:00
Andrew Scott
d19669ca7b docs: release notes for the v20.0.0-rc.3 release 2025-05-27 16:01:37 -07:00
Matthieu Riegler
fe03aa09ad 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:20 -07:00
Matthieu Riegler
c77e198f5d 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:10 -07:00
Kristiyan Kostadinov
c11527fc68 refactor(compiler): remove unused code (#61668)
Removes the following unused code from the compiler:
* The ICU expander appears to be some really old code converting ICUs into legacy-style control flow directives. It's annoying to keep this one since we need to update it any time the AST changes.
* The `PipeCollector` class wasn't used anywhere.
* The `partitionArray` function wasn't used anywhere.
* The `newArray` function was used only in one test and it can be easily replaced with `new Array().fill`.

PR Close #61668
2025-05-26 12:21:09 +00:00
Angular Robot
ca26b23007 build: lock file maintenance (#61679)
See associated pull request for more information.

PR Close #61679
2025-05-26 11:55:36 +00:00
arturovt
9a9511ace8 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:27 +00:00
Angular Robot
99bcd34b7f build: update all non-major dependencies (#61666)
See associated pull request for more information.

PR Close #61666
2025-05-26 11:12:51 +00:00
Joey Perrott
47660b7684 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:00:59 +00:00
Kristiyan Kostadinov
04656d0b6e 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:20 +00:00
Matthieu Riegler
3e102f0b84 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:16 +00:00
Angular Robot
3e70d64b20 build: update cross-repo angular dependencies (#61587)
See associated pull request for more information.

PR Close #61587
2025-05-26 10:23:42 +00:00
Joey Perrott
26f126a049 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:14 +00:00
Kristiyan Kostadinov
289ae50c56 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:23 +00:00
Kristiyan Kostadinov
b0425ead3f 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:23 +00:00
Kristiyan Kostadinov
e412fda709 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:23 +00:00
Kristiyan Kostadinov
73c81391d6 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:23 +00:00
Kristiyan Kostadinov
2aaea80bfe 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:23 +00:00
Jonathan Meier
f3dfad38b4 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:25 +00:00
Alan Agius
32179fb962 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:30 +00:00
Angular Robot
ecd7069674 build: update dependency node to v22.16.0 (#61602)
See associated pull request for more information.

PR Close #61602
2025-05-26 09:15:19 +00:00
Angular Robot
b6a63014a7 build: update dependency google-closure-compiler to v20250520 (#61672)
See associated pull request for more information.

PR Close #61672
2025-05-26 09:12:33 +00:00
Joey Perrott
22381bfd2d build: update tools directory to use rules_js for building (#61656)
Use ts_project for building the tools directory targets

PR Close #61656
2025-05-26 09:01:13 +00:00
Alan Agius
9832e72fc3 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:41 +00:00
Alan Agius
67a0576598 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:41 +00:00
Joey Perrott
b478a43804 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
e9fcbb8af1 fix(compiler): remove TypeScript from linker (#61618)
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.

PR Close #61618
2025-05-26 08:46:00 +00:00
Rafal Slawik
82327f2092 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:42 -07:00
Charles Lyding
d3e9ca1162 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:37 -07:00
Joey Perrott
4c72ce408e 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:00 -07:00
Andrew Scott
b03ac99072 docs: release notes for the v19.2.13 release 2025-05-23 10:24:31 -07:00
Andrew Scott
abcb865474 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:08 -07:00
Andrew Scott
4356e85456 fix(core): fakeAsync should not depend on module import order (#61375)
`fakeAsync` does not work if the zone-testing polyfill is included after
@angular/core/testing is loaded. This allows fakeAsync to work
even if the zone-testing is included later.

PR Close #61375
2025-05-23 09:45:41 -07:00
Andrew Scott
e33444e236 release: cut the zone.js-0.15.1 release (#61632)
PR Close #61632
2025-05-22 14:53:15 -07:00
Andrew Scott
1ea39e050c 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:
2699dd6555/packages/zone.js/lib/jasmine/jasmine.ts (L363-L371))

PR Close #61626
2025-05-22 13:39:30 -07:00
Jonathan Meier
768e71511e refactor(compiler-cli): remove unused transform methods from DtsTransform (#61610)
All usages of the `DtsTransform` interface leave these two methods
`undefined`, so we can remove them, as well as all code invoking them.

PR Close #61610
2025-05-22 13:25:20 -07:00
Alan Agius
6899b27762 build: update all esbuild target to node20 (#61606)
This is the min supported node.js version

PR Close #61606
2025-05-22 13:02:03 -07:00
michael-small
38c2edc3b0 docs: remove dev preview banner from RXJS interop (#61598)
Disclaimer: I made this PR directly from the MD editor in GH since I can't run the docs locally at the moment.
PR Close #61598
2025-05-22 13:00:23 -07:00
Milo
396b5433b9 feat(devtools): update get signal graph (#61541)
add a function that we can inspect to jump to the source of a signal, and give every signal a unique id
that devtools can use to match signals across calls to getSignalGraph

PR Close #61541
2025-05-22 12:14:53 -07:00
Alan Agius
229cdde4d0 fix(core): mark zone.js as an optional peer dependency (#61616)
`zone.js` is no longer mandatory.

PR Close #61616
2025-05-22 12:14:06 -07:00
Matthieu Riegler
2db5070074 docs: remove top level heading which (#61593)
It interferes with `docs-decorative-header`

PR Close #61593
2025-05-22 12:12:32 -07:00
Joey Perrott
687e01865f build: migrate platform-server to rules_js (#61589)
Migrate platform-server to use ts_project and ng_project.

PR Close #61589
2025-05-22 11:35:55 -07:00