Use Flipper 0.21.0
https://my.diffend.io/gems/flipper/0.17.1/0.21.0
This allows us to remove a custom patch that has now been accepted upstream: https://github.com/jnunemaker/flipper/pull/512
The big other change is that this now automatically configures itself: https://github.com/jnunemaker/flipper/pull/506
According to https://github.com/jnunemaker/flipper/blob/master/Changelog.md#upgrading, we should be fine here, but we probably want to disable the memoising middleware (https://github.com/jnunemaker/flipper/blob/master/docs/Optimization.md#memoization) and preloading as that's not the point of this upgrade - we can enable those later.
To check that this change works to disable that, we can comment out the initialiser I added and perform a request. We'll see something like this in log/development.log
:
(1.0ms) SELECT ff.key AS feature_key, fg.key, fg.value FROM features ff LEFT JOIN feature_gates fg ON ff.key = fg.feature_key /*application:web,correlation_id:01F6PWC2TQAYM67PANGFQXJVQR,line:/home/smcgivern/.asdf/installs/ruby/2.7.2/lib/ruby/2.7.0/forwardable.rb:235:in `preload_all'*/
With the initialiser, we don't see that, so we haven't preloaded the features.