Skip to content

Conversation

@apple502j
Copy link
Contributor

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

@towerofnix
Copy link
Contributor

towerofnix commented Mar 14, 2021

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.

Definitely agreed with this! A solution which prevents that data loss could be made, but it would involve reworking quite a lot of the existing monitor code. Not really worth it for such a low-severity fix, at the moment anyhow.

Also +kudos for the very nice integration test :3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Extensions cannot be removed if its stage monitor had been shown

2 participants