|
Associate each feature flag with the release version for the feature. Enforce that features with default:false have no release version and features with default:true have a release version. version is required to be a string. For example:
feature_flags:
|
featureFlagToaster:
|
description: "Make toast"
|
cpp_varname: gToaster
|
default: false
|
|
featureFlagBlender:
|
description: "Make smoothie"
|
cpp_varname: gBlender
|
default: true
|
version: “4.7”
|
Provide the helpers:
feature_flags::gToaster.isEnabled(ServerGlobalParams::FeatureCompatibility::Version)
|
feature_flags::gToaster.isEnabledAndIgnoreFCV()
|
feature_flags::gToaster.getVersion() // throws if the feature is not enabled
|
For an enabled feature with default:false, getVersion() will return ServerGlobalParams::FeatureCompatibility::kLatest.
|