Skip to content

WIP: Make `Feature#enabled/disabled?` use `default_enabled: :yaml` as default argument

Fabio Pitino requested to merge make-ff-default-enabled-yaml into master

What does this MR do?

Related to #30228 (closed)

In this MR we are changing the default value of default_enabled: false to default_enabled: :yaml when using Feature.enabled? or Feature.disabled?. When not specified, we read the Feature Flag's status from its YAML definition.

For existing feature flag checks that don't use explicitly default_enabled we should already have validations in place that ensure the default_enabled from code matches the default_enabled in the YAML definition (when default_enabled is not :yaml). This means we don't need to update the existing Feature Flag checks in the code to explicitly pass false where it was implicit before.

Screenshots (strongly suggested)

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team

Merge request reports