ruby-kafka 0.7.6 → 1.0.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.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +102 -3
  3. data/.github/workflows/stale.yml +19 -0
  4. data/CHANGELOG.md +24 -0
  5. data/README.md +18 -0
  6. data/lib/kafka/async_producer.rb +3 -0
  7. data/lib/kafka/broker.rb +12 -0
  8. data/lib/kafka/client.rb +35 -3
  9. data/lib/kafka/cluster.rb +52 -0
  10. data/lib/kafka/compression.rb +13 -11
  11. data/lib/kafka/compressor.rb +1 -0
  12. data/lib/kafka/connection.rb +3 -0
  13. data/lib/kafka/consumer_group.rb +4 -1
  14. data/lib/kafka/datadog.rb +2 -10
  15. data/lib/kafka/fetched_batch.rb +5 -1
  16. data/lib/kafka/fetched_batch_generator.rb +4 -1
  17. data/lib/kafka/fetched_message.rb +1 -0
  18. data/lib/kafka/fetcher.rb +4 -1
  19. data/lib/kafka/gzip_codec.rb +4 -0
  20. data/lib/kafka/lz4_codec.rb +4 -0
  21. data/lib/kafka/producer.rb +20 -1
  22. data/lib/kafka/prometheus.rb +316 -0
  23. data/lib/kafka/protocol.rb +8 -0
  24. data/lib/kafka/protocol/add_offsets_to_txn_request.rb +29 -0
  25. data/lib/kafka/protocol/add_offsets_to_txn_response.rb +19 -0
  26. data/lib/kafka/protocol/join_group_request.rb +8 -2
  27. data/lib/kafka/protocol/offset_fetch_request.rb +3 -1
  28. data/lib/kafka/protocol/produce_request.rb +3 -1
  29. data/lib/kafka/protocol/record_batch.rb +5 -4
  30. data/lib/kafka/protocol/txn_offset_commit_request.rb +46 -0
  31. data/lib/kafka/protocol/txn_offset_commit_response.rb +18 -0
  32. data/lib/kafka/sasl/scram.rb +15 -12
  33. data/lib/kafka/snappy_codec.rb +4 -0
  34. data/lib/kafka/ssl_context.rb +4 -1
  35. data/lib/kafka/ssl_socket_with_timeout.rb +1 -0
  36. data/lib/kafka/tagged_logger.rb +25 -20
  37. data/lib/kafka/transaction_manager.rb +25 -0
  38. data/lib/kafka/version.rb +1 -1
  39. data/lib/kafka/zstd_codec.rb +27 -0
  40. data/ruby-kafka.gemspec +4 -2
  41. metadata +47 -6
@@ -36,13 +36,15 @@ Gem::Specification.new do |spec|
36
36
  spec.add_development_dependency "dotenv"
37
37
  spec.add_development_dependency "docker-api"
38
38
  spec.add_development_dependency "rspec-benchmark"
39
- spec.add_development_dependency "activesupport"
39
+ spec.add_development_dependency "activesupport", ">= 4.0", "< 6.1"
40
40
  spec.add_development_dependency "snappy"
41
41
  spec.add_development_dependency "extlz4"
42
+ spec.add_development_dependency "zstd-ruby"
42
43
  spec.add_development_dependency "colored"
43
44
  spec.add_development_dependency "rspec_junit_formatter", "0.2.2"
44
- spec.add_development_dependency "dogstatsd-ruby", ">= 3.0.0", "< 5.0.0"
45
+ spec.add_development_dependency "dogstatsd-ruby", ">= 4.0.0", "< 5.0.0"
45
46
  spec.add_development_dependency "statsd-ruby"
47
+ spec.add_development_dependency "prometheus-client", "~> 0.10.0"
46
48
  spec.add_development_dependency "ruby-prof"
47
49
  spec.add_development_dependency "timecop"
48
50
  spec.add_development_dependency "rubocop", "~> 0.49.1"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-kafka
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.6
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Schierbeck
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-03-14 00:00:00.000000000 Z
11
+ date: 2020-02-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: digest-crc
@@ -128,14 +128,20 @@ dependencies:
128
128
  requirements:
129
129
  - - ">="
130
130
  - !ruby/object:Gem::Version
131
- version: '0'
131
+ version: '4.0'
132
+ - - "<"
133
+ - !ruby/object:Gem::Version
134
+ version: '6.1'
132
135
  type: :development
133
136
  prerelease: false
134
137
  version_requirements: !ruby/object:Gem::Requirement
135
138
  requirements:
136
139
  - - ">="
137
140
  - !ruby/object:Gem::Version
138
- version: '0'
141
+ version: '4.0'
142
+ - - "<"
143
+ - !ruby/object:Gem::Version
144
+ version: '6.1'
139
145
  - !ruby/object:Gem::Dependency
140
146
  name: snappy
141
147
  requirement: !ruby/object:Gem::Requirement
@@ -164,6 +170,20 @@ dependencies:
164
170
  - - ">="
165
171
  - !ruby/object:Gem::Version
166
172
  version: '0'
173
+ - !ruby/object:Gem::Dependency
174
+ name: zstd-ruby
175
+ requirement: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - ">="
178
+ - !ruby/object:Gem::Version
179
+ version: '0'
180
+ type: :development
181
+ prerelease: false
182
+ version_requirements: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - ">="
185
+ - !ruby/object:Gem::Version
186
+ version: '0'
167
187
  - !ruby/object:Gem::Dependency
168
188
  name: colored
169
189
  requirement: !ruby/object:Gem::Requirement
@@ -198,7 +218,7 @@ dependencies:
198
218
  requirements:
199
219
  - - ">="
200
220
  - !ruby/object:Gem::Version
201
- version: 3.0.0
221
+ version: 4.0.0
202
222
  - - "<"
203
223
  - !ruby/object:Gem::Version
204
224
  version: 5.0.0
@@ -208,7 +228,7 @@ dependencies:
208
228
  requirements:
209
229
  - - ">="
210
230
  - !ruby/object:Gem::Version
211
- version: 3.0.0
231
+ version: 4.0.0
212
232
  - - "<"
213
233
  - !ruby/object:Gem::Version
214
234
  version: 5.0.0
@@ -226,6 +246,20 @@ dependencies:
226
246
  - - ">="
227
247
  - !ruby/object:Gem::Version
228
248
  version: '0'
249
+ - !ruby/object:Gem::Dependency
250
+ name: prometheus-client
251
+ requirement: !ruby/object:Gem::Requirement
252
+ requirements:
253
+ - - "~>"
254
+ - !ruby/object:Gem::Version
255
+ version: 0.10.0
256
+ type: :development
257
+ prerelease: false
258
+ version_requirements: !ruby/object:Gem::Requirement
259
+ requirements:
260
+ - - "~>"
261
+ - !ruby/object:Gem::Version
262
+ version: 0.10.0
229
263
  - !ruby/object:Gem::Dependency
230
264
  name: ruby-prof
231
265
  requirement: !ruby/object:Gem::Requirement
@@ -304,6 +338,7 @@ extensions: []
304
338
  extra_rdoc_files: []
305
339
  files:
306
340
  - ".circleci/config.yml"
341
+ - ".github/workflows/stale.yml"
307
342
  - ".gitignore"
308
343
  - ".readygo"
309
344
  - ".rspec"
@@ -360,7 +395,10 @@ files:
360
395
  - lib/kafka/pending_message_queue.rb
361
396
  - lib/kafka/produce_operation.rb
362
397
  - lib/kafka/producer.rb
398
+ - lib/kafka/prometheus.rb
363
399
  - lib/kafka/protocol.rb
400
+ - lib/kafka/protocol/add_offsets_to_txn_request.rb
401
+ - lib/kafka/protocol/add_offsets_to_txn_response.rb
364
402
  - lib/kafka/protocol/add_partitions_to_txn_request.rb
365
403
  - lib/kafka/protocol/add_partitions_to_txn_response.rb
366
404
  - lib/kafka/protocol/alter_configs_request.rb
@@ -416,6 +454,8 @@ files:
416
454
  - lib/kafka/protocol/sasl_handshake_response.rb
417
455
  - lib/kafka/protocol/sync_group_request.rb
418
456
  - lib/kafka/protocol/sync_group_response.rb
457
+ - lib/kafka/protocol/txn_offset_commit_request.rb
458
+ - lib/kafka/protocol/txn_offset_commit_response.rb
419
459
  - lib/kafka/round_robin_assignment_strategy.rb
420
460
  - lib/kafka/sasl/gssapi.rb
421
461
  - lib/kafka/sasl/oauth.rb
@@ -431,6 +471,7 @@ files:
431
471
  - lib/kafka/transaction_manager.rb
432
472
  - lib/kafka/transaction_state_machine.rb
433
473
  - lib/kafka/version.rb
474
+ - lib/kafka/zstd_codec.rb
434
475
  - lib/ruby-kafka.rb
435
476
  - ruby-kafka.gemspec
436
477
  homepage: https://github.com/zendesk/ruby-kafka