-
Notifications
You must be signed in to change notification settings - Fork 27k
Patch branch version of #57453 #57504
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Conversation
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
Previously the zoneless scheduler had a concept of whether views needed to be refreshed or not, based on the notification type that was received. It tracked this information as a boolean. This commit refactors things to track dirtiness in `ApplicationRef` itself, as a `dirtyFlags` field with bits corresponding to either view tree dirtiness or after-render hooks. PR Close angular#57453
…hases (angular#57453) The `afterRender` infrastructure was first implemented around the idea of independent, singular hooks. It was later updated to support a spec of multiple hooks that pass values from one to another as they execute, but the implementation still worked in terms of singular hooks under the hood. This creates a number of maintenance issues, and a few bugs. For example, when one hook fails, further hooks in the pipeline should no longer execute, but this was hard to ensure under the old design. This refactoring restructures `afterRender` infrastructure significantly to introduce the concept of a "sequence", a collection of hooks of different phases that execute together. Overall, the implementation is simplified while making it more resilient to issues and future use cases, such as the upcoming `afterRenderEffect`. As part of this refactoring, the `internalAfterNextRender` concept is removed, as well as the unused `queueStateUpdate` concept which used it. PR Close angular#57453
thePunderWoman
approved these changes
Aug 23, 2024
Member
Author
|
This PR was merged into the repository by commit 6059ca8. The changes were merged into the following branches: 18.2.x |
alxhub
added a commit
that referenced
this pull request
Aug 23, 2024
…7504) Previously the zoneless scheduler had a concept of whether views needed to be refreshed or not, based on the notification type that was received. It tracked this information as a boolean. This commit refactors things to track dirtiness in `ApplicationRef` itself, as a `dirtyFlags` field with bits corresponding to either view tree dirtiness or after-render hooks. PR Close #57453 PR Close #57504
alxhub
added a commit
that referenced
this pull request
Aug 23, 2024
…hases (#57453) (#57504) The `afterRender` infrastructure was first implemented around the idea of independent, singular hooks. It was later updated to support a spec of multiple hooks that pass values from one to another as they execute, but the implementation still worked in terms of singular hooks under the hood. This creates a number of maintenance issues, and a few bugs. For example, when one hook fails, further hooks in the pipeline should no longer execute, but this was hard to ensure under the old design. This refactoring restructures `afterRender` infrastructure significantly to introduce the concept of a "sequence", a collection of hooks of different phases that execute together. Overall, the implementation is simplified while making it more resilient to issues and future use cases, such as the upcoming `afterRenderEffect`. As part of this refactoring, the `internalAfterNextRender` concept is removed, as well as the unused `queueStateUpdate` concept which used it. PR Close #57453 PR Close #57504
|
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
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
PullApprove: disable
target: patch
This PR is targeted for the next patch release
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.
No description provided.