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.
The following are the two cleanup buckets:
RENDERING_CLEANUP
is done whenteardownRenderingContext
is done (which should always be beforeteardownContext
is ran).CLEANUP
is done after everything else is destroyed and settled.This refactor fixes the vast majority of issues on IE11. Prior to these changes we were resetting the DOM test fixtures to their original values before we had properly cleaned up the DOM. This meant that when the DOM cleanup actually does run, the various nodes being removed by glimmer's internal cleanup system are not actually present in DOM. Apparently, Chrome / FireFox / Safari / Edge are all fine with this situation (and silently allow
node.removeChild(someThingNotInNode)
without an error), but IE11 did properly (IMHO) error thatsomeThingNotInNode
was not found.