karafka 2.4.18 → 2.5.0.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.
Files changed (143) hide show
  1. checksums.yaml +4 -4
  2. data/.github/CODEOWNERS +3 -0
  3. data/.github/workflows/ci.yml +58 -14
  4. data/.github/workflows/push.yml +36 -0
  5. data/.github/workflows/verify-action-pins.yml +16 -0
  6. data/.ruby-version +1 -1
  7. data/CHANGELOG.md +60 -0
  8. data/Gemfile +2 -2
  9. data/Gemfile.lock +69 -50
  10. data/LICENSE-COMM +2 -2
  11. data/README.md +1 -1
  12. data/Rakefile +4 -0
  13. data/bin/clean_kafka +43 -0
  14. data/bin/integrations +19 -6
  15. data/bin/rspecs +15 -3
  16. data/bin/verify_kafka_warnings +35 -0
  17. data/bin/verify_topics_naming +27 -0
  18. data/config/locales/errors.yml +3 -0
  19. data/config/locales/pro_errors.yml +13 -2
  20. data/docker-compose.yml +1 -1
  21. data/examples/payloads/json/enrollment_event.json +579 -0
  22. data/examples/payloads/json/ingestion_event.json +30 -0
  23. data/examples/payloads/json/transaction_event.json +17 -0
  24. data/examples/payloads/json/user_event.json +11 -0
  25. data/karafka.gemspec +3 -8
  26. data/lib/karafka/active_job/current_attributes.rb +1 -1
  27. data/lib/karafka/admin/acl.rb +5 -1
  28. data/lib/karafka/admin/configs.rb +5 -1
  29. data/lib/karafka/admin.rb +69 -34
  30. data/lib/karafka/base_consumer.rb +17 -8
  31. data/lib/karafka/cli/base.rb +8 -2
  32. data/lib/karafka/cli/topics/align.rb +7 -4
  33. data/lib/karafka/cli/topics/base.rb +17 -0
  34. data/lib/karafka/cli/topics/create.rb +9 -7
  35. data/lib/karafka/cli/topics/delete.rb +4 -2
  36. data/lib/karafka/cli/topics/help.rb +39 -0
  37. data/lib/karafka/cli/topics/repartition.rb +4 -2
  38. data/lib/karafka/cli/topics.rb +10 -3
  39. data/lib/karafka/cli.rb +2 -0
  40. data/lib/karafka/connection/client.rb +30 -9
  41. data/lib/karafka/connection/listener.rb +24 -12
  42. data/lib/karafka/connection/messages_buffer.rb +1 -1
  43. data/lib/karafka/connection/proxy.rb +3 -0
  44. data/lib/karafka/constraints.rb +3 -3
  45. data/lib/karafka/contracts/config.rb +3 -0
  46. data/lib/karafka/contracts/topic.rb +1 -1
  47. data/lib/karafka/errors.rb +46 -2
  48. data/lib/karafka/helpers/async.rb +3 -1
  49. data/lib/karafka/instrumentation/callbacks/rebalance.rb +5 -1
  50. data/lib/karafka/instrumentation/logger_listener.rb +86 -23
  51. data/lib/karafka/instrumentation/proctitle_listener.rb +5 -1
  52. data/lib/karafka/instrumentation/vendors/datadog/metrics_listener.rb +2 -2
  53. data/lib/karafka/messages/builders/batch_metadata.rb +1 -1
  54. data/lib/karafka/pro/cleaner.rb +8 -0
  55. data/lib/karafka/pro/cli/parallel_segments/base.rb +89 -0
  56. data/lib/karafka/pro/cli/parallel_segments/collapse.rb +164 -0
  57. data/lib/karafka/pro/cli/parallel_segments/distribute.rb +164 -0
  58. data/lib/karafka/pro/cli/parallel_segments.rb +60 -0
  59. data/lib/karafka/pro/connection/manager.rb +5 -8
  60. data/lib/karafka/pro/encryption.rb +8 -0
  61. data/lib/karafka/pro/instrumentation/performance_tracker.rb +1 -1
  62. data/lib/karafka/pro/iterator/expander.rb +5 -3
  63. data/lib/karafka/pro/iterator/tpl_builder.rb +23 -0
  64. data/lib/karafka/pro/loader.rb +10 -0
  65. data/lib/karafka/pro/processing/coordinator.rb +4 -1
  66. data/lib/karafka/pro/processing/coordinators/errors_tracker.rb +27 -3
  67. data/lib/karafka/pro/processing/coordinators/filters_applier.rb +11 -0
  68. data/lib/karafka/pro/processing/filters/base.rb +10 -2
  69. data/lib/karafka/pro/processing/filters/expirer.rb +5 -0
  70. data/lib/karafka/pro/processing/filters/inline_insights_delayer.rb +2 -2
  71. data/lib/karafka/pro/processing/filters/virtual_limiter.rb +5 -0
  72. data/lib/karafka/pro/processing/parallel_segments/filters/base.rb +73 -0
  73. data/lib/karafka/pro/processing/parallel_segments/filters/default.rb +85 -0
  74. data/lib/karafka/pro/processing/parallel_segments/filters/mom.rb +66 -0
  75. data/lib/karafka/pro/processing/partitioner.rb +1 -13
  76. data/lib/karafka/pro/processing/piping/consumer.rb +13 -13
  77. data/lib/karafka/pro/processing/strategies/aj/dlq_ftr_lrj_mom.rb +1 -1
  78. data/lib/karafka/pro/processing/strategies/aj/dlq_ftr_lrj_mom_vp.rb +1 -1
  79. data/lib/karafka/pro/processing/strategies/aj/dlq_lrj_mom.rb +1 -1
  80. data/lib/karafka/pro/processing/strategies/aj/dlq_lrj_mom_vp.rb +1 -1
  81. data/lib/karafka/pro/processing/strategies/aj/ftr_lrj_mom_vp.rb +1 -1
  82. data/lib/karafka/pro/processing/strategies/aj/lrj_mom_vp.rb +1 -1
  83. data/lib/karafka/pro/processing/strategies/default.rb +36 -8
  84. data/lib/karafka/pro/processing/strategies/dlq/default.rb +14 -10
  85. data/lib/karafka/pro/processing/strategies/dlq/ftr_lrj.rb +1 -1
  86. data/lib/karafka/pro/processing/strategies/dlq/ftr_lrj_mom.rb +1 -1
  87. data/lib/karafka/pro/processing/strategies/dlq/lrj.rb +3 -1
  88. data/lib/karafka/pro/processing/strategies/dlq/lrj_mom.rb +1 -1
  89. data/lib/karafka/pro/processing/strategies/ftr/default.rb +1 -1
  90. data/lib/karafka/pro/processing/strategies/lrj/default.rb +4 -1
  91. data/lib/karafka/pro/processing/strategies/lrj/ftr.rb +1 -1
  92. data/lib/karafka/pro/processing/strategies/lrj/ftr_mom.rb +1 -1
  93. data/lib/karafka/pro/processing/strategies/lrj/mom.rb +1 -1
  94. data/lib/karafka/pro/processing/virtual_partitions/distributors/balanced.rb +50 -0
  95. data/lib/karafka/pro/processing/virtual_partitions/distributors/base.rb +29 -0
  96. data/lib/karafka/pro/processing/virtual_partitions/distributors/consistent.rb +27 -0
  97. data/lib/karafka/pro/recurring_tasks/contracts/config.rb +8 -4
  98. data/lib/karafka/pro/recurring_tasks/dispatcher.rb +3 -3
  99. data/lib/karafka/pro/recurring_tasks/setup/config.rb +7 -2
  100. data/lib/karafka/pro/recurring_tasks.rb +13 -0
  101. data/lib/karafka/pro/routing/features/dead_letter_queue/topic.rb +1 -1
  102. data/lib/karafka/pro/routing/features/multiplexing/config.rb +1 -0
  103. data/lib/karafka/pro/routing/features/multiplexing/contracts/topic.rb +17 -0
  104. data/lib/karafka/pro/routing/features/multiplexing/proxy.rb +5 -2
  105. data/lib/karafka/pro/routing/features/multiplexing/subscription_group.rb +8 -1
  106. data/lib/karafka/pro/routing/features/parallel_segments/builder.rb +47 -0
  107. data/lib/karafka/pro/routing/features/parallel_segments/config.rb +27 -0
  108. data/lib/karafka/pro/routing/features/parallel_segments/consumer_group.rb +83 -0
  109. data/lib/karafka/pro/routing/features/parallel_segments/contracts/consumer_group.rb +49 -0
  110. data/lib/karafka/pro/routing/features/parallel_segments/topic.rb +43 -0
  111. data/lib/karafka/pro/routing/features/parallel_segments.rb +24 -0
  112. data/lib/karafka/pro/routing/features/patterns/pattern.rb +1 -1
  113. data/lib/karafka/pro/routing/features/recurring_tasks/builder.rb +2 -2
  114. data/lib/karafka/pro/routing/features/scheduled_messages/builder.rb +10 -6
  115. data/lib/karafka/pro/routing/features/virtual_partitions/config.rb +20 -2
  116. data/lib/karafka/pro/routing/features/virtual_partitions/contracts/topic.rb +1 -0
  117. data/lib/karafka/pro/routing/features/virtual_partitions/topic.rb +8 -2
  118. data/lib/karafka/pro/scheduled_messages/consumer.rb +19 -21
  119. data/lib/karafka/pro/scheduled_messages/daily_buffer.rb +9 -6
  120. data/lib/karafka/pro/scheduled_messages/deserializers/headers.rb +7 -1
  121. data/lib/karafka/pro/scheduled_messages/max_epoch.rb +15 -6
  122. data/lib/karafka/pro/scheduled_messages.rb +13 -0
  123. data/lib/karafka/processing/coordinators_buffer.rb +1 -0
  124. data/lib/karafka/processing/strategies/default.rb +4 -4
  125. data/lib/karafka/routing/features/dead_letter_queue/contracts/topic.rb +1 -0
  126. data/lib/karafka/routing/subscription_group.rb +1 -1
  127. data/lib/karafka/runner.rb +7 -1
  128. data/lib/karafka/server.rb +19 -19
  129. data/lib/karafka/setup/attributes_map.rb +2 -0
  130. data/lib/karafka/setup/config.rb +22 -1
  131. data/lib/karafka/setup/defaults_injector.rb +26 -1
  132. data/lib/karafka/status.rb +6 -1
  133. data/lib/karafka/swarm/node.rb +31 -0
  134. data/lib/karafka/swarm/supervisor.rb +4 -0
  135. data/lib/karafka/templates/karafka.rb.erb +14 -1
  136. data/lib/karafka/version.rb +1 -1
  137. data/lib/karafka.rb +17 -9
  138. data/renovate.json +14 -2
  139. metadata +40 -40
  140. checksums.yaml.gz.sig +0 -0
  141. data/certs/cert.pem +0 -26
  142. data.tar.gz.sig +0 -0
  143. metadata.gz.sig +0 -0
@@ -25,7 +25,20 @@ APP_LOADER.eager_load
25
25
  class KarafkaApp < Karafka::App
26
26
  setup do |config|
27
27
  config.kafka = { 'bootstrap.servers': '127.0.0.1:9092' }
28
- config.client_id = 'example_app'
28
+ config.client_id = 'YOUR_APP_NAME'
29
+
30
+ # IMPORTANT: Customize this group_id with your application name.
31
+ # The group_id should be unique per application to properly track message consumption.
32
+ # Example: config.group_id = 'inventory_service_consumer'
33
+ #
34
+ # Note: Advanced features and custom routing configurations may define their own consumer
35
+ # groups. These should also be uniquely named per application to avoid conflicts.
36
+ # For the advanced features, subscription groups and consumer groups in your routing
37
+ # configuration, follow the same uniqueness principle.
38
+ #
39
+ # For more details on consumer groups and routing configuration, please refer to the
40
+ # Karafka documentation: https://karafka.io/docs
41
+ config.group_id = 'YOUR_APP_NAME_consumer'
29
42
  <% if rails? -%>
30
43
  # Recreate consumers with each batch. This will allow Rails code reload to work in the
31
44
  # development mode. Otherwise Karafka process would not be aware of code changes
@@ -3,5 +3,5 @@
3
3
  # Main module namespace
4
4
  module Karafka
5
5
  # Current Karafka version
6
- VERSION = '2.4.18'
6
+ VERSION = '2.5.0.beta2'
7
7
  end
data/lib/karafka.rb CHANGED
@@ -16,6 +16,7 @@
16
16
  singleton
17
17
  digest
18
18
  zeitwerk
19
+ logger
19
20
  ].each(&method(:require))
20
21
 
21
22
  # Karafka framework main namespace
@@ -65,16 +66,23 @@ module Karafka
65
66
  return @root
66
67
  end
67
68
 
68
- # By default we infer the project root from bundler.
69
- # We cannot use the BUNDLE_GEMFILE env directly because it may be altered by things like
70
- # ruby-lsp. Instead we always fallback to the most outer Gemfile. In most of the cases, it
71
- # won't matter but in case of some automatic setup alterations like ruby-lsp, the location
72
- # from which the project starts may not match the original Gemfile.
73
- @root = Pathname.new(
74
- File.dirname(
75
- Bundler.with_unbundled_env { Bundler.default_gemfile }
69
+ if defined?(::Bundler)
70
+ # By default we infer the project root from bundler.
71
+ # We cannot use the BUNDLE_GEMFILE env directly because it may be altered by things like
72
+ # ruby-lsp. Instead we always fallback to the most outer Gemfile. In most of the cases, it
73
+ # won't matter but in case of some automatic setup alterations like ruby-lsp, the location
74
+ # from which the project starts may not match the original Gemfile.
75
+ @root = Pathname.new(
76
+ File.dirname(
77
+ Bundler.with_unbundled_env { Bundler.default_gemfile }
78
+ )
76
79
  )
77
- )
80
+ else
81
+ # Fallback when Bundler is not available: use current directory
82
+ @root = Pathname.new(Dir.pwd)
83
+ end
84
+
85
+ @root
78
86
  end
79
87
 
80
88
  # @return [Pathname] path to Karafka gem root core
data/renovate.json CHANGED
@@ -1,9 +1,21 @@
1
1
  {
2
2
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3
3
  "extends": [
4
- "config:base"
4
+ "config:recommended"
5
5
  ],
6
6
  "ignorePaths": [
7
- "spec/integrations"
7
+ "spec/integrations"
8
+ ],
9
+ "github-actions": {
10
+ "enabled": true,
11
+ "pinDigests": true
12
+ },
13
+ "packageRules": [
14
+ {
15
+ "matchManagers": [
16
+ "github-actions"
17
+ ],
18
+ "minimumReleaseAge": "7 days"
19
+ }
8
20
  ]
9
21
  }
metadata CHANGED
@@ -1,40 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: karafka
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.18
4
+ version: 2.5.0.beta2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maciej Mensfeld
8
8
  bindir: bin
9
- cert_chain:
10
- - |
11
- -----BEGIN CERTIFICATE-----
12
- MIIEcDCCAtigAwIBAgIBATANBgkqhkiG9w0BAQsFADA/MRAwDgYDVQQDDAdjb250
13
- YWN0MRcwFQYKCZImiZPyLGQBGRYHa2FyYWZrYTESMBAGCgmSJomT8ixkARkWAmlv
14
- MB4XDTI0MDgyMzEwMTkyMFoXDTQ5MDgxNzEwMTkyMFowPzEQMA4GA1UEAwwHY29u
15
- dGFjdDEXMBUGCgmSJomT8ixkARkWB2thcmFma2ExEjAQBgoJkiaJk/IsZAEZFgJp
16
- bzCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGBAKjLhLjQqUlNayxkXnO+
17
- PsmCDs/KFIzhrsYMfLZRZNaWmzV3ujljMOdDjd4snM2X06C41iVdQPWjpe3j8vVe
18
- ZXEWR/twSbOP6Eeg8WVH2wCOo0x5i7yhVn4UBLH4JpfEMCbemVcWQ9ry9OMg4WpH
19
- Uu4dRwxFV7hzCz3p0QfNLRI4miAxnGWcnlD98IJRjBAksTuR1Llj0vbOrDGsL9ZT
20
- JeXP2gdRLd8SqzAFJEWrbeTBCBU7gfSh3oMg5SVDLjaqf7Kz5wC/8bDZydzanOxB
21
- T6CDXPsCnllmvTNx2ei2T5rGYJOzJeNTmJLLK6hJWUlAvaQSvCwZRvFJ0tVGLEoS
22
- flqSr6uGyyl1eMUsNmsH4BqPEYcAV6P2PKTv2vUR8AP0raDvZ3xL1TKvfRb8xRpo
23
- vPopCGlY5XBWEc6QERHfVLTIVsjnls2/Ujj4h8/TSfqqYnaHKefIMLbuD/tquMjD
24
- iWQsW2qStBV0T+U7FijKxVfrfqZP7GxQmDAc9o1iiyAa3QIDAQABo3cwdTAJBgNV
25
- HRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQU3O4dTXmvE7YpAkszGzR9DdL9
26
- sbEwHQYDVR0RBBYwFIESY29udGFjdEBrYXJhZmthLmlvMB0GA1UdEgQWMBSBEmNv
27
- bnRhY3RAa2FyYWZrYS5pbzANBgkqhkiG9w0BAQsFAAOCAYEAVKTfoLXn7mqdSxIR
28
- eqxcR6Huudg1jes81s1+X0uiRTR3hxxKZ3Y82cPsee9zYWyBrN8TA4KA0WILTru7
29
- Ygxvzha0SRPsSiaKLmgOJ+61ebI4+bOORzIJLpD6GxCxu1r7MI4+0r1u1xe0EWi8
30
- agkVo1k4Vi8cKMLm6Gl9b3wG9zQBw6fcgKwmpjKiNnOLP+OytzUANrIUJjoq6oal
31
- TC+f/Uc0TLaRqUaW/bejxzDWWHoM3SU6aoLPuerglzp9zZVzihXwx3jPLUVKDFpF
32
- Rl2lcBDxlpYGueGo0/oNzGJAAy6js8jhtHC9+19PD53vk7wHtFTZ/0ugDQYnwQ+x
33
- oml2fAAuVWpTBCgOVFe6XCQpMKopzoxQ1PjKztW2KYxgJdIBX87SnL3aWuBQmhRd
34
- i9zWxov0mr44TWegTVeypcWGd/0nxu1+QHVNHJrpqlPBRvwQsUm7fwmRInGpcaB8
35
- ap8wNYvryYzrzvzUxIVFBVM5PacgkFqRmolCa8I7tdKQN+R1
36
- -----END CERTIFICATE-----
37
- date: 2025-04-09 00:00:00.000000000 Z
9
+ cert_chain: []
10
+ date: 1980-01-02 00:00:00.000000000 Z
38
11
  dependencies:
39
12
  - !ruby/object:Gem::Dependency
40
13
  name: base64
@@ -56,41 +29,41 @@ dependencies:
56
29
  requirements:
57
30
  - - ">="
58
31
  - !ruby/object:Gem::Version
59
- version: 2.4.4
32
+ version: 2.5.0
60
33
  - - "<"
61
34
  - !ruby/object:Gem::Version
62
- version: 2.5.0
35
+ version: 2.6.0
63
36
  type: :runtime
64
37
  prerelease: false
65
38
  version_requirements: !ruby/object:Gem::Requirement
66
39
  requirements:
67
40
  - - ">="
68
41
  - !ruby/object:Gem::Version
69
- version: 2.4.4
42
+ version: 2.5.0
70
43
  - - "<"
71
44
  - !ruby/object:Gem::Version
72
- version: 2.5.0
45
+ version: 2.6.0
73
46
  - !ruby/object:Gem::Dependency
74
47
  name: karafka-rdkafka
75
48
  requirement: !ruby/object:Gem::Requirement
76
49
  requirements:
77
50
  - - ">="
78
51
  - !ruby/object:Gem::Version
79
- version: 0.17.2
52
+ version: 0.19.2
80
53
  type: :runtime
81
54
  prerelease: false
82
55
  version_requirements: !ruby/object:Gem::Requirement
83
56
  requirements:
84
57
  - - ">="
85
58
  - !ruby/object:Gem::Version
86
- version: 0.17.2
59
+ version: 0.19.2
87
60
  - !ruby/object:Gem::Dependency
88
61
  name: waterdrop
89
62
  requirement: !ruby/object:Gem::Requirement
90
63
  requirements:
91
64
  - - ">="
92
65
  - !ruby/object:Gem::Version
93
- version: 2.7.3
66
+ version: 2.8.3
94
67
  - - "<"
95
68
  - !ruby/object:Gem::Version
96
69
  version: 3.0.0
@@ -100,7 +73,7 @@ dependencies:
100
73
  requirements:
101
74
  - - ">="
102
75
  - !ruby/object:Gem::Version
103
- version: 2.7.3
76
+ version: 2.8.3
104
77
  - - "<"
105
78
  - !ruby/object:Gem::Version
106
79
  version: 3.0.0
@@ -133,10 +106,13 @@ files:
133
106
  - ".coditsu/ci.yml"
134
107
  - ".console_irbrc"
135
108
  - ".diffend.yml"
109
+ - ".github/CODEOWNERS"
136
110
  - ".github/FUNDING.yml"
137
111
  - ".github/ISSUE_TEMPLATE/bug_report.md"
138
112
  - ".github/ISSUE_TEMPLATE/feature_request.md"
139
113
  - ".github/workflows/ci.yml"
114
+ - ".github/workflows/push.yml"
115
+ - ".github/workflows/verify-action-pins.yml"
140
116
  - ".gitignore"
141
117
  - ".rspec"
142
118
  - ".ruby-gemset"
@@ -150,8 +126,10 @@ files:
150
126
  - LICENSE-COMM
151
127
  - LICENSE-LGPL
152
128
  - README.md
129
+ - Rakefile
153
130
  - SECURITY.md
154
131
  - bin/benchmarks
132
+ - bin/clean_kafka
155
133
  - bin/create_token
156
134
  - bin/integrations
157
135
  - bin/karafka
@@ -160,13 +138,18 @@ files:
160
138
  - bin/scenario
161
139
  - bin/stress_many
162
140
  - bin/stress_one
141
+ - bin/verify_kafka_warnings
163
142
  - bin/verify_license_integrity
143
+ - bin/verify_topics_naming
164
144
  - bin/wait_for_kafka
165
- - certs/cert.pem
166
145
  - certs/karafka-pro.pem
167
146
  - config/locales/errors.yml
168
147
  - config/locales/pro_errors.yml
169
148
  - docker-compose.yml
149
+ - examples/payloads/json/enrollment_event.json
150
+ - examples/payloads/json/ingestion_event.json
151
+ - examples/payloads/json/transaction_event.json
152
+ - examples/payloads/json/user_event.json
170
153
  - karafka.gemspec
171
154
  - lib/active_job/karafka.rb
172
155
  - lib/active_job/queue_adapters/karafka_adapter.rb
@@ -198,6 +181,7 @@ files:
198
181
  - lib/karafka/cli/topics/base.rb
199
182
  - lib/karafka/cli/topics/create.rb
200
183
  - lib/karafka/cli/topics/delete.rb
184
+ - lib/karafka/cli/topics/help.rb
201
185
  - lib/karafka/cli/topics/migrate.rb
202
186
  - lib/karafka/cli/topics/plan.rb
203
187
  - lib/karafka/cli/topics/repartition.rb
@@ -275,6 +259,10 @@ files:
275
259
  - lib/karafka/pro/cleaner/messages/message.rb
276
260
  - lib/karafka/pro/cleaner/messages/messages.rb
277
261
  - lib/karafka/pro/cleaner/messages/metadata.rb
262
+ - lib/karafka/pro/cli/parallel_segments.rb
263
+ - lib/karafka/pro/cli/parallel_segments/base.rb
264
+ - lib/karafka/pro/cli/parallel_segments/collapse.rb
265
+ - lib/karafka/pro/cli/parallel_segments/distribute.rb
278
266
  - lib/karafka/pro/connection/manager.rb
279
267
  - lib/karafka/pro/connection/multiplexing/listener.rb
280
268
  - lib/karafka/pro/contracts/base.rb
@@ -316,6 +304,9 @@ files:
316
304
  - lib/karafka/pro/processing/offset_metadata/consumer.rb
317
305
  - lib/karafka/pro/processing/offset_metadata/fetcher.rb
318
306
  - lib/karafka/pro/processing/offset_metadata/listener.rb
307
+ - lib/karafka/pro/processing/parallel_segments/filters/base.rb
308
+ - lib/karafka/pro/processing/parallel_segments/filters/default.rb
309
+ - lib/karafka/pro/processing/parallel_segments/filters/mom.rb
319
310
  - lib/karafka/pro/processing/partitioner.rb
320
311
  - lib/karafka/pro/processing/periodic_job/consumer.rb
321
312
  - lib/karafka/pro/processing/piping/consumer.rb
@@ -373,6 +364,9 @@ files:
373
364
  - lib/karafka/pro/processing/strategies/vp/default.rb
374
365
  - lib/karafka/pro/processing/strategy_selector.rb
375
366
  - lib/karafka/pro/processing/subscription_groups_coordinator.rb
367
+ - lib/karafka/pro/processing/virtual_partitions/distributors/balanced.rb
368
+ - lib/karafka/pro/processing/virtual_partitions/distributors/base.rb
369
+ - lib/karafka/pro/processing/virtual_partitions/distributors/consistent.rb
376
370
  - lib/karafka/pro/recurring_tasks.rb
377
371
  - lib/karafka/pro/recurring_tasks/consumer.rb
378
372
  - lib/karafka/pro/recurring_tasks/contracts/config.rb
@@ -436,6 +430,12 @@ files:
436
430
  - lib/karafka/pro/routing/features/offset_metadata/config.rb
437
431
  - lib/karafka/pro/routing/features/offset_metadata/contracts/topic.rb
438
432
  - lib/karafka/pro/routing/features/offset_metadata/topic.rb
433
+ - lib/karafka/pro/routing/features/parallel_segments.rb
434
+ - lib/karafka/pro/routing/features/parallel_segments/builder.rb
435
+ - lib/karafka/pro/routing/features/parallel_segments/config.rb
436
+ - lib/karafka/pro/routing/features/parallel_segments/consumer_group.rb
437
+ - lib/karafka/pro/routing/features/parallel_segments/contracts/consumer_group.rb
438
+ - lib/karafka/pro/routing/features/parallel_segments/topic.rb
439
439
  - lib/karafka/pro/routing/features/patterns.rb
440
440
  - lib/karafka/pro/routing/features/patterns/builder.rb
441
441
  - lib/karafka/pro/routing/features/patterns/config.rb
@@ -619,7 +619,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
619
619
  - !ruby/object:Gem::Version
620
620
  version: '0'
621
621
  requirements: []
622
- rubygems_version: 3.6.2
622
+ rubygems_version: 3.6.7
623
623
  specification_version: 4
624
624
  summary: Karafka is Ruby and Rails efficient Kafka processing framework.
625
625
  test_files: []
checksums.yaml.gz.sig DELETED
Binary file
data/certs/cert.pem DELETED
@@ -1,26 +0,0 @@
1
- -----BEGIN CERTIFICATE-----
2
- MIIEcDCCAtigAwIBAgIBATANBgkqhkiG9w0BAQsFADA/MRAwDgYDVQQDDAdjb250
3
- YWN0MRcwFQYKCZImiZPyLGQBGRYHa2FyYWZrYTESMBAGCgmSJomT8ixkARkWAmlv
4
- MB4XDTI0MDgyMzEwMTkyMFoXDTQ5MDgxNzEwMTkyMFowPzEQMA4GA1UEAwwHY29u
5
- dGFjdDEXMBUGCgmSJomT8ixkARkWB2thcmFma2ExEjAQBgoJkiaJk/IsZAEZFgJp
6
- bzCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGBAKjLhLjQqUlNayxkXnO+
7
- PsmCDs/KFIzhrsYMfLZRZNaWmzV3ujljMOdDjd4snM2X06C41iVdQPWjpe3j8vVe
8
- ZXEWR/twSbOP6Eeg8WVH2wCOo0x5i7yhVn4UBLH4JpfEMCbemVcWQ9ry9OMg4WpH
9
- Uu4dRwxFV7hzCz3p0QfNLRI4miAxnGWcnlD98IJRjBAksTuR1Llj0vbOrDGsL9ZT
10
- JeXP2gdRLd8SqzAFJEWrbeTBCBU7gfSh3oMg5SVDLjaqf7Kz5wC/8bDZydzanOxB
11
- T6CDXPsCnllmvTNx2ei2T5rGYJOzJeNTmJLLK6hJWUlAvaQSvCwZRvFJ0tVGLEoS
12
- flqSr6uGyyl1eMUsNmsH4BqPEYcAV6P2PKTv2vUR8AP0raDvZ3xL1TKvfRb8xRpo
13
- vPopCGlY5XBWEc6QERHfVLTIVsjnls2/Ujj4h8/TSfqqYnaHKefIMLbuD/tquMjD
14
- iWQsW2qStBV0T+U7FijKxVfrfqZP7GxQmDAc9o1iiyAa3QIDAQABo3cwdTAJBgNV
15
- HRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQU3O4dTXmvE7YpAkszGzR9DdL9
16
- sbEwHQYDVR0RBBYwFIESY29udGFjdEBrYXJhZmthLmlvMB0GA1UdEgQWMBSBEmNv
17
- bnRhY3RAa2FyYWZrYS5pbzANBgkqhkiG9w0BAQsFAAOCAYEAVKTfoLXn7mqdSxIR
18
- eqxcR6Huudg1jes81s1+X0uiRTR3hxxKZ3Y82cPsee9zYWyBrN8TA4KA0WILTru7
19
- Ygxvzha0SRPsSiaKLmgOJ+61ebI4+bOORzIJLpD6GxCxu1r7MI4+0r1u1xe0EWi8
20
- agkVo1k4Vi8cKMLm6Gl9b3wG9zQBw6fcgKwmpjKiNnOLP+OytzUANrIUJjoq6oal
21
- TC+f/Uc0TLaRqUaW/bejxzDWWHoM3SU6aoLPuerglzp9zZVzihXwx3jPLUVKDFpF
22
- Rl2lcBDxlpYGueGo0/oNzGJAAy6js8jhtHC9+19PD53vk7wHtFTZ/0ugDQYnwQ+x
23
- oml2fAAuVWpTBCgOVFe6XCQpMKopzoxQ1PjKztW2KYxgJdIBX87SnL3aWuBQmhRd
24
- i9zWxov0mr44TWegTVeypcWGd/0nxu1+QHVNHJrpqlPBRvwQsUm7fwmRInGpcaB8
25
- ap8wNYvryYzrzvzUxIVFBVM5PacgkFqRmolCa8I7tdKQN+R1
26
- -----END CERTIFICATE-----
data.tar.gz.sig DELETED
Binary file
metadata.gz.sig DELETED
Binary file