feature flag notes
Benji suggests these feature flag rules
- Check negative featureflags, not positive feature: in other words the new behavior should be in the main path so you can simply rip out the old path when you are ready.
- Rick mentions that this will not work out sometimes.
- Resolution: we prefer this, but it doesn’t always make sense.
- Benji: if you have a flag check that includes another condition, don’t do it. Benji can lint this!
- Check feature flags as few times as possible
- Lint this? Rick mentions that this might be unpleasant in some cases. We do not pursue.
We also liked the effect of old soon-to-be-deletable class subclassing new class, the way charmworld does in; and we liked copying the old tests so we can delete them. Duplication is OK for tests that will go away.