flipper-dalli 1.3.6 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5cd16a17f8318c75e2cc5022cba5dc94a99b7e6e63d03bd86266e57db1a24f9a
4
- data.tar.gz: e775cb394b12b49fa84bd5cc38e916bdbc2bf6f442adf2a9c0417a145d77a3c1
3
+ metadata.gz: 0752c2156cef50391265bbbf05fd2a7b08ea55c8b471793fdc68509c28a8072d
4
+ data.tar.gz: ae299eb930efb12b545630fdeda0141329dc55195f4da8e97794df1cd2704da9
5
5
  SHA512:
6
- metadata.gz: d2a7a1ab1a63419649d79f39f994ec840d67ddccef907e68ab8d8016761c4c14a1eb6957f5adcb763376d52d51d9c8f996815b1e02dfeedfdb90aa13d4453df2
7
- data.tar.gz: 36670338e79b84a0196c1ab4dac75c928048f21684659271ef45466075a0b3cc4296224691658021813bb88420cab9e6ea149b8c8e61e60def7018b48a2fd1fa
6
+ metadata.gz: 38da4469cf8d6a4355af8d226ff38dd3420a8756270cdc0ac9e933fb9add733928bbd049f770bcf18edee5767309092a9f5ebd62971db7d1067e3364cd391d46
7
+ data.tar.gz: 03460f36491ce7470b85917cdacacf315ef8b5d6cdf340818b78c3f0ee319c1e864ce50891d28c2ef446c21d3365a5469bbb3d5e5afbad09cfe4bd1dd8fc4910
@@ -21,5 +21,5 @@ Gem::Specification.new do |gem|
21
21
  gem.metadata = Flipper::METADATA
22
22
 
23
23
  gem.add_dependency 'flipper', "~> #{Flipper::VERSION}"
24
- gem.add_dependency 'dalli', '>= 2.0', '< 4'
24
+ gem.add_dependency 'dalli', '>= 2.0', '< 6'
25
25
  end
@@ -1,5 +1,5 @@
1
1
  module Flipper
2
- VERSION = '1.3.6'.freeze
2
+ VERSION = '1.4.0'.freeze
3
3
 
4
4
  REQUIRED_RUBY_VERSION = '2.6'.freeze
5
5
  NEXT_REQUIRED_RUBY_VERSION = '3.0'.freeze
@@ -6,7 +6,7 @@ RSpec.describe Flipper::Adapters::Dalli do
6
6
  let(:memory_adapter) do
7
7
  Flipper::Adapters::OperationLogger.new(Flipper::Adapters::Memory.new)
8
8
  end
9
- let(:cache) { Dalli::Client.new(ENV['MEMCACHED_URL']) }
9
+ let(:cache) { Dalli::Client.new(ENV['MEMCACHED_URL'], protocol: :meta) }
10
10
  let(:adapter) { described_class.new(memory_adapter, cache, 10) }
11
11
  let(:flipper) { Flipper.new(adapter) }
12
12
 
@@ -79,9 +79,11 @@ RSpec.describe Flipper::Adapters::Dalli do
79
79
  flipper.enable(:stats)
80
80
 
81
81
  # populate the cache
82
- adapter.get_all
82
+ adapter.features
83
+ adapter.get_multi([flipper[:stats], flipper[:search]])
83
84
 
84
85
  # verify cached with prefix
86
+ expect(cache.get("foo/flipper/v1/features")).to eq(Set["stats", "search"])
85
87
  expect(cache.get("foo/flipper/v1/feature/search")[:percentage_of_actors]).to eq("10")
86
88
  expect(cache.get("foo/flipper/v1/feature/stats")[:boolean]).to eq("true")
87
89
  end
@@ -132,8 +134,9 @@ RSpec.describe Flipper::Adapters::Dalli do
132
134
 
133
135
  it 'warms all features' do
134
136
  adapter.get_all
135
- expect(cache.get("flipper/v1/feature/#{stats.key}")[:boolean]).to eq('true')
136
- expect(cache.get("flipper/v1/feature/#{search.key}")[:boolean]).to be(nil)
137
+ get_all_cache_value = cache.get("flipper/v1/get_all")
138
+ expect(get_all_cache_value["stats"][:boolean]).to eq("true")
139
+ expect(get_all_cache_value["search"][:boolean]).to be(nil)
137
140
  expect(cache.get("flipper/v1/features")).to eq(Set["stats", "search"])
138
141
  end
139
142
 
@@ -141,12 +144,11 @@ RSpec.describe Flipper::Adapters::Dalli do
141
144
  expect(adapter.get_all).to eq(adapter.get_all)
142
145
  end
143
146
 
144
- it 'only invokes two calls to wrapped adapter (for features set and gate data for each feature in set)' do
147
+ it 'only invokes one call to wrapped adapter (for features set and gate data for each feature in set)' do
145
148
  memory_adapter.reset
146
149
  5.times { adapter.get_all }
147
- expect(memory_adapter.count(:features)).to eq(1)
148
- expect(memory_adapter.count(:get_multi)).to eq(1)
149
- expect(memory_adapter.count).to eq(2)
150
+ expect(memory_adapter.count(:get_all)).to eq(1)
151
+ expect(memory_adapter.count).to eq(1)
150
152
  end
151
153
  end
152
154
 
@@ -7,7 +7,7 @@ class DalliTest < MiniTest::Test
7
7
 
8
8
  def setup
9
9
  url = ENV.fetch('MEMCACHED_URL', 'localhost:11211')
10
- @cache = Dalli::Client.new(url)
10
+ @cache = Dalli::Client.new(url, protocol: :meta)
11
11
  Dalli.logger = Logger.new('/dev/null')
12
12
  @cache.flush
13
13
  memory_adapter = Flipper::Adapters::Memory.new
metadata CHANGED
@@ -1,13 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flipper-dalli
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.6
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Nunemaker
8
+ autorequire:
8
9
  bindir: bin
9
10
  cert_chain: []
10
- date: 1980-01-02 00:00:00.000000000 Z
11
+ date: 2026-02-26 00:00:00.000000000 Z
11
12
  dependencies:
12
13
  - !ruby/object:Gem::Dependency
13
14
  name: flipper
@@ -15,14 +16,14 @@ dependencies:
15
16
  requirements:
16
17
  - - "~>"
17
18
  - !ruby/object:Gem::Version
18
- version: 1.3.6
19
+ version: 1.4.0
19
20
  type: :runtime
20
21
  prerelease: false
21
22
  version_requirements: !ruby/object:Gem::Requirement
22
23
  requirements:
23
24
  - - "~>"
24
25
  - !ruby/object:Gem::Version
25
- version: 1.3.6
26
+ version: 1.4.0
26
27
  - !ruby/object:Gem::Dependency
27
28
  name: dalli
28
29
  requirement: !ruby/object:Gem::Requirement
@@ -32,7 +33,7 @@ dependencies:
32
33
  version: '2.0'
33
34
  - - "<"
34
35
  - !ruby/object:Gem::Version
35
- version: '4'
36
+ version: '6'
36
37
  type: :runtime
37
38
  prerelease: false
38
39
  version_requirements: !ruby/object:Gem::Requirement
@@ -42,7 +43,8 @@ dependencies:
42
43
  version: '2.0'
43
44
  - - "<"
44
45
  - !ruby/object:Gem::Version
45
- version: '4'
46
+ version: '6'
47
+ description:
46
48
  email: support@flippercloud.io
47
49
  executables: []
48
50
  extensions: []
@@ -62,8 +64,9 @@ metadata:
62
64
  homepage_uri: https://www.flippercloud.io
63
65
  source_code_uri: https://github.com/flippercloud/flipper
64
66
  bug_tracker_uri: https://github.com/flippercloud/flipper/issues
65
- changelog_uri: https://github.com/flippercloud/flipper/releases/tag/v1.3.6
67
+ changelog_uri: https://github.com/flippercloud/flipper/releases/tag/v1.4.0
66
68
  funding_uri: https://github.com/sponsors/flippercloud
69
+ post_install_message:
67
70
  rdoc_options: []
68
71
  require_paths:
69
72
  - lib
@@ -78,9 +81,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
78
81
  - !ruby/object:Gem::Version
79
82
  version: '0'
80
83
  requirements: []
81
- rubygems_version: 3.6.9
84
+ rubygems_version: 3.5.22
85
+ signing_key:
82
86
  specification_version: 4
83
87
  summary: Dalli feature flag cache adapter for Flipper
84
- test_files:
85
- - spec/flipper/adapters/dalli_spec.rb
86
- - test/adapters/dalli_test.rb
88
+ test_files: []