From b8a7b59d82c49c14f4f9a452f99fa7df289c444d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20Coutable?= Date: Wed, 21 Jun 2017 16:35:14 +0200 Subject: [PATCH 1/2] Add the Flipper::Middleware::Memoizer middleware MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This ensures we make maximum one call per feature per request. See https://github.com/jnunemaker/flipper/blob/v0.10.2/docs/Optimization.md#memoizing-middleware Signed-off-by: Rémy Coutable --- config/initializers/flipper.rb | 4 ++++ lib/feature.rb | 1 - 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 config/initializers/flipper.rb diff --git a/config/initializers/flipper.rb b/config/initializers/flipper.rb new file mode 100644 index 00000000000..0fee832788d --- /dev/null +++ b/config/initializers/flipper.rb @@ -0,0 +1,4 @@ +require 'flipper/middleware/memoizer' + +Rails.application.config.middleware.use Flipper::Middleware::Memoizer, + lambda { Feature.flipper } diff --git a/lib/feature.rb b/lib/feature.rb index 5650a1c1334..e2fd8774c6a 100644 --- a/lib/feature.rb +++ b/lib/feature.rb @@ -39,7 +39,6 @@ class Feature get(key).disable end - private def flipper @flipper ||= begin From 6661b0b8e0232e9ad8df783a7bee90deb5b78e54 Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Thu, 22 Jun 2017 11:20:54 -0500 Subject: [PATCH 2/2] Fix Style/EmptyLines violation in lib/feature.rb --- lib/feature.rb | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/feature.rb b/lib/feature.rb index e2fd8774c6a..d3d972564af 100644 --- a/lib/feature.rb +++ b/lib/feature.rb @@ -39,7 +39,6 @@ class Feature get(key).disable end - def flipper @flipper ||= begin adapter = Flipper::Adapters::ActiveRecord.new(