karafka 1.2.13 → 1.3.1

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 (107) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/{.coditsu.yml → .coditsu/ci.yml} +1 -1
  5. data/.console_irbrc +1 -3
  6. data/.github/FUNDING.yml +3 -0
  7. data/.github/ISSUE_TEMPLATE/bug_report.md +50 -0
  8. data/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  9. data/.gitignore +1 -0
  10. data/.ruby-version +1 -1
  11. data/.travis.yml +4 -17
  12. data/CHANGELOG.md +68 -4
  13. data/CONTRIBUTING.md +1 -1
  14. data/Gemfile +2 -5
  15. data/Gemfile.lock +68 -57
  16. data/README.md +10 -11
  17. data/bin/karafka +1 -1
  18. data/certs/mensfeld.pem +25 -0
  19. data/config/errors.yml +38 -5
  20. data/karafka.gemspec +13 -11
  21. data/lib/karafka.rb +7 -15
  22. data/lib/karafka/app.rb +14 -6
  23. data/lib/karafka/attributes_map.rb +4 -5
  24. data/lib/karafka/base_consumer.rb +19 -30
  25. data/lib/karafka/base_responder.rb +45 -27
  26. data/lib/karafka/cli.rb +1 -1
  27. data/lib/karafka/cli/console.rb +11 -9
  28. data/lib/karafka/cli/flow.rb +0 -1
  29. data/lib/karafka/cli/info.rb +3 -1
  30. data/lib/karafka/cli/install.rb +30 -6
  31. data/lib/karafka/cli/server.rb +11 -6
  32. data/lib/karafka/code_reloader.rb +67 -0
  33. data/lib/karafka/connection/api_adapter.rb +11 -4
  34. data/lib/karafka/connection/batch_delegator.rb +51 -0
  35. data/lib/karafka/connection/builder.rb +1 -1
  36. data/lib/karafka/connection/client.rb +30 -20
  37. data/lib/karafka/connection/listener.rb +24 -13
  38. data/lib/karafka/connection/message_delegator.rb +36 -0
  39. data/lib/karafka/consumers/callbacks.rb +32 -15
  40. data/lib/karafka/consumers/includer.rb +30 -18
  41. data/lib/karafka/consumers/metadata.rb +10 -0
  42. data/lib/karafka/consumers/responders.rb +2 -2
  43. data/lib/karafka/contracts.rb +10 -0
  44. data/lib/karafka/contracts/config.rb +21 -0
  45. data/lib/karafka/contracts/consumer_group.rb +206 -0
  46. data/lib/karafka/contracts/consumer_group_topic.rb +19 -0
  47. data/lib/karafka/contracts/responder_usage.rb +54 -0
  48. data/lib/karafka/contracts/server_cli_options.rb +29 -0
  49. data/lib/karafka/errors.rb +17 -16
  50. data/lib/karafka/fetcher.rb +28 -30
  51. data/lib/karafka/helpers/class_matcher.rb +5 -1
  52. data/lib/karafka/helpers/config_retriever.rb +1 -1
  53. data/lib/karafka/helpers/inflector.rb +26 -0
  54. data/lib/karafka/helpers/multi_delegator.rb +0 -1
  55. data/lib/karafka/instrumentation/logger.rb +9 -6
  56. data/lib/karafka/instrumentation/monitor.rb +15 -9
  57. data/lib/karafka/instrumentation/proctitle_listener.rb +36 -0
  58. data/lib/karafka/instrumentation/stdout_listener.rb +138 -0
  59. data/lib/karafka/params/builders/metadata.rb +33 -0
  60. data/lib/karafka/params/builders/params.rb +36 -0
  61. data/lib/karafka/params/builders/params_batch.rb +25 -0
  62. data/lib/karafka/params/metadata.rb +35 -0
  63. data/lib/karafka/params/params.rb +68 -0
  64. data/lib/karafka/params/params_batch.rb +35 -20
  65. data/lib/karafka/patches/ruby_kafka.rb +21 -8
  66. data/lib/karafka/persistence/client.rb +15 -11
  67. data/lib/karafka/persistence/{consumer.rb → consumers.rb} +20 -13
  68. data/lib/karafka/persistence/topics.rb +48 -0
  69. data/lib/karafka/process.rb +0 -2
  70. data/lib/karafka/responders/topic.rb +6 -8
  71. data/lib/karafka/routing/builder.rb +36 -8
  72. data/lib/karafka/routing/consumer_group.rb +1 -1
  73. data/lib/karafka/routing/consumer_mapper.rb +9 -9
  74. data/lib/karafka/routing/proxy.rb +10 -1
  75. data/lib/karafka/routing/topic.rb +5 -3
  76. data/lib/karafka/routing/topic_mapper.rb +16 -18
  77. data/lib/karafka/serialization/json/deserializer.rb +27 -0
  78. data/lib/karafka/serialization/json/serializer.rb +31 -0
  79. data/lib/karafka/server.rb +25 -27
  80. data/lib/karafka/setup/config.rb +63 -37
  81. data/lib/karafka/setup/configurators/water_drop.rb +7 -3
  82. data/lib/karafka/setup/dsl.rb +0 -1
  83. data/lib/karafka/status.rb +7 -3
  84. data/lib/karafka/templates/{application_consumer.rb.example → application_consumer.rb.erb} +2 -1
  85. data/lib/karafka/templates/{application_responder.rb.example → application_responder.rb.erb} +0 -0
  86. data/lib/karafka/templates/karafka.rb.erb +92 -0
  87. data/lib/karafka/version.rb +1 -1
  88. metadata +92 -59
  89. metadata.gz.sig +0 -0
  90. data/lib/karafka/callbacks.rb +0 -30
  91. data/lib/karafka/callbacks/config.rb +0 -22
  92. data/lib/karafka/callbacks/dsl.rb +0 -16
  93. data/lib/karafka/connection/delegator.rb +0 -46
  94. data/lib/karafka/instrumentation/listener.rb +0 -112
  95. data/lib/karafka/loader.rb +0 -28
  96. data/lib/karafka/params/dsl.rb +0 -158
  97. data/lib/karafka/parsers/json.rb +0 -38
  98. data/lib/karafka/patches/dry_configurable.rb +0 -33
  99. data/lib/karafka/persistence/topic.rb +0 -29
  100. data/lib/karafka/schemas/config.rb +0 -24
  101. data/lib/karafka/schemas/consumer_group.rb +0 -79
  102. data/lib/karafka/schemas/consumer_group_topic.rb +0 -18
  103. data/lib/karafka/schemas/responder_usage.rb +0 -39
  104. data/lib/karafka/schemas/server_cli_options.rb +0 -43
  105. data/lib/karafka/setup/configurators/base.rb +0 -29
  106. data/lib/karafka/setup/configurators/params.rb +0 -25
  107. data/lib/karafka/templates/karafka.rb.example +0 -54
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d14a343dffbcc91c326964cc833bb82e9daedfdc4913eb6478c69e6caa5a995c
4
- data.tar.gz: 14c3b5a9275dae6a5fb70790b4caf579cd2e1d9a6ac5d56307d950090012ec3d
3
+ metadata.gz: 5ac8399f2185d0bb8068800b27b4f354b6ff9daa02dff11436eead93c2f7bc87
4
+ data.tar.gz: f6c27fa56b658887f2cf9e2ceb6f735889f86b41291ea123cca354a37f42fa27
5
5
  SHA512:
6
- metadata.gz: 890c1b249d3457984c2c392dc1bed2413f36704d1268247bd67b2fa70cd3489370786a71e6be6804aa9dc1e02136bc92e97a338c917577929f2a8e0aabaf07bc
7
- data.tar.gz: cf9a0043a4b82797bf0f6d36a8ba18c97702e22dd9fea25d5c1df13ca3b30b4255244d828e6cd3fba68807d2717209ae626d2a99a25f497a7e15b04d80168d6f
6
+ metadata.gz: 489b6f20d26d55d67aef878ede57180f369107a1f77c8fe765acfc6d3005a31f21f9ce0677336efcc7df903b9525851c64303906778ca5192b415d83998b4273
7
+ data.tar.gz: 57e2c3dc857b942808e1969feb97c386f4b2c3ee44ad6e34568d1ee2bb58b3fe857ebb8ae1d6e5293c4d76f30cdcb3424fe6a31f6efda70651e90abff4cc54d3
Binary file
Binary file
@@ -1,3 +1,3 @@
1
+ repository_id: 'd4482d42-f6b5-44ba-a5e4-00989ac519ee'
1
2
  api_key: <%= ENV['CODITSU_API_KEY'] %>
2
3
  api_secret: <%= ENV['CODITSU_API_SECRET'] %>
3
- repository_id: <%= ENV['CODITSU_REPOSITORY_ID'] %>
@@ -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] = "#{Karafka::App.root}/.irb-history"
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')
@@ -0,0 +1,3 @@
1
+ # These are supported funding model platforms
2
+
3
+ open_collective: karafka
@@ -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
@@ -6,6 +6,7 @@
6
6
  app.god
7
7
 
8
8
  # minimal Rails specific artifacts
9
+ /.coditsu/local.yml
9
10
  db/*.sqlite3
10
11
  /log/development.log
11
12
  /log/production.log
@@ -1 +1 @@
1
- 2.6.1
1
+ 2.6.5
@@ -19,30 +19,17 @@ test: &test
19
19
  jobs:
20
20
  include:
21
21
  - <<: *test
22
- rvm: 2.6.1
22
+ rvm: 2.6.5
23
23
  - <<: *test
24
- rvm: 2.5.3
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.1
28
+ rvm: 2.6.5
33
29
  before_install:
34
30
  - gem update --system
35
31
  - gem install bundler
36
- before_script:
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
@@ -1,10 +1,71 @@
1
1
  # Karafka framework changelog
2
2
 
3
- ## 1.2.13
4
- - Add support for parameter sasl_over_ssl in ruby-kafka
5
-
6
- ## 1.2.12
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
@@ -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
@@ -4,12 +4,9 @@ source 'https://rubygems.org'
4
4
 
5
5
  gemspec
6
6
 
7
- group :development, :test do
8
- gem 'benchmark-ips'
9
- end
10
-
11
7
  group :test do
8
+ gem 'byebug'
9
+ gem 'factory_bot'
12
10
  gem 'rspec'
13
11
  gem 'simplecov'
14
- gem 'timecop'
15
12
  end
@@ -1,126 +1,137 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- karafka (1.2.13)
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 (~> 0.11)
10
- envlogic (~> 1.0)
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
- require_all (>= 1.4)
14
- ruby-kafka (>= 0.6)
13
+ ruby-kafka (>= 0.7.8)
15
14
  thor (~> 0.20)
16
- waterdrop (~> 1.2.4)
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 (5.2.3)
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
- benchmark-ips (2.7.2)
26
+ zeitwerk (~> 2.2)
27
+ byebug (11.0.1)
27
28
  concurrent-ruby (1.1.5)
28
- delivery_boy (0.2.7)
29
- king_konf (~> 0.2)
30
- ruby-kafka (~> 0.5)
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.1)
34
- dry-configurable (0.8.2)
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.0)
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.7)
41
+ dry-core (0.4.9)
41
42
  concurrent-ruby (~> 1.0)
42
- dry-equalizer (0.2.2)
43
- dry-events (0.1.1)
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.1.2)
48
- dry-logic (0.6.1)
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.0)
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-types (0.14.1)
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.5, >= 0.5)
64
- dry-validation (0.13.2)
73
+ dry-logic (~> 1.0, >= 1.0.2)
74
+ dry-validation (1.3.1)
65
75
  concurrent-ruby (~> 1.0)
66
- dry-configurable (~> 0.1, >= 0.1.3)
67
- dry-core (~> 0.2, >= 0.2.1)
76
+ dry-container (~> 0.7, >= 0.7.1)
77
+ dry-core (~> 0.4)
68
78
  dry-equalizer (~> 0.2)
69
- dry-logic (~> 0.5, >= 0.5.0)
70
- dry-types (~> 0.14.0)
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
- i18n (1.6.0)
83
+ factory_bot (5.1.1)
84
+ activesupport (>= 4.2.0)
85
+ i18n (1.7.0)
74
86
  concurrent-ruby (~> 1.0)
75
- json (2.1.0)
87
+ irb (1.0.0)
88
+ json (2.2.0)
76
89
  king_konf (0.3.7)
77
- minitest (5.11.3)
78
- multi_json (1.13.1)
79
- null-logger (0.1.5)
80
- rake (12.3.2)
81
- require_all (2.0.0)
82
- rspec (3.8.0)
83
- rspec-core (~> 3.8.0)
84
- rspec-expectations (~> 3.8.0)
85
- rspec-mocks (~> 3.8.0)
86
- rspec-core (3.8.0)
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.8.0)
91
- rspec-mocks (3.8.0)
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.8.0)
94
- rspec-support (3.8.0)
95
- ruby-kafka (0.7.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.16.1)
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.2.5)
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 (~> 0.11)
112
- null-logger (~> 0.1)
113
- ruby-kafka (>= 0.6)
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
- benchmark-ips
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.1
137
+ 2.0.2