karafka 1.2.13 → 1.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/{.coditsu.yml → .coditsu/ci.yml} +1 -1
- data/.console_irbrc +1 -3
- data/.github/FUNDING.yml +3 -0
- data/.github/ISSUE_TEMPLATE/bug_report.md +50 -0
- data/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
- data/.gitignore +1 -0
- data/.ruby-version +1 -1
- data/.travis.yml +4 -17
- data/CHANGELOG.md +68 -4
- data/CONTRIBUTING.md +1 -1
- data/Gemfile +2 -5
- data/Gemfile.lock +68 -57
- data/README.md +10 -11
- data/bin/karafka +1 -1
- data/certs/mensfeld.pem +25 -0
- data/config/errors.yml +38 -5
- data/karafka.gemspec +13 -11
- data/lib/karafka.rb +7 -15
- data/lib/karafka/app.rb +14 -6
- data/lib/karafka/attributes_map.rb +4 -5
- data/lib/karafka/base_consumer.rb +19 -30
- data/lib/karafka/base_responder.rb +45 -27
- data/lib/karafka/cli.rb +1 -1
- data/lib/karafka/cli/console.rb +11 -9
- data/lib/karafka/cli/flow.rb +0 -1
- data/lib/karafka/cli/info.rb +3 -1
- data/lib/karafka/cli/install.rb +30 -6
- data/lib/karafka/cli/server.rb +11 -6
- data/lib/karafka/code_reloader.rb +67 -0
- data/lib/karafka/connection/api_adapter.rb +11 -4
- data/lib/karafka/connection/batch_delegator.rb +51 -0
- data/lib/karafka/connection/builder.rb +1 -1
- data/lib/karafka/connection/client.rb +30 -20
- data/lib/karafka/connection/listener.rb +24 -13
- data/lib/karafka/connection/message_delegator.rb +36 -0
- data/lib/karafka/consumers/callbacks.rb +32 -15
- data/lib/karafka/consumers/includer.rb +30 -18
- data/lib/karafka/consumers/metadata.rb +10 -0
- data/lib/karafka/consumers/responders.rb +2 -2
- data/lib/karafka/contracts.rb +10 -0
- data/lib/karafka/contracts/config.rb +21 -0
- data/lib/karafka/contracts/consumer_group.rb +206 -0
- data/lib/karafka/contracts/consumer_group_topic.rb +19 -0
- data/lib/karafka/contracts/responder_usage.rb +54 -0
- data/lib/karafka/contracts/server_cli_options.rb +29 -0
- data/lib/karafka/errors.rb +17 -16
- data/lib/karafka/fetcher.rb +28 -30
- data/lib/karafka/helpers/class_matcher.rb +5 -1
- data/lib/karafka/helpers/config_retriever.rb +1 -1
- data/lib/karafka/helpers/inflector.rb +26 -0
- data/lib/karafka/helpers/multi_delegator.rb +0 -1
- data/lib/karafka/instrumentation/logger.rb +9 -6
- data/lib/karafka/instrumentation/monitor.rb +15 -9
- data/lib/karafka/instrumentation/proctitle_listener.rb +36 -0
- data/lib/karafka/instrumentation/stdout_listener.rb +138 -0
- data/lib/karafka/params/builders/metadata.rb +33 -0
- data/lib/karafka/params/builders/params.rb +36 -0
- data/lib/karafka/params/builders/params_batch.rb +25 -0
- data/lib/karafka/params/metadata.rb +35 -0
- data/lib/karafka/params/params.rb +68 -0
- data/lib/karafka/params/params_batch.rb +35 -20
- data/lib/karafka/patches/ruby_kafka.rb +21 -8
- data/lib/karafka/persistence/client.rb +15 -11
- data/lib/karafka/persistence/{consumer.rb → consumers.rb} +20 -13
- data/lib/karafka/persistence/topics.rb +48 -0
- data/lib/karafka/process.rb +0 -2
- data/lib/karafka/responders/topic.rb +6 -8
- data/lib/karafka/routing/builder.rb +36 -8
- data/lib/karafka/routing/consumer_group.rb +1 -1
- data/lib/karafka/routing/consumer_mapper.rb +9 -9
- data/lib/karafka/routing/proxy.rb +10 -1
- data/lib/karafka/routing/topic.rb +5 -3
- data/lib/karafka/routing/topic_mapper.rb +16 -18
- data/lib/karafka/serialization/json/deserializer.rb +27 -0
- data/lib/karafka/serialization/json/serializer.rb +31 -0
- data/lib/karafka/server.rb +25 -27
- data/lib/karafka/setup/config.rb +63 -37
- data/lib/karafka/setup/configurators/water_drop.rb +7 -3
- data/lib/karafka/setup/dsl.rb +0 -1
- data/lib/karafka/status.rb +7 -3
- data/lib/karafka/templates/{application_consumer.rb.example → application_consumer.rb.erb} +2 -1
- data/lib/karafka/templates/{application_responder.rb.example → application_responder.rb.erb} +0 -0
- data/lib/karafka/templates/karafka.rb.erb +92 -0
- data/lib/karafka/version.rb +1 -1
- metadata +92 -59
- metadata.gz.sig +0 -0
- data/lib/karafka/callbacks.rb +0 -30
- data/lib/karafka/callbacks/config.rb +0 -22
- data/lib/karafka/callbacks/dsl.rb +0 -16
- data/lib/karafka/connection/delegator.rb +0 -46
- data/lib/karafka/instrumentation/listener.rb +0 -112
- data/lib/karafka/loader.rb +0 -28
- data/lib/karafka/params/dsl.rb +0 -158
- data/lib/karafka/parsers/json.rb +0 -38
- data/lib/karafka/patches/dry_configurable.rb +0 -33
- data/lib/karafka/persistence/topic.rb +0 -29
- data/lib/karafka/schemas/config.rb +0 -24
- data/lib/karafka/schemas/consumer_group.rb +0 -79
- data/lib/karafka/schemas/consumer_group_topic.rb +0 -18
- data/lib/karafka/schemas/responder_usage.rb +0 -39
- data/lib/karafka/schemas/server_cli_options.rb +0 -43
- data/lib/karafka/setup/configurators/base.rb +0 -29
- data/lib/karafka/setup/configurators/params.rb +0 -25
- data/lib/karafka/templates/karafka.rb.example +0 -54
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5ac8399f2185d0bb8068800b27b4f354b6ff9daa02dff11436eead93c2f7bc87
|
4
|
+
data.tar.gz: f6c27fa56b658887f2cf9e2ceb6f735889f86b41291ea123cca354a37f42fa27
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 489b6f20d26d55d67aef878ede57180f369107a1f77c8fe765acfc6d3005a31f21f9ce0677336efcc7df903b9525851c64303906778ca5192b415d83998b4273
|
7
|
+
data.tar.gz: 57e2c3dc857b942808e1969feb97c386f4b2c3ee44ad6e34568d1ee2bb58b3fe857ebb8ae1d6e5293c4d76f30cdcb3424fe6a31f6efda70651e90abff4cc54d3
|
checksums.yaml.gz.sig
ADDED
Binary file
|
data.tar.gz.sig
ADDED
Binary file
|
data/.console_irbrc
CHANGED
@@ -1,11 +1,9 @@
|
|
1
1
|
# irbrc for Karafka console
|
2
|
-
require 'karafka'
|
3
|
-
require Karafka.boot_file
|
4
2
|
|
5
3
|
IRB.conf[:AUTO_INDENT] = true
|
6
4
|
IRB.conf[:SAVE_HISTORY] = 1000
|
7
5
|
IRB.conf[:USE_READLINE] = true
|
8
|
-
IRB.conf[:HISTORY_FILE] = "
|
6
|
+
IRB.conf[:HISTORY_FILE] = ".irb-history"
|
9
7
|
IRB.conf[:LOAD_MODULES] = [] unless IRB.conf.key?(:LOAD_MODULES)
|
10
8
|
|
11
9
|
unless IRB.conf[:LOAD_MODULES].include?('irb/completion')
|
data/.github/FUNDING.yml
ADDED
@@ -0,0 +1,50 @@
|
|
1
|
+
---
|
2
|
+
name: Bug Report
|
3
|
+
about: Report an issue with Karafka you've discovered.
|
4
|
+
---
|
5
|
+
|
6
|
+
*Be clear, concise and precise in your description of the problem.
|
7
|
+
Open an issue with a descriptive title and a summary in grammatically correct,
|
8
|
+
complete sentences.*
|
9
|
+
|
10
|
+
*Use the template below when reporting bugs. Please, make sure that
|
11
|
+
you're running the latest stable Karafka and that the problem you're reporting
|
12
|
+
hasn't been reported (and potentially fixed) already.*
|
13
|
+
|
14
|
+
*Before filing the ticket you should replace all text above the horizontal
|
15
|
+
rule with your own words.*
|
16
|
+
|
17
|
+
--------
|
18
|
+
|
19
|
+
## Expected behavior
|
20
|
+
|
21
|
+
Describe here how you expected Karafka to behave in this particular situation.
|
22
|
+
|
23
|
+
## Actual behavior
|
24
|
+
|
25
|
+
Describe here what actually happened.
|
26
|
+
|
27
|
+
## Steps to reproduce the problem
|
28
|
+
|
29
|
+
This is extremely important! Providing us with a reliable way to reproduce
|
30
|
+
a problem will expedite its solution.
|
31
|
+
|
32
|
+
## Your setup details
|
33
|
+
|
34
|
+
Please provide kafka version and the output of `karafka info` or `bundle exec karafka info` if using Bundler.
|
35
|
+
|
36
|
+
Here's an example:
|
37
|
+
|
38
|
+
```
|
39
|
+
$ [bundle exec] karafka info
|
40
|
+
Karafka version: 1.3.0
|
41
|
+
Ruby version: 2.6.3
|
42
|
+
Ruby-kafka version: 0.7.9
|
43
|
+
Application client id: karafka-local
|
44
|
+
Backend: inline
|
45
|
+
Batch fetching: true
|
46
|
+
Batch consuming: true
|
47
|
+
Boot file: /app/karafka/karafka.rb
|
48
|
+
Environment: development
|
49
|
+
Kafka seed brokers: ["kafka://kafka:9092"]
|
50
|
+
```
|
@@ -0,0 +1,20 @@
|
|
1
|
+
---
|
2
|
+
name: Feature Request
|
3
|
+
about: Suggest new Karafka features or improvements to existing features.
|
4
|
+
---
|
5
|
+
|
6
|
+
## Is your feature request related to a problem? Please describe.
|
7
|
+
|
8
|
+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
9
|
+
|
10
|
+
## Describe the solution you'd like
|
11
|
+
|
12
|
+
A clear and concise description of what you want to happen.
|
13
|
+
|
14
|
+
## Describe alternatives you've considered
|
15
|
+
|
16
|
+
A clear and concise description of any alternative solutions or features you've considered.
|
17
|
+
|
18
|
+
## Additional context
|
19
|
+
|
20
|
+
Add any other context or screenshots about the feature request here.
|
data/.gitignore
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.6.
|
1
|
+
2.6.5
|
data/.travis.yml
CHANGED
@@ -19,30 +19,17 @@ test: &test
|
|
19
19
|
jobs:
|
20
20
|
include:
|
21
21
|
- <<: *test
|
22
|
-
rvm: 2.6.
|
22
|
+
rvm: 2.6.5
|
23
23
|
- <<: *test
|
24
|
-
rvm: 2.5.
|
25
|
-
- <<: *test
|
26
|
-
rvm: 2.4.5
|
27
|
-
- <<: *test
|
28
|
-
rvm: 2.3.8
|
24
|
+
rvm: 2.5.5
|
29
25
|
|
30
26
|
- stage: coditsu
|
31
27
|
language: ruby
|
32
|
-
rvm: 2.6.
|
28
|
+
rvm: 2.6.5
|
33
29
|
before_install:
|
34
30
|
- gem update --system
|
35
31
|
- gem install bundler
|
36
|
-
|
37
|
-
- docker create -v /sources --name sources alpine:3.4 /bin/true
|
38
|
-
- docker cp ./ sources:/sources
|
39
|
-
script: >
|
40
|
-
docker run
|
41
|
-
-e CODITSU_API_KEY
|
42
|
-
-e CODITSU_API_SECRET
|
43
|
-
-e CODITSU_REPOSITORY_ID
|
44
|
-
--volumes-from sources
|
45
|
-
coditsu/build-runner:latest
|
32
|
+
script: \curl -sSL https://api.coditsu.io/run/ci | bash
|
46
33
|
|
47
34
|
stages:
|
48
35
|
- coditsu
|
data/CHANGELOG.md
CHANGED
@@ -1,10 +1,71 @@
|
|
1
1
|
# Karafka framework changelog
|
2
2
|
|
3
|
-
##
|
4
|
-
|
5
|
-
|
6
|
-
|
3
|
+
## Unreleased (master)
|
4
|
+
|
5
|
+
## 1.3.1 (2019-11-11)
|
6
|
+
- #545 - Makes sure the log directory exists when is possible (robertomiranda)
|
7
|
+
- Ruby 2.6.5 support
|
8
|
+
- #551 - add support for DSA keys
|
9
|
+
- #549 - Missing directories after `karafka install` (nijikon)
|
10
|
+
|
11
|
+
## 1.3.0 (2019-09-09)
|
12
|
+
- Drop support for Ruby 2.4
|
13
|
+
- YARD docs tags cleanup
|
14
|
+
|
15
|
+
## 1.3.0.rc1 (2019-07-31)
|
16
|
+
- Drop support for Kafka 0.10 in favor of native support for Kafka 0.11.
|
17
|
+
- Update ruby-kafka to the 0.7 version
|
18
|
+
- Support messages headers receiving
|
19
|
+
- Message bus unification
|
20
|
+
- Parser available in metadata
|
21
|
+
- Cleanup towards moving to a non-global state app management
|
22
|
+
- Drop Ruby 2.3 support
|
23
|
+
- Support for Ruby 2.6.3
|
24
|
+
- `Karafka::Loader` has been removed in favor of Zeitwerk
|
25
|
+
- Schemas are now contracts
|
26
|
+
- #393 - Reorganize responders - removed `multiple_usage` constrain
|
27
|
+
- #388 - ssl_client_cert_chain sync
|
28
|
+
- #300 - Store value in a value key and replace its content with parsed version - without root merge
|
29
|
+
- #331 - Disallow building groups without topics
|
30
|
+
- #340 - Instrumentation unification. Better and more consistent naming
|
31
|
+
- #340 - Procline instrumentation for a nicer process name
|
32
|
+
- #342 - Change default for `fetcher_max_queue_size` from `100` to `10` to lower max memory usage
|
33
|
+
- #345 - Cleanup exceptions names
|
34
|
+
- #341 - Split connection delegator into batch delegator and single_delegator
|
35
|
+
- #351 - Rename `#retrieve!` to `#parse!` on params and `#parsed` to `parse!` on params batch.
|
36
|
+
- #351 - Adds '#first' for params_batch that returns parsed first element from the params_batch object.
|
37
|
+
- #360 - Single params consuming mode automatically parses data specs
|
38
|
+
- #359 - Divide mark_as_consumed into mark_as_consumed and mark_as_consumed!
|
39
|
+
- #356 - Provide a `#values` for params_batch to extract only values of objects from the params_batch
|
40
|
+
- #363 - Too shallow ruby-kafka version lock
|
41
|
+
- #354 - Expose consumer heartbeat
|
42
|
+
- #377 - Remove the persistent setup in favor of persistence
|
43
|
+
- #375 - Sidekiq Backend parser mismatch
|
44
|
+
- #369 - Single consumer can support more than one topic
|
45
|
+
- #288 - Drop dependency on `activesupport` gem
|
46
|
+
- #371 - SASL over SSL
|
47
|
+
- #392 - Move params redundant data to metadata
|
48
|
+
- #335 - Metadata access from within the consumer
|
49
|
+
- #402 - Delayed reconnection upon critical failures
|
50
|
+
- #405 - `reconnect_timeout` value is now being validated
|
51
|
+
- #437 - Specs ensuring that the `#437` won't occur in the `1.3` release
|
52
|
+
- #426 - ssl client cert key password
|
53
|
+
- #444 - add certificate and private key validation
|
54
|
+
- #460 - Decouple responder "parser" (generator?) from topic.parser (benissimo)
|
55
|
+
- #463 - Split parsers into serializers / deserializers
|
56
|
+
- #473 - Support SASL OAuthBearer Authentication
|
57
|
+
- #475 - Disallow subscribing to the same topic with multiple consumers
|
58
|
+
- #485 - Setting shutdown_timeout to nil kills the app without waiting for anything
|
59
|
+
- #487 - Make listeners as instances
|
7
60
|
- #29 - Consumer class names must have the word "Consumer" in it in order to work (Sidekiq backend)
|
61
|
+
- #491 - irb is missing for console to work
|
62
|
+
- #502 - Karafka process hangs when sending multiple sigkills
|
63
|
+
- #506 - ssl_verify_hostname sync
|
64
|
+
- #483 - Upgrade dry-validation before releasing 1.3
|
65
|
+
- #492 - Use Zeitwerk for code reload in development
|
66
|
+
- #508 - Reset the consumers instances upon reconnecting to a cluster
|
67
|
+
- [#530](https://github.com/karafka/karafka/pull/530) - expose ruby and ruby-kafka version
|
68
|
+
- [534](https://github.com/karafka/karafka/pull/534) - Allow to use headers in the deserializer object
|
8
69
|
|
9
70
|
## 1.2.11
|
10
71
|
- [#470](https://github.com/karafka/karafka/issues/470) Karafka not working with dry-configurable 0.8
|
@@ -27,6 +88,7 @@
|
|
27
88
|
## 1.2.6
|
28
89
|
- Lock WaterDrop to 1.2.3
|
29
90
|
- Lock Ruby-Kafka to 0.6.x (support for 0.7 will be added in Karafka 1.3)
|
91
|
+
- #382 - Full logging with AR, etc for development mode when there is Rails integration
|
30
92
|
|
31
93
|
## 1.2.5
|
32
94
|
- #354 - Expose consumer heartbeat
|
@@ -37,10 +99,12 @@
|
|
37
99
|
|
38
100
|
## 1.2.3
|
39
101
|
- #313 - support PLAINTEXT and SSL for scheme
|
102
|
+
- #288 - drop activesupport callbacks in favor of notifications
|
40
103
|
- #320 - Pausing indefinetely with nil pause timeout doesn't work
|
41
104
|
- #318 - Partition pausing doesn't work with custom topic mappers
|
42
105
|
- Rename ConfigAdapter to ApiAdapter to better reflect what it does
|
43
106
|
- #317 - Manual offset committing doesn't work with custom topic mappers
|
107
|
+
- #319 - Support for exponential backoff in pause
|
44
108
|
|
45
109
|
## 1.2.2
|
46
110
|
- #312 - Broken for ActiveSupport 5.2.0
|
data/CONTRIBUTING.md
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
First, thank you for considering contributing to karafka! It's people like you that make the open source community such a great community! 😊
|
6
6
|
|
7
|
-
We welcome any type of contribution, not only code. You can help with
|
7
|
+
We welcome any type of contribution, not only code. You can help with:
|
8
8
|
- **QA**: file bug reports, the more details you can give the better (e.g. screenshots with the console open)
|
9
9
|
- **Marketing**: writing blog posts, howto's, printing stickers, ...
|
10
10
|
- **Community**: presenting the project at meetups, organizing a dedicated meetup for the local community, ...
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,126 +1,137 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
karafka (1.
|
5
|
-
activesupport (>= 4.0)
|
4
|
+
karafka (1.3.1)
|
6
5
|
dry-configurable (~> 0.8)
|
7
6
|
dry-inflector (~> 0.1)
|
8
7
|
dry-monitor (~> 0.3)
|
9
|
-
dry-validation (~>
|
10
|
-
envlogic (~> 1.
|
8
|
+
dry-validation (~> 1.2)
|
9
|
+
envlogic (~> 1.1)
|
10
|
+
irb (~> 1.0)
|
11
11
|
multi_json (>= 1.12)
|
12
12
|
rake (>= 11.3)
|
13
|
-
|
14
|
-
ruby-kafka (>= 0.6)
|
13
|
+
ruby-kafka (>= 0.7.8)
|
15
14
|
thor (~> 0.20)
|
16
|
-
waterdrop (~> 1.
|
15
|
+
waterdrop (~> 1.3.0)
|
16
|
+
zeitwerk (~> 2.1)
|
17
17
|
|
18
18
|
GEM
|
19
19
|
remote: https://rubygems.org/
|
20
20
|
specs:
|
21
|
-
activesupport (
|
21
|
+
activesupport (6.0.1)
|
22
22
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
23
23
|
i18n (>= 0.7, < 2)
|
24
24
|
minitest (~> 5.1)
|
25
25
|
tzinfo (~> 1.1)
|
26
|
-
|
26
|
+
zeitwerk (~> 2.2)
|
27
|
+
byebug (11.0.1)
|
27
28
|
concurrent-ruby (1.1.5)
|
28
|
-
delivery_boy (0.2.
|
29
|
-
king_konf (~> 0.
|
30
|
-
ruby-kafka (~> 0.
|
29
|
+
delivery_boy (0.2.8)
|
30
|
+
king_konf (~> 0.3)
|
31
|
+
ruby-kafka (~> 0.7.8)
|
31
32
|
diff-lcs (1.3)
|
32
33
|
digest-crc (0.4.1)
|
33
|
-
docile (1.3.
|
34
|
-
dry-configurable (0.
|
34
|
+
docile (1.3.2)
|
35
|
+
dry-configurable (0.9.0)
|
35
36
|
concurrent-ruby (~> 1.0)
|
36
37
|
dry-core (~> 0.4, >= 0.4.7)
|
37
|
-
dry-container (0.7.
|
38
|
+
dry-container (0.7.2)
|
38
39
|
concurrent-ruby (~> 1.0)
|
39
40
|
dry-configurable (~> 0.1, >= 0.1.3)
|
40
|
-
dry-core (0.4.
|
41
|
+
dry-core (0.4.9)
|
41
42
|
concurrent-ruby (~> 1.0)
|
42
|
-
dry-equalizer (0.
|
43
|
-
dry-events (0.
|
43
|
+
dry-equalizer (0.3.0)
|
44
|
+
dry-events (0.2.0)
|
44
45
|
concurrent-ruby (~> 1.0)
|
45
46
|
dry-core (~> 0.4)
|
46
47
|
dry-equalizer (~> 0.2)
|
47
|
-
dry-inflector (0.
|
48
|
-
dry-
|
48
|
+
dry-inflector (0.2.0)
|
49
|
+
dry-initializer (3.0.2)
|
50
|
+
dry-logic (1.0.5)
|
49
51
|
concurrent-ruby (~> 1.0)
|
50
52
|
dry-core (~> 0.2)
|
51
53
|
dry-equalizer (~> 0.2)
|
52
|
-
dry-monitor (0.3.
|
54
|
+
dry-monitor (0.3.1)
|
53
55
|
dry-configurable (~> 0.5)
|
54
56
|
dry-core (~> 0.4)
|
55
57
|
dry-equalizer (~> 0.2)
|
56
58
|
dry-events (~> 0.1)
|
57
|
-
dry-
|
59
|
+
dry-schema (1.4.1)
|
60
|
+
concurrent-ruby (~> 1.0)
|
61
|
+
dry-configurable (~> 0.8, >= 0.8.3)
|
62
|
+
dry-core (~> 0.4)
|
63
|
+
dry-equalizer (~> 0.2)
|
64
|
+
dry-initializer (~> 3.0)
|
65
|
+
dry-logic (~> 1.0)
|
66
|
+
dry-types (~> 1.2)
|
67
|
+
dry-types (1.2.1)
|
58
68
|
concurrent-ruby (~> 1.0)
|
59
69
|
dry-container (~> 0.3)
|
60
70
|
dry-core (~> 0.4, >= 0.4.4)
|
61
|
-
dry-equalizer (~> 0.2)
|
71
|
+
dry-equalizer (~> 0.2, >= 0.2.2)
|
62
72
|
dry-inflector (~> 0.1, >= 0.1.2)
|
63
|
-
dry-logic (~> 0
|
64
|
-
dry-validation (
|
73
|
+
dry-logic (~> 1.0, >= 1.0.2)
|
74
|
+
dry-validation (1.3.1)
|
65
75
|
concurrent-ruby (~> 1.0)
|
66
|
-
dry-
|
67
|
-
dry-core (~> 0.
|
76
|
+
dry-container (~> 0.7, >= 0.7.1)
|
77
|
+
dry-core (~> 0.4)
|
68
78
|
dry-equalizer (~> 0.2)
|
69
|
-
dry-
|
70
|
-
dry-
|
79
|
+
dry-initializer (~> 3.0)
|
80
|
+
dry-schema (~> 1.0, >= 1.3.1)
|
71
81
|
envlogic (1.1.0)
|
72
82
|
dry-inflector (~> 0.1)
|
73
|
-
|
83
|
+
factory_bot (5.1.1)
|
84
|
+
activesupport (>= 4.2.0)
|
85
|
+
i18n (1.7.0)
|
74
86
|
concurrent-ruby (~> 1.0)
|
75
|
-
|
87
|
+
irb (1.0.0)
|
88
|
+
json (2.2.0)
|
76
89
|
king_konf (0.3.7)
|
77
|
-
minitest (5.
|
78
|
-
multi_json (1.
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
rspec-
|
84
|
-
|
85
|
-
rspec-
|
86
|
-
rspec-
|
87
|
-
rspec-support (~> 3.8.0)
|
88
|
-
rspec-expectations (3.8.2)
|
90
|
+
minitest (5.13.0)
|
91
|
+
multi_json (1.14.1)
|
92
|
+
rake (13.0.0)
|
93
|
+
rspec (3.9.0)
|
94
|
+
rspec-core (~> 3.9.0)
|
95
|
+
rspec-expectations (~> 3.9.0)
|
96
|
+
rspec-mocks (~> 3.9.0)
|
97
|
+
rspec-core (3.9.0)
|
98
|
+
rspec-support (~> 3.9.0)
|
99
|
+
rspec-expectations (3.9.0)
|
89
100
|
diff-lcs (>= 1.2.0, < 2.0)
|
90
|
-
rspec-support (~> 3.
|
91
|
-
rspec-mocks (3.
|
101
|
+
rspec-support (~> 3.9.0)
|
102
|
+
rspec-mocks (3.9.0)
|
92
103
|
diff-lcs (>= 1.2.0, < 2.0)
|
93
|
-
rspec-support (~> 3.
|
94
|
-
rspec-support (3.
|
95
|
-
ruby-kafka (0.7.
|
104
|
+
rspec-support (~> 3.9.0)
|
105
|
+
rspec-support (3.9.0)
|
106
|
+
ruby-kafka (0.7.10)
|
96
107
|
digest-crc
|
97
|
-
simplecov (0.
|
108
|
+
simplecov (0.17.1)
|
98
109
|
docile (~> 1.1)
|
99
110
|
json (>= 1.8, < 3)
|
100
111
|
simplecov-html (~> 0.10.0)
|
101
112
|
simplecov-html (0.10.2)
|
102
113
|
thor (0.20.3)
|
103
114
|
thread_safe (0.3.6)
|
104
|
-
timecop (0.9.1)
|
105
115
|
tzinfo (1.2.5)
|
106
116
|
thread_safe (~> 0.1)
|
107
|
-
waterdrop (1.
|
117
|
+
waterdrop (1.3.1)
|
108
118
|
delivery_boy (~> 0.2)
|
109
119
|
dry-configurable (~> 0.8)
|
110
120
|
dry-monitor (~> 0.3)
|
111
|
-
dry-validation (~>
|
112
|
-
|
113
|
-
|
121
|
+
dry-validation (~> 1.2)
|
122
|
+
ruby-kafka (>= 0.7.8)
|
123
|
+
zeitwerk (~> 2.1)
|
124
|
+
zeitwerk (2.2.1)
|
114
125
|
|
115
126
|
PLATFORMS
|
116
127
|
ruby
|
117
128
|
|
118
129
|
DEPENDENCIES
|
119
|
-
|
130
|
+
byebug
|
131
|
+
factory_bot
|
120
132
|
karafka!
|
121
133
|
rspec
|
122
134
|
simplecov
|
123
|
-
timecop
|
124
135
|
|
125
136
|
BUNDLED WITH
|
126
|
-
2.0.
|
137
|
+
2.0.2
|