fix(compiler-cli): do not flag callable objects with zero parameters in uninvoked track function check - #70212
Open
JeanMeche wants to merge 1 commit into
Open
fix(compiler-cli): do not flag callable objects with zero parameters in uninvoked track function check#70212JeanMeche wants to merge 1 commit into
JeanMeche wants to merge 1 commit into
Conversation
JeanMeche
force-pushed
the
fix-ng8115-fieldtree
branch
2 times, most recently
from
August 14, 2026 22:16
d25e49c to
6e61477
Compare
JeanMeche
force-pushed
the
fix-ng8115-fieldtree
branch
from
August 14, 2026 22:25
6e61477 to
1730819
Compare
JeanMeche
marked this pull request as ready for review
August 14, 2026 22:30
JeanMeche
force-pushed
the
fix-ng8115-fieldtree
branch
from
August 14, 2026 22:31
1730819 to
58b1ed2
Compare
…in uninvoked track function check In `@for` blocks, tracking callable objects by reference (e.g. signal forms `FieldTree`, signals, or custom callable objects) is a valid pattern when tracking by object identity. Previously, `UninvokedTrackFunctionCheck` (NG8115) flagged any property read whose type has call signatures, regardless of whether the target was an actual track function expecting arguments or a method reference. This commit updates `UninvokedTrackFunctionCheck` to only emit a diagnostic when the target expression has call signatures that declare parameters (functions/methods expecting arguments like `(item)` or `(index, item)`) or is a method declaration. Callable objects without parameters accessed as properties are now recognized as tracked values and not flagged as uninvoked track functions. Fixes angular#70207
JeanMeche
force-pushed
the
fix-ng8115-fieldtree
branch
from
August 14, 2026 22:37
58b1ed2 to
bb55e8d
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
In
@forblocks, tracking callable objects by reference (such as Signal FormsFieldTree, signals, or custom callable objects) is a valid pattern when tracking by object identity (e.g.@for (row of rows(); track row.field)).Previously,
UninvokedTrackFunctionCheck(NG8115) flagged any property read whose type has call signatures, regardless of whether the target was an actual track function expecting arguments or a method declaration.This PR updates
UninvokedTrackFunctionCheckto only emit a diagnostic when:(item)or(index, item)).Callable objects without parameters accessed as properties are now recognized as tracked values and not flagged as uninvoked track functions.
Fixes #70207