Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Conversation

@mmalerba
Copy link
Contributor

@mmalerba mmalerba commented Sep 27, 2025

When working with a proxy object such as signal forms' Field,
accessing the length or Symbol.iterator may trigger a reactive read.
This change ensures that @for properly captures this before clearing
the active consumer.

@mmalerba mmalerba added the target: major This PR is targeted for the next major release label Sep 27, 2025
@angular-robot angular-robot bot added area: core Issues related to the framework runtime area: forms labels Sep 27, 2025
@ngbot ngbot bot added this to the Backlog milestone Sep 27, 2025
@mmalerba mmalerba changed the title test(forms): test reactive iteration over array field fix(core): ensure @for iteration over field is reactive Sep 27, 2025
packages/core/src/render3/instructions/control_flow.ts Outdated Show resolved Hide resolved
packages/core/src/render3/instructions/control_flow.ts Outdated Show resolved Hide resolved
@mmalerba mmalerba force-pushed the sf/for branch 4 times, most recently from 1707923 to 1678b75 Compare October 3, 2025 03:36
Adds a test that verifies @for iteration over an array field is actually
reactive to new items being added to the array.
When working with a proxy object such as signal forms' `Field`,
accessing the `lenght` or `Symbol.iterator` may trgger a reactive read.
This change ensures that `@for` properly captrues this before clearing
the active consumer.
@mmalerba mmalerba requested a review from leonsenft October 21, 2025 21:56
@mmalerba mmalerba added target: rc This PR is targeted for the next release-candidate and removed target: major This PR is targeted for the next major release labels Oct 22, 2025
Copy link
Contributor

@leonsenft leonsenft left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this close #63882?

@mmalerba mmalerba added the action: merge The PR is ready for merge by the caretaker label Oct 24, 2025
@crisbeto
Copy link
Member

This PR was merged into the repository. The changes were merged into the following branches:

crisbeto pushed a commit that referenced this pull request Oct 24, 2025
Adds a test that verifies @for iteration over an array field is actually
reactive to new items being added to the array.

PR Close #64113
crisbeto pushed a commit that referenced this pull request Oct 24, 2025
When working with a proxy object such as signal forms' `Field`,
accessing the `lenght` or `Symbol.iterator` may trgger a reactive read.
This change ensures that `@for` properly captrues this before clearing
the active consumer.

PR Close #64113
@crisbeto crisbeto closed this in 515c294 Oct 24, 2025
crisbeto pushed a commit that referenced this pull request Oct 24, 2025
When working with a proxy object such as signal forms' `Field`,
accessing the `lenght` or `Symbol.iterator` may trgger a reactive read.
This change ensures that `@for` properly captrues this before clearing
the active consumer.

PR Close #64113
@angular-automatic-lock-bot
Copy link

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot bot locked and limited conversation to collaborators Nov 24, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

action: merge The PR is ready for merge by the caretaker area: core Issues related to the framework runtime area: forms target: rc This PR is targeted for the next release-candidate

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants

Morty Proxy This is a proxified and sanitized view of the page, visit original site.