karafka 1.2.8 → 1.4.0
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
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/.coditsu/ci.yml +3 -0
- data/.console_irbrc +1 -3
- data/.diffend.yml +3 -0
- 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/.github/workflows/ci.yml +52 -0
- data/.gitignore +1 -0
- data/.ruby-version +1 -1
- data/CHANGELOG.md +134 -14
- data/CODE_OF_CONDUCT.md +1 -1
- data/CONTRIBUTING.md +1 -1
- data/Gemfile +4 -5
- data/Gemfile.lock +92 -81
- data/README.md +9 -12
- data/bin/karafka +1 -1
- data/certs/mensfeld.pem +25 -0
- data/config/errors.yml +38 -5
- data/docker-compose.yml +17 -0
- data/karafka.gemspec +18 -17
- data/lib/karafka.rb +10 -16
- data/lib/karafka/app.rb +14 -6
- data/lib/karafka/attributes_map.rb +5 -10
- data/lib/karafka/base_consumer.rb +19 -30
- data/lib/karafka/base_responder.rb +45 -27
- data/lib/karafka/cli.rb +2 -2
- data/lib/karafka/cli/console.rb +11 -9
- data/lib/karafka/cli/flow.rb +9 -7
- data/lib/karafka/cli/info.rb +4 -2
- 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 +22 -9
- data/lib/karafka/connection/batch_delegator.rb +55 -0
- data/lib/karafka/connection/builder.rb +5 -3
- data/lib/karafka/connection/client.rb +31 -31
- data/lib/karafka/connection/listener.rb +26 -15
- data/lib/karafka/connection/message_delegator.rb +36 -0
- data/lib/karafka/consumers/batch_metadata.rb +10 -0
- data/lib/karafka/consumers/callbacks.rb +32 -15
- data/lib/karafka/consumers/includer.rb +31 -18
- 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 +31 -0
- data/lib/karafka/errors.rb +17 -16
- data/lib/karafka/fetcher.rb +28 -30
- data/lib/karafka/helpers/class_matcher.rb +12 -2
- 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 +140 -0
- data/lib/karafka/params/batch_metadata.rb +26 -0
- data/lib/karafka/params/builders/batch_metadata.rb +30 -0
- data/lib/karafka/params/builders/params.rb +38 -0
- data/lib/karafka/params/builders/params_batch.rb +25 -0
- data/lib/karafka/params/metadata.rb +20 -0
- data/lib/karafka/params/params.rb +54 -0
- data/lib/karafka/params/params_batch.rb +35 -21
- 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/builder.rb +1 -1
- 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 +29 -28
- data/lib/karafka/setup/config.rb +67 -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 +94 -72
- metadata.gz.sig +0 -0
- data/.travis.yml +0 -21
- 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 -156
- data/lib/karafka/parsers/json.rb +0 -38
- data/lib/karafka/patches/dry_configurable.rb +0 -35
- data/lib/karafka/persistence/topic.rb +0 -29
- data/lib/karafka/schemas/config.rb +0 -24
- data/lib/karafka/schemas/consumer_group.rb +0 -78
- 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
data/lib/karafka/version.rb
CHANGED
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: 1.
|
4
|
+
version: 1.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Maciej Mensfeld
|
@@ -9,107 +9,119 @@ authors:
|
|
9
9
|
- Adam Gwozdowski
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
|
-
cert_chain:
|
13
|
-
|
12
|
+
cert_chain:
|
13
|
+
- |
|
14
|
+
-----BEGIN CERTIFICATE-----
|
15
|
+
MIIEODCCAqCgAwIBAgIBATANBgkqhkiG9w0BAQsFADAjMSEwHwYDVQQDDBhtYWNp
|
16
|
+
ZWovREM9bWVuc2ZlbGQvREM9cGwwHhcNMjAwODExMDkxNTM3WhcNMjEwODExMDkx
|
17
|
+
NTM3WjAjMSEwHwYDVQQDDBhtYWNpZWovREM9bWVuc2ZlbGQvREM9cGwwggGiMA0G
|
18
|
+
CSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQDCpXsCgmINb6lHBXXBdyrgsBPSxC4/
|
19
|
+
2H+weJ6L9CruTiv2+2/ZkQGtnLcDgrD14rdLIHK7t0o3EKYlDT5GhD/XUVhI15JE
|
20
|
+
N7IqnPUgexe1fbZArwQ51afxz2AmPQN2BkB2oeQHXxnSWUGMhvcEZpfbxCCJH26w
|
21
|
+
hS0Ccsma8yxA6hSlGVhFVDuCr7c2L1di6cK2CtIDpfDaWqnVNJEwBYHIxrCoWK5g
|
22
|
+
sIGekVt/admS9gRhIMaIBg+Mshth5/DEyWO2QjteTodItlxfTctrfmiAl8X8T5JP
|
23
|
+
VXeLp5SSOJ5JXE80nShMJp3RFnGw5fqjX/ffjtISYh78/By4xF3a25HdWH9+qO2Z
|
24
|
+
tx0wSGc9/4gqNM0APQnjN/4YXrGZ4IeSjtE+OrrX07l0TiyikzSLFOkZCAp8oBJi
|
25
|
+
Fhlosz8xQDJf7mhNxOaZziqASzp/hJTU/tuDKl5+ql2icnMv5iV/i6SlmvU29QNg
|
26
|
+
LCV71pUv0pWzN+OZbHZKWepGhEQ3cG9MwvkCAwEAAaN3MHUwCQYDVR0TBAIwADAL
|
27
|
+
BgNVHQ8EBAMCBLAwHQYDVR0OBBYEFImGed2AXS070ohfRidiCEhXEUN+MB0GA1Ud
|
28
|
+
EQQWMBSBEm1hY2llakBtZW5zZmVsZC5wbDAdBgNVHRIEFjAUgRJtYWNpZWpAbWVu
|
29
|
+
c2ZlbGQucGwwDQYJKoZIhvcNAQELBQADggGBAKiHpwoENVrMi94V1zD4o8/6G3AU
|
30
|
+
gWz4udkPYHTZLUy3dLznc/sNjdkJFWT3E6NKYq7c60EpJ0m0vAEg5+F5pmNOsvD3
|
31
|
+
2pXLj9kisEeYhR516HwXAvtngboUcb75skqvBCU++4Pu7BRAPjO1/ihLSBexbwSS
|
32
|
+
fF+J5OWNuyHHCQp+kGPLtXJe2yUYyvSWDj3I2//Vk0VhNOIlaCS1+5/P3ZJThOtm
|
33
|
+
zJUBI7h3HgovwRpcnmk2mXTmU4Zx/bCzX8EA6VY0khEvnmiq7S6eBF0H9qH8KyQ6
|
34
|
+
EkVLpvmUDFcf/uNaBQdazEMB5jYtwoA8gQlANETNGPi51KlkukhKgaIEDMkBDJOx
|
35
|
+
65N7DzmkcyY0/GwjIVIxmRhcrCt1YeCUElmfFx0iida1/YRm6sB2AXqScc1+ECRi
|
36
|
+
2DND//YJUikn1zwbz1kT70XmHd97B4Eytpln7K+M1u2g1pHVEPW4owD/ammXNpUy
|
37
|
+
nt70FcDD4yxJQ+0YNiHd0N8IcVBM1TMIVctMNQ==
|
38
|
+
-----END CERTIFICATE-----
|
39
|
+
date: 2020-09-05 00:00:00.000000000 Z
|
14
40
|
dependencies:
|
15
|
-
- !ruby/object:Gem::Dependency
|
16
|
-
name: activesupport
|
17
|
-
requirement: !ruby/object:Gem::Requirement
|
18
|
-
requirements:
|
19
|
-
- - ">="
|
20
|
-
- !ruby/object:Gem::Version
|
21
|
-
version: '4.0'
|
22
|
-
type: :runtime
|
23
|
-
prerelease: false
|
24
|
-
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
requirements:
|
26
|
-
- - ">="
|
27
|
-
- !ruby/object:Gem::Version
|
28
|
-
version: '4.0'
|
29
41
|
- !ruby/object:Gem::Dependency
|
30
42
|
name: dry-configurable
|
31
43
|
requirement: !ruby/object:Gem::Requirement
|
32
44
|
requirements:
|
33
45
|
- - "~>"
|
34
46
|
- !ruby/object:Gem::Version
|
35
|
-
version: '0.
|
47
|
+
version: '0.8'
|
36
48
|
type: :runtime
|
37
49
|
prerelease: false
|
38
50
|
version_requirements: !ruby/object:Gem::Requirement
|
39
51
|
requirements:
|
40
52
|
- - "~>"
|
41
53
|
- !ruby/object:Gem::Version
|
42
|
-
version: '0.
|
54
|
+
version: '0.8'
|
43
55
|
- !ruby/object:Gem::Dependency
|
44
56
|
name: dry-inflector
|
45
57
|
requirement: !ruby/object:Gem::Requirement
|
46
58
|
requirements:
|
47
59
|
- - "~>"
|
48
60
|
- !ruby/object:Gem::Version
|
49
|
-
version: 0.1
|
61
|
+
version: '0.1'
|
50
62
|
type: :runtime
|
51
63
|
prerelease: false
|
52
64
|
version_requirements: !ruby/object:Gem::Requirement
|
53
65
|
requirements:
|
54
66
|
- - "~>"
|
55
67
|
- !ruby/object:Gem::Version
|
56
|
-
version: 0.1
|
68
|
+
version: '0.1'
|
57
69
|
- !ruby/object:Gem::Dependency
|
58
70
|
name: dry-monitor
|
59
71
|
requirement: !ruby/object:Gem::Requirement
|
60
72
|
requirements:
|
61
73
|
- - "~>"
|
62
74
|
- !ruby/object:Gem::Version
|
63
|
-
version: '0.
|
75
|
+
version: '0.3'
|
64
76
|
type: :runtime
|
65
77
|
prerelease: false
|
66
78
|
version_requirements: !ruby/object:Gem::Requirement
|
67
79
|
requirements:
|
68
80
|
- - "~>"
|
69
81
|
- !ruby/object:Gem::Version
|
70
|
-
version: '0.
|
82
|
+
version: '0.3'
|
71
83
|
- !ruby/object:Gem::Dependency
|
72
84
|
name: dry-validation
|
73
85
|
requirement: !ruby/object:Gem::Requirement
|
74
86
|
requirements:
|
75
87
|
- - "~>"
|
76
88
|
- !ruby/object:Gem::Version
|
77
|
-
version: '
|
89
|
+
version: '1.2'
|
78
90
|
type: :runtime
|
79
91
|
prerelease: false
|
80
92
|
version_requirements: !ruby/object:Gem::Requirement
|
81
93
|
requirements:
|
82
94
|
- - "~>"
|
83
95
|
- !ruby/object:Gem::Version
|
84
|
-
version: '
|
96
|
+
version: '1.2'
|
85
97
|
- !ruby/object:Gem::Dependency
|
86
98
|
name: envlogic
|
87
99
|
requirement: !ruby/object:Gem::Requirement
|
88
100
|
requirements:
|
89
101
|
- - "~>"
|
90
102
|
- !ruby/object:Gem::Version
|
91
|
-
version: '1.
|
103
|
+
version: '1.1'
|
92
104
|
type: :runtime
|
93
105
|
prerelease: false
|
94
106
|
version_requirements: !ruby/object:Gem::Requirement
|
95
107
|
requirements:
|
96
108
|
- - "~>"
|
97
109
|
- !ruby/object:Gem::Version
|
98
|
-
version: '1.
|
110
|
+
version: '1.1'
|
99
111
|
- !ruby/object:Gem::Dependency
|
100
|
-
name:
|
112
|
+
name: irb
|
101
113
|
requirement: !ruby/object:Gem::Requirement
|
102
114
|
requirements:
|
103
|
-
- - "
|
115
|
+
- - "~>"
|
104
116
|
- !ruby/object:Gem::Version
|
105
|
-
version: '1.
|
117
|
+
version: '1.0'
|
106
118
|
type: :runtime
|
107
119
|
prerelease: false
|
108
120
|
version_requirements: !ruby/object:Gem::Requirement
|
109
121
|
requirements:
|
110
|
-
- - "
|
122
|
+
- - "~>"
|
111
123
|
- !ruby/object:Gem::Version
|
112
|
-
version: '1.
|
124
|
+
version: '1.0'
|
113
125
|
- !ruby/object:Gem::Dependency
|
114
126
|
name: rake
|
115
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -125,64 +137,64 @@ dependencies:
|
|
125
137
|
- !ruby/object:Gem::Version
|
126
138
|
version: '11.3'
|
127
139
|
- !ruby/object:Gem::Dependency
|
128
|
-
name:
|
140
|
+
name: ruby-kafka
|
129
141
|
requirement: !ruby/object:Gem::Requirement
|
130
142
|
requirements:
|
131
143
|
- - ">="
|
132
144
|
- !ruby/object:Gem::Version
|
133
|
-
version:
|
145
|
+
version: 1.0.0
|
134
146
|
type: :runtime
|
135
147
|
prerelease: false
|
136
148
|
version_requirements: !ruby/object:Gem::Requirement
|
137
149
|
requirements:
|
138
150
|
- - ">="
|
139
151
|
- !ruby/object:Gem::Version
|
140
|
-
version:
|
152
|
+
version: 1.0.0
|
141
153
|
- !ruby/object:Gem::Dependency
|
142
|
-
name:
|
154
|
+
name: thor
|
143
155
|
requirement: !ruby/object:Gem::Requirement
|
144
156
|
requirements:
|
145
157
|
- - ">="
|
146
158
|
- !ruby/object:Gem::Version
|
147
|
-
version: '0.
|
159
|
+
version: '0.20'
|
148
160
|
type: :runtime
|
149
161
|
prerelease: false
|
150
162
|
version_requirements: !ruby/object:Gem::Requirement
|
151
163
|
requirements:
|
152
164
|
- - ">="
|
153
165
|
- !ruby/object:Gem::Version
|
154
|
-
version: '0.
|
166
|
+
version: '0.20'
|
155
167
|
- !ruby/object:Gem::Dependency
|
156
|
-
name:
|
168
|
+
name: waterdrop
|
157
169
|
requirement: !ruby/object:Gem::Requirement
|
158
170
|
requirements:
|
159
171
|
- - "~>"
|
160
172
|
- !ruby/object:Gem::Version
|
161
|
-
version:
|
173
|
+
version: 1.4.0
|
162
174
|
type: :runtime
|
163
175
|
prerelease: false
|
164
176
|
version_requirements: !ruby/object:Gem::Requirement
|
165
177
|
requirements:
|
166
178
|
- - "~>"
|
167
179
|
- !ruby/object:Gem::Version
|
168
|
-
version:
|
180
|
+
version: 1.4.0
|
169
181
|
- !ruby/object:Gem::Dependency
|
170
|
-
name:
|
182
|
+
name: zeitwerk
|
171
183
|
requirement: !ruby/object:Gem::Requirement
|
172
184
|
requirements:
|
173
185
|
- - "~>"
|
174
186
|
- !ruby/object:Gem::Version
|
175
|
-
version:
|
187
|
+
version: '2.1'
|
176
188
|
type: :runtime
|
177
189
|
prerelease: false
|
178
190
|
version_requirements: !ruby/object:Gem::Requirement
|
179
191
|
requirements:
|
180
192
|
- - "~>"
|
181
193
|
- !ruby/object:Gem::Version
|
182
|
-
version:
|
194
|
+
version: '2.1'
|
183
195
|
description: Framework used to simplify Apache Kafka based Ruby applications development
|
184
196
|
email:
|
185
|
-
- maciej@
|
197
|
+
- maciej@mensfeld.pl
|
186
198
|
- pavlo.vavruk@gmail.com
|
187
199
|
- adam99g@gmail.com
|
188
200
|
executables:
|
@@ -190,12 +202,17 @@ executables:
|
|
190
202
|
extensions: []
|
191
203
|
extra_rdoc_files: []
|
192
204
|
files:
|
205
|
+
- ".coditsu/ci.yml"
|
193
206
|
- ".console_irbrc"
|
207
|
+
- ".diffend.yml"
|
208
|
+
- ".github/FUNDING.yml"
|
209
|
+
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
210
|
+
- ".github/ISSUE_TEMPLATE/feature_request.md"
|
211
|
+
- ".github/workflows/ci.yml"
|
194
212
|
- ".gitignore"
|
195
213
|
- ".rspec"
|
196
214
|
- ".ruby-gemset"
|
197
215
|
- ".ruby-version"
|
198
|
-
- ".travis.yml"
|
199
216
|
- CHANGELOG.md
|
200
217
|
- CODE_OF_CONDUCT.md
|
201
218
|
- CONTRIBUTING.md
|
@@ -204,7 +221,9 @@ files:
|
|
204
221
|
- MIT-LICENCE
|
205
222
|
- README.md
|
206
223
|
- bin/karafka
|
224
|
+
- certs/mensfeld.pem
|
207
225
|
- config/errors.yml
|
226
|
+
- docker-compose.yml
|
208
227
|
- karafka.gemspec
|
209
228
|
- lib/karafka.rb
|
210
229
|
- lib/karafka/app.rb
|
@@ -212,9 +231,6 @@ files:
|
|
212
231
|
- lib/karafka/backends/inline.rb
|
213
232
|
- lib/karafka/base_consumer.rb
|
214
233
|
- lib/karafka/base_responder.rb
|
215
|
-
- lib/karafka/callbacks.rb
|
216
|
-
- lib/karafka/callbacks/config.rb
|
217
|
-
- lib/karafka/callbacks/dsl.rb
|
218
234
|
- lib/karafka/cli.rb
|
219
235
|
- lib/karafka/cli/base.rb
|
220
236
|
- lib/karafka/cli/console.rb
|
@@ -222,32 +238,45 @@ files:
|
|
222
238
|
- lib/karafka/cli/info.rb
|
223
239
|
- lib/karafka/cli/install.rb
|
224
240
|
- lib/karafka/cli/server.rb
|
241
|
+
- lib/karafka/code_reloader.rb
|
225
242
|
- lib/karafka/connection/api_adapter.rb
|
243
|
+
- lib/karafka/connection/batch_delegator.rb
|
226
244
|
- lib/karafka/connection/builder.rb
|
227
245
|
- lib/karafka/connection/client.rb
|
228
|
-
- lib/karafka/connection/delegator.rb
|
229
246
|
- lib/karafka/connection/listener.rb
|
247
|
+
- lib/karafka/connection/message_delegator.rb
|
248
|
+
- lib/karafka/consumers/batch_metadata.rb
|
230
249
|
- lib/karafka/consumers/callbacks.rb
|
231
250
|
- lib/karafka/consumers/includer.rb
|
232
251
|
- lib/karafka/consumers/responders.rb
|
233
252
|
- lib/karafka/consumers/single_params.rb
|
253
|
+
- lib/karafka/contracts.rb
|
254
|
+
- lib/karafka/contracts/config.rb
|
255
|
+
- lib/karafka/contracts/consumer_group.rb
|
256
|
+
- lib/karafka/contracts/consumer_group_topic.rb
|
257
|
+
- lib/karafka/contracts/responder_usage.rb
|
258
|
+
- lib/karafka/contracts/server_cli_options.rb
|
234
259
|
- lib/karafka/errors.rb
|
235
260
|
- lib/karafka/fetcher.rb
|
236
261
|
- lib/karafka/helpers/class_matcher.rb
|
237
262
|
- lib/karafka/helpers/config_retriever.rb
|
263
|
+
- lib/karafka/helpers/inflector.rb
|
238
264
|
- lib/karafka/helpers/multi_delegator.rb
|
239
|
-
- lib/karafka/instrumentation/listener.rb
|
240
265
|
- lib/karafka/instrumentation/logger.rb
|
241
266
|
- lib/karafka/instrumentation/monitor.rb
|
242
|
-
- lib/karafka/
|
243
|
-
- lib/karafka/
|
267
|
+
- lib/karafka/instrumentation/proctitle_listener.rb
|
268
|
+
- lib/karafka/instrumentation/stdout_listener.rb
|
269
|
+
- lib/karafka/params/batch_metadata.rb
|
270
|
+
- lib/karafka/params/builders/batch_metadata.rb
|
271
|
+
- lib/karafka/params/builders/params.rb
|
272
|
+
- lib/karafka/params/builders/params_batch.rb
|
273
|
+
- lib/karafka/params/metadata.rb
|
274
|
+
- lib/karafka/params/params.rb
|
244
275
|
- lib/karafka/params/params_batch.rb
|
245
|
-
- lib/karafka/parsers/json.rb
|
246
|
-
- lib/karafka/patches/dry_configurable.rb
|
247
276
|
- lib/karafka/patches/ruby_kafka.rb
|
248
277
|
- lib/karafka/persistence/client.rb
|
249
|
-
- lib/karafka/persistence/
|
250
|
-
- lib/karafka/persistence/
|
278
|
+
- lib/karafka/persistence/consumers.rb
|
279
|
+
- lib/karafka/persistence/topics.rb
|
251
280
|
- lib/karafka/process.rb
|
252
281
|
- lib/karafka/responders/builder.rb
|
253
282
|
- lib/karafka/responders/topic.rb
|
@@ -258,29 +287,23 @@ files:
|
|
258
287
|
- lib/karafka/routing/router.rb
|
259
288
|
- lib/karafka/routing/topic.rb
|
260
289
|
- lib/karafka/routing/topic_mapper.rb
|
261
|
-
- lib/karafka/
|
262
|
-
- lib/karafka/
|
263
|
-
- lib/karafka/schemas/consumer_group_topic.rb
|
264
|
-
- lib/karafka/schemas/responder_usage.rb
|
265
|
-
- lib/karafka/schemas/server_cli_options.rb
|
290
|
+
- lib/karafka/serialization/json/deserializer.rb
|
291
|
+
- lib/karafka/serialization/json/serializer.rb
|
266
292
|
- lib/karafka/server.rb
|
267
293
|
- lib/karafka/setup/config.rb
|
268
|
-
- lib/karafka/setup/configurators/base.rb
|
269
|
-
- lib/karafka/setup/configurators/params.rb
|
270
294
|
- lib/karafka/setup/configurators/water_drop.rb
|
271
295
|
- lib/karafka/setup/dsl.rb
|
272
296
|
- lib/karafka/status.rb
|
273
|
-
- lib/karafka/templates/application_consumer.rb.
|
274
|
-
- lib/karafka/templates/application_responder.rb.
|
275
|
-
- lib/karafka/templates/karafka.rb.
|
297
|
+
- lib/karafka/templates/application_consumer.rb.erb
|
298
|
+
- lib/karafka/templates/application_responder.rb.erb
|
299
|
+
- lib/karafka/templates/karafka.rb.erb
|
276
300
|
- lib/karafka/version.rb
|
277
301
|
- log/.gitkeep
|
278
302
|
homepage: https://github.com/karafka/karafka
|
279
303
|
licenses:
|
280
304
|
- MIT
|
281
305
|
metadata: {}
|
282
|
-
post_install_message:
|
283
|
-
ruby-kafka in your Gemfile to version '0.6.8':\ngem 'ruby-kafka', '~> 0.6.8'\n"
|
306
|
+
post_install_message:
|
284
307
|
rdoc_options: []
|
285
308
|
require_paths:
|
286
309
|
- lib
|
@@ -288,15 +311,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
288
311
|
requirements:
|
289
312
|
- - ">="
|
290
313
|
- !ruby/object:Gem::Version
|
291
|
-
version: 2.
|
314
|
+
version: 2.5.0
|
292
315
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
293
316
|
requirements:
|
294
317
|
- - ">="
|
295
318
|
- !ruby/object:Gem::Version
|
296
319
|
version: '0'
|
297
320
|
requirements: []
|
298
|
-
|
299
|
-
rubygems_version: 2.7.4
|
321
|
+
rubygems_version: 3.1.4
|
300
322
|
signing_key:
|
301
323
|
specification_version: 4
|
302
324
|
summary: Ruby based framework for working with Apache Kafka
|
metadata.gz.sig
ADDED
Binary file
|
data/.travis.yml
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
dist: trusty
|
2
|
-
sudo: false
|
3
|
-
language: ruby
|
4
|
-
cache: bundler
|
5
|
-
|
6
|
-
rvm:
|
7
|
-
- 2.3.7
|
8
|
-
- 2.4.4
|
9
|
-
- 2.5.1
|
10
|
-
- ruby-head
|
11
|
-
- jruby-9.2.0.0
|
12
|
-
|
13
|
-
env:
|
14
|
-
global:
|
15
|
-
- JRUBY_OPTS='--debug'
|
16
|
-
|
17
|
-
before_install:
|
18
|
-
- gem install bundler
|
19
|
-
- gem update --system
|
20
|
-
|
21
|
-
script: bundle exec rspec
|
data/lib/karafka/callbacks.rb
DELETED
@@ -1,30 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Karafka
|
4
|
-
# Additional callbacks that are used to trigger some things in given places during the
|
5
|
-
# system lifecycle
|
6
|
-
# @note Those callbacks aren't the same as consumer callbacks as they are not related to the
|
7
|
-
# lifecycle of particular messages fetches but rather to the internal flow process.
|
8
|
-
# They cannot be defined on a consumer callback level because for some of those,
|
9
|
-
# there aren't consumers in the memory yet and/or they aren't per consumer thread
|
10
|
-
module Callbacks
|
11
|
-
# Types of system callbacks that we have that are not related to consumers
|
12
|
-
TYPES = %i[
|
13
|
-
after_init
|
14
|
-
before_fetch_loop
|
15
|
-
].freeze
|
16
|
-
|
17
|
-
class << self
|
18
|
-
TYPES.each do |callback_type|
|
19
|
-
# Executes given callbacks set at a given moment with provided arguments
|
20
|
-
define_method callback_type do |*args|
|
21
|
-
Karafka::App
|
22
|
-
.config
|
23
|
-
.callbacks
|
24
|
-
.send(callback_type)
|
25
|
-
.each { |callback| callback.call(*args) }
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Karafka
|
4
|
-
module Callbacks
|
5
|
-
# Additional configuration required to store procs that we will execute upon callback trigger
|
6
|
-
module Config
|
7
|
-
# Builds up internal callback accumulators
|
8
|
-
# @param klass [Class] Class that we extend with callback config
|
9
|
-
def self.extended(klass)
|
10
|
-
# option internal [Hash] - optional - internal karafka configuration settings that should
|
11
|
-
# never be changed by users directly
|
12
|
-
klass.setting :callbacks do
|
13
|
-
Callbacks::TYPES.each do |callback_type|
|
14
|
-
# option [Array<Proc>] an array of blocks that will be executed at a given moment
|
15
|
-
# depending on the callback type
|
16
|
-
setting callback_type, []
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|