Add Beta Features menu - #1860
Conversation
bcotrim
left a comment
There was a problem hiding this comment.
Works as described and a nice addition in my opinion!
LGTM 👍
|
@bcotrim Thank you for your review. Your Feature Flags menu implementation paved the way. 🥳 |
katinthehatsite
left a comment
There was a problem hiding this comment.
Functionally, this works for me and I did not run into any issues 👍
I had one suggestion about the naming: to me, as a user with little context, it was not really clear what Studio Sites CLI did, especially since there was also Install CLI... command that was in the top menu. Perhaps we could improve the naming there
|
@katinthehatsite, do you see any short name we could use instead of the current one to make it more descriptive? Alternatively, we could use the menu description. It looks like that on macOS:
I'm unsure how it works on Windows, though. |
71d0094 to
bb91703
Compare
📊 Performance Test ResultsComparing 7efcaac vs trunk site-editor
site-startup
Results are median values from multiple test runs. Legend: 🟢 Improvement (faster) | 🔴 Regression (slower) | ⚪ No change |
Oh I think this is very nice, let's do that. It would give users a brief idea of what the feature 👍 Worst case, we can try to limit it to Mac |
| enableBlueprints: boolean; | ||
| } | ||
|
|
||
| // eslint-disable-next-line @typescript-eslint/no-empty-object-type |
There was a problem hiding this comment.
It seems we don't need it. Also we can remove it from FeatureFlags.
| // eslint-disable-next-line @typescript-eslint/no-empty-object-type |
There was a problem hiding this comment.
Wasn't it left here to limit the number of changes we need to make when we remove the last feature flag?
| description?: string; | ||
| } | ||
|
|
||
| export const BETA_FEATURES_DEFINITION: Record< keyof BetaFeatures, BetaFeatureDefinition > = { |
There was a problem hiding this comment.
It seems it's not used outside
| export const BETA_FEATURES_DEFINITION: Record< keyof BetaFeatures, BetaFeatureDefinition > = { | |
| const BETA_FEATURES_DEFINITION: Record< keyof BetaFeatures, BetaFeatureDefinition > = { |
| export const BETA_FEATURES: Record< keyof BetaFeatures, BetaFeatureDefinition > = | ||
| BETA_FEATURES_DEFINITION; | ||
|
|
||
| export function buildBetaFeatures( userData: BetaFeatures | undefined ): BetaFeatures { |
There was a problem hiding this comment.
| export function buildBetaFeatures( userData: BetaFeatures | undefined ): BetaFeatures { | |
| function buildBetaFeatures( userData: BetaFeatures | undefined ): BetaFeatures { |







Related issues
Proposed Changes
appdata-v1.jsonfor cross-app/CLI accessbetaFeatures.studioSitesClifrom appdata instead ofENABLE_CLI_V2environment variablestudio sitecommand when the beta feature is enabledTesting Instructions
Testing the Beta Features Menu
Testing CLI Integration
npm run makenode dist/cli/main.js --helpsitecommand is NOT listednode dist/cli/main.js --helpsite Manage local sites (Beta)command is now listednode dist/cli/main.js site listVerify Persistence
~/Library/Application Support/Studio/appdata-v1.json(macOS) or equivalent"betaFeatures": { "studioSitesCli": true }Pre-merge Checklist