deimos-ruby 1.6.4 → 1.8.1.pre.beta2
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/.circleci/config.yml +9 -0
- data/.rubocop.yml +22 -16
- data/.ruby-version +1 -1
- data/CHANGELOG.md +45 -0
- data/Gemfile.lock +133 -98
- data/README.md +217 -16
- data/Rakefile +1 -1
- data/deimos-ruby.gemspec +4 -3
- data/docs/ARCHITECTURE.md +144 -0
- data/docs/CONFIGURATION.md +27 -0
- data/lib/deimos.rb +9 -7
- data/lib/deimos/active_record_consume/batch_consumption.rb +159 -0
- data/lib/deimos/active_record_consume/batch_slicer.rb +27 -0
- data/lib/deimos/active_record_consume/message_consumption.rb +58 -0
- data/lib/deimos/active_record_consume/schema_model_converter.rb +52 -0
- data/lib/deimos/active_record_consumer.rb +33 -75
- data/lib/deimos/active_record_producer.rb +23 -0
- data/lib/deimos/batch_consumer.rb +2 -142
- data/lib/deimos/config/configuration.rb +28 -10
- data/lib/deimos/consume/batch_consumption.rb +150 -0
- data/lib/deimos/consume/message_consumption.rb +94 -0
- data/lib/deimos/consumer.rb +79 -72
- data/lib/deimos/kafka_message.rb +1 -1
- data/lib/deimos/kafka_topic_info.rb +22 -3
- data/lib/deimos/message.rb +6 -1
- data/lib/deimos/metrics/provider.rb +0 -2
- data/lib/deimos/poll_info.rb +9 -0
- data/lib/deimos/schema_backends/avro_base.rb +33 -1
- data/lib/deimos/schema_backends/base.rb +21 -2
- data/lib/deimos/tracing/provider.rb +0 -2
- data/lib/deimos/utils/db_poller.rb +149 -0
- data/lib/deimos/utils/db_producer.rb +59 -16
- data/lib/deimos/utils/deadlock_retry.rb +68 -0
- data/lib/deimos/utils/lag_reporter.rb +19 -26
- data/lib/deimos/utils/schema_controller_mixin.rb +111 -0
- data/lib/deimos/version.rb +1 -1
- data/lib/generators/deimos/active_record/templates/migration.rb.tt +28 -0
- data/lib/generators/deimos/active_record/templates/model.rb.tt +5 -0
- data/lib/generators/deimos/active_record_generator.rb +79 -0
- data/lib/generators/deimos/db_backend/templates/migration +1 -0
- data/lib/generators/deimos/db_backend/templates/rails3_migration +1 -0
- data/lib/generators/deimos/db_poller/templates/migration +11 -0
- data/lib/generators/deimos/db_poller/templates/rails3_migration +16 -0
- data/lib/generators/deimos/db_poller_generator.rb +48 -0
- data/lib/tasks/deimos.rake +7 -0
- data/spec/active_record_batch_consumer_spec.rb +481 -0
- data/spec/active_record_consume/batch_slicer_spec.rb +42 -0
- data/spec/active_record_consume/schema_model_converter_spec.rb +105 -0
- data/spec/active_record_consumer_spec.rb +3 -11
- data/spec/active_record_producer_spec.rb +66 -88
- data/spec/batch_consumer_spec.rb +24 -7
- data/spec/config/configuration_spec.rb +4 -0
- data/spec/consumer_spec.rb +8 -8
- data/spec/deimos_spec.rb +57 -49
- data/spec/generators/active_record_generator_spec.rb +56 -0
- data/spec/handlers/my_batch_consumer.rb +6 -1
- data/spec/handlers/my_consumer.rb +6 -1
- data/spec/kafka_topic_info_spec.rb +39 -16
- data/spec/message_spec.rb +19 -0
- data/spec/producer_spec.rb +3 -3
- data/spec/rake_spec.rb +1 -1
- data/spec/schemas/com/my-namespace/Generated.avsc +71 -0
- data/spec/schemas/com/my-namespace/MySchemaCompound-key.avsc +18 -0
- data/spec/schemas/com/my-namespace/Wibble.avsc +43 -0
- data/spec/schemas/com/my-namespace/request/Index.avsc +11 -0
- data/spec/schemas/com/my-namespace/request/UpdateRequest.avsc +11 -0
- data/spec/schemas/com/my-namespace/response/Index.avsc +11 -0
- data/spec/schemas/com/my-namespace/response/UpdateResponse.avsc +11 -0
- data/spec/spec_helper.rb +68 -6
- data/spec/utils/db_poller_spec.rb +320 -0
- data/spec/utils/db_producer_spec.rb +84 -10
- data/spec/utils/deadlock_retry_spec.rb +74 -0
- data/spec/utils/lag_reporter_spec.rb +29 -22
- data/spec/utils/schema_controller_mixin_spec.rb +68 -0
- metadata +81 -34
- data/lib/deimos/base_consumer.rb +0 -100
- data/lib/deimos/utils/executor.rb +0 -124
- data/lib/deimos/utils/platform_schema_validation.rb +0 -0
- data/lib/deimos/utils/signal_handler.rb +0 -68
- data/spec/utils/executor_spec.rb +0 -53
- data/spec/utils/signal_handler_spec.rb +0 -16
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e6f44746ef34713f973b24f4cf80954915545edec5e0f006e4d1a6c751478afa
|
|
4
|
+
data.tar.gz: 17adb23fdc3e735cf8eab51f4c1df2bbcf1140c9a5696c0f8e17dc38bd728ba9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d920dc6b7b2020364a7095ab61a986a3bb16c5fac5367227ed8cbded422399e78887fc91ecce81d9857c66bce5739f6423335e835ca87612a1a2306c50cd93b0
|
|
7
|
+
data.tar.gz: 78fd60871b0852b03e91e2223afbe5ac419dc929d6de6340799f8376f89efffd2775e4d93025ab8089cac5a7579d00bc33c64c3f9ec50cc3fb603f6381e3d82a
|
data/.circleci/config.yml
CHANGED
|
@@ -20,6 +20,9 @@ jobs:
|
|
|
20
20
|
# Bundle install dependencies in /tmp/
|
|
21
21
|
# so Dockerfile does not copy them since
|
|
22
22
|
# its base image is different than CircleCI
|
|
23
|
+
- run:
|
|
24
|
+
name: Install bundler
|
|
25
|
+
command: gem install bundler:2.1.4
|
|
23
26
|
- run:
|
|
24
27
|
name: Bundle install
|
|
25
28
|
command: bundle install --path vendor/bundle --jobs=4 --retry=3
|
|
@@ -40,6 +43,9 @@ jobs:
|
|
|
40
43
|
steps:
|
|
41
44
|
- attach_workspace:
|
|
42
45
|
at: ~/workspace
|
|
46
|
+
- run:
|
|
47
|
+
name: Install bundler
|
|
48
|
+
command: gem install bundler:2.1.4
|
|
43
49
|
- run:
|
|
44
50
|
name: Point bundle to vendor/bundle
|
|
45
51
|
command: bundle --path vendor/bundle
|
|
@@ -50,6 +56,9 @@ jobs:
|
|
|
50
56
|
steps:
|
|
51
57
|
- attach_workspace:
|
|
52
58
|
at: ~/workspace
|
|
59
|
+
- run:
|
|
60
|
+
name: Install bundler
|
|
61
|
+
command: gem install bundler:2.1.4
|
|
53
62
|
- run:
|
|
54
63
|
name: Point bundle to vendor/bundle
|
|
55
64
|
command: bundle --path vendor/bundle
|
data/.rubocop.yml
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
require: rubocop-rspec
|
|
2
2
|
|
|
3
3
|
AllCops:
|
|
4
|
-
TargetRubyVersion: 2.
|
|
4
|
+
TargetRubyVersion: 2.4
|
|
5
5
|
Exclude:
|
|
6
6
|
- lib/deimos/monkey_patches/*.rb
|
|
7
7
|
- vendor/**/*
|
|
8
|
+
- Guardfile
|
|
9
|
+
NewCops: enable
|
|
8
10
|
|
|
9
11
|
# class Plumbus
|
|
10
12
|
# private
|
|
@@ -34,6 +36,12 @@ Layout/DotPosition:
|
|
|
34
36
|
Layout/EmptyLinesAroundBlockBody:
|
|
35
37
|
Enabled: false
|
|
36
38
|
|
|
39
|
+
Layout/LineLength:
|
|
40
|
+
Max: 120
|
|
41
|
+
Severity: refactor
|
|
42
|
+
Exclude:
|
|
43
|
+
- 'spec/**/*'
|
|
44
|
+
|
|
37
45
|
# foo = if expression
|
|
38
46
|
# 'bar'
|
|
39
47
|
# end
|
|
@@ -70,30 +78,26 @@ Lint/UnusedMethodArgument:
|
|
|
70
78
|
|
|
71
79
|
Metrics/AbcSize:
|
|
72
80
|
Severity: refactor
|
|
73
|
-
Max:
|
|
81
|
+
Max: 25
|
|
74
82
|
|
|
75
83
|
Metrics/BlockLength:
|
|
76
|
-
|
|
84
|
+
Enabled: false
|
|
77
85
|
|
|
78
86
|
Metrics/ClassLength:
|
|
79
87
|
Severity: refactor
|
|
88
|
+
Max: 500
|
|
80
89
|
|
|
81
90
|
Metrics/CyclomaticComplexity:
|
|
82
91
|
Severity: refactor
|
|
83
92
|
Max: 20
|
|
84
93
|
|
|
85
|
-
Metrics/LineLength:
|
|
86
|
-
Max: 100
|
|
87
|
-
Severity: refactor
|
|
88
|
-
Exclude:
|
|
89
|
-
- 'spec/**/*'
|
|
90
|
-
|
|
91
94
|
Metrics/MethodLength:
|
|
92
95
|
Severity: refactor
|
|
93
|
-
Max:
|
|
96
|
+
Max: 50
|
|
94
97
|
|
|
95
98
|
Metrics/ModuleLength:
|
|
96
99
|
Severity: refactor
|
|
100
|
+
Max: 200
|
|
97
101
|
|
|
98
102
|
Metrics/ParameterLists:
|
|
99
103
|
Max: 5
|
|
@@ -101,6 +105,7 @@ Metrics/ParameterLists:
|
|
|
101
105
|
|
|
102
106
|
Metrics/PerceivedComplexity:
|
|
103
107
|
Severity: refactor
|
|
108
|
+
Max: 10
|
|
104
109
|
|
|
105
110
|
# Use alias_method instead of alias
|
|
106
111
|
Style/Alias:
|
|
@@ -123,12 +128,6 @@ Style/BlockDelimiters:
|
|
|
123
128
|
# some_method(x, y, {a: 1, b: 2})
|
|
124
129
|
# some_method(x, y, {a: 1, b: 2}, a: 1, b: 2)
|
|
125
130
|
|
|
126
|
-
# good
|
|
127
|
-
# some_method(x, y, a: 1, b: 2)
|
|
128
|
-
# some_method(x, y, {a: 1, b: 2}, {a: 1, b: 2})
|
|
129
|
-
Style/BracesAroundHashParameters:
|
|
130
|
-
EnforcedStyle: context_dependent
|
|
131
|
-
|
|
132
131
|
# Enable both this:
|
|
133
132
|
# MyModule::MyClass
|
|
134
133
|
# and this:
|
|
@@ -179,6 +178,13 @@ Style/GuardClause:
|
|
|
179
178
|
Style/HashSyntax:
|
|
180
179
|
EnforcedStyle: ruby19_no_mixed_keys
|
|
181
180
|
|
|
181
|
+
# We are still unofficially targeting Ruby 2.3
|
|
182
|
+
Style/HashTransformKeys:
|
|
183
|
+
Enabled: false
|
|
184
|
+
|
|
185
|
+
Style/HashTransformValues:
|
|
186
|
+
Enabled: false
|
|
187
|
+
|
|
182
188
|
Style/IfUnlessModifier:
|
|
183
189
|
Enabled: false
|
|
184
190
|
|
data/.ruby-version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
2.5.
|
|
1
|
+
2.5.3
|
data/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,51 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## UNRELEASED
|
|
9
9
|
|
|
10
|
+
## 1.8.1-beta2 - 2020-07-28
|
|
11
|
+
|
|
12
|
+
### Features :star:
|
|
13
|
+
- Add `SchemaControllerMixin` to encode and decode schema-encoded
|
|
14
|
+
payloads in Rails controllers.
|
|
15
|
+
|
|
16
|
+
## 1.8.1-beta1 - 2020-07-22
|
|
17
|
+
|
|
18
|
+
### Fixes :wrench:
|
|
19
|
+
- Retry deleting messages without resending the batch if the
|
|
20
|
+
delete fails (fixes [#34](https://github.com/flipp-oss/deimos/issues/34))
|
|
21
|
+
- Delete messages in batches rather than all at once to
|
|
22
|
+
cut down on the chance of a deadlock.
|
|
23
|
+
|
|
24
|
+
### Features :star:
|
|
25
|
+
- Add `last_processed_at` to `kafka_topic_info` to ensure
|
|
26
|
+
that wait metrics are accurate in cases where records
|
|
27
|
+
get created with an old `created_at` time (e.g. for
|
|
28
|
+
long-running transactions).
|
|
29
|
+
- Add generator for ActiveRecord models and migrations (fixes [#6](https://github.com/flipp-oss/deimos/issues/6))
|
|
30
|
+
|
|
31
|
+
## 1.8.0-beta2 - 2020-07-08
|
|
32
|
+
|
|
33
|
+
### Fixes :wrench:
|
|
34
|
+
- Fix crash with batch consumption due to not having ActiveSupport::Concern
|
|
35
|
+
|
|
36
|
+
### Features :star:
|
|
37
|
+
- Add `first_offset` to the metadata sent via the batch
|
|
38
|
+
|
|
39
|
+
## 1.8.0-beta1 - 2020-07-06
|
|
40
|
+
### Features :star:
|
|
41
|
+
- Added `ActiveRecordConsumer` batch mode
|
|
42
|
+
|
|
43
|
+
### Fixes :wrench:
|
|
44
|
+
- Lag calculation can be incorrect if no messages are being consumed.
|
|
45
|
+
- Fixed bug where printing messages on a MessageSizeTooLarge
|
|
46
|
+
error didn't work.
|
|
47
|
+
|
|
48
|
+
### Roadmap
|
|
49
|
+
- Moved SignalHandler and Executor to the `sigurd` gem.
|
|
50
|
+
|
|
51
|
+
## 1.7.0-beta1 - 2020-05-12
|
|
52
|
+
### Features :star:
|
|
53
|
+
- Added the DB Poller feature / process.
|
|
54
|
+
|
|
10
55
|
## 1.6.4 - 2020-05-11
|
|
11
56
|
- Fixed the payload logging fix for errored messages as well.
|
|
12
57
|
|
data/Gemfile.lock
CHANGED
|
@@ -1,83 +1,99 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
deimos-ruby (1.
|
|
4
|
+
deimos-ruby (1.8.1.pre.beta2)
|
|
5
5
|
avro_turf (~> 0.11)
|
|
6
6
|
phobos (~> 1.9)
|
|
7
7
|
ruby-kafka (~> 0.7)
|
|
8
|
+
sigurd (= 0.0.1)
|
|
8
9
|
|
|
9
10
|
GEM
|
|
10
11
|
remote: https://rubygems.org/
|
|
11
12
|
specs:
|
|
12
|
-
actioncable (
|
|
13
|
-
actionpack (=
|
|
13
|
+
actioncable (6.0.3.2)
|
|
14
|
+
actionpack (= 6.0.3.2)
|
|
14
15
|
nio4r (~> 2.0)
|
|
15
16
|
websocket-driver (>= 0.6.1)
|
|
16
|
-
|
|
17
|
-
actionpack (=
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
actionmailbox (6.0.3.2)
|
|
18
|
+
actionpack (= 6.0.3.2)
|
|
19
|
+
activejob (= 6.0.3.2)
|
|
20
|
+
activerecord (= 6.0.3.2)
|
|
21
|
+
activestorage (= 6.0.3.2)
|
|
22
|
+
activesupport (= 6.0.3.2)
|
|
23
|
+
mail (>= 2.7.1)
|
|
24
|
+
actionmailer (6.0.3.2)
|
|
25
|
+
actionpack (= 6.0.3.2)
|
|
26
|
+
actionview (= 6.0.3.2)
|
|
27
|
+
activejob (= 6.0.3.2)
|
|
20
28
|
mail (~> 2.5, >= 2.5.4)
|
|
21
29
|
rails-dom-testing (~> 2.0)
|
|
22
|
-
actionpack (
|
|
23
|
-
actionview (=
|
|
24
|
-
activesupport (=
|
|
30
|
+
actionpack (6.0.3.2)
|
|
31
|
+
actionview (= 6.0.3.2)
|
|
32
|
+
activesupport (= 6.0.3.2)
|
|
25
33
|
rack (~> 2.0, >= 2.0.8)
|
|
26
34
|
rack-test (>= 0.6.3)
|
|
27
35
|
rails-dom-testing (~> 2.0)
|
|
28
|
-
rails-html-sanitizer (~> 1.0, >= 1.0
|
|
29
|
-
|
|
30
|
-
|
|
36
|
+
rails-html-sanitizer (~> 1.0, >= 1.2.0)
|
|
37
|
+
actiontext (6.0.3.2)
|
|
38
|
+
actionpack (= 6.0.3.2)
|
|
39
|
+
activerecord (= 6.0.3.2)
|
|
40
|
+
activestorage (= 6.0.3.2)
|
|
41
|
+
activesupport (= 6.0.3.2)
|
|
42
|
+
nokogiri (>= 1.8.5)
|
|
43
|
+
actionview (6.0.3.2)
|
|
44
|
+
activesupport (= 6.0.3.2)
|
|
31
45
|
builder (~> 3.1)
|
|
32
46
|
erubi (~> 1.4)
|
|
33
47
|
rails-dom-testing (~> 2.0)
|
|
34
|
-
rails-html-sanitizer (~> 1.
|
|
35
|
-
activejob (
|
|
36
|
-
activesupport (=
|
|
48
|
+
rails-html-sanitizer (~> 1.1, >= 1.2.0)
|
|
49
|
+
activejob (6.0.3.2)
|
|
50
|
+
activesupport (= 6.0.3.2)
|
|
37
51
|
globalid (>= 0.3.6)
|
|
38
|
-
activemodel (
|
|
39
|
-
activesupport (=
|
|
40
|
-
activerecord (
|
|
41
|
-
activemodel (=
|
|
42
|
-
activesupport (=
|
|
43
|
-
|
|
44
|
-
activerecord-import (1.0.3)
|
|
52
|
+
activemodel (6.0.3.2)
|
|
53
|
+
activesupport (= 6.0.3.2)
|
|
54
|
+
activerecord (6.0.3.2)
|
|
55
|
+
activemodel (= 6.0.3.2)
|
|
56
|
+
activesupport (= 6.0.3.2)
|
|
57
|
+
activerecord-import (1.0.5)
|
|
45
58
|
activerecord (>= 3.2)
|
|
46
|
-
activestorage (
|
|
47
|
-
actionpack (=
|
|
48
|
-
|
|
59
|
+
activestorage (6.0.3.2)
|
|
60
|
+
actionpack (= 6.0.3.2)
|
|
61
|
+
activejob (= 6.0.3.2)
|
|
62
|
+
activerecord (= 6.0.3.2)
|
|
49
63
|
marcel (~> 0.3.1)
|
|
50
|
-
activesupport (
|
|
64
|
+
activesupport (6.0.3.2)
|
|
51
65
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
52
66
|
i18n (>= 0.7, < 2)
|
|
53
67
|
minitest (~> 5.1)
|
|
54
68
|
tzinfo (~> 1.1)
|
|
55
|
-
|
|
56
|
-
ast (2.4.
|
|
57
|
-
avro (1.9.
|
|
69
|
+
zeitwerk (~> 2.2, >= 2.2.2)
|
|
70
|
+
ast (2.4.1)
|
|
71
|
+
avro (1.9.2)
|
|
58
72
|
multi_json
|
|
59
73
|
avro_turf (0.11.0)
|
|
60
74
|
avro (>= 1.7.7, < 1.10)
|
|
61
75
|
excon (~> 0.45)
|
|
62
76
|
builder (3.2.4)
|
|
63
|
-
coderay (1.1.
|
|
64
|
-
concurrent-ruby (1.1.
|
|
65
|
-
concurrent-ruby-ext (1.1.
|
|
66
|
-
concurrent-ruby (= 1.1.
|
|
77
|
+
coderay (1.1.3)
|
|
78
|
+
concurrent-ruby (1.1.6)
|
|
79
|
+
concurrent-ruby-ext (1.1.6)
|
|
80
|
+
concurrent-ruby (= 1.1.6)
|
|
67
81
|
crass (1.0.6)
|
|
68
|
-
|
|
82
|
+
database_cleaner (1.8.5)
|
|
83
|
+
ddtrace (0.37.0)
|
|
69
84
|
msgpack
|
|
70
|
-
diff-lcs (1.
|
|
71
|
-
digest-crc (0.
|
|
72
|
-
|
|
85
|
+
diff-lcs (1.4.4)
|
|
86
|
+
digest-crc (0.6.1)
|
|
87
|
+
rake (~> 13.0)
|
|
88
|
+
dogstatsd-ruby (4.8.1)
|
|
73
89
|
erubi (1.9.0)
|
|
74
|
-
excon (0.
|
|
90
|
+
excon (0.76.0)
|
|
75
91
|
exponential-backoff (0.0.4)
|
|
76
|
-
ffi (1.
|
|
92
|
+
ffi (1.13.1)
|
|
77
93
|
formatador (0.2.5)
|
|
78
94
|
globalid (0.4.2)
|
|
79
95
|
activesupport (>= 4.2.0)
|
|
80
|
-
guard (2.16.
|
|
96
|
+
guard (2.16.2)
|
|
81
97
|
formatador (>= 0.2.4)
|
|
82
98
|
listen (>= 2.7, < 4.0)
|
|
83
99
|
lumberjack (>= 1.0.12, < 2.0)
|
|
@@ -94,43 +110,42 @@ GEM
|
|
|
94
110
|
guard-rubocop (1.3.0)
|
|
95
111
|
guard (~> 2.0)
|
|
96
112
|
rubocop (~> 0.20)
|
|
97
|
-
i18n (1.8.
|
|
113
|
+
i18n (1.8.4)
|
|
98
114
|
concurrent-ruby (~> 1.0)
|
|
99
|
-
jaro_winkler (1.5.4)
|
|
100
115
|
listen (3.2.1)
|
|
101
116
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
|
102
117
|
rb-inotify (~> 0.9, >= 0.9.10)
|
|
103
118
|
little-plugger (1.1.4)
|
|
104
|
-
logging (2.
|
|
119
|
+
logging (2.3.0)
|
|
105
120
|
little-plugger (~> 1.1)
|
|
106
|
-
multi_json (~> 1.
|
|
107
|
-
loofah (2.
|
|
121
|
+
multi_json (~> 1.14)
|
|
122
|
+
loofah (2.6.0)
|
|
108
123
|
crass (~> 1.0.2)
|
|
109
124
|
nokogiri (>= 1.5.9)
|
|
110
|
-
lumberjack (1.
|
|
125
|
+
lumberjack (1.2.6)
|
|
111
126
|
mail (2.7.1)
|
|
112
127
|
mini_mime (>= 0.1.1)
|
|
113
128
|
marcel (0.3.3)
|
|
114
129
|
mimemagic (~> 0.3.2)
|
|
115
|
-
method_source (0.
|
|
116
|
-
mimemagic (0.3.
|
|
130
|
+
method_source (1.0.0)
|
|
131
|
+
mimemagic (0.3.5)
|
|
117
132
|
mini_mime (1.0.2)
|
|
118
133
|
mini_portile2 (2.4.0)
|
|
119
|
-
minitest (5.14.
|
|
120
|
-
msgpack (1.3.
|
|
121
|
-
multi_json (1.
|
|
134
|
+
minitest (5.14.1)
|
|
135
|
+
msgpack (1.3.3)
|
|
136
|
+
multi_json (1.15.0)
|
|
122
137
|
mysql2 (0.5.3)
|
|
123
138
|
nenv (0.3.0)
|
|
124
139
|
nio4r (2.5.2)
|
|
125
|
-
nokogiri (1.10.
|
|
140
|
+
nokogiri (1.10.10)
|
|
126
141
|
mini_portile2 (~> 2.4.0)
|
|
127
142
|
notiffany (0.1.3)
|
|
128
143
|
nenv (~> 0.1)
|
|
129
144
|
shellany (~> 0.0)
|
|
130
|
-
parallel (1.19.
|
|
131
|
-
parser (2.
|
|
132
|
-
ast (~> 2.4.
|
|
133
|
-
pg (1.
|
|
145
|
+
parallel (1.19.2)
|
|
146
|
+
parser (2.7.1.4)
|
|
147
|
+
ast (~> 2.4.1)
|
|
148
|
+
pg (1.2.3)
|
|
134
149
|
phobos (1.9.0)
|
|
135
150
|
activesupport (>= 3.0.0)
|
|
136
151
|
concurrent-ruby (>= 1.0.2)
|
|
@@ -139,94 +154,113 @@ GEM
|
|
|
139
154
|
logging
|
|
140
155
|
ruby-kafka
|
|
141
156
|
thor
|
|
142
|
-
pry (0.
|
|
143
|
-
coderay (~> 1.1
|
|
144
|
-
method_source (~>
|
|
145
|
-
rack (2.2.
|
|
157
|
+
pry (0.13.1)
|
|
158
|
+
coderay (~> 1.1)
|
|
159
|
+
method_source (~> 1.0)
|
|
160
|
+
rack (2.2.3)
|
|
146
161
|
rack-test (1.1.0)
|
|
147
162
|
rack (>= 1.0, < 3)
|
|
148
|
-
rails (
|
|
149
|
-
actioncable (=
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
163
|
+
rails (6.0.3.2)
|
|
164
|
+
actioncable (= 6.0.3.2)
|
|
165
|
+
actionmailbox (= 6.0.3.2)
|
|
166
|
+
actionmailer (= 6.0.3.2)
|
|
167
|
+
actionpack (= 6.0.3.2)
|
|
168
|
+
actiontext (= 6.0.3.2)
|
|
169
|
+
actionview (= 6.0.3.2)
|
|
170
|
+
activejob (= 6.0.3.2)
|
|
171
|
+
activemodel (= 6.0.3.2)
|
|
172
|
+
activerecord (= 6.0.3.2)
|
|
173
|
+
activestorage (= 6.0.3.2)
|
|
174
|
+
activesupport (= 6.0.3.2)
|
|
158
175
|
bundler (>= 1.3.0)
|
|
159
|
-
railties (=
|
|
176
|
+
railties (= 6.0.3.2)
|
|
160
177
|
sprockets-rails (>= 2.0.0)
|
|
161
178
|
rails-dom-testing (2.0.3)
|
|
162
179
|
activesupport (>= 4.2.0)
|
|
163
180
|
nokogiri (>= 1.6)
|
|
164
181
|
rails-html-sanitizer (1.3.0)
|
|
165
182
|
loofah (~> 2.3)
|
|
166
|
-
railties (
|
|
167
|
-
actionpack (=
|
|
168
|
-
activesupport (=
|
|
183
|
+
railties (6.0.3.2)
|
|
184
|
+
actionpack (= 6.0.3.2)
|
|
185
|
+
activesupport (= 6.0.3.2)
|
|
169
186
|
method_source
|
|
170
187
|
rake (>= 0.8.7)
|
|
171
|
-
thor (>= 0.
|
|
188
|
+
thor (>= 0.20.3, < 2.0)
|
|
172
189
|
rainbow (3.0.0)
|
|
173
190
|
rake (13.0.1)
|
|
174
|
-
rb-fsevent (0.10.
|
|
175
|
-
rb-inotify (0.10.
|
|
191
|
+
rb-fsevent (0.10.4)
|
|
192
|
+
rb-inotify (0.10.1)
|
|
176
193
|
ffi (~> 1.0)
|
|
194
|
+
regexp_parser (1.7.1)
|
|
195
|
+
rexml (3.2.4)
|
|
177
196
|
rspec (3.9.0)
|
|
178
197
|
rspec-core (~> 3.9.0)
|
|
179
198
|
rspec-expectations (~> 3.9.0)
|
|
180
199
|
rspec-mocks (~> 3.9.0)
|
|
181
|
-
rspec-core (3.9.
|
|
182
|
-
rspec-support (~> 3.9.
|
|
183
|
-
rspec-expectations (3.9.
|
|
200
|
+
rspec-core (3.9.2)
|
|
201
|
+
rspec-support (~> 3.9.3)
|
|
202
|
+
rspec-expectations (3.9.2)
|
|
184
203
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
185
204
|
rspec-support (~> 3.9.0)
|
|
186
|
-
rspec-mocks (3.9.
|
|
205
|
+
rspec-mocks (3.9.1)
|
|
187
206
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
188
207
|
rspec-support (~> 3.9.0)
|
|
189
|
-
rspec-
|
|
208
|
+
rspec-rails (4.0.1)
|
|
209
|
+
actionpack (>= 4.2)
|
|
210
|
+
activesupport (>= 4.2)
|
|
211
|
+
railties (>= 4.2)
|
|
212
|
+
rspec-core (~> 3.9)
|
|
213
|
+
rspec-expectations (~> 3.9)
|
|
214
|
+
rspec-mocks (~> 3.9)
|
|
215
|
+
rspec-support (~> 3.9)
|
|
216
|
+
rspec-support (3.9.3)
|
|
190
217
|
rspec_junit_formatter (0.4.1)
|
|
191
218
|
rspec-core (>= 2, < 4, != 2.12.0)
|
|
192
|
-
rubocop (0.
|
|
193
|
-
jaro_winkler (~> 1.5.1)
|
|
219
|
+
rubocop (0.88.0)
|
|
194
220
|
parallel (~> 1.10)
|
|
195
|
-
parser (>= 2.
|
|
221
|
+
parser (>= 2.7.1.1)
|
|
196
222
|
rainbow (>= 2.2.2, < 4.0)
|
|
223
|
+
regexp_parser (>= 1.7)
|
|
224
|
+
rexml
|
|
225
|
+
rubocop-ast (>= 0.1.0, < 1.0)
|
|
197
226
|
ruby-progressbar (~> 1.7)
|
|
198
|
-
unicode-display_width (>= 1.4.0, <
|
|
199
|
-
rubocop-
|
|
200
|
-
|
|
227
|
+
unicode-display_width (>= 1.4.0, < 2.0)
|
|
228
|
+
rubocop-ast (0.2.0)
|
|
229
|
+
parser (>= 2.7.0.1)
|
|
230
|
+
rubocop-rspec (1.42.0)
|
|
231
|
+
rubocop (>= 0.87.0)
|
|
201
232
|
ruby-kafka (0.7.10)
|
|
202
233
|
digest-crc
|
|
203
234
|
ruby-progressbar (1.10.1)
|
|
204
235
|
shellany (0.0.1)
|
|
205
|
-
|
|
236
|
+
sigurd (0.0.1)
|
|
237
|
+
concurrent-ruby (~> 1)
|
|
238
|
+
exponential-backoff
|
|
239
|
+
sprockets (4.0.2)
|
|
206
240
|
concurrent-ruby (~> 1.0)
|
|
207
241
|
rack (> 1, < 3)
|
|
208
242
|
sprockets-rails (3.2.1)
|
|
209
243
|
actionpack (>= 4.0)
|
|
210
244
|
activesupport (>= 4.0)
|
|
211
245
|
sprockets (>= 3.0.0)
|
|
212
|
-
sqlite3 (1.4.
|
|
246
|
+
sqlite3 (1.4.2)
|
|
213
247
|
thor (1.0.1)
|
|
214
248
|
thread_safe (0.3.6)
|
|
215
249
|
tzinfo (1.2.7)
|
|
216
250
|
thread_safe (~> 0.1)
|
|
217
|
-
unicode-display_width (1.
|
|
218
|
-
websocket-driver (0.7.
|
|
251
|
+
unicode-display_width (1.7.0)
|
|
252
|
+
websocket-driver (0.7.3)
|
|
219
253
|
websocket-extensions (>= 0.1.0)
|
|
220
|
-
websocket-extensions (0.1.
|
|
254
|
+
websocket-extensions (0.1.5)
|
|
255
|
+
zeitwerk (2.4.0)
|
|
221
256
|
|
|
222
257
|
PLATFORMS
|
|
223
258
|
ruby
|
|
224
259
|
|
|
225
260
|
DEPENDENCIES
|
|
226
|
-
activerecord (~> 5.2)
|
|
227
261
|
activerecord-import
|
|
228
262
|
avro (~> 1.9)
|
|
229
|
-
|
|
263
|
+
database_cleaner (~> 1.7)
|
|
230
264
|
ddtrace (~> 0.11)
|
|
231
265
|
deimos-ruby!
|
|
232
266
|
dogstatsd-ruby (~> 4.2)
|
|
@@ -235,13 +269,14 @@ DEPENDENCIES
|
|
|
235
269
|
guard-rubocop (~> 1)
|
|
236
270
|
mysql2 (~> 0.5)
|
|
237
271
|
pg (~> 1.1)
|
|
238
|
-
rails (~>
|
|
272
|
+
rails (~> 6)
|
|
239
273
|
rake (~> 13)
|
|
240
274
|
rspec (~> 3)
|
|
275
|
+
rspec-rails (~> 4)
|
|
241
276
|
rspec_junit_formatter (~> 0.3)
|
|
242
277
|
rubocop (~> 0.72)
|
|
243
278
|
rubocop-rspec (~> 1.27)
|
|
244
279
|
sqlite3 (~> 1.3)
|
|
245
280
|
|
|
246
281
|
BUNDLED WITH
|
|
247
|
-
1.
|
|
282
|
+
2.1.4
|