Skip to content

feat(nimbus): Support Firefox Labs on Fenix#16200

Open
freshstrangemusic wants to merge 1 commit into
mainfrom
freshstrangemusic/push-mnyqkqrkxtvo
Open

feat(nimbus): Support Firefox Labs on Fenix#16200
freshstrangemusic wants to merge 1 commit into
mainfrom
freshstrangemusic/push-mnyqkqrkxtvo

Conversation

@freshstrangemusic

Copy link
Copy Markdown
Member

Because:

  • Fenix supports Firefox Labs as of Firefox 154+;
  • the constants the controlled in what applications supported Firefox Labs were spread across NimbusConstants instead of being associated with the application configuuration; and
  • Firefox version constants were declared quite late in NimbusConstants, making them unavailable to ApplicationConfig inststances

this commit:

  • refactors NimbusConstants.Version into experimenter.experiments.versions;
  • refactors all the Firefox Labs fields in NimbusConstants into a new dataclass that is used with ApplicationConfig;
  • updates Firefox Desktop and Fenix's application configs to use the new FirefoxLabs dataclass;
  • updates branches form rendering to conditionally render Firefox Labs fields when supported in the application config;
  • updates available choices for firefox_labs_group to be based on the application; and
  • updates the existing unit tests to be generic across all Firefox Labs-supporting applications.

Fixes #16199

@jaredlockhart jaredlockhart left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally looks good, some thoughts about the test setups.

@freshstrangemusic freshstrangemusic force-pushed the freshstrangemusic/push-mnyqkqrkxtvo branch 6 times, most recently from 0f10427 to 14ccbce Compare July 3, 2026 21:50
@freshstrangemusic

Copy link
Copy Markdown
Member Author

@jaredlockhart i split apart all the huge generators into multiple indivudal tests

Because:

- Fenix supports Firefox Labs as of Firefox 154+;
- the constants the controlled in what applications supported Firefox
  Labs were spread across `NimbusConstants` instead of being associated
  with the application configuuration; and
- Firefox version constants were declared quite late in
  `NimbusConstants`, making them unavailable to `ApplicationConfig`
  inststances

this commit:

- refactors `NimbusConstants.Version` into
  `experimenter.experiments.versions`;
- refactors all the Firefox Labs fields in `NimbusConstants` into a new
  dataclass that is used with `ApplicationConfig`;
- updates Firefox Desktop and Fenix's application configs to use the new
  FirefoxLabs dataclass;
- updates branches form rendering to conditionally render Firefox Labs
  fields when supported in the application config;
- updates available choices for firefox_labs_group to be based on the
  application; and
- updates the existing unit tests to be generic across all Firefox
  Labs-supporting applications.

Fixes #16199
@freshstrangemusic freshstrangemusic force-pushed the freshstrangemusic/push-mnyqkqrkxtvo branch from 14ccbce to fdfd825 Compare July 3, 2026 22:00
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.

Enable Firefox Labs for Fenix in Experimenter

2 participants