cloudtasker 0.11.1 → 0.12.rc1
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/test.yml +5 -1
- data/.rubocop.yml +8 -1
- data/CHANGELOG.md +10 -20
- data/app/controllers/cloudtasker/application_controller.rb +8 -0
- data/app/controllers/cloudtasker/worker_controller.rb +5 -21
- data/gemfiles/google_cloud_tasks_1.0.gemfile.lock +95 -137
- data/gemfiles/google_cloud_tasks_1.1.gemfile.lock +95 -137
- data/gemfiles/google_cloud_tasks_1.2.gemfile.lock +95 -137
- data/gemfiles/google_cloud_tasks_1.3.gemfile.lock +95 -137
- data/gemfiles/rails_5.2.gemfile.lock +37 -83
- data/gemfiles/rails_6.0.gemfile.lock +37 -83
- data/lib/cloudtasker/backend/redis_task.rb +17 -9
- data/lib/cloudtasker/batch/job.rb +16 -6
- data/lib/cloudtasker/cron/schedule.rb +17 -8
- data/lib/cloudtasker/version.rb +1 -1
- data/lib/cloudtasker/worker.rb +45 -7
- data/lib/cloudtasker/worker_handler.rb +26 -0
- data/lib/cloudtasker.rb +0 -1
- metadata +8 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b89246a4e0d7f658fdb3115c3a00b54df0e55b930428fe52caef471386119906
|
4
|
+
data.tar.gz: 4fe22aa2588e95fffcb223e32e50a2baa5df2730d1e04f8f9d0202aa4138fbd4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1ea18e7601bb394ad4d7f72838bf3eaa9d7ff05df0f0b4f3d08e5d7fa82cee52e51be0c4148d0ac282986f366f6159d0bcc634993f07fbbf28c63ec021d29b5e
|
7
|
+
data.tar.gz: 9282074934628583c6c7b5d2bc6efaf6fac87777bab718adf2204f3eb87143f8bce950711395f6d1ecc6dac6fb349fef52bc94eeb42352322d824b6b35011d5a
|
data/.github/workflows/test.yml
CHANGED
data/.rubocop.yml
CHANGED
@@ -13,6 +13,8 @@ Metrics/ModuleLength:
|
|
13
13
|
|
14
14
|
Metrics/AbcSize:
|
15
15
|
Max: 20
|
16
|
+
Exclude:
|
17
|
+
- 'spec/support/*'
|
16
18
|
|
17
19
|
Metrics/LineLength:
|
18
20
|
Max: 120
|
@@ -47,4 +49,9 @@ Metrics/ParameterLists:
|
|
47
49
|
CountKeywordArgs: false
|
48
50
|
|
49
51
|
RSpec/MessageSpies:
|
50
|
-
Enabled: false
|
52
|
+
Enabled: false
|
53
|
+
|
54
|
+
RSpec/MultipleExpectations:
|
55
|
+
Exclude:
|
56
|
+
- 'examples/**/*'
|
57
|
+
- 'spec/integration/**/*'
|
data/CHANGELOG.md
CHANGED
@@ -1,30 +1,20 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
-
## [v0.
|
3
|
+
## Latest RC [v0.12.rc1](https://github.com/keypup-io/cloudtasker/tree/v0.12.rc1) (2021-03-11)
|
4
4
|
|
5
|
-
[Full Changelog](https://github.com/keypup-io/cloudtasker/compare/v0.11.0...v0.
|
5
|
+
[Full Changelog](https://github.com/keypup-io/cloudtasker/compare/v0.11.0...v0.12.rc1)
|
6
6
|
|
7
|
-
**
|
8
|
-
-
|
9
|
-
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
[Full Changelog](https://github.com/keypup-io/cloudtasker/compare/v0.10.1...v0.10.2)
|
14
|
-
|
15
|
-
**Fixed bugs:**
|
16
|
-
- Dependencies: Require `try` from `activesupport`. This was preventing non-Rails projects from properly running Cloudtasker jobs.
|
17
|
-
- WorkerController: remove useless inheritance from local ApplicationController. The parent controller was not always loaded on Rails 5 which in turn created issues with authenticity token. Fixes [#40](https://github.com/keypup-io/cloudtasker/issues/40)
|
18
|
-
|
19
|
-
## [v0.9.5](https://github.com/keypup-io/cloudtasker/tree/v0.9.5) (2021-08-25)
|
20
|
-
|
21
|
-
[Full Changelog](https://github.com/keypup-io/cloudtasker/compare/v0.9.4...v0.9.5)
|
7
|
+
**Improvements:**
|
8
|
+
- ActiveJob: do not double log errors (ActiveJob has its own error logging)
|
9
|
+
- Error logging: Use worker logger so as to include context (job args etc.)
|
10
|
+
- Error logging: Do not log exception and stack trace separately, combine them instead.
|
11
|
+
- Batch callbacks: Retry jobs when completion callback fails
|
12
|
+
- Redis: Use Redis Sets instead of key pattern matching for listing methods (Cron jobs and Local Server)
|
22
13
|
|
23
14
|
**Fixed bugs:**
|
24
|
-
-
|
25
|
-
- WorkerController: remove useless inheritance from local ApplicationController. The parent controller was not always loaded on Rails 5 which in turn created issues with authenticity token. Fixes [#40](https://github.com/keypup-io/cloudtasker/issues/40)
|
15
|
+
- Retries: Enforce job retry limit on job processing. There was an edge case where jobs could be retried indefinitely on batch callback errors.
|
26
16
|
|
27
|
-
## [v0.11.0](https://github.com/keypup-io/cloudtasker/tree/v0.11.0) (
|
17
|
+
## [v0.11.0](https://github.com/keypup-io/cloudtasker/tree/v0.11.0) (2021-03-11)
|
28
18
|
|
29
19
|
[Full Changelog](https://github.com/keypup-io/cloudtasker/compare/v0.10.0...v0.11.0)
|
30
20
|
|
@@ -2,10 +2,7 @@
|
|
2
2
|
|
3
3
|
module Cloudtasker
|
4
4
|
# Handle execution of workers
|
5
|
-
class WorkerController <
|
6
|
-
# No need for CSRF verification on API endpoints
|
7
|
-
skip_before_action :verify_authenticity_token
|
8
|
-
|
5
|
+
class WorkerController < ApplicationController
|
9
6
|
# Authenticate all requests.
|
10
7
|
before_action :authenticate!
|
11
8
|
|
@@ -22,32 +19,19 @@ module Cloudtasker
|
|
22
19
|
# Process payload
|
23
20
|
WorkerHandler.execute_from_payload!(payload)
|
24
21
|
head :no_content
|
25
|
-
rescue DeadWorkerError, MissingWorkerArgumentsError
|
22
|
+
rescue DeadWorkerError, MissingWorkerArgumentsError
|
26
23
|
# 205: job will NOT be retried
|
27
|
-
log_error(e)
|
28
24
|
head :reset_content
|
29
|
-
rescue InvalidWorkerError
|
25
|
+
rescue InvalidWorkerError
|
30
26
|
# 404: Job will be retried
|
31
|
-
log_error(e)
|
32
27
|
head :not_found
|
33
|
-
rescue StandardError
|
34
|
-
#
|
35
|
-
log_error(e)
|
28
|
+
rescue StandardError
|
29
|
+
# 422: Job will be retried
|
36
30
|
head :unprocessable_entity
|
37
31
|
end
|
38
32
|
|
39
33
|
private
|
40
34
|
|
41
|
-
#
|
42
|
-
# Log an error via cloudtasker logger.
|
43
|
-
#
|
44
|
-
# @param [Exception] e The error to log
|
45
|
-
#
|
46
|
-
def log_error(error)
|
47
|
-
Cloudtasker.logger.error(error)
|
48
|
-
Cloudtasker.logger.error(error.backtrace.join("\n"))
|
49
|
-
end
|
50
|
-
|
51
35
|
#
|
52
36
|
# Parse the request body and return the actual job
|
53
37
|
# payload.
|
@@ -13,95 +13,75 @@ PATH
|
|
13
13
|
GEM
|
14
14
|
remote: https://rubygems.org/
|
15
15
|
specs:
|
16
|
-
actioncable (6.1.
|
17
|
-
actionpack (= 6.1.
|
18
|
-
activesupport (= 6.1.
|
16
|
+
actioncable (6.1.3)
|
17
|
+
actionpack (= 6.1.3)
|
18
|
+
activesupport (= 6.1.3)
|
19
19
|
nio4r (~> 2.0)
|
20
20
|
websocket-driver (>= 0.6.1)
|
21
|
-
actionmailbox (6.1.
|
22
|
-
actionpack (= 6.1.
|
23
|
-
activejob (= 6.1.
|
24
|
-
activerecord (= 6.1.
|
25
|
-
activestorage (= 6.1.
|
26
|
-
activesupport (= 6.1.
|
21
|
+
actionmailbox (6.1.3)
|
22
|
+
actionpack (= 6.1.3)
|
23
|
+
activejob (= 6.1.3)
|
24
|
+
activerecord (= 6.1.3)
|
25
|
+
activestorage (= 6.1.3)
|
26
|
+
activesupport (= 6.1.3)
|
27
27
|
mail (>= 2.7.1)
|
28
|
-
actionmailer (6.1.
|
29
|
-
actionpack (= 6.1.
|
30
|
-
actionview (= 6.1.
|
31
|
-
activejob (= 6.1.
|
32
|
-
activesupport (= 6.1.
|
28
|
+
actionmailer (6.1.3)
|
29
|
+
actionpack (= 6.1.3)
|
30
|
+
actionview (= 6.1.3)
|
31
|
+
activejob (= 6.1.3)
|
32
|
+
activesupport (= 6.1.3)
|
33
33
|
mail (~> 2.5, >= 2.5.4)
|
34
34
|
rails-dom-testing (~> 2.0)
|
35
|
-
actionpack (6.1.
|
36
|
-
actionview (= 6.1.
|
37
|
-
activesupport (= 6.1.
|
35
|
+
actionpack (6.1.3)
|
36
|
+
actionview (= 6.1.3)
|
37
|
+
activesupport (= 6.1.3)
|
38
38
|
rack (~> 2.0, >= 2.0.9)
|
39
39
|
rack-test (>= 0.6.3)
|
40
40
|
rails-dom-testing (~> 2.0)
|
41
41
|
rails-html-sanitizer (~> 1.0, >= 1.2.0)
|
42
|
-
actiontext (6.1.
|
43
|
-
actionpack (= 6.1.
|
44
|
-
activerecord (= 6.1.
|
45
|
-
activestorage (= 6.1.
|
46
|
-
activesupport (= 6.1.
|
42
|
+
actiontext (6.1.3)
|
43
|
+
actionpack (= 6.1.3)
|
44
|
+
activerecord (= 6.1.3)
|
45
|
+
activestorage (= 6.1.3)
|
46
|
+
activesupport (= 6.1.3)
|
47
47
|
nokogiri (>= 1.8.5)
|
48
|
-
actionview (6.1.
|
49
|
-
activesupport (= 6.1.
|
48
|
+
actionview (6.1.3)
|
49
|
+
activesupport (= 6.1.3)
|
50
50
|
builder (~> 3.1)
|
51
51
|
erubi (~> 1.4)
|
52
52
|
rails-dom-testing (~> 2.0)
|
53
53
|
rails-html-sanitizer (~> 1.1, >= 1.2.0)
|
54
|
-
activejob (6.1.
|
55
|
-
activesupport (= 6.1.
|
54
|
+
activejob (6.1.3)
|
55
|
+
activesupport (= 6.1.3)
|
56
56
|
globalid (>= 0.3.6)
|
57
|
-
activemodel (6.1.
|
58
|
-
activesupport (= 6.1.
|
59
|
-
activerecord (6.1.
|
60
|
-
activemodel (= 6.1.
|
61
|
-
activesupport (= 6.1.
|
62
|
-
activestorage (6.1.
|
63
|
-
actionpack (= 6.1.
|
64
|
-
activejob (= 6.1.
|
65
|
-
activerecord (= 6.1.
|
66
|
-
activesupport (= 6.1.
|
67
|
-
marcel (~>
|
68
|
-
|
69
|
-
activesupport (6.1.
|
57
|
+
activemodel (6.1.3)
|
58
|
+
activesupport (= 6.1.3)
|
59
|
+
activerecord (6.1.3)
|
60
|
+
activemodel (= 6.1.3)
|
61
|
+
activesupport (= 6.1.3)
|
62
|
+
activestorage (6.1.3)
|
63
|
+
actionpack (= 6.1.3)
|
64
|
+
activejob (= 6.1.3)
|
65
|
+
activerecord (= 6.1.3)
|
66
|
+
activesupport (= 6.1.3)
|
67
|
+
marcel (~> 0.3.1)
|
68
|
+
mimemagic (~> 0.3.2)
|
69
|
+
activesupport (6.1.3)
|
70
70
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
71
71
|
i18n (>= 1.6, < 2)
|
72
72
|
minitest (>= 5.1)
|
73
73
|
tzinfo (~> 2.0)
|
74
74
|
zeitwerk (~> 2.3)
|
75
|
-
addressable (2.
|
75
|
+
addressable (2.7.0)
|
76
76
|
public_suffix (>= 2.0.2, < 5.0)
|
77
|
-
appraisal (2.4.
|
77
|
+
appraisal (2.4.0)
|
78
78
|
bundler
|
79
79
|
rake
|
80
80
|
thor (>= 0.14.0)
|
81
81
|
ast (2.4.2)
|
82
|
-
async (1.30.1)
|
83
|
-
console (~> 1.10)
|
84
|
-
nio4r (~> 2.3)
|
85
|
-
timers (~> 4.1)
|
86
|
-
async-http (0.56.5)
|
87
|
-
async (>= 1.25)
|
88
|
-
async-io (>= 1.28)
|
89
|
-
async-pool (>= 0.2)
|
90
|
-
protocol-http (~> 0.22.0)
|
91
|
-
protocol-http1 (~> 0.14.0)
|
92
|
-
protocol-http2 (~> 0.14.0)
|
93
|
-
async-http-faraday (0.11.0)
|
94
|
-
async-http (~> 0.42)
|
95
|
-
faraday
|
96
|
-
async-io (1.32.2)
|
97
|
-
async
|
98
|
-
async-pool (0.3.8)
|
99
|
-
async (>= 1.25)
|
100
82
|
builder (3.2.4)
|
101
|
-
concurrent-ruby (1.1.
|
102
|
-
connection_pool (2.2.
|
103
|
-
console (1.13.1)
|
104
|
-
fiber-local
|
83
|
+
concurrent-ruby (1.1.8)
|
84
|
+
connection_pool (2.2.3)
|
105
85
|
crack (0.4.5)
|
106
86
|
rexml
|
107
87
|
crass (1.0.6)
|
@@ -109,42 +89,26 @@ GEM
|
|
109
89
|
erubi (1.10.0)
|
110
90
|
et-orbi (1.2.4)
|
111
91
|
tzinfo
|
112
|
-
faraday (1.
|
113
|
-
faraday-em_http (~> 1.0)
|
114
|
-
faraday-em_synchrony (~> 1.0)
|
115
|
-
faraday-excon (~> 1.1)
|
116
|
-
faraday-httpclient (~> 1.0.1)
|
92
|
+
faraday (1.3.0)
|
117
93
|
faraday-net_http (~> 1.0)
|
118
|
-
faraday-net_http_persistent (~> 1.1)
|
119
|
-
faraday-patron (~> 1.0)
|
120
|
-
faraday-rack (~> 1.0)
|
121
94
|
multipart-post (>= 1.2, < 3)
|
122
|
-
ruby2_keywords
|
123
|
-
faraday-em_http (1.0.0)
|
124
|
-
faraday-em_synchrony (1.0.0)
|
125
|
-
faraday-excon (1.1.0)
|
95
|
+
ruby2_keywords
|
126
96
|
faraday-http-cache (2.2.0)
|
127
97
|
faraday (>= 0.8)
|
128
|
-
faraday-httpclient (1.0.1)
|
129
98
|
faraday-net_http (1.0.1)
|
130
|
-
|
131
|
-
faraday-patron (1.0.0)
|
132
|
-
faraday-rack (1.0.0)
|
133
|
-
fiber-local (1.0.0)
|
134
|
-
fugit (1.5.1)
|
99
|
+
fugit (1.4.2)
|
135
100
|
et-orbi (~> 1.1, >= 1.1.8)
|
136
101
|
raabro (~> 1.4)
|
137
|
-
github_changelog_generator (1.
|
102
|
+
github_changelog_generator (1.15.2)
|
138
103
|
activesupport
|
139
|
-
async (>= 1.25.0)
|
140
|
-
async-http-faraday
|
141
104
|
faraday-http-cache
|
142
105
|
multi_json
|
143
106
|
octokit (~> 4.6)
|
144
107
|
rainbow (>= 2.2.1)
|
145
108
|
rake (>= 10.0)
|
146
|
-
|
147
|
-
|
109
|
+
retriable (~> 3.0)
|
110
|
+
globalid (0.4.2)
|
111
|
+
activesupport (>= 4.2.0)
|
148
112
|
google-cloud-tasks (1.0.0)
|
149
113
|
google-gax (~> 1.3)
|
150
114
|
googleapis-common-protos (>= 1.3.9, < 2.0)
|
@@ -155,100 +119,95 @@ GEM
|
|
155
119
|
googleauth (~> 0.9)
|
156
120
|
grpc (~> 1.24)
|
157
121
|
rly (~> 0.2.3)
|
158
|
-
google-protobuf (3.
|
122
|
+
google-protobuf (3.15.5)
|
159
123
|
googleapis-common-protos (1.3.11)
|
160
124
|
google-protobuf (~> 3.14)
|
161
125
|
googleapis-common-protos-types (>= 1.0.6, < 2.0)
|
162
126
|
grpc (~> 1.27)
|
163
|
-
googleapis-common-protos-types (1.
|
127
|
+
googleapis-common-protos-types (1.0.6)
|
164
128
|
google-protobuf (~> 3.14)
|
165
|
-
googleauth (0.
|
129
|
+
googleauth (0.16.0)
|
166
130
|
faraday (>= 0.17.3, < 2.0)
|
167
131
|
jwt (>= 1.4, < 3.0)
|
168
132
|
memoist (~> 0.16)
|
169
133
|
multi_json (~> 1.11)
|
170
134
|
os (>= 0.9, < 2.0)
|
171
135
|
signet (~> 0.14)
|
172
|
-
grpc (1.
|
173
|
-
google-protobuf (~> 3.
|
136
|
+
grpc (1.36.0)
|
137
|
+
google-protobuf (~> 3.14)
|
174
138
|
googleapis-common-protos-types (~> 1.0)
|
175
139
|
grpc-google-iam-v1 (0.6.11)
|
176
140
|
google-protobuf (~> 3.14)
|
177
141
|
googleapis-common-protos (>= 1.3.11, < 2.0)
|
178
142
|
grpc (~> 1.27)
|
179
143
|
hashdiff (1.0.1)
|
180
|
-
i18n (1.8.
|
144
|
+
i18n (1.8.9)
|
181
145
|
concurrent-ruby (~> 1.0)
|
182
146
|
jaro_winkler (1.5.4)
|
183
|
-
jwt (2.2.
|
184
|
-
loofah (2.
|
147
|
+
jwt (2.2.2)
|
148
|
+
loofah (2.9.0)
|
185
149
|
crass (~> 1.0.2)
|
186
150
|
nokogiri (>= 1.5.9)
|
187
151
|
mail (2.7.1)
|
188
152
|
mini_mime (>= 0.1.1)
|
189
|
-
marcel (
|
153
|
+
marcel (0.3.3)
|
154
|
+
mimemagic (~> 0.3.2)
|
190
155
|
memoist (0.16.2)
|
191
156
|
method_source (1.0.0)
|
192
|
-
|
193
|
-
|
157
|
+
mimemagic (0.3.5)
|
158
|
+
mini_mime (1.0.2)
|
159
|
+
mini_portile2 (2.5.0)
|
194
160
|
minitest (5.14.4)
|
195
161
|
multi_json (1.15.0)
|
196
162
|
multipart-post (2.1.1)
|
197
|
-
nio4r (2.5.
|
198
|
-
nokogiri (1.
|
199
|
-
mini_portile2 (~> 2.
|
163
|
+
nio4r (2.5.7)
|
164
|
+
nokogiri (1.11.2)
|
165
|
+
mini_portile2 (~> 2.5.0)
|
200
166
|
racc (~> 1.4)
|
201
|
-
octokit (4.
|
167
|
+
octokit (4.20.0)
|
202
168
|
faraday (>= 0.9)
|
203
169
|
sawyer (~> 0.8.0, >= 0.5.3)
|
204
170
|
os (1.1.1)
|
205
171
|
parallel (1.20.1)
|
206
|
-
parser (3.0.
|
172
|
+
parser (3.0.0.0)
|
207
173
|
ast (~> 2.4.1)
|
208
|
-
protocol-hpack (1.4.2)
|
209
|
-
protocol-http (0.22.5)
|
210
|
-
protocol-http1 (0.14.2)
|
211
|
-
protocol-http (~> 0.22)
|
212
|
-
protocol-http2 (0.14.2)
|
213
|
-
protocol-hpack (~> 1.4)
|
214
|
-
protocol-http (~> 0.18)
|
215
174
|
public_suffix (4.0.6)
|
216
175
|
raabro (1.4.0)
|
217
176
|
racc (1.5.2)
|
218
177
|
rack (2.2.3)
|
219
178
|
rack-test (1.1.0)
|
220
179
|
rack (>= 1.0, < 3)
|
221
|
-
rails (6.1.
|
222
|
-
actioncable (= 6.1.
|
223
|
-
actionmailbox (= 6.1.
|
224
|
-
actionmailer (= 6.1.
|
225
|
-
actionpack (= 6.1.
|
226
|
-
actiontext (= 6.1.
|
227
|
-
actionview (= 6.1.
|
228
|
-
activejob (= 6.1.
|
229
|
-
activemodel (= 6.1.
|
230
|
-
activerecord (= 6.1.
|
231
|
-
activestorage (= 6.1.
|
232
|
-
activesupport (= 6.1.
|
180
|
+
rails (6.1.3)
|
181
|
+
actioncable (= 6.1.3)
|
182
|
+
actionmailbox (= 6.1.3)
|
183
|
+
actionmailer (= 6.1.3)
|
184
|
+
actionpack (= 6.1.3)
|
185
|
+
actiontext (= 6.1.3)
|
186
|
+
actionview (= 6.1.3)
|
187
|
+
activejob (= 6.1.3)
|
188
|
+
activemodel (= 6.1.3)
|
189
|
+
activerecord (= 6.1.3)
|
190
|
+
activestorage (= 6.1.3)
|
191
|
+
activesupport (= 6.1.3)
|
233
192
|
bundler (>= 1.15.0)
|
234
|
-
railties (= 6.1.
|
193
|
+
railties (= 6.1.3)
|
235
194
|
sprockets-rails (>= 2.0.0)
|
236
195
|
rails-dom-testing (2.0.3)
|
237
196
|
activesupport (>= 4.2.0)
|
238
197
|
nokogiri (>= 1.6)
|
239
|
-
rails-html-sanitizer (1.
|
198
|
+
rails-html-sanitizer (1.3.0)
|
240
199
|
loofah (~> 2.3)
|
241
|
-
railties (6.1.
|
242
|
-
actionpack (= 6.1.
|
243
|
-
activesupport (= 6.1.
|
200
|
+
railties (6.1.3)
|
201
|
+
actionpack (= 6.1.3)
|
202
|
+
activesupport (= 6.1.3)
|
244
203
|
method_source
|
245
|
-
rake (>= 0.
|
204
|
+
rake (>= 0.8.7)
|
246
205
|
thor (~> 1.0)
|
247
206
|
rainbow (3.0.0)
|
248
|
-
rake (13.0.
|
249
|
-
redis (4.
|
207
|
+
rake (13.0.3)
|
208
|
+
redis (4.2.5)
|
250
209
|
retriable (3.1.2)
|
251
|
-
rexml (3.2.
|
210
|
+
rexml (3.2.4)
|
252
211
|
rly (0.2.3)
|
253
212
|
rspec (3.10.0)
|
254
213
|
rspec-core (~> 3.10.0)
|
@@ -263,7 +222,7 @@ GEM
|
|
263
222
|
rspec-mocks (3.10.2)
|
264
223
|
diff-lcs (>= 1.2.0, < 2.0)
|
265
224
|
rspec-support (~> 3.10.0)
|
266
|
-
rspec-rails (5.0.
|
225
|
+
rspec-rails (5.0.0)
|
267
226
|
actionpack (>= 5.2)
|
268
227
|
activesupport (>= 5.2)
|
269
228
|
railties (>= 5.2)
|
@@ -282,11 +241,11 @@ GEM
|
|
282
241
|
rubocop-rspec (1.37.0)
|
283
242
|
rubocop (>= 0.68.1)
|
284
243
|
ruby-progressbar (1.11.0)
|
285
|
-
ruby2_keywords (0.0.
|
244
|
+
ruby2_keywords (0.0.4)
|
286
245
|
sawyer (0.8.2)
|
287
246
|
addressable (>= 2.3.5)
|
288
247
|
faraday (> 0.8, < 2.0)
|
289
|
-
semantic_logger (4.
|
248
|
+
semantic_logger (4.7.4)
|
290
249
|
concurrent-ruby (~> 1.0)
|
291
250
|
signet (0.15.0)
|
292
251
|
addressable (~> 2.3)
|
@@ -303,15 +262,14 @@ GEM
|
|
303
262
|
sqlite3 (1.4.2)
|
304
263
|
thor (1.1.0)
|
305
264
|
timecop (0.9.4)
|
306
|
-
timers (4.3.3)
|
307
265
|
tzinfo (2.0.4)
|
308
266
|
concurrent-ruby (~> 1.0)
|
309
267
|
unicode-display_width (1.6.1)
|
310
|
-
webmock (3.
|
311
|
-
addressable (>= 2.
|
268
|
+
webmock (3.12.1)
|
269
|
+
addressable (>= 2.3.6)
|
312
270
|
crack (>= 0.3.2)
|
313
271
|
hashdiff (>= 0.4.0, < 2.0.0)
|
314
|
-
websocket-driver (0.7.
|
272
|
+
websocket-driver (0.7.3)
|
315
273
|
websocket-extensions (>= 0.1.0)
|
316
274
|
websocket-extensions (0.1.5)
|
317
275
|
zeitwerk (2.4.2)
|