Commit Graph

35769 Commits

Author SHA1 Message Date
Alex Rickabaugh 16364514e3 release: cut the v21.1.0-next.2 release v21.1.0-next.2 2025-12-10 16:59:48 -08:00
Alex Rickabaugh d343ff34a3 docs: release notes for the v21.0.4 release 2025-12-10 16:50:42 -08:00
Joey Perrott a52c834536 build: update ng-dev to latest version
Update to the latest version of ng-dev
2025-12-10 16:44:10 -08:00
Angular Robot d0c3806915 build: update cross-repo angular dependencies
See associated pull request for more information.
2025-12-10 13:20:56 -08:00
jnizet c63ef9cb6a docs: fix typos and clarify root effect 2025-12-10 12:40:59 -08:00
Chathulanka Gamage 7674ada620 docs: update control-flow.md to replace else-if with else if
fix incorrect hyphenated form "else-if" and update documentation to match correct syntax "else if"
2025-12-10 12:39:21 -08:00
Angular Robot af6c01f9fb build: update pnpm to v10.25.0
See associated pull request for more information.
2025-12-10 12:33:25 -08:00
Angular Robot 0ef185d015 build: update all non-major dependencies
See associated pull request for more information.
2025-12-10 12:28:42 -08:00
Angular Robot 25c569cf99 build: update all github actions
See associated pull request for more information.
2025-12-10 12:28:01 -08:00
Michael Small 3ab17876ba docs: add 'new' to page 'Side effects for non-reactive APIs' 2025-12-10 12:27:25 -08:00
Matthieu Riegler c429e701fc refactor: spread rules with glob syntax
prettierignore does not support the glob syntax for multiple extensions.
2025-12-10 12:26:53 -08:00
SkyZeroZx bff2dcb93c docs: update forwardRef usage with signals and add HostListener note 2025-12-10 12:23:29 -08:00
Angular Robot 28338c44b3 build: lock file maintenance
See associated pull request for more information.
2025-12-10 12:21:26 -08:00
Jan Martin 954c546273 release: bump Angular DevTools version to 1.6.3 2025-12-10 11:37:13 -08:00
Andrew Scott 5988bdedae refactor(core): Add transition.to property to FakeNavigation
This matches the upstream changes in https://github.com/whatwg/html/commit/f19930f98afeb7565cfc1cbc6a1d4a2086535bca
2025-12-10 10:18:08 -08:00
diegoinost02 9dd08c571a docs(forms): document array item validation in Signal Forms 2025-12-10 10:17:27 -08:00
diegoinost02 e6865af8f1 docs(forms): add signal forms documentation for validating array items 2025-12-10 10:17:27 -08:00
SkyZeroZx 15e3407dab docs(docs-infra): Fixes the visibility of the copy link button in API documentation headings
Fixes the visibility of the copy link button in API documentation headings.
The button now appears on hover, improving the user experience.
2025-12-10 10:15:59 -08:00
Shuaib Hasan Akib 1c6049584e docs: hide menu icons from screen readers in aria example
Add aria-hidden="true" to decorative icon elements in the ARIA menu documentation
example to prevent screen readers from announcing both icon names and labels.
This improves the accessibility experience by ensuring only meaningful text
is announced to screen reader users.

Fixes: #65768
2025-12-10 10:09:35 -08:00
Matthieu Riegler 14713d0992 fix(forms): allow resetting with empty string
Both empty string and null values should be accepted when resetting

fixes #65949
2025-12-10 10:04:54 -08:00
Shuaib Hasan Akib d0a34a6ca5 docs: use fenced code blocks and format examples
Replaces custom docs-code blocks with fenced Markdown code blocks and reformats examples to improve readability, consistency, and copy-paste behavior.
2025-12-10 09:35:50 -08:00
Shuaib Hasan Akib 1f29577077 fix(docs-infra): parse linenums attribute from triple backtick metadata
The triple backtick code block parser now extracts the linenums attribute
from metadata and applies it to enable line number display in code examples
2025-12-10 09:31:44 -08:00
Andrew Scott d355205198 refactor(core): match spec updates for FakeNavigation
Updates FakeNavigation based on updates in https://github.com/whatwg/html/pull/11952
2025-12-10 08:19:23 -08:00
Matthieu Riegler 835a643161 refactor(core): Support Error like object for on resource errors.
Error like object will be treated as errors.

Related to #61861
2025-12-10 08:18:17 -08:00
Matthieu Riegler 25b7948307 ci: fix deployement of previews
By pulling the fix angular/dev-infra/pull/3301
2025-12-10 08:17:47 -08:00
Joey Perrott 9ace7d7a0d build: add the ignore all rc files flag when running bazel info
Due to a bug in bazel we need to ignore all of the rc files when running bazel info commands
2025-12-09 13:44:45 -08:00
Matthieu Riegler 827f5a6fd5 docs: create a separate effect guide
This also includes details about `afterRenderEffect`

WIP.

fixes #63757
2025-12-09 13:11:00 -08:00
Angular Robot 6a3f6be6ed build: update cross-repo angular dependencies
See associated pull request for more information.
2025-12-09 13:05:03 -08:00
Kristiyan Kostadinov 8a3f3a91cf fix(compiler-cli): expand type for native controls with a dynamic type
We recently allowed users to have a dynamic input `type` with signal forms, but the logic that infers the value type falls back to `string` even though in theory it can be any of the other types.

These changes expand the inferred type to `string | number | boolean | Date | null` if we detect a dynamic `type` binding.
2025-12-09 13:01:30 -08:00
kirjs 179b4cba67 fix(forms): Reuse key in parent in compat structure
This fixes the "Compat nodes do not use keyInParent." error when trying to bind compatField.
2025-12-09 12:59:22 -08:00
arturovt 80dbd74ae8 refactor(core): wrap operationsCounter calls with ngDevMode checks
Wrap operationsCounter method calls (recordCreate, recordDestroy, reset)
with ngDevMode guards to ensure they are tree-shaken in production builds.

This aligns with the existing pattern where operationsCounter is only
initialized in development mode, and eliminates unnecessary method call
overhead in production.

The optional chaining (?.) is retained as TypeScript doesn't narrow types
based on ngDevMode checks, but the entire expression will be removed during
production builds.
2025-12-09 10:38:39 -08:00
Matthieu Riegler 8199945637 refactor(core): add dedicated deprecated signatures for providedIn: any / NgModule.
Those were deprecated by #47616 back in v15.

fixes #65923
2025-12-09 10:38:09 -08:00
Angular Robot feb1278b5c docs: update cross-repo adev docs
Updated Angular adev cross repo docs files.
2025-12-09 10:37:32 -08:00
Miles Malerba aff8b248b3 feat(forms): expose element on signal forms Field directive
This allows for easier focusing of the relevant element based on the
`field` property of a `ValidationError`
2025-12-09 09:47:51 -08:00
Andrew Scott 200d923436 docs: Update tutorial last step to use markForCheck
Ideally this tutorial would have used signals but didn't. That's a bigger change than
we are able to make right now and there are other things we would like
to update at the same time. This fix is a temporary patch to the
existing content until there is time to redo the tutorial and videos
entirely.

fixes #65863
2025-12-09 09:39:31 -08:00
Angular Robot 95dfca7254 build: update bazel dependencies
See associated pull request for more information.
2025-12-09 09:38:19 -08:00
Matthieu Riegler 75fe8f8af9 refactor(upgrade): deprecate VERSION export
users should use the entry from `upgrade/static`.

DEPRECATED: `VERSION` from `@angular/upgrade` is deprecated. Please use the entry from `@angular/upgrade/static` instead.
2025-12-09 09:26:02 -08:00
SkyZeroZx 9a6b8e0315 docs(docs-infra): Refactors tutorial generation and updates ng-container docs
Updates the `ng-container` documentation page to use the correct `angular-html` code format and removes an unused CLI documentation file.
2025-12-09 09:25:29 -08:00
Kristiyan Kostadinov ae1c0dc490 perf(compiler): chain query creation instructions
We always emit the query creation instructions in a group which makes them good candidates for chaining.
2025-12-09 09:24:36 -08:00
Andrew Scott c9dfc6c484 fix(vscode-extension): Show warning if multiple versions of Angular are detected in workspace
This shows a more prominent warning when multiple versions of Angular
are detected in the workspace and we are forced to choose one to use for
the language server. This also logs those versions with their locations
and directs the user to view the output panel.

fixes #65466
2025-12-09 09:23:47 -08:00
Matthieu Riegler 3411638f65 docs(docs-infra): prefer/avoid code block styling
fixes #65866
2025-12-09 09:23:12 -08:00
Miles Malerba ebc5c2b083 feat(forms): redo the signal forms metadata API
This PR makes a number of changes to the metadata API to address design
flaws in the previous API. Some of the changes include:

- Replaces the previous `MetadataKey` and `AggregateMetadataKey` with a
  single unified `MetadataKey` that is used for all metadata.
- The new `MetadataKey` is only defined for fields that explicitly set
  it in their schema logic
- All metadata now has reducer / aggregate behavior
- The new `MetadataKey` has an option to create a managed key which
  wraps the result of its computed aggregate into some other structure
  such as a `Resource` or `linkedSignal`
- There are now two APIs to create metadata keys
  - `createMetadataKey` for pure computed metadata
  - `createManagedMetadataKey` for metadata that manages its computation
    internally
2025-12-09 09:21:41 -08:00
Joey Perrott 349133374f build: update repository to use node 22.21.1 in bazel
The repository was updated to use node 22.21.1 via nvm, but bazel had not been updated to match
2025-12-09 09:19:13 -08:00
Shuaib Hasan Akib 4b9fffaa79 docs(docs-infra): hide trailing empty line in code examples
Add CSS rule to hide the last empty line in code blocks to prevent displaying
unnecessary empty lines when source files end with a newline character.
The empty line remains in the DOM for proper copy-paste functionality.
2025-12-09 09:17:41 -08:00
Gouvernathor 5607f513a7 docs(common): Explain how ::ng-deep works
Co-authored-by: Matthieu Riegler <kyro38@gmail.com>
2025-12-09 09:16:45 -08:00
cexbrayat 9fe9566581 fix(forms): add signals for dirty, hidden, and pending states in custom controls
FormUiControl states that hidden, pending and dirty will be bind in custom controls, but this is currently not the case.

Fixes #65575
2025-12-08 10:30:43 -08:00
Anuj Chhajed 96b79fc393 refactor(core): correct all typeof ngDevMode comparison patterns introduced by #63875
This change replaces all remaining occurrences of `typeof ngDevMode !== undefined`
with the correct `typeof ngDevMode !== 'undefined'` form. This aligns the codebase
with JavaScript typeof semantics and maintains consistency with other Angular code.
2025-12-08 10:30:01 -08:00
Miles Malerba efde94a525 refactor: followup cleanup for #65758 fallout
Fixes some issues left behind by recent refactor
2025-12-08 10:27:59 -08:00
mahmoudaboueleneen bad758d4ea docs: fix typo in 'components' word in host elements guide 2025-12-08 10:24:05 -08:00
Shuaib Hasan Akib 5fd75410a9 refactor(core): use proper type for stringifyTypeFromDebugify parameter
Replace the 'any' type with ClassDebugInfo for the debugInfo parameter in
stringifyTypeFromDebugInfo function. This removes the TODO comment that was
tracking the need for proper typing without creating circular dependencies.

The change improves type safety while avoiding circular imports since
stringify_utils.ts doesn't export anything that definition.ts imports.
2025-12-08 10:23:16 -08:00