sidekiq-limit_fetch 4.4.0 → 4.4.1

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.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +2 -0
  3. data/.rubocop.yml +29 -0
  4. data/Appraisals +2 -0
  5. data/Gemfile +2 -0
  6. data/Rakefile +2 -0
  7. data/bench/compare.rb +17 -13
  8. data/demo/Gemfile +3 -2
  9. data/demo/Rakefile +6 -5
  10. data/demo/app/workers/a_worker.rb +2 -0
  11. data/demo/app/workers/b_worker.rb +2 -0
  12. data/demo/app/workers/c_worker.rb +2 -1
  13. data/demo/app/workers/fast_worker.rb +2 -0
  14. data/demo/app/workers/slow_worker.rb +2 -0
  15. data/demo/config/application.rb +3 -1
  16. data/demo/config/boot.rb +4 -2
  17. data/demo/config/environment.rb +3 -1
  18. data/demo/config/environments/development.rb +2 -0
  19. data/docker-compose.dev.yml +2 -2
  20. data/lib/sidekiq/extensions/manager.rb +20 -17
  21. data/lib/sidekiq/extensions/queue.rb +16 -13
  22. data/lib/sidekiq/limit_fetch/global/monitor.rb +64 -58
  23. data/lib/sidekiq/limit_fetch/global/selector.rb +49 -44
  24. data/lib/sidekiq/limit_fetch/global/semaphore.rb +130 -123
  25. data/lib/sidekiq/limit_fetch/instances.rb +22 -16
  26. data/lib/sidekiq/limit_fetch/queues.rb +163 -137
  27. data/lib/sidekiq/limit_fetch/unit_of_work.rb +26 -22
  28. data/lib/sidekiq/limit_fetch.rb +68 -64
  29. data/lib/sidekiq-limit_fetch.rb +2 -0
  30. data/sidekiq-limit_fetch.gemspec +18 -10
  31. data/spec/sidekiq/extensions/manager_spec.rb +19 -0
  32. data/spec/sidekiq/extensions/queue_spec.rb +2 -0
  33. data/spec/sidekiq/limit_fetch/global/monitor_spec.rb +59 -32
  34. data/spec/sidekiq/limit_fetch/queues_spec.rb +34 -18
  35. data/spec/sidekiq/limit_fetch/semaphore_spec.rb +2 -0
  36. data/spec/sidekiq/limit_fetch_spec.rb +14 -4
  37. data/spec/spec_helper.rb +8 -3
  38. metadata +39 -14
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidekiq-limit_fetch
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.4.0
4
+ version: 4.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dean Perry
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-02 00:00:00.000000000 Z
11
+ date: 2023-01-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sidekiq
@@ -24,6 +24,34 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '6'
27
+ - !ruby/object:Gem::Dependency
28
+ name: appraisal
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
27
55
  - !ruby/object:Gem::Dependency
28
56
  name: redis-namespace
29
57
  requirement: !ruby/object:Gem::Requirement
@@ -45,7 +73,7 @@ dependencies:
45
73
  - !ruby/object:Gem::Version
46
74
  version: 1.5.2
47
75
  - !ruby/object:Gem::Dependency
48
- name: appraisal
76
+ name: rspec
49
77
  requirement: !ruby/object:Gem::Requirement
50
78
  requirements:
51
79
  - - ">="
@@ -59,7 +87,7 @@ dependencies:
59
87
  - !ruby/object:Gem::Version
60
88
  version: '0'
61
89
  - !ruby/object:Gem::Dependency
62
- name: rspec
90
+ name: rubocop
63
91
  requirement: !ruby/object:Gem::Requirement
64
92
  requirements:
65
93
  - - ">="
@@ -73,7 +101,7 @@ dependencies:
73
101
  - !ruby/object:Gem::Version
74
102
  version: '0'
75
103
  - !ruby/object:Gem::Dependency
76
- name: rake
104
+ name: simplecov
77
105
  requirement: !ruby/object:Gem::Requirement
78
106
  requirements:
79
107
  - - ">="
@@ -96,6 +124,7 @@ files:
96
124
  - ".github/workflows/ci.yml"
97
125
  - ".gitignore"
98
126
  - ".rspec"
127
+ - ".rubocop.yml"
99
128
  - Appraisals
100
129
  - CHANGELOG.md
101
130
  - Gemfile
@@ -143,6 +172,7 @@ files:
143
172
  - lib/sidekiq/limit_fetch/queues.rb
144
173
  - lib/sidekiq/limit_fetch/unit_of_work.rb
145
174
  - sidekiq-limit_fetch.gemspec
175
+ - spec/sidekiq/extensions/manager_spec.rb
146
176
  - spec/sidekiq/extensions/queue_spec.rb
147
177
  - spec/sidekiq/limit_fetch/global/monitor_spec.rb
148
178
  - spec/sidekiq/limit_fetch/queues_spec.rb
@@ -156,6 +186,7 @@ metadata:
156
186
  homepage_uri: https://github.com/deanpcmad/sidekiq-limit_fetch
157
187
  source_code_uri: https://github.com/deanpcmad/sidekiq-limit_fetch
158
188
  changelog_uri: https://github.com/deanpcmad/sidekiq-limit_fetch/blob/master/CHANGELOG.md
189
+ rubygems_mfa_required: 'true'
159
190
  post_install_message:
160
191
  rdoc_options: []
161
192
  require_paths:
@@ -164,21 +195,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
164
195
  requirements:
165
196
  - - ">="
166
197
  - !ruby/object:Gem::Version
167
- version: '0'
198
+ version: 2.7.0
168
199
  required_rubygems_version: !ruby/object:Gem::Requirement
169
200
  requirements:
170
201
  - - ">="
171
202
  - !ruby/object:Gem::Version
172
203
  version: '0'
173
204
  requirements: []
174
- rubygems_version: 3.3.7
205
+ rubygems_version: 3.4.3
175
206
  signing_key:
176
207
  specification_version: 4
177
208
  summary: Sidekiq strategy to support queue limits
178
- test_files:
179
- - spec/sidekiq/extensions/queue_spec.rb
180
- - spec/sidekiq/limit_fetch/global/monitor_spec.rb
181
- - spec/sidekiq/limit_fetch/queues_spec.rb
182
- - spec/sidekiq/limit_fetch/semaphore_spec.rb
183
- - spec/sidekiq/limit_fetch_spec.rb
184
- - spec/spec_helper.rb
209
+ test_files: []