Commit Graph

33654 Commits

Author SHA1 Message Date
Jessica Janiuk f1d7ac9f1a release: cut the v20.1.0-next.3 release 20.1.0-next.3 2025-06-25 18:54:13 +02:00
Jessica Janiuk b23a912abc docs: release notes for the v20.0.5 release 2025-06-25 18:47:30 +02:00
iteriani ba755830be refactor(core): Add injection primitives for shared services. (#62087)
This way, an arbitrary service can implement Angular's service requirements without a hard dependency on @angular/core

ex:

class Foo {
   bar = inject(Bar);
}

registerInjectable(Foo);

PR Close #62087
2025-06-25 14:57:57 +00:00
Matthieu Riegler 36a193139a fix(core): allow to set a resource in an error state (#62253)
A resource is error state should still remain writable.

fixes #62241

PR Close #62253
2025-06-25 13:20:42 +00:00
Angular Robot 2a1a034a11 build: update cross-repo angular dependencies (#62262)
See associated pull request for more information.

PR Close #62262
2025-06-25 13:18:55 +00:00
Jessica Janiuk 1bf1fb2ad7 ci: Update pullapprove ownership for compiler and zonejs (#62261)
This updates the zone.js owners and adds thePunderWoman to compiler approvers.

PR Close #62261
2025-06-25 12:46:40 +00:00
Matthieu Riegler 4f0126e76a docs: fix deprecation message on ngIf/ngSwitch (#62149)
fixes #62147

PR Close #62149
2025-06-25 11:22:15 +00:00
arturovt f1b8ac6150 refactor(common): move ngServerMode check outside tap() to enable tree-shaking (#62238)
In this commit, the `ngServerMode` check is moved outside the RxJS `pipe()` to ensure that server-only logic is excluded from client bundles. Previously, the `tap()` operator and its closure were always included in the output, even though `ngServerMode` was false on the client and the side effect was never triggered.

By guarding the observable chain earlier, this reduces the RxJS stack frame depth, which simplifies debugging by avoiding unnecessary operator noise in client-side stack traces.

The resulting logic is also easier to reason about and avoids evaluating `HttpResponse` instances where not needed.

PR Close #62238
2025-06-25 11:13:21 +00:00
Jannik Lassahn b489f9fa8f refactor(language-service): add methods for decoding classifications to public api (#62251)
Add methods for decoding classifications to public api for use in the
language server

PR Close #62251
2025-06-25 09:46:53 +00:00
SkyZeroZx 9791ab1b6f feat(http): Add support for fetch request cache and priority options (#61766)
Enhances Angular HttpClient requests with Fetch API cache and priority options to optimize loading and performance.

PR Close #61766
2025-06-25 09:46:21 +00:00
SkyZeroZx 73269cf5ce feat(http): add keepalive support for fetch requests in httpResource (#61833)
This commit adds support for the Fetch API's keepalive option when using httpResource with the withFetch provider

PR Close #61833
2025-06-25 09:14:26 +00:00
Matthieu Riegler 5ac5c51c1c docs: add llms context files entries (#62224)
This commit adds copilot, vscode & windsuft

PR Close #62224
2025-06-25 09:13:53 +00:00
Angular Robot 0d59bc5e38 build: update dependency node to v22.17.0 (#62256)
See associated pull request for more information.

PR Close #62256
2025-06-25 09:12:25 +00:00
Jannik Lassahn 20c1f991e6 feat(language-service): add semantic tokens for templates (#60260)
Adds support for `getEncodedSemanticClassifications` to the language service.
The service now classifies components in a template as the `class` type.

PR Close #60260
2025-06-24 16:27:46 +00:00
hawkgs 54f3571a35 fix(devtools): injector tree vis node snap/focus, vertical orientation and links (#62048)
1. Fix node coordinates origin – now X and Y represent the exact center of the node
2. Improve links – they now start and end precisely at the nodes' edges
3. Fix node click to zoom/focus/snap (thanks to 1.)
4. Fix vertical orientation links

PR Close #62048
2025-06-24 16:27:07 +00:00
Angular Robot cb97cf86d2 build: update cross-repo angular dependencies (#62247)
See associated pull request for more information.

PR Close #62247
2025-06-24 16:25:37 +00:00
Jessica Janiuk 08276b5655 Revert "test(devtools): revive cypress tests (#61972)" (#62243)
This reverts commit 75d246e03c.

PR Close #62243
2025-06-24 15:03:46 +00:00
AleksanderBodurri 75d246e03c test(devtools): revive cypress tests (#61972)
Previously these tests would run automatically when Angular DevTools lived in another repo. These files have continued to live here but have not been running automatically on each PR.

Now, these test files have been revived to run properly with our changes since the repo merge. This is a first step to reviving our e2e testing.

Next steps include writing cypress tests for new features like Injector Graph, Router tree, signals visualizations, etc.

PR Close #61972
2025-06-24 14:22:21 +00:00
arturovt c4dd258658 fix(core): avoid injecting ErrorHandler from a destroyed injector (#61886)
This commit prevents lazy injection of the internal `ErrorHandler` from a destroyed injector, as it would result in another "destroyed injector" error.

PR Close #61886
2025-06-24 14:13:34 +00:00
Gerome Grignon d3b069334f docs(core): migrate @Input examples to Signal inputs (#62070)
PR Close #62070
2025-06-24 14:11:55 +00:00
Andrew Scott 737b35b684 feat(core): Add destroyed property to EnvironmentInjector (#61951)
Similar to `DestroyRef`, this adds the `destroyed` property to
`EnvironmentInjector`. It also has the ability to register callbacks with
`onDestroy`, which throws if `destroyed` is already `true`.

This also omits the bit about whether those callbacks have executed
since I realized the property is set to `true` before executing the
callbacks.

PR Close #61951
2025-06-24 14:09:10 +00:00
hawkgs bd4e089018 refactor(devtools): use Material Symbols without fill (#62028)
Substitute the local `woff2` file with a `FILL 0` version of Material Symbols.

PR Close #62028
2025-06-24 14:07:00 +00:00
hawkgs 1b97c60835 build(devtools): fix ng-devtools source maps (#62042)
Inline the sources contents in the `js.map` files. This fixes the source maps for the dev app.

PR Close #62042
2025-06-24 14:06:25 +00:00
guimasi1 ea71a1e8cd docs: remove incorrectly listed operators in "Supported operators" table (Expression Syntax Guide) (#62092)
PR Close #62092
2025-06-24 14:04:44 +00:00
hawkgs 29223931da fix(devtools): zone.js not being loaded for dev and prod builds (#62239)
Fixes a regression from #62083 by updating the remaining script imports.

PR Close #62239
2025-06-24 14:04:04 +00:00
arturovt 7600bec71d fix(router): handle scrollRestoration error in restricted environments (#62186)
In this commit, setting `window.history.scrollRestoration` is wrapped in a try-catch block to prevent `SecurityError` exceptions in restricted contexts such as:

- sandboxed iframes
- partially navigated or inactive windows
- test runners, extensions, or content previews

If an error occurs, a runtime warning with error code [2400] is logged to the console. This avoids breaking app initialization and improves cross-browser safety.

Unfortunately, it's not possible to perform any end-to-end testing of this fix.

PR Close #62186
2025-06-24 12:24:43 +00:00
arturovt 21dfbf3ada refactor(core): drop injection context assertion in production (#62038)
Drops `assertInInjectionContext` call in production in `afterNextRender`.

PR Close #62038
2025-06-24 12:24:09 +00:00
Alan Agius 8d049f533a build: update jest monorepo to v30 (#62234)
See associated pull request for more information.

Closes #61980 as a pr takeover

PR Close #62234
2025-06-24 10:49:30 +00:00
hawkgs e3e9e37c42 refactor(devtools): improve profiler visualizations (#62215)
Improve the profiler's visualization modes visually.

PR Close #62215
2025-06-24 10:48:44 +00:00
hawkgs 505da620ff refactor(devtools): refine and improve the new profiler layout (#62215)
Improve the styles and the components' layout in general.

PR Close #62215
2025-06-24 10:48:44 +00:00
hawkgs 2788544c6a refactor(devtools): introduce input styles (#62215)
Add global styles for input elements.

PR Close #62215
2025-06-24 10:48:44 +00:00
hawkgs 2fc176d7fe refactor(devtools): restructure profiler UI (#62215)
Reposition the components in order to optimize the space and improve logical structure.

PR Close #62215
2025-06-24 10:48:44 +00:00
Joey Perrott 78ec6ef896 build: move dependencies on npm package of dev-infra to workspace dependency (#62083)
Move from relying on the @npm// dependencies to aspect node modules where possible

PR Close #62083
2025-06-24 10:46:13 +00:00
Walter Breakell 16ed7f50de docs: update link to cache options (#62187)
PR Close #62187
2025-06-24 10:42:20 +00:00
Shuaib Hasan Akib 07df4e14a1 docs(docs-infra): replace StarWars API endpoint (#62223)
PR Close #62223
2025-06-24 09:54:02 +00:00
Edison Augusthy a1d078b461 docs: updated angular cli link to point to new website (#62059)
PR Close #62059
2025-06-24 09:53:27 +00:00
Angular Robot 15b37a4e06 build: update rules_angular digest to 88ddcf8 (#62230)
See associated pull request for more information.

PR Close #62230
2025-06-24 09:51:50 +00:00
Milo c4df77f4e5 feat(devtools): add an experimental signals toggle (#62218)
create an experimental toggle to allow opening the signals graph view

PR Close #62218
2025-06-24 09:41:10 +00:00
Andrew Scott 9833d9ea47 feat(router): Run loadComponent and loadChildren functions in the route's injection context (#62133)
This updates the loader code to run the `loadComponent` and
`loadChildren` functions in the appropriate injection context for the
route.

A primary motiviation for this feature is to bring `loadChildren` with
standalone components and the routes array to
feature-parity with what was possible when using `loadChildren` and a
module that provided routes via the `ROUTES` token and a factory
function (which would have injection context).

fixes #51532

PR Close #62133
2025-06-24 09:39:48 +00:00
soongxian 9c2a96d125 docs: fixed grammar and spelling errors in contributing-docs folder (#62196)
PR Close #62196
2025-06-24 09:39:07 +00:00
Angular Robot 7d2e942653 build: lock file maintenance (#62202)
See associated pull request for more information.

PR Close #62202
2025-06-24 09:37:35 +00:00
Angular Robot 1cff7cf5e3 build: update cross-repo angular dependencies to db18d71 (#62199)
See associated pull request for more information.

PR Close #62199
2025-06-24 08:52:57 +00:00
Saujan Ghimire d4b96f8c20 docs: embeded best practices in page (#62173) (#62198)
PR Close #62198
2025-06-24 08:52:24 +00:00
Matthieu Riegler b60889accf docs: add link to ai best practices in instalation guide (#62138)
PR Close #62138
2025-06-24 08:49:52 +00:00
Jens Kuehlers 3eca8b1d2f docs: add v21 dates (#62216)
PR Close #62216
2025-06-24 08:49:11 +00:00
Joey Perrott 36d5048429 build: migrate final non-zone.js jasmine tests (#62169)
Migrate the final remaining non-zone.js package jasmine tests to the new toolchain

PR Close #62169
2025-06-24 08:46:39 +00:00
Matthieu Riegler 585bf9c054 docs: improve docs for withComponentInputBinding (#61689)
Add mention about inputs potentially becoming `undefined`.

PR Close #61689
2025-06-24 08:46:07 +00:00
Kristiyan Kostadinov 8ce6ca90be build: update ng-dev (#62227)
Updates `ng-dev` in order to get the latest features.

PR Close #62227
2025-06-24 09:15:52 +02:00
Kristiyan Kostadinov a40abf09f1 build: fix failing test (#62214)
Fixes a test that's failing, because a few PRs landed at the same time.

PR Close #62214
2025-06-23 15:38:18 +02:00
Kristiyan Kostadinov d25a6a0120 fix(compiler-cli): handle initializer APIs wrapped in type casts (#62203)
Fixes that the logic recognizing initializer APIs didn't account for the expression being wrapped in an `as` expresion or in a parenthesized expression. This was already accounted for in the diagnostic so these changes align the behavior between them.

Fixes #62197.

PR Close #62203
2025-06-23 14:26:05 +02:00