karafka 2.0.0.rc2 → 2.0.0.rc5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/CHANGELOG.md +29 -2
  4. data/CONTRIBUTING.md +4 -8
  5. data/Gemfile.lock +9 -21
  6. data/LICENSE-COMM +1 -1
  7. data/README.md +46 -8
  8. data/bin/integrations +1 -1
  9. data/config/errors.yml +4 -0
  10. data/docker-compose.yml +3 -0
  11. data/karafka.gemspec +5 -5
  12. data/lib/karafka/active_job/consumer.rb +2 -0
  13. data/lib/karafka/connection/client.rb +9 -4
  14. data/lib/karafka/connection/listener.rb +21 -7
  15. data/lib/karafka/contracts/base.rb +1 -1
  16. data/lib/karafka/errors.rb +0 -3
  17. data/lib/karafka/instrumentation/callbacks/statistics.rb +1 -2
  18. data/lib/karafka/instrumentation/logger_listener.rb +27 -3
  19. data/lib/karafka/instrumentation/monitor.rb +14 -59
  20. data/lib/karafka/instrumentation/notifications.rb +52 -0
  21. data/lib/karafka/instrumentation/vendors/datadog/dashboard.json +1 -0
  22. data/lib/karafka/instrumentation/vendors/datadog/listener.rb +232 -0
  23. data/lib/karafka/patches/rdkafka/consumer.rb +1 -1
  24. data/lib/karafka/pro/active_job/dispatcher.rb +5 -2
  25. data/lib/karafka/pro/active_job/job_options_contract.rb +1 -0
  26. data/lib/karafka/pro/base_consumer.rb +2 -2
  27. data/lib/karafka/pro/contracts/base.rb +21 -0
  28. data/lib/karafka/pro/contracts/consumer_group.rb +34 -0
  29. data/lib/karafka/pro/contracts/consumer_group_topic.rb +33 -0
  30. data/lib/karafka/pro/loader.rb +21 -3
  31. data/lib/karafka/pro/processing/partitioner.rb +22 -3
  32. data/lib/karafka/pro/routing/builder_extensions.rb +30 -0
  33. data/lib/karafka/pro/routing/{extensions.rb → topic_extensions.rb} +2 -2
  34. data/lib/karafka/process.rb +1 -0
  35. data/lib/karafka/processing/jobs_queue.rb +11 -0
  36. data/lib/karafka/processing/worker.rb +4 -2
  37. data/lib/karafka/server.rb +3 -0
  38. data/lib/karafka/setup/config.rb +3 -3
  39. data/lib/karafka/version.rb +1 -1
  40. data/lib/karafka.rb +3 -2
  41. data.tar.gz.sig +0 -0
  42. metadata +27 -14
  43. metadata.gz.sig +0 -0
data/lib/karafka.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  %w[
4
+ karafka-core
4
5
  delegate
5
6
  English
6
7
  rdkafka
@@ -12,8 +13,6 @@
12
13
  openssl
13
14
  base64
14
15
  date
15
- dry/events/publisher
16
- dry/monitor/notifications
17
16
  zeitwerk
18
17
  ].each(&method(:require))
19
18
 
@@ -88,5 +87,7 @@ loader = Zeitwerk::Loader.for_gem
88
87
  loader.ignore(Karafka.gem_root.join('lib/active_job'))
89
88
  # Do not load pro components, this will be handled by license manager
90
89
  loader.ignore(Karafka.gem_root.join('lib/karafka/pro'))
90
+ # Do not load vendors instrumentation components. Those need to be required manually if needed
91
+ loader.ignore(Karafka.gem_root.join('lib/karafka/instrumentation/vendors'))
91
92
  loader.setup
92
93
  loader.eager_load
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: karafka
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.rc2
4
+ version: 2.0.0.rc5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maciej Mensfeld
@@ -34,36 +34,42 @@ cert_chain:
34
34
  R2P11bWoCtr70BsccVrN8jEhzwXngMyI2gVt750Y+dbTu1KgRqZKp/ECe7ZzPzXj
35
35
  pIy9vHxTANKYVyI4qj8OrFdEM5BQNu8oQpL0iQ==
36
36
  -----END CERTIFICATE-----
37
- date: 2022-07-19 00:00:00.000000000 Z
37
+ date: 2022-08-01 00:00:00.000000000 Z
38
38
  dependencies:
39
39
  - !ruby/object:Gem::Dependency
40
- name: dry-monitor
40
+ name: karafka-core
41
41
  requirement: !ruby/object:Gem::Requirement
42
42
  requirements:
43
- - - "~>"
43
+ - - ">="
44
44
  - !ruby/object:Gem::Version
45
- version: '0.5'
45
+ version: 2.0.2
46
+ - - "<"
47
+ - !ruby/object:Gem::Version
48
+ version: 3.0.0
46
49
  type: :runtime
47
50
  prerelease: false
48
51
  version_requirements: !ruby/object:Gem::Requirement
49
52
  requirements:
50
- - - "~>"
53
+ - - ">="
51
54
  - !ruby/object:Gem::Version
52
- version: '0.5'
55
+ version: 2.0.2
56
+ - - "<"
57
+ - !ruby/object:Gem::Version
58
+ version: 3.0.0
53
59
  - !ruby/object:Gem::Dependency
54
60
  name: rdkafka
55
61
  requirement: !ruby/object:Gem::Requirement
56
62
  requirements:
57
63
  - - ">="
58
64
  - !ruby/object:Gem::Version
59
- version: '0.10'
65
+ version: '0.12'
60
66
  type: :runtime
61
67
  prerelease: false
62
68
  version_requirements: !ruby/object:Gem::Requirement
63
69
  requirements:
64
70
  - - ">="
65
71
  - !ruby/object:Gem::Version
66
- version: '0.10'
72
+ version: '0.12'
67
73
  - !ruby/object:Gem::Dependency
68
74
  name: thor
69
75
  requirement: !ruby/object:Gem::Requirement
@@ -84,7 +90,7 @@ dependencies:
84
90
  requirements:
85
91
  - - ">="
86
92
  - !ruby/object:Gem::Version
87
- version: 2.3.3
93
+ version: 2.4.1
88
94
  - - "<"
89
95
  - !ruby/object:Gem::Version
90
96
  version: 3.0.0
@@ -94,7 +100,7 @@ dependencies:
94
100
  requirements:
95
101
  - - ">="
96
102
  - !ruby/object:Gem::Version
97
- version: 2.3.3
103
+ version: 2.4.1
98
104
  - - "<"
99
105
  - !ruby/object:Gem::Version
100
106
  version: 3.0.0
@@ -192,7 +198,10 @@ files:
192
198
  - lib/karafka/instrumentation/logger.rb
193
199
  - lib/karafka/instrumentation/logger_listener.rb
194
200
  - lib/karafka/instrumentation/monitor.rb
201
+ - lib/karafka/instrumentation/notifications.rb
195
202
  - lib/karafka/instrumentation/proctitle_listener.rb
203
+ - lib/karafka/instrumentation/vendors/datadog/dashboard.json
204
+ - lib/karafka/instrumentation/vendors/datadog/listener.rb
196
205
  - lib/karafka/licenser.rb
197
206
  - lib/karafka/messages/batch_metadata.rb
198
207
  - lib/karafka/messages/builders/batch_metadata.rb
@@ -208,6 +217,9 @@ files:
208
217
  - lib/karafka/pro/active_job/dispatcher.rb
209
218
  - lib/karafka/pro/active_job/job_options_contract.rb
210
219
  - lib/karafka/pro/base_consumer.rb
220
+ - lib/karafka/pro/contracts/base.rb
221
+ - lib/karafka/pro/contracts/consumer_group.rb
222
+ - lib/karafka/pro/contracts/consumer_group_topic.rb
211
223
  - lib/karafka/pro/loader.rb
212
224
  - lib/karafka/pro/performance_tracker.rb
213
225
  - lib/karafka/pro/processing/coordinator.rb
@@ -215,7 +227,8 @@ files:
215
227
  - lib/karafka/pro/processing/jobs_builder.rb
216
228
  - lib/karafka/pro/processing/partitioner.rb
217
229
  - lib/karafka/pro/processing/scheduler.rb
218
- - lib/karafka/pro/routing/extensions.rb
230
+ - lib/karafka/pro/routing/builder_extensions.rb
231
+ - lib/karafka/pro/routing/topic_extensions.rb
219
232
  - lib/karafka/process.rb
220
233
  - lib/karafka/processing/coordinator.rb
221
234
  - lib/karafka/processing/coordinators_buffer.rb
@@ -271,7 +284,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
271
284
  requirements:
272
285
  - - ">="
273
286
  - !ruby/object:Gem::Version
274
- version: 2.6.0
287
+ version: 2.7.0
275
288
  required_rubygems_version: !ruby/object:Gem::Requirement
276
289
  requirements:
277
290
  - - ">"
@@ -281,5 +294,5 @@ requirements: []
281
294
  rubygems_version: 3.3.7
282
295
  signing_key:
283
296
  specification_version: 4
284
- summary: Ruby framework for working with Apache Kafka
297
+ summary: Efficient Kafka processing framework for Ruby and Rails
285
298
  test_files: []
metadata.gz.sig CHANGED
Binary file