Don't deserialize hidden extension monitors #2963
Open
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.
Resolves
Resolves #2331
Proposed Changes
Hidden extension monitors are no longer deserialized.
Reason for Changes
This allows unused extensions to not be loaded. Previously, if extension monitors had been shown, those extensions were always added (even if they were hidden) - as those monitors keep monitor state in runtime. This feature itself is good (for example, hidden variables need to keep their positions), but causes problems when it comes to extensions.
Since no extensions track extra data (like slider min), the only data that could be lost as part of this change are the positions of hidden extension monitors. However, they are hidden with no ways to show with blocks (unlike variables), and it's unlikely that someone is using such behavior.
Test Coverage
Added one integration test