cloudenvoy 0.4.1 → 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (33) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -0
  3. data/CHANGELOG.md +7 -0
  4. data/README.md +4 -4
  5. data/app/controllers/cloudenvoy/subscriber_controller.rb +5 -2
  6. data/examples/rails/Gemfile.lock +125 -106
  7. data/examples/sinatra/Gemfile +15 -0
  8. data/examples/sinatra/Gemfile.lock +127 -0
  9. data/examples/sinatra/Procfile +1 -0
  10. data/examples/sinatra/README.md +41 -0
  11. data/examples/sinatra/app/publishers/hello_publisher.rb +34 -0
  12. data/examples/sinatra/app/subscribers/hello_subscriber.rb +16 -0
  13. data/examples/sinatra/app.rb +40 -0
  14. data/examples/sinatra/bin/console +8 -0
  15. data/examples/sinatra/config/initializers/cloudenvoy.rb +30 -0
  16. data/gemfiles/rails_5.2.gemfile.lock +86 -73
  17. data/gemfiles/rails_6.0.gemfile.lock +87 -74
  18. data/gemfiles/semantic_logger_3.4.gemfile.lock +144 -130
  19. data/gemfiles/semantic_logger_4.6.gemfile.lock +144 -130
  20. data/gemfiles/semantic_logger_4.7.0.gemfile.lock +144 -130
  21. data/gemfiles/semantic_logger_4.7.2.gemfile.lock +144 -130
  22. data/lib/cloudenvoy/message.rb +2 -2
  23. data/lib/cloudenvoy/subscriber.rb +1 -1
  24. data/lib/cloudenvoy/version.rb +1 -1
  25. data/lib/generators/cloudenvoy/publisher_generator.rb +46 -0
  26. data/lib/generators/cloudenvoy/subscriber_generator.rb +46 -0
  27. data/lib/generators/cloudenvoy/templates/publisher.rb.erb +11 -0
  28. data/lib/generators/cloudenvoy/templates/publisher_spec.rb.erb +6 -0
  29. data/lib/generators/cloudenvoy/templates/subscriber.rb.erb +11 -0
  30. data/lib/generators/cloudenvoy/templates/subscriber_spec.rb.erb +6 -0
  31. metadata +20 -7
  32. data/Gemfile.lock +0 -267
  33. data/app/controllers/cloudenvoy/application_controller.rb +0 -8
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Force logging to be realtime
4
+ STDOUT.sync = true
5
+
6
+ # Require project files
7
+ require 'sinatra'
8
+ Dir.glob('./config/initializers/*.rb').each { |file| require file }
9
+ Dir.glob('./app/publishers/*.rb').each { |file| require file }
10
+ Dir.glob('./app/subscribers/*.rb').each { |file| require file }
11
+
12
+ #---------------------------------------------------
13
+ # Routes
14
+ #---------------------------------------------------
15
+
16
+ get '/' do
17
+ 'Hello!'
18
+ end
19
+
20
+ post '/cloudenvoy/receive' do
21
+ begin
22
+ # Authenticate request
23
+ Cloudenvoy::Authenticator.verify!(params['token'])
24
+
25
+ # Parse message descriptor
26
+ content = request.body.read
27
+ msg_descriptor = JSON.parse(content).except('token')
28
+
29
+ # Process message descriptor
30
+ Cloudenvoy::Subscriber.execute_from_descriptor(msg_descriptor)
31
+ return 204
32
+ rescue Cloudenvoy::InvalidSubscriberError
33
+ # 404: Message delivery will be retried
34
+ return 404
35
+ rescue StandardError => e
36
+ # 422: Message delivery will be retried
37
+ logger.info([e.message, e.backtrace].flatten.join("\n"))
38
+ return 422
39
+ end
40
+ end
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ require 'bundler/setup'
5
+ require File.expand_path('../app.rb', __dir__)
6
+
7
+ require 'irb'
8
+ IRB.start(__FILE__)
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Require cloudenvoy and its extensions
4
+ require 'cloudenvoy'
5
+
6
+ Cloudenvoy.configure do |config|
7
+ #
8
+ # Secret used to authenticate job requests
9
+ #
10
+ config.secret = 'some-secret'
11
+
12
+ #
13
+ # GCP Configuration
14
+ #
15
+ config.gcp_project_id = 'some-project'
16
+ config.gcp_sub_prefix = 'my-app'
17
+
18
+ #
19
+ # Domain
20
+ #
21
+ # config.processor_host = 'https://xxxx.ngrok.io'
22
+ #
23
+ config.processor_host = 'http://localhost:3000'
24
+
25
+ #
26
+ # Uncomment to process messages via Pub/Sub.
27
+ # Requires a ngrok tunnel.
28
+ #
29
+ # config.mode = :production
30
+ end
@@ -53,70 +53,78 @@ GEM
53
53
  tzinfo (~> 1.1)
54
54
  addressable (2.7.0)
55
55
  public_suffix (>= 2.0.2, < 5.0)
56
- appraisal (2.3.0)
56
+ appraisal (2.4.0)
57
57
  bundler
58
58
  rake
59
59
  thor (>= 0.14.0)
60
60
  arel (9.0.0)
61
- ast (2.4.1)
61
+ ast (2.4.2)
62
62
  builder (3.2.4)
63
- concurrent-ruby (1.1.6)
64
- crack (0.4.3)
65
- safe_yaml (~> 1.0.0)
63
+ concurrent-ruby (1.1.8)
64
+ crack (0.4.5)
65
+ rexml
66
66
  crass (1.0.6)
67
- diff-lcs (1.4.2)
68
- erubi (1.9.0)
69
- faraday (1.0.1)
67
+ diff-lcs (1.4.4)
68
+ erubi (1.10.0)
69
+ faraday (1.4.1)
70
+ faraday-excon (~> 1.1)
71
+ faraday-net_http (~> 1.0)
72
+ faraday-net_http_persistent (~> 1.1)
70
73
  multipart-post (>= 1.2, < 3)
71
- gapic-common (0.3.4)
72
- google-protobuf (~> 3.12, >= 3.12.2)
73
- googleapis-common-protos (>= 1.3.9, < 2.0)
74
- googleapis-common-protos-types (>= 1.0.4, < 2.0)
75
- googleauth (~> 0.9)
76
- grpc (~> 1.25)
74
+ ruby2_keywords (>= 0.0.4)
75
+ faraday-excon (1.1.0)
76
+ faraday-net_http (1.0.1)
77
+ faraday-net_http_persistent (1.1.0)
78
+ gapic-common (0.4.1)
79
+ faraday (~> 1.3)
80
+ google-protobuf (~> 3.15, >= 3.15.2)
81
+ googleapis-common-protos (>= 1.3.11, < 2.0)
82
+ googleapis-common-protos-types (>= 1.0.6, < 2.0)
83
+ googleauth (~> 0.15, >= 0.15.1)
84
+ grpc (~> 1.36)
77
85
  globalid (0.4.2)
78
86
  activesupport (>= 4.2.0)
79
- google-cloud-core (1.5.0)
87
+ google-cloud-core (1.6.0)
80
88
  google-cloud-env (~> 1.0)
81
89
  google-cloud-errors (~> 1.0)
82
- google-cloud-env (1.3.3)
90
+ google-cloud-env (1.5.0)
83
91
  faraday (>= 0.17.3, < 2.0)
84
- google-cloud-errors (1.0.1)
85
- google-cloud-pubsub (2.1.0)
92
+ google-cloud-errors (1.1.0)
93
+ google-cloud-pubsub (2.5.0)
86
94
  concurrent-ruby (~> 1.1)
87
95
  google-cloud-core (~> 1.5)
88
96
  google-cloud-pubsub-v1 (~> 0.0)
89
- google-cloud-pubsub-v1 (0.1.2)
97
+ google-cloud-pubsub-v1 (0.4.0)
90
98
  gapic-common (~> 0.3)
91
99
  google-cloud-errors (~> 1.0)
92
100
  grpc-google-iam-v1 (>= 0.6.10, < 2.0)
93
- google-protobuf (3.13.0-universal-darwin)
94
- googleapis-common-protos (1.3.10)
95
- google-protobuf (~> 3.11)
96
- googleapis-common-protos-types (>= 1.0.5, < 2.0)
101
+ google-protobuf (3.15.8)
102
+ googleapis-common-protos (1.3.11)
103
+ google-protobuf (~> 3.14)
104
+ googleapis-common-protos-types (>= 1.0.6, < 2.0)
97
105
  grpc (~> 1.27)
98
- googleapis-common-protos-types (1.0.5)
99
- google-protobuf (~> 3.11)
100
- googleauth (0.13.1)
106
+ googleapis-common-protos-types (1.0.6)
107
+ google-protobuf (~> 3.14)
108
+ googleauth (0.16.1)
101
109
  faraday (>= 0.17.3, < 2.0)
102
110
  jwt (>= 1.4, < 3.0)
103
111
  memoist (~> 0.16)
104
112
  multi_json (~> 1.11)
105
113
  os (>= 0.9, < 2.0)
106
114
  signet (~> 0.14)
107
- grpc (1.32.0-universal-darwin)
108
- google-protobuf (~> 3.13)
115
+ grpc (1.37.0)
116
+ google-protobuf (~> 3.15)
109
117
  googleapis-common-protos-types (~> 1.0)
110
- grpc-google-iam-v1 (0.6.10)
111
- google-protobuf (~> 3.11)
112
- googleapis-common-protos (>= 1.3.10, < 2.0)
118
+ grpc-google-iam-v1 (0.6.11)
119
+ google-protobuf (~> 3.14)
120
+ googleapis-common-protos (>= 1.3.11, < 2.0)
113
121
  grpc (~> 1.27)
114
122
  hashdiff (1.0.1)
115
- i18n (1.8.5)
123
+ i18n (1.8.10)
116
124
  concurrent-ruby (~> 1.0)
117
125
  jaro_winkler (1.5.4)
118
126
  jwt (2.2.2)
119
- loofah (2.6.0)
127
+ loofah (2.9.1)
120
128
  crass (~> 1.0.2)
121
129
  nokogiri (>= 1.5.9)
122
130
  mail (2.7.1)
@@ -125,20 +133,24 @@ GEM
125
133
  mimemagic (~> 0.3.2)
126
134
  memoist (0.16.2)
127
135
  method_source (1.0.0)
128
- mimemagic (0.3.5)
129
- mini_mime (1.0.2)
130
- mini_portile2 (2.4.0)
131
- minitest (5.14.1)
136
+ mimemagic (0.3.10)
137
+ nokogiri (~> 1)
138
+ rake
139
+ mini_mime (1.1.0)
140
+ mini_portile2 (2.5.0)
141
+ minitest (5.14.4)
132
142
  multi_json (1.15.0)
133
143
  multipart-post (2.1.1)
134
- nio4r (2.5.2)
135
- nokogiri (1.10.10)
136
- mini_portile2 (~> 2.4.0)
144
+ nio4r (2.5.7)
145
+ nokogiri (1.11.3)
146
+ mini_portile2 (~> 2.5.0)
147
+ racc (~> 1.4)
137
148
  os (1.1.1)
138
- parallel (1.19.2)
139
- parser (2.7.1.4)
149
+ parallel (1.20.1)
150
+ parser (3.0.1.0)
140
151
  ast (~> 2.4.1)
141
- public_suffix (4.0.5)
152
+ public_suffix (4.0.6)
153
+ racc (1.5.2)
142
154
  rack (2.2.3)
143
155
  rack-test (1.1.0)
144
156
  rack (>= 1.0, < 3)
@@ -167,29 +179,30 @@ GEM
167
179
  rake (>= 0.8.7)
168
180
  thor (>= 0.18.1, < 2.0)
169
181
  rainbow (3.0.0)
170
- rake (13.0.1)
182
+ rake (13.0.3)
171
183
  retriable (3.1.2)
172
- rspec (3.9.0)
173
- rspec-core (~> 3.9.0)
174
- rspec-expectations (~> 3.9.0)
175
- rspec-mocks (~> 3.9.0)
176
- rspec-core (3.9.2)
177
- rspec-support (~> 3.9.3)
178
- rspec-expectations (3.9.2)
184
+ rexml (3.2.5)
185
+ rspec (3.10.0)
186
+ rspec-core (~> 3.10.0)
187
+ rspec-expectations (~> 3.10.0)
188
+ rspec-mocks (~> 3.10.0)
189
+ rspec-core (3.10.1)
190
+ rspec-support (~> 3.10.0)
191
+ rspec-expectations (3.10.1)
179
192
  diff-lcs (>= 1.2.0, < 2.0)
180
- rspec-support (~> 3.9.0)
181
- rspec-mocks (3.9.1)
193
+ rspec-support (~> 3.10.0)
194
+ rspec-mocks (3.10.2)
182
195
  diff-lcs (>= 1.2.0, < 2.0)
183
- rspec-support (~> 3.9.0)
184
- rspec-rails (4.0.1)
185
- actionpack (>= 4.2)
186
- activesupport (>= 4.2)
187
- railties (>= 4.2)
188
- rspec-core (~> 3.9)
189
- rspec-expectations (~> 3.9)
190
- rspec-mocks (~> 3.9)
191
- rspec-support (~> 3.9)
192
- rspec-support (3.9.3)
196
+ rspec-support (~> 3.10.0)
197
+ rspec-rails (5.0.1)
198
+ actionpack (>= 5.2)
199
+ activesupport (>= 5.2)
200
+ railties (>= 5.2)
201
+ rspec-core (~> 3.10)
202
+ rspec-expectations (~> 3.10)
203
+ rspec-mocks (~> 3.10)
204
+ rspec-support (~> 3.10)
205
+ rspec-support (3.10.2)
193
206
  rubocop (0.76.0)
194
207
  jaro_winkler (~> 1.5.1)
195
208
  parallel (~> 1.10)
@@ -199,11 +212,11 @@ GEM
199
212
  unicode-display_width (>= 1.4.0, < 1.7)
200
213
  rubocop-rspec (1.37.0)
201
214
  rubocop (>= 0.68.1)
202
- ruby-progressbar (1.10.1)
203
- safe_yaml (1.0.5)
204
- semantic_logger (4.7.2)
215
+ ruby-progressbar (1.11.0)
216
+ ruby2_keywords (0.0.4)
217
+ semantic_logger (4.7.4)
205
218
  concurrent-ruby (~> 1.0)
206
- signet (0.14.0)
219
+ signet (0.15.0)
207
220
  addressable (~> 2.3)
208
221
  faraday (>= 0.17.3, < 2.0)
209
222
  jwt (>= 1.5, < 3.0)
@@ -211,18 +224,18 @@ GEM
211
224
  sprockets (4.0.2)
212
225
  concurrent-ruby (~> 1.0)
213
226
  rack (> 1, < 3)
214
- sprockets-rails (3.2.1)
227
+ sprockets-rails (3.2.2)
215
228
  actionpack (>= 4.0)
216
229
  activesupport (>= 4.0)
217
230
  sprockets (>= 3.0.0)
218
231
  sqlite3 (1.4.2)
219
- thor (1.0.1)
232
+ thor (1.1.0)
220
233
  thread_safe (0.3.6)
221
- timecop (0.9.1)
222
- tzinfo (1.2.7)
234
+ timecop (0.9.4)
235
+ tzinfo (1.2.9)
223
236
  thread_safe (~> 0.1)
224
237
  unicode-display_width (1.6.1)
225
- webmock (3.8.3)
238
+ webmock (3.12.2)
226
239
  addressable (>= 2.3.6)
227
240
  crack (>= 0.3.2)
228
241
  hashdiff (>= 0.4.0, < 2.0.0)
@@ -248,4 +261,4 @@ DEPENDENCIES
248
261
  webmock
249
262
 
250
263
  BUNDLED WITH
251
- 2.1.4
264
+ 2.2.9
@@ -67,69 +67,77 @@ GEM
67
67
  zeitwerk (~> 2.1, >= 2.1.8)
68
68
  addressable (2.7.0)
69
69
  public_suffix (>= 2.0.2, < 5.0)
70
- appraisal (2.3.0)
70
+ appraisal (2.4.0)
71
71
  bundler
72
72
  rake
73
73
  thor (>= 0.14.0)
74
- ast (2.4.1)
74
+ ast (2.4.2)
75
75
  builder (3.2.4)
76
- concurrent-ruby (1.1.6)
77
- crack (0.4.3)
78
- safe_yaml (~> 1.0.0)
76
+ concurrent-ruby (1.1.8)
77
+ crack (0.4.5)
78
+ rexml
79
79
  crass (1.0.6)
80
- diff-lcs (1.4.2)
81
- erubi (1.9.0)
82
- faraday (1.0.1)
80
+ diff-lcs (1.4.4)
81
+ erubi (1.10.0)
82
+ faraday (1.4.1)
83
+ faraday-excon (~> 1.1)
84
+ faraday-net_http (~> 1.0)
85
+ faraday-net_http_persistent (~> 1.1)
83
86
  multipart-post (>= 1.2, < 3)
84
- gapic-common (0.3.4)
85
- google-protobuf (~> 3.12, >= 3.12.2)
86
- googleapis-common-protos (>= 1.3.9, < 2.0)
87
- googleapis-common-protos-types (>= 1.0.4, < 2.0)
88
- googleauth (~> 0.9)
89
- grpc (~> 1.25)
87
+ ruby2_keywords (>= 0.0.4)
88
+ faraday-excon (1.1.0)
89
+ faraday-net_http (1.0.1)
90
+ faraday-net_http_persistent (1.1.0)
91
+ gapic-common (0.4.1)
92
+ faraday (~> 1.3)
93
+ google-protobuf (~> 3.15, >= 3.15.2)
94
+ googleapis-common-protos (>= 1.3.11, < 2.0)
95
+ googleapis-common-protos-types (>= 1.0.6, < 2.0)
96
+ googleauth (~> 0.15, >= 0.15.1)
97
+ grpc (~> 1.36)
90
98
  globalid (0.4.2)
91
99
  activesupport (>= 4.2.0)
92
- google-cloud-core (1.5.0)
100
+ google-cloud-core (1.6.0)
93
101
  google-cloud-env (~> 1.0)
94
102
  google-cloud-errors (~> 1.0)
95
- google-cloud-env (1.3.3)
103
+ google-cloud-env (1.5.0)
96
104
  faraday (>= 0.17.3, < 2.0)
97
- google-cloud-errors (1.0.1)
98
- google-cloud-pubsub (2.1.0)
105
+ google-cloud-errors (1.1.0)
106
+ google-cloud-pubsub (2.5.0)
99
107
  concurrent-ruby (~> 1.1)
100
108
  google-cloud-core (~> 1.5)
101
109
  google-cloud-pubsub-v1 (~> 0.0)
102
- google-cloud-pubsub-v1 (0.1.2)
110
+ google-cloud-pubsub-v1 (0.4.0)
103
111
  gapic-common (~> 0.3)
104
112
  google-cloud-errors (~> 1.0)
105
113
  grpc-google-iam-v1 (>= 0.6.10, < 2.0)
106
- google-protobuf (3.13.0-universal-darwin)
107
- googleapis-common-protos (1.3.10)
108
- google-protobuf (~> 3.11)
109
- googleapis-common-protos-types (>= 1.0.5, < 2.0)
114
+ google-protobuf (3.15.8)
115
+ googleapis-common-protos (1.3.11)
116
+ google-protobuf (~> 3.14)
117
+ googleapis-common-protos-types (>= 1.0.6, < 2.0)
110
118
  grpc (~> 1.27)
111
- googleapis-common-protos-types (1.0.5)
112
- google-protobuf (~> 3.11)
113
- googleauth (0.13.1)
119
+ googleapis-common-protos-types (1.0.6)
120
+ google-protobuf (~> 3.14)
121
+ googleauth (0.16.1)
114
122
  faraday (>= 0.17.3, < 2.0)
115
123
  jwt (>= 1.4, < 3.0)
116
124
  memoist (~> 0.16)
117
125
  multi_json (~> 1.11)
118
126
  os (>= 0.9, < 2.0)
119
127
  signet (~> 0.14)
120
- grpc (1.32.0-universal-darwin)
121
- google-protobuf (~> 3.13)
128
+ grpc (1.37.0)
129
+ google-protobuf (~> 3.15)
122
130
  googleapis-common-protos-types (~> 1.0)
123
- grpc-google-iam-v1 (0.6.10)
124
- google-protobuf (~> 3.11)
125
- googleapis-common-protos (>= 1.3.10, < 2.0)
131
+ grpc-google-iam-v1 (0.6.11)
132
+ google-protobuf (~> 3.14)
133
+ googleapis-common-protos (>= 1.3.11, < 2.0)
126
134
  grpc (~> 1.27)
127
135
  hashdiff (1.0.1)
128
- i18n (1.8.5)
136
+ i18n (1.8.10)
129
137
  concurrent-ruby (~> 1.0)
130
138
  jaro_winkler (1.5.4)
131
139
  jwt (2.2.2)
132
- loofah (2.6.0)
140
+ loofah (2.9.1)
133
141
  crass (~> 1.0.2)
134
142
  nokogiri (>= 1.5.9)
135
143
  mail (2.7.1)
@@ -138,20 +146,24 @@ GEM
138
146
  mimemagic (~> 0.3.2)
139
147
  memoist (0.16.2)
140
148
  method_source (1.0.0)
141
- mimemagic (0.3.5)
142
- mini_mime (1.0.2)
143
- mini_portile2 (2.4.0)
144
- minitest (5.14.1)
149
+ mimemagic (0.3.10)
150
+ nokogiri (~> 1)
151
+ rake
152
+ mini_mime (1.1.0)
153
+ mini_portile2 (2.5.0)
154
+ minitest (5.14.4)
145
155
  multi_json (1.15.0)
146
156
  multipart-post (2.1.1)
147
- nio4r (2.5.2)
148
- nokogiri (1.10.10)
149
- mini_portile2 (~> 2.4.0)
157
+ nio4r (2.5.7)
158
+ nokogiri (1.11.3)
159
+ mini_portile2 (~> 2.5.0)
160
+ racc (~> 1.4)
150
161
  os (1.1.1)
151
- parallel (1.19.2)
152
- parser (2.7.1.4)
162
+ parallel (1.20.1)
163
+ parser (3.0.1.0)
153
164
  ast (~> 2.4.1)
154
- public_suffix (4.0.5)
165
+ public_suffix (4.0.6)
166
+ racc (1.5.2)
155
167
  rack (2.2.3)
156
168
  rack-test (1.1.0)
157
169
  rack (>= 1.0, < 3)
@@ -182,29 +194,30 @@ GEM
182
194
  rake (>= 0.8.7)
183
195
  thor (>= 0.20.3, < 2.0)
184
196
  rainbow (3.0.0)
185
- rake (13.0.1)
197
+ rake (13.0.3)
186
198
  retriable (3.1.2)
187
- rspec (3.9.0)
188
- rspec-core (~> 3.9.0)
189
- rspec-expectations (~> 3.9.0)
190
- rspec-mocks (~> 3.9.0)
191
- rspec-core (3.9.2)
192
- rspec-support (~> 3.9.3)
193
- rspec-expectations (3.9.2)
199
+ rexml (3.2.5)
200
+ rspec (3.10.0)
201
+ rspec-core (~> 3.10.0)
202
+ rspec-expectations (~> 3.10.0)
203
+ rspec-mocks (~> 3.10.0)
204
+ rspec-core (3.10.1)
205
+ rspec-support (~> 3.10.0)
206
+ rspec-expectations (3.10.1)
194
207
  diff-lcs (>= 1.2.0, < 2.0)
195
- rspec-support (~> 3.9.0)
196
- rspec-mocks (3.9.1)
208
+ rspec-support (~> 3.10.0)
209
+ rspec-mocks (3.10.2)
197
210
  diff-lcs (>= 1.2.0, < 2.0)
198
- rspec-support (~> 3.9.0)
199
- rspec-rails (4.0.1)
200
- actionpack (>= 4.2)
201
- activesupport (>= 4.2)
202
- railties (>= 4.2)
203
- rspec-core (~> 3.9)
204
- rspec-expectations (~> 3.9)
205
- rspec-mocks (~> 3.9)
206
- rspec-support (~> 3.9)
207
- rspec-support (3.9.3)
211
+ rspec-support (~> 3.10.0)
212
+ rspec-rails (5.0.1)
213
+ actionpack (>= 5.2)
214
+ activesupport (>= 5.2)
215
+ railties (>= 5.2)
216
+ rspec-core (~> 3.10)
217
+ rspec-expectations (~> 3.10)
218
+ rspec-mocks (~> 3.10)
219
+ rspec-support (~> 3.10)
220
+ rspec-support (3.10.2)
208
221
  rubocop (0.76.0)
209
222
  jaro_winkler (~> 1.5.1)
210
223
  parallel (~> 1.10)
@@ -214,11 +227,11 @@ GEM
214
227
  unicode-display_width (>= 1.4.0, < 1.7)
215
228
  rubocop-rspec (1.37.0)
216
229
  rubocop (>= 0.68.1)
217
- ruby-progressbar (1.10.1)
218
- safe_yaml (1.0.5)
219
- semantic_logger (4.7.2)
230
+ ruby-progressbar (1.11.0)
231
+ ruby2_keywords (0.0.4)
232
+ semantic_logger (4.7.4)
220
233
  concurrent-ruby (~> 1.0)
221
- signet (0.14.0)
234
+ signet (0.15.0)
222
235
  addressable (~> 2.3)
223
236
  faraday (>= 0.17.3, < 2.0)
224
237
  jwt (>= 1.5, < 3.0)
@@ -226,25 +239,25 @@ GEM
226
239
  sprockets (4.0.2)
227
240
  concurrent-ruby (~> 1.0)
228
241
  rack (> 1, < 3)
229
- sprockets-rails (3.2.1)
242
+ sprockets-rails (3.2.2)
230
243
  actionpack (>= 4.0)
231
244
  activesupport (>= 4.0)
232
245
  sprockets (>= 3.0.0)
233
246
  sqlite3 (1.4.2)
234
- thor (1.0.1)
247
+ thor (1.1.0)
235
248
  thread_safe (0.3.6)
236
- timecop (0.9.1)
237
- tzinfo (1.2.7)
249
+ timecop (0.9.4)
250
+ tzinfo (1.2.9)
238
251
  thread_safe (~> 0.1)
239
252
  unicode-display_width (1.6.1)
240
- webmock (3.8.3)
253
+ webmock (3.12.2)
241
254
  addressable (>= 2.3.6)
242
255
  crack (>= 0.3.2)
243
256
  hashdiff (>= 0.4.0, < 2.0.0)
244
257
  websocket-driver (0.7.3)
245
258
  websocket-extensions (>= 0.1.0)
246
259
  websocket-extensions (0.1.5)
247
- zeitwerk (2.4.0)
260
+ zeitwerk (2.4.2)
248
261
 
249
262
  PLATFORMS
250
263
  ruby
@@ -264,4 +277,4 @@ DEPENDENCIES
264
277
  webmock
265
278
 
266
279
  BUNDLED WITH
267
- 2.1.4
280
+ 2.2.9