cloudenvoy 0.4.1 → 0.4.2

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 (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