pause 0.4.0 → 0.5.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.
- checksums.yaml +4 -4
- data/.github/workflows/rspec.yml +31 -0
- data/.github/workflows/rubocop.yml +31 -0
- data/.gitignore +0 -1
- data/.rubocop.yml +35 -0
- data/.rubocop_todo.yml +192 -0
- data/CHANGELOG.md +21 -0
- data/Gemfile +15 -1
- data/Gemfile.lock +96 -0
- data/LICENSE.txt +1 -1
- data/README.md +94 -48
- data/Rakefile +11 -10
- data/bin/spec +14 -0
- data/lib/pause/action.rb +7 -6
- data/lib/pause/analyzer.rb +4 -0
- data/lib/pause/configuration.rb +3 -1
- data/lib/pause/helper/timing.rb +2 -0
- data/lib/pause/logger.rb +12 -5
- data/lib/pause/rate_limited_event.rb +2 -1
- data/lib/pause/redis/adapter.rb +12 -10
- data/lib/pause/redis/sharded_adapter.rb +3 -2
- data/lib/pause/version.rb +3 -1
- data/lib/pause.rb +25 -14
- data/pause.gemspec +14 -17
- data/spec/pause/action_spec.rb +48 -42
- data/spec/pause/analyzer_spec.rb +13 -10
- data/spec/pause/configuration_spec.rb +6 -5
- data/spec/pause/logger_spec.rb +25 -0
- data/spec/pause/pause_spec.rb +6 -4
- data/spec/pause/period_check_spec.rb +53 -0
- data/spec/pause/redis/adapter_spec.rb +54 -35
- data/spec/pause/redis/sharded_adapter_spec.rb +10 -10
- data/spec/spec_helper.rb +11 -7
- metadata +21 -121
- data/.travis.yml +0 -14
- data/Guardfile +0 -15
metadata
CHANGED
@@ -1,20 +1,19 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pause
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
+
- Konstantin Gredeskoul
|
7
8
|
- Atasay Gokkaya
|
8
9
|
- Paul Henry
|
9
10
|
- Eric Saxby
|
10
|
-
- Konstantin Gredeskoul
|
11
|
-
autorequire:
|
12
11
|
bindir: bin
|
13
12
|
cert_chain: []
|
14
|
-
date:
|
13
|
+
date: 2025-02-11 00:00:00.000000000 Z
|
15
14
|
dependencies:
|
16
15
|
- !ruby/object:Gem::Dependency
|
17
|
-
name:
|
16
|
+
name: colored2
|
18
17
|
requirement: !ruby/object:Gem::Requirement
|
19
18
|
requirements:
|
20
19
|
- - ">="
|
@@ -28,7 +27,7 @@ dependencies:
|
|
28
27
|
- !ruby/object:Gem::Version
|
29
28
|
version: '0'
|
30
29
|
- !ruby/object:Gem::Dependency
|
31
|
-
name:
|
30
|
+
name: redis
|
32
31
|
requirement: !ruby/object:Gem::Requirement
|
33
32
|
requirements:
|
34
33
|
- - ">="
|
@@ -41,126 +40,34 @@ dependencies:
|
|
41
40
|
- - ">="
|
42
41
|
- !ruby/object:Gem::Version
|
43
42
|
version: '0'
|
44
|
-
- !ruby/object:Gem::Dependency
|
45
|
-
name: simplecov
|
46
|
-
requirement: !ruby/object:Gem::Requirement
|
47
|
-
requirements:
|
48
|
-
- - ">="
|
49
|
-
- !ruby/object:Gem::Version
|
50
|
-
version: '0'
|
51
|
-
type: :development
|
52
|
-
prerelease: false
|
53
|
-
version_requirements: !ruby/object:Gem::Requirement
|
54
|
-
requirements:
|
55
|
-
- - ">="
|
56
|
-
- !ruby/object:Gem::Version
|
57
|
-
version: '0'
|
58
|
-
- !ruby/object:Gem::Dependency
|
59
|
-
name: yard
|
60
|
-
requirement: !ruby/object:Gem::Requirement
|
61
|
-
requirements:
|
62
|
-
- - ">="
|
63
|
-
- !ruby/object:Gem::Version
|
64
|
-
version: '0'
|
65
|
-
type: :development
|
66
|
-
prerelease: false
|
67
|
-
version_requirements: !ruby/object:Gem::Requirement
|
68
|
-
requirements:
|
69
|
-
- - ">="
|
70
|
-
- !ruby/object:Gem::Version
|
71
|
-
version: '0'
|
72
|
-
- !ruby/object:Gem::Dependency
|
73
|
-
name: rspec
|
74
|
-
requirement: !ruby/object:Gem::Requirement
|
75
|
-
requirements:
|
76
|
-
- - ">="
|
77
|
-
- !ruby/object:Gem::Version
|
78
|
-
version: '0'
|
79
|
-
type: :development
|
80
|
-
prerelease: false
|
81
|
-
version_requirements: !ruby/object:Gem::Requirement
|
82
|
-
requirements:
|
83
|
-
- - ">="
|
84
|
-
- !ruby/object:Gem::Version
|
85
|
-
version: '0'
|
86
|
-
- !ruby/object:Gem::Dependency
|
87
|
-
name: fakeredis
|
88
|
-
requirement: !ruby/object:Gem::Requirement
|
89
|
-
requirements:
|
90
|
-
- - ">="
|
91
|
-
- !ruby/object:Gem::Version
|
92
|
-
version: '0'
|
93
|
-
type: :development
|
94
|
-
prerelease: false
|
95
|
-
version_requirements: !ruby/object:Gem::Requirement
|
96
|
-
requirements:
|
97
|
-
- - ">="
|
98
|
-
- !ruby/object:Gem::Version
|
99
|
-
version: '0'
|
100
|
-
- !ruby/object:Gem::Dependency
|
101
|
-
name: guard-rspec
|
102
|
-
requirement: !ruby/object:Gem::Requirement
|
103
|
-
requirements:
|
104
|
-
- - ">="
|
105
|
-
- !ruby/object:Gem::Version
|
106
|
-
version: '0'
|
107
|
-
type: :development
|
108
|
-
prerelease: false
|
109
|
-
version_requirements: !ruby/object:Gem::Requirement
|
110
|
-
requirements:
|
111
|
-
- - ">="
|
112
|
-
- !ruby/object:Gem::Version
|
113
|
-
version: '0'
|
114
|
-
- !ruby/object:Gem::Dependency
|
115
|
-
name: timecop
|
116
|
-
requirement: !ruby/object:Gem::Requirement
|
117
|
-
requirements:
|
118
|
-
- - ">="
|
119
|
-
- !ruby/object:Gem::Version
|
120
|
-
version: '0'
|
121
|
-
type: :development
|
122
|
-
prerelease: false
|
123
|
-
version_requirements: !ruby/object:Gem::Requirement
|
124
|
-
requirements:
|
125
|
-
- - ">="
|
126
|
-
- !ruby/object:Gem::Version
|
127
|
-
version: '0'
|
128
|
-
- !ruby/object:Gem::Dependency
|
129
|
-
name: rake
|
130
|
-
requirement: !ruby/object:Gem::Requirement
|
131
|
-
requirements:
|
132
|
-
- - ">="
|
133
|
-
- !ruby/object:Gem::Version
|
134
|
-
version: '0'
|
135
|
-
type: :development
|
136
|
-
prerelease: false
|
137
|
-
version_requirements: !ruby/object:Gem::Requirement
|
138
|
-
requirements:
|
139
|
-
- - ">="
|
140
|
-
- !ruby/object:Gem::Version
|
141
|
-
version: '0'
|
142
43
|
description: This gem provides highly flexible and easy to use interface to define
|
143
44
|
rate limit checks, register events as they come, and verify if the rate limit is
|
144
45
|
reached. Multiple checks for the same metric are easily supported. This gem is used
|
145
46
|
at very high scale on several popular web sites.
|
146
47
|
email:
|
48
|
+
- kigster@gmail.com
|
147
49
|
- atasay@wanelo.com
|
148
50
|
- paul@wanelo.com
|
149
51
|
- sax@ericsaxby.com
|
150
|
-
|
151
|
-
|
52
|
+
executables:
|
53
|
+
- spec
|
152
54
|
extensions: []
|
153
55
|
extra_rdoc_files: []
|
154
56
|
files:
|
57
|
+
- ".github/workflows/rspec.yml"
|
58
|
+
- ".github/workflows/rubocop.yml"
|
155
59
|
- ".gitignore"
|
156
60
|
- ".rspec"
|
61
|
+
- ".rubocop.yml"
|
62
|
+
- ".rubocop_todo.yml"
|
157
63
|
- ".rvmrc"
|
158
|
-
-
|
64
|
+
- CHANGELOG.md
|
159
65
|
- Gemfile
|
160
|
-
-
|
66
|
+
- Gemfile.lock
|
161
67
|
- LICENSE.txt
|
162
68
|
- README.md
|
163
69
|
- Rakefile
|
70
|
+
- bin/spec
|
164
71
|
- lib/pause.rb
|
165
72
|
- lib/pause/action.rb
|
166
73
|
- lib/pause/analyzer.rb
|
@@ -175,14 +82,16 @@ files:
|
|
175
82
|
- spec/pause/action_spec.rb
|
176
83
|
- spec/pause/analyzer_spec.rb
|
177
84
|
- spec/pause/configuration_spec.rb
|
85
|
+
- spec/pause/logger_spec.rb
|
178
86
|
- spec/pause/pause_spec.rb
|
87
|
+
- spec/pause/period_check_spec.rb
|
179
88
|
- spec/pause/redis/adapter_spec.rb
|
180
89
|
- spec/pause/redis/sharded_adapter_spec.rb
|
181
90
|
- spec/spec_helper.rb
|
182
91
|
homepage: https://github.com/kigster/pause
|
183
92
|
licenses: []
|
184
|
-
metadata:
|
185
|
-
|
93
|
+
metadata:
|
94
|
+
rubygems_mfa_required: 'true'
|
186
95
|
rdoc_options: []
|
187
96
|
require_paths:
|
188
97
|
- lib
|
@@ -197,17 +106,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
197
106
|
- !ruby/object:Gem::Version
|
198
107
|
version: '0'
|
199
108
|
requirements: []
|
200
|
-
|
201
|
-
rubygems_version: 2.7.6
|
202
|
-
signing_key:
|
109
|
+
rubygems_version: 3.6.3
|
203
110
|
specification_version: 4
|
204
111
|
summary: Fast, scalable, and flexible real time rate limiting library for distributed
|
205
112
|
Ruby environments backed by Redis.
|
206
|
-
test_files:
|
207
|
-
- spec/pause/action_spec.rb
|
208
|
-
- spec/pause/analyzer_spec.rb
|
209
|
-
- spec/pause/configuration_spec.rb
|
210
|
-
- spec/pause/pause_spec.rb
|
211
|
-
- spec/pause/redis/adapter_spec.rb
|
212
|
-
- spec/pause/redis/sharded_adapter_spec.rb
|
213
|
-
- spec/spec_helper.rb
|
113
|
+
test_files: []
|
data/.travis.yml
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
rvm:
|
3
|
-
- 2.3.3
|
4
|
-
- 2.4.3
|
5
|
-
- 2.5.0
|
6
|
-
script: "bundle exec rake || ( sleep 1; bundle exec rspec --only-failures ) "
|
7
|
-
services:
|
8
|
-
- redis-server
|
9
|
-
notifications:
|
10
|
-
email:
|
11
|
-
recipients:
|
12
|
-
- kigster@gmail.com
|
13
|
-
on_success: never
|
14
|
-
on_failure: always
|
data/Guardfile
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
#^syntax detection
|
3
|
-
|
4
|
-
# A sample Guardfile
|
5
|
-
# More info at https://github.com/guard/guard#readme
|
6
|
-
|
7
|
-
guard 'rspec' do
|
8
|
-
watch(%r{^spanx\.gemspec}) { "spec"}
|
9
|
-
watch(%r{^lib/(.+)\.rb$}) { "spec" }
|
10
|
-
|
11
|
-
watch(%r{^spec/.+_spec\.rb$})
|
12
|
-
watch('spec/spec_helper.rb') { "spec" }
|
13
|
-
watch(%r{spec/support/.*}) { "spec" }
|
14
|
-
end
|
15
|
-
|