Last modified: 2014-08-18 15:38:43 UTC
Currently, we use WB_EXPERIMENTAL_FEATURES to switch "experimental" features off in production. This allows us to work on features without having to worry about them being deployed in a half-finished state. However, there are two problems with this: * There is no way to selectively enable or disable individual features (e.g. for testing) * It is hard to find all relevant places in the code when a feature is ready to be moved from "experimental" to "finished". If we had an array of disabled features (as a global variable, accessible via WikibaseRepo, or whatever), we could a) easily enable or disable individual features, and b) if would be easy to find the relevant places in the code just by grepping for the feature name, which would be mentioned when checking against the array. Removing such checks in the code will then be unnecessary though, since we can simply remove the feature name from the default list of disabled features.