-
Notifications
You must be signed in to change notification settings - Fork 13.9k
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
chore(config): Migrating ENABLE_JAVASCRIPT_CONTROLS
from app config to a feature flag
#19113
Conversation
Codecov Report
@@ Coverage Diff @@
## master #19113 +/- ##
=======================================
Coverage 66.52% 66.52%
=======================================
Files 1645 1645
Lines 63524 63522 -2
Branches 6462 6462
=======================================
- Hits 42260 42259 -1
+ Misses 19592 19590 -2
- Partials 1672 1673 +1
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
ENABLE_JAVASCRIPT_CONTROLS
from app config to a feature flagENABLE_JAVASCRIPT_CONTROLS
from app config to a feature flag
a63fe81
to
fda05d3
Compare
ENABLE_JAVASCRIPT_CONTROLS
from app config to a feature flagENABLE_JAVASCRIPT_CONTROLS
from app config to a feature flag
ENABLE_JAVASCRIPT_CONTROLS
from app config to a feature flagENABLE_JAVASCRIPT_CONTROLS
from app config to a feature flag
Note that in testing, I was encountering potential bugs and usability issues with the JS controls features. However, I was encountering this in both app config and feature flag modes. The intent of this PR is to move the configuration, not to stop and address issues with the feature itself. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's my understanding that the feature flag dict in config.py
is meant for temporarily enabling features that aren't yet considered stable. However, anything that needs to be permanently customizable should be a global config flag. For this reason it can be argued that the ENABLE_TEMPLATE_PROCESSING
flag should also be moved back to a global config flag. It would be good to hear other people's thoughts on this - @dpgaspar @john-bodley , any thoughts?
Agreed, and a part of the motivation to move this back to a feature flag is to de-stabilize the feature. Due to potential bugs, UX difficulties, and security concerns, I think we can move to deprecate it and replace it with a safer/simpler feature in coming versions. But I must confess this also selfishly provides our org with an easier means to tweak the setting easily with the way we manage deployments, while its deprecation is being considered |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Javascript controls are a feature, this is a flag for that feature, it's a feature flag. QED 😁
SUMMARY
This PR moves the boolean enablement of the JS controls (i.e. custom tooltips in the DeckGL viz) from app configuration to feature flags. Two main reasons:
This is considered a breaking change since certain deployments may rely on enabling/disabling this feature, and they may have to adapt their configuration to set it in a new place.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
n/a
TESTING INSTRUCTIONS
Turn on the flag, and see that it works! We can (and shall!) do this on an ephemeral environment on this PR.
ADDITIONAL INFORMATION
ENABLE_JAVASCRIPT_CONTROLS
from a config value to a feature flag #18909