You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Following the fix for #17964, another subtle bug has been introduced when graphs have large excludes and a heavy use of dependency substitutions.
In some cases, changes in the ExcludeSpec will incorrectly be interpreted as impacting the graph, while the dependency nodes remain strictly the same.
The root cause is that the DependencyState type is expected to be deduplicated and its equals is limited to object identity.
However in NodeState.maybeSubstitute, the substituted DependencyState is not cached. A cache needs to be added there, building on the cache for SubstitutionResult, so that for a source DependencyState, a given result, the same modified DependencyState is returned.
The text was updated successfully, but these errors were encountered:
Following the fix for #17964, another subtle bug has been introduced when graphs have large excludes and a heavy use of dependency substitutions.
In some cases, changes in the
ExcludeSpec
will incorrectly be interpreted as impacting the graph, while the dependency nodes remain strictly the same.The root cause is that the
DependencyState
type is expected to be deduplicated and itsequals
is limited to object identity.However in
NodeState.maybeSubstitute
, the substitutedDependencyState
is not cached. A cache needs to be added there, building on the cache forSubstitutionResult
, so that for a sourceDependencyState
, a given result, the same modifiedDependencyState
is returned.The text was updated successfully, but these errors were encountered: