32404 Commits

Author SHA1 Message Date
Angular Robot 751dc4ad5b build: update babel dependencies to v7.26.9 (#59743)
See associated pull request for more information.

PR Close #59743
2025-02-14 19:15:15 +00:00
Alex Rickabaugh 3e39da593a feat(common): introduce experimental httpResource (#59876)
`httpResource` is a new frontend to the `HttpClient` infrastructure. It
declares a dependency on an HTTP endpoint. The request to be made can be
reactive, updating in response to signals for the URL, method, or otherwise.
The response is returned as an instance of `HttpResource`, a
`WritableResource` with some additional signals which represent parts of the
HTTP response metadata (status, headers, etc).

PR Close #59876
2025-02-14 18:40:37 +00:00
Alex Rickabaugh 538c4d4c9d ci: disable adev tests (#59876)
The changes in #58288 are responsible for breaking the tests. (see #54858).
We'll re-enable them on the next release.

PR Close #59876
2025-02-14 18:40:37 +00:00
Andrew Scott e7c6ecc955 refactor(benchpress): move initializer to constructor (#59960)
Move the initializer into the constructor for instance members that reference identifiers declared in the constructor.

When TypeScript outputs modern language features, the below case throws an TS error.

PR Close #59960
2025-02-14 18:39:58 +00:00
Angular Robot 506d38dc1c build: update all non-major dependencies (#59641)
See associated pull request for more information.

PR Close #59641
2025-02-14 18:39:10 +00:00
Angular Robot 47d5e1e275 build: update dependency jsdom to v26 (#59444)
See associated pull request for more information.

PR Close #59444
2025-02-14 17:59:57 +00:00
Alan Agius 5ca2fa53d5 ci: update nvm node.js verson to 18.20.5 (#59957)
This is needed due to some deps.

PR Close #59957
2025-02-14 17:24:55 +00:00
Angular Robot 650e1f9a86 build: update io_bazel_rules_sass digest to c01e884 (#59948)
See associated pull request for more information.

PR Close #59948
2025-02-14 16:34:23 +00:00
Kristiyan Kostadinov 5553b5cfa8 build: update to TypeScript 5.8 RC (#59952)
Updates the repo to the release candidate TypeScript 5.8.

PR Close #59952
2025-02-14 16:32:50 +00:00
Doug Parker dcb23ef706 release: bump Angular DevTools version to 1.0.23 (#59931)
PR Close #59931
2025-02-14 16:31:37 +00:00
Alan Agius c93e4fe497 build: update bazel node.js version to 18.20.5 (#59943)
This is needed as selenium-webdriver requires at least this version.

PR Close #59943
2025-02-14 16:31:04 +00:00
Angular Robot 7197e82936 build: update cross-repo angular dependencies (#59946)
See associated pull request for more information.

PR Close #59946
2025-02-14 16:30:18 +00:00
Jessica Janiuk 1ebf7bfb23 ci: fix flakey incremental hydration test (#59945)
This extends the test timeout for the two timer tests while shortening the actual hydrate on timer. This hopefully should result in more reliable CI.

PR Close #59945
2025-02-13 22:35:04 +00:00
iteriani 8b757bf35c refactor(core): Check in some interfaces for the DI package (#59921)
This will be the starting point of the DI package. We will first check in some interfaces and then make sure the existing DI package implements that interface. Afterwards, we'll slowly start moving injector implementation.

PR Close #59921
2025-02-13 20:19:29 +00:00
Jessica Janiuk d46aa79873 build: update zone.js pullapprove rule (#59942)
This fixes the broken pullapprove config due to a missing array.

PR Close #59942
2025-02-13 20:16:49 +00:00
Jessica Janiuk d1a3e6203c build: update zone.js pullapprove rule (#59941)
This excludes lock and package files from requiring zones approval.

PR Close #59941
2025-02-13 19:17:13 +00:00
Matt Turco 2588985f43 feat(core): pass signal node to throwInvalidWriteToSignalErrorFn (#59600)
Updates the signature of the `throwInvalidWriteToSignalError` to take the signal node in question and pass it along to the throwInvalidWriteToSignalErrorFn handler function. This allows the handler to e.g. include the signal name in error messaging.

PR Close #59600
2025-02-13 17:56:14 +00:00
JoostK 973033abd2 fix(compiler-cli): avoid crash in isolated transform operations (#59869)
The CLI uses the `ts.transform` API to apply the Angular compiler's transformers
on the source files when `isolatedModules` is true (and various other constraints)
instead of going through a full `ts.Program.emit` operation. This results in the
transformers to operate in an environment where no emit resolver is available, which
was not previously accounted for. This commit reflects the possibility for the emit
resolver to be missing and handles this scenario accordingly.

Fixes #59837

PR Close #59869
2025-02-13 16:39:04 +00:00
Jessica Janiuk fb39fe9650 release: cut the v19.2.0-next.3 release 19.2.0-next.3 2025-02-13 11:30:30 -05:00
arturovt f34aeaeaad refactor(common): remove redundant transferCacheInterceptorFn dependencies (#59819)
The `transferCacheInterceptorFn` injects dependencies in itself; the `TransferCache` and cache options are redundant in the `deps` list.

PR Close #59819
2025-02-13 15:11:19 +00:00
arturovt 20f5dc5103 refactor(core): simplify concatStringsWithSpace (#59820)
The new version of the function is smaller, eliminating extra bytes. The refactor improves both code size and readability while optimizing the implementation. Benchmark results for the old and new implementations are as follows:

```
concatStringsWithSpace_old x 149,225,311 ops/sec ±8.54% (50 runs sampled)
concatStringsWithSpace_new x 160,206,834 ops/sec ±5.72% (54 runs sampled)
```

Thus, the new implementation is both smaller and faster.

PR Close #59820
2025-02-13 15:10:42 +00:00
hawkgs 9f092142d9 docs(docs-infra): replace the WebGL home page animation with a CSS+JS version of it (#59865)
1. The WebGL animation on the home page is completely removed.
2. A new animation processor/player is implemented and added to `adev` web app.
3. A new CSS+JS-based animation substitutes the existing WebGL one.

PR Close #59865
2025-02-13 15:03:36 +00:00
Doug Parker ae6dc71495 docs: link to Tailwind docs about Angular CLI integration (#59765)
We should probably have our own authoritative documentation here, but Tailwind's doc is pretty decent, so this is a good starting point.

PR Close #59765
2025-02-13 15:00:55 +00:00
rysavy-dudrtools bb946d71ed docs(localize): added link to add-package.md (#59937)
PR Close #59937
2025-02-13 14:59:37 +00:00
hawkgs b6733eeea4 docs(docs-infra): drop tabs layout from the API reference details page (#59068)
Drop the tabs in favor of a single page separated by sections.

PR Close #59068
2025-02-13 14:58:33 +00:00
Angular Robot e0c33814fd build: update github/codeql-action action to v3.28.9 (#59914)
See associated pull request for more information.

PR Close #59914
2025-02-13 14:56:39 +00:00
Doug Parker adf2a0a2d6 release: bump Angular DevTools version to 1.0.22 (#59791)
PR Close #59791
2025-02-13 14:50:39 +00:00
Miles Malerba 6789c7ef94 fix(core): Defer afterRender until after first CD (#59455) (#59551)
This reverts commit ac2dbe3eb1.

PR Close #59551
2025-02-12 12:20:04 -08:00
Miles Malerba c87e581dd9 fix(core): Don't run effects in check no changes pass (#59455) (#59551)
This reverts commit 21f1ba22a6.

PR Close #59551
2025-02-12 12:20:04 -08:00
Andrew Scott 730fe65d55 docs: release notes for the v19.1.6 release (#59930)
PR Close #59930
2025-02-12 12:19:13 -08:00
hawkgs 4f3ad98466 refactor(devtools): styles management (#59589)
- Move all styles to ng-devtools/src/styles.
- Create a BrowserService that detects the browsers and adds it as a class to the body. Move global browser styles.
- Create theme mixins that incorporate the browser type into them.
- Refactor some of the affected code along with the introduced changes.

PR Close #59589
2025-02-12 10:47:02 -08:00
Kristiyan Kostadinov 9e847fc60d fix(compiler): handle tracking expressions requiring temporary variables (#58520)
Currently when we generate the tracking expression for a `@for` block, we process its expression in the context of the creation block. This is incorrect, because the expression may require ops of its own for cases like nullish coalescing or safe reads. The result is that while we do generate the correct variable, they're added to the creation block rather than the tracking function which causes an error at runtime.

These changes address the issue by keeping track of a separate set of ops for the `track` expression that are prepended to the generated function, similarly to how we handle event listeners.

Fixes #56256.

PR Close #58520
2025-02-12 09:56:08 -08:00
Angular Robot 6f315fe501 build: update io_bazel_rules_sass digest to d829b6a (#59862)
See associated pull request for more information.

PR Close #59862
2025-02-12 09:47:52 -08:00
Bobokhuja b2f1d4eb9e docs: fix tabs in example code in creating injectable services (#59911)
PR Close #59911
2025-02-12 09:46:51 -08:00
Kristiyan Kostadinov aa285c548c fix(migrations): account for let declarations in control flow migration (#59861)
Fixes that the control flow migration wasn't accounting for `@let` when determining which symbols are used.

PR Close #59861
2025-02-12 09:45:14 -08:00
Kristiyan Kostadinov 1119f85ca9 fix(migrations): count used dependencies inside existing control flow (#59861)
Fixes that the control flow migration wasn't checking the content of pre-existing control flow nodes for dependencies.

Fixes #59846.

PR Close #59861
2025-02-12 09:45:14 -08:00
Angular Robot c69125009c build: update dependency saucelabs to v9 (#59801)
See associated pull request for more information.

PR Close #59801
2025-02-12 09:39:28 -08:00
AleksanderBodurri 28dd04a866 fix(devtools): regressions in component tree (#59873)
This commit solves two cases

Bug: When a directive of the same name is selected, the property view tab would not update properly. This was caused by a signals refactor that changed the behaviour of a string input property to not re-render because the underlying signal did not change (string equality). This is fixed by converting this input into an object.

Bug: When a selected element is removed from the component tree, DevTools would not rerender the component tree properly and deselect that component. Now if DevTools detects that a component is removed, it re-renders the tree and deselects the component.

PR Close #59873
2025-02-12 09:22:28 -08:00
Matthieu Riegler 0d88463a66 docs(docs-infra): inline example in description (#59908)
fixes #59905

PR Close #59908
2025-02-12 09:21:49 -08:00
Hendra Arfiansyah 4a5c3df824 docs: remove trailing parentheses in example code in linked signal (#59917)
PR Close #59917
2025-02-12 09:20:31 -08:00
Angular Robot 8cdb7b8e85 docs: update Angular CLI help [main] (#59925)
Updated Angular CLI help contents.

PR Close #59925
2025-02-12 09:19:37 -08:00
Kristiyan Kostadinov 5cd26a9420 fix(compiler-cli): handle deferred blocks with shared dependencies correctly (#59926)
When the compiler analyzes the defer blocks in a component, it generates two sets of dependencies: ones specific for each block and others from all the deferred blocks within the component. The logic that combines all the defer block dependencies wasn't de-duplicating them which resulted in us producing `setClassMetadataAsync` calls where the callback can have multiple parameters with the same name. This was a problem both in full and partial compilation, but the latter was more visible, because Babel throws an error in such cases.

These changes add some logic to de-duplicate the dependencies so that we produce valid code.

Fixes #59922.

PR Close #59926
2025-02-12 09:15:53 -08:00
Kristiyan Kostadinov b0266bda4a fix(core): invalidate HMR component if replacement throws an error (#59854)
Integrates https://github.com/angular/angular-cli/pull/29510 which allows us to invalidate the data in the dev server for a component if a replacement threw an error.

PR Close #59854
2025-02-12 09:05:30 -08:00
Kristiyan Kostadinov e47c1e5abe refactor(compiler): pass more information to HMR replacement function (#59854)
Adjusts the code we generate for HMR so that it passes in the HMR ID and `import.meta` to the `replaceMetadata` call. This is necessary so we can do better logging of errors.

PR Close #59854
2025-02-12 09:05:30 -08:00
Alex Rickabaugh a7f20eb863 release: cut the v19.2.0-next.2 release 19.2.0-next.2 2025-02-06 12:50:20 -08:00
Alex Rickabaugh 7196725622 docs: release notes for the v19.1.5 release 2025-02-06 12:34:52 -08:00
Wadie 951155eb4c fix(docs-infra): reset sandbox runtime on template change (#59844)
Ensure the sandbox runtime is properly reset when the template changes to prevent any unexpected behavior during development.

PR Close #59844
2025-02-05 15:01:33 -08:00
Alex Rickabaugh b592b1b051 fix(core): fix race condition in resource() (#59851)
The refactoring of `resource()` to use `linkedSignal()` introduced the
potential for a race condition where resources would get stuck and not update
in response to a request change. This occurred under a specific condition:

1. The request changes while the resource is still in loading state
2. The resource resolves the previous load before its `effect()` reacts to the
   request change.

In practice, the window for this race is small, because the request change in
(1) will schedule the effect in (2) immediately. However, it's easier to
trigger this sequencing in tests, especially when one resource depends on the
output of another.

To fix the race condition, the resource impl is refactored to track the request
in its state, and ignore resolved values or streams for stale requests. This
refactoring actually makes the resource code simpler and easier to follow as
well.

Fixes #59842

PR Close #59851
2025-02-05 15:01:02 -08:00
Andrew Scott 8ee91bceed build: remove self from unavailable list (#59858)
remove self from unavailable list

PR Close #59858
2025-02-05 12:18:57 -08:00
Jeevan Mahesha 4d2684d9a3 docs: Add v18 Angular version link to versions configuration (#58933)
PR Close #58933
2025-02-05 09:02:02 -08:00