karafka-rdkafka 0.12.0 → 0.12.1.beta1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +2 -3
- data/.github/workflows/ci.yml +53 -0
- data/CHANGELOG.md +4 -0
- data/certs/cert_chain.pem +26 -0
- data/certs/karafka-pro.pem +11 -0
- data/{rdkafka.gemspec → karafka-rdkafka.gemspec} +11 -3
- data/lib/rdkafka/admin/create_partitions_handle.rb +27 -0
- data/lib/rdkafka/admin/create_partitions_report.rb +6 -0
- data/lib/rdkafka/admin.rb +61 -0
- data/lib/rdkafka/bindings.rb +10 -0
- data/lib/rdkafka/callbacks.rb +19 -0
- data/lib/rdkafka/version.rb +3 -3
- data/lib/rdkafka.rb +2 -0
- data.tar.gz.sig +0 -0
- metadata +20 -9
- metadata.gz.sig +0 -0
- data/.semaphore/semaphore.yml +0 -23
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 144a8490b1603c1fb10739ebd7a395980f658452ab3e84cf4a9e283d51eb5d47
|
4
|
+
data.tar.gz: 290812855c089866860eaf03a543b1191971d9c1ef3865377a679f96d734dc22
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 52bc8ad5183a7d472380d00b4a80bd5cf8893a34bed614b67c7c2a44f3ad51d6df4b7eec553b12a5e293c80dde31daa84bd0c59db370da46a464644ec23ed988
|
7
|
+
data.tar.gz: fdea9eed1b45f439c1e71a7fb4eb48f61f924953d45bde78291308f678814120a7b0feeb2ea31b0e3550f47df3936927c1303a40e7215a811a56b36ff00ff282
|
checksums.yaml.gz.sig
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
��ڸ���IJ���C������o���<~T��ja�t��ۨ�<=(�K�\0�b����"�5.���ݹqc�cs�}��Y��"�7�t�����pH�2%�{ ^$ �T��/v�n<�C6��
|
2
|
+
}9�(����N�� ��
|
3
|
-
��B6��yĭ��Rw�y�Sdq=x�N�'a�0j��?���s�&K�
|
@@ -0,0 +1,53 @@
|
|
1
|
+
name: ci
|
2
|
+
|
3
|
+
concurrency: ci-${{ github.ref }}
|
4
|
+
|
5
|
+
on:
|
6
|
+
pull_request:
|
7
|
+
push:
|
8
|
+
schedule:
|
9
|
+
- cron: '0 1 * * *'
|
10
|
+
|
11
|
+
env:
|
12
|
+
BUNDLE_RETRY: 6
|
13
|
+
BUNDLE_JOBS: 4
|
14
|
+
|
15
|
+
jobs:
|
16
|
+
specs:
|
17
|
+
timeout-minutes: 30
|
18
|
+
runs-on: ubuntu-latest
|
19
|
+
strategy:
|
20
|
+
fail-fast: false
|
21
|
+
matrix:
|
22
|
+
ruby:
|
23
|
+
- '3.2'
|
24
|
+
- '3.1'
|
25
|
+
- '3.1.0'
|
26
|
+
- '3.0'
|
27
|
+
- '3.0.0'
|
28
|
+
- '2.7'
|
29
|
+
- '2.7.0'
|
30
|
+
- '2.6.8'
|
31
|
+
include:
|
32
|
+
- ruby: '3.2'
|
33
|
+
coverage: 'true'
|
34
|
+
steps:
|
35
|
+
- uses: actions/checkout@v3
|
36
|
+
- name: Install package dependencies
|
37
|
+
run: "[ -e $APT_DEPS ] || sudo apt-get install -y --no-install-recommends $APT_DEPS"
|
38
|
+
|
39
|
+
- name: Set up Ruby
|
40
|
+
uses: ruby/setup-ruby@v1
|
41
|
+
with:
|
42
|
+
ruby-version: ${{matrix.ruby}}
|
43
|
+
bundler-cache: true
|
44
|
+
|
45
|
+
- name: Run all specs
|
46
|
+
env:
|
47
|
+
GITHUB_COVERAGE: ${{matrix.coverage}}
|
48
|
+
|
49
|
+
run: |
|
50
|
+
bundle install --path vendor/bundle
|
51
|
+
cd ext && bundle exec rake && cd ..
|
52
|
+
docker-compose up -d --no-recreate
|
53
|
+
bundle exec rspec
|
data/CHANGELOG.md
CHANGED
@@ -0,0 +1,26 @@
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
2
|
+
MIIEcDCCAtigAwIBAgIBATANBgkqhkiG9w0BAQsFADA/MRAwDgYDVQQDDAdjb250
|
3
|
+
YWN0MRcwFQYKCZImiZPyLGQBGRYHa2FyYWZrYTESMBAGCgmSJomT8ixkARkWAmlv
|
4
|
+
MB4XDTIyMDgxOTE3MjEzN1oXDTIzMDgxOTE3MjEzN1owPzEQMA4GA1UEAwwHY29u
|
5
|
+
dGFjdDEXMBUGCgmSJomT8ixkARkWB2thcmFma2ExEjAQBgoJkiaJk/IsZAEZFgJp
|
6
|
+
bzCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGBAODzeO3L6lxdATzMHKNW
|
7
|
+
jFA/GGunoPuylO/BMzy8RiQHh7VIvysAKs0tHhTx3g2D0STDpF+hcQcPELFikiT2
|
8
|
+
F+1wOHj/SsrK7VKqfA8+gq04hKc5sQoX2Egf9k3V0YJ3eZ6R/koHkQ8A0TVt0w6F
|
9
|
+
ZQckoV4MqnEAx0g/FZN3mnHTlJ3VFLSBqJEIe+S6FZMl92mSv+hTrlUG8VaYxSfN
|
10
|
+
lTCvnKk284F6QZq5XIENLRmcDd/3aPBLnLwNnyMyhB+6gK8cUO+CFlDO5tjo/aBA
|
11
|
+
rUnl++wGG0JooF1ed0v+evOn9KoMBG6rHewcf79qJbVOscbD8qSAmo+sCXtcFryr
|
12
|
+
KRMTB8gNbowJkFRJDEe8tfRy11u1fYzFg/qNO82FJd62rKAw2wN0C29yCeQOPRb1
|
13
|
+
Cw9Y4ZwK9VFNEcV9L+3pHTHn2XfuZHtDaG198VweiF6raFO4yiEYccodH/USP0L5
|
14
|
+
cbcCFtmu/4HDSxL1ByQXO84A0ybJuk3/+aPUSXe9C9U8fwIDAQABo3cwdTAJBgNV
|
15
|
+
HRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUSlcEakb7gfn/5E2WY6z73BF/
|
16
|
+
iZkwHQYDVR0RBBYwFIESY29udGFjdEBrYXJhZmthLmlvMB0GA1UdEgQWMBSBEmNv
|
17
|
+
bnRhY3RAa2FyYWZrYS5pbzANBgkqhkiG9w0BAQsFAAOCAYEA1aS+E7RXJ1w9g9mJ
|
18
|
+
G0NzFxe64OEuENosNlvYQCbRKGCXAU1qqelYkBQHseRgRKxLICrnypRo9IEobyHa
|
19
|
+
vDnJ4r7Tsb34dleqQW2zY/obG+cia3Ym2JsegXWF7dDOzCXJ4FN8MFoT2jHlqLLw
|
20
|
+
yrap0YO5zx0GSQ0Dwy8h2n2v2vanMEeCx7iNm3ERgR5WuN5sjzWoz2A/JLEEcK0C
|
21
|
+
EnAGKCWAd1fuG8IemDjT1edsd5FyYR4bIX0m+99oDuFZyPiiIbalmyYiSBBp59Yb
|
22
|
+
Q0P8zeBi4OfwCZNcxqz0KONmw9JLNv6DgyEAH5xe/4JzhMEgvIRiPj0pHfA7oqQF
|
23
|
+
KUNqvD1KlxbEC+bZfE5IZhnqYLdld/Ksqd22FI1RBhiS1Ejfsj99LVIm9cBuZEY2
|
24
|
+
Qf04B9ceLUaC4fPVEz10FyobjaFoY4i32xRto3XnrzeAgfEe4swLq8bQsR3w/EF3
|
25
|
+
MGU0FeSV2Yj7Xc2x/7BzLK8xQn5l7Yy75iPF+KP3vVmDHnNl
|
26
|
+
-----END CERTIFICATE-----
|
@@ -0,0 +1,11 @@
|
|
1
|
+
-----BEGIN RSA PUBLIC KEY-----
|
2
|
+
MIIBigKCAYEApcd6ybskiNs9WUvBGVUE8GdWDehjZ9TyjSj/fDl/UcMYqY0R5YX9
|
3
|
+
tnYxEwZZRMdVltKWxr88Qmshh1IQz6CpJVbcfYjt/158pSGPm+AUua6tkLqIvZDM
|
4
|
+
ocFOMafmroI+BMuL+Zu5QH7HC2tkT16jclGYfMQkJjXVUQTk2UZr+94+8RlUz/CH
|
5
|
+
Y6hPA7xPgIyPfyPCxz1VWzAwXwT++NCJQPBr5MqT84LNSEzUSlR9pFNShf3UCUT+
|
6
|
+
8LWOvjFSNGmMMSsbo2T7/+dz9/FM02YG00EO0x04qteggwcaEYLFrigDN6/fM0ih
|
7
|
+
BXZILnMUqC/qrfW2YFg4ZqKZJuxaALqqkPxrkBDYqoqcAloqn36jBSke6tc/2I/J
|
8
|
+
2Afq3r53UoAbUH7h5I/L8YeaiA4MYjAuq724lHlrOmIr4D6yjYC0a1LGlPjLk869
|
9
|
+
2nsVXNgomhVb071E6amR+rJJnfvkdZgCmEBFnqnBV5A1u4qgNsa2rVcD+gJRvb2T
|
10
|
+
aQtjlQWKPx5xAgMBAAE=
|
11
|
+
-----END RSA PUBLIC KEY-----
|
@@ -6,7 +6,6 @@ Gem::Specification.new do |gem|
|
|
6
6
|
gem.description = "Modern Kafka client library for Ruby based on librdkafka"
|
7
7
|
gem.summary = "The rdkafka gem is a modern Kafka client library for Ruby based on librdkafka. It wraps the production-ready C client using the ffi gem and targets Kafka 1.0+ and Ruby 2.4+."
|
8
8
|
gem.license = 'MIT'
|
9
|
-
gem.homepage = 'https://github.com/thijsc/rdkafka-ruby'
|
10
9
|
|
11
10
|
gem.files = `git ls-files`.split($\)
|
12
11
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
@@ -16,13 +15,12 @@ Gem::Specification.new do |gem|
|
|
16
15
|
gem.version = Rdkafka::VERSION
|
17
16
|
gem.required_ruby_version = '>= 2.6'
|
18
17
|
gem.extensions = %w(ext/Rakefile)
|
18
|
+
gem.cert_chain = %w[certs/cert_chain.pem]
|
19
19
|
|
20
20
|
if $PROGRAM_NAME.end_with?('gem')
|
21
21
|
gem.signing_key = File.expand_path('~/.ssh/gem-private_key.pem')
|
22
22
|
end
|
23
23
|
|
24
|
-
gem.cert_chain = %w[certs/cert_chain.pem]
|
25
|
-
|
26
24
|
gem.add_dependency 'ffi', '~> 1.15'
|
27
25
|
gem.add_dependency 'mini_portile2', '~> 2.6'
|
28
26
|
gem.add_dependency 'rake', '> 12'
|
@@ -33,4 +31,14 @@ Gem::Specification.new do |gem|
|
|
33
31
|
gem.add_development_dependency 'simplecov'
|
34
32
|
gem.add_development_dependency 'guard'
|
35
33
|
gem.add_development_dependency 'guard-rspec'
|
34
|
+
|
35
|
+
gem.metadata = {
|
36
|
+
'funding_uri' => 'https://karafka.io/#become-pro',
|
37
|
+
'homepage_uri' => 'https://karafka.io',
|
38
|
+
'changelog_uri' => 'https://github.com/karafka/karafka-rdkafka/blob/master/CHANGELOG.md',
|
39
|
+
'bug_tracker_uri' => 'https://github.com/karafka/karafka-rdkafka/issues',
|
40
|
+
'source_code_uri' => 'https://github.com/karafka/karafka-rdkafka',
|
41
|
+
'documentation_uri' => 'https://karafka.io/docs',
|
42
|
+
'rubygems_mfa_required' => 'true'
|
43
|
+
}
|
36
44
|
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module Rdkafka
|
2
|
+
class Admin
|
3
|
+
class CreatePartitionsHandle < AbstractHandle
|
4
|
+
layout :pending, :bool,
|
5
|
+
:response, :int,
|
6
|
+
:error_string, :pointer,
|
7
|
+
:result_name, :pointer
|
8
|
+
|
9
|
+
# @return [String] the name of the operation
|
10
|
+
def operation_name
|
11
|
+
"create partitions"
|
12
|
+
end
|
13
|
+
|
14
|
+
# @return [Boolean] whether the create topic was successful
|
15
|
+
def create_result
|
16
|
+
CreatePartitionsReport.new(self[:error_string], self[:result_name])
|
17
|
+
end
|
18
|
+
|
19
|
+
def raise_error
|
20
|
+
raise RdkafkaError.new(
|
21
|
+
self[:response],
|
22
|
+
broker_message: CreatePartitionsReport.new(self[:error_string], self[:result_name]).error_string
|
23
|
+
)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
data/lib/rdkafka/admin.rb
CHANGED
@@ -151,5 +151,66 @@ module Rdkafka
|
|
151
151
|
|
152
152
|
delete_topic_handle
|
153
153
|
end
|
154
|
+
|
155
|
+
# Creates extra partitions for a given topic
|
156
|
+
#
|
157
|
+
# @param topic_name [String]
|
158
|
+
# @param partition_count [Integer] how many partitions we want to end up with for given topic
|
159
|
+
#
|
160
|
+
# @raise [ConfigError] When the partition count or replication factor are out of valid range
|
161
|
+
# @raise [RdkafkaError] When the topic name is invalid or the topic already exists
|
162
|
+
# @raise [RdkafkaError] When the topic configuration is invalid
|
163
|
+
#
|
164
|
+
# @return [CreateTopicHandle] Create topic handle that can be used to wait for the result of creating the topic
|
165
|
+
def create_partitions(topic_name, partition_count)
|
166
|
+
error_buffer = FFI::MemoryPointer.from_string(" " * 256)
|
167
|
+
new_partitions_ptr = Rdkafka::Bindings.rd_kafka_NewPartitions_new(
|
168
|
+
FFI::MemoryPointer.from_string(topic_name),
|
169
|
+
partition_count,
|
170
|
+
error_buffer,
|
171
|
+
256
|
172
|
+
)
|
173
|
+
if new_partitions_ptr.null?
|
174
|
+
raise Rdkafka::Config::ConfigError.new(error_buffer.read_string)
|
175
|
+
end
|
176
|
+
|
177
|
+
pointer_array = [new_partitions_ptr]
|
178
|
+
topics_array_ptr = FFI::MemoryPointer.new(:pointer)
|
179
|
+
topics_array_ptr.write_array_of_pointer(pointer_array)
|
180
|
+
|
181
|
+
# Get a pointer to the queue that our request will be enqueued on
|
182
|
+
queue_ptr = Rdkafka::Bindings.rd_kafka_queue_get_background(@native_kafka)
|
183
|
+
if queue_ptr.null?
|
184
|
+
Rdkafka::Bindings.rd_kafka_NewPartitions_destroy(new_partitions_ptr)
|
185
|
+
raise Rdkafka::Config::ConfigError.new("rd_kafka_queue_get_background was NULL")
|
186
|
+
end
|
187
|
+
|
188
|
+
# Create and register the handle we will return to the caller
|
189
|
+
create_partitions_handle = CreatePartitionsHandle.new
|
190
|
+
create_partitions_handle[:pending] = true
|
191
|
+
create_partitions_handle[:response] = -1
|
192
|
+
CreatePartitionsHandle.register(create_partitions_handle)
|
193
|
+
admin_options_ptr = Rdkafka::Bindings.rd_kafka_AdminOptions_new(@native_kafka, Rdkafka::Bindings::RD_KAFKA_ADMIN_OP_CREATEPARTITIONS)
|
194
|
+
Rdkafka::Bindings.rd_kafka_AdminOptions_set_opaque(admin_options_ptr, create_partitions_handle.to_ptr)
|
195
|
+
|
196
|
+
begin
|
197
|
+
Rdkafka::Bindings.rd_kafka_CreatePartitions(
|
198
|
+
@native_kafka,
|
199
|
+
topics_array_ptr,
|
200
|
+
1,
|
201
|
+
admin_options_ptr,
|
202
|
+
queue_ptr
|
203
|
+
)
|
204
|
+
rescue Exception
|
205
|
+
CreatePartitionsHandle.remove(create_partitions_handle.to_ptr.address)
|
206
|
+
raise
|
207
|
+
ensure
|
208
|
+
Rdkafka::Bindings.rd_kafka_AdminOptions_destroy(admin_options_ptr)
|
209
|
+
Rdkafka::Bindings.rd_kafka_queue_destroy(queue_ptr)
|
210
|
+
Rdkafka::Bindings.rd_kafka_NewPartitions_destroy(new_partitions_ptr)
|
211
|
+
end
|
212
|
+
|
213
|
+
create_partitions_handle
|
214
|
+
end
|
154
215
|
end
|
155
216
|
end
|
data/lib/rdkafka/bindings.rb
CHANGED
@@ -286,6 +286,16 @@ module Rdkafka
|
|
286
286
|
attach_function :rd_kafka_event_DeleteTopics_result, [:pointer], :pointer
|
287
287
|
attach_function :rd_kafka_DeleteTopics_result_topics, [:pointer, :pointer], :pointer
|
288
288
|
|
289
|
+
# Create partitions
|
290
|
+
RD_KAFKA_ADMIN_OP_CREATEPARTITIONS = 3
|
291
|
+
RD_KAFKA_ADMIN_OP_CREATEPARTITIONS_RESULT = 102
|
292
|
+
|
293
|
+
attach_function :rd_kafka_CreatePartitions, [:pointer, :pointer, :size_t, :pointer, :pointer], :void
|
294
|
+
attach_function :rd_kafka_NewPartitions_new, %i[pointer size_t pointer size_t], :pointer
|
295
|
+
attach_function :rd_kafka_NewPartitions_destroy, [:pointer], :void
|
296
|
+
attach_function :rd_kafka_event_CreatePartitions_result, [:pointer], :pointer
|
297
|
+
attach_function :rd_kafka_CreatePartitions_result_topics, [:pointer, :pointer], :pointer
|
298
|
+
|
289
299
|
# Background Queue and Callback
|
290
300
|
|
291
301
|
attach_function :rd_kafka_queue_get_background, [:pointer], :pointer
|
data/lib/rdkafka/callbacks.rb
CHANGED
@@ -36,6 +36,8 @@ module Rdkafka
|
|
36
36
|
process_create_topic(event_ptr)
|
37
37
|
elsif event_type == Rdkafka::Bindings::RD_KAFKA_EVENT_DELETETOPICS_RESULT
|
38
38
|
process_delete_topic(event_ptr)
|
39
|
+
elsif event_type == Rdkafka::Bindings::RD_KAFKA_ADMIN_OP_CREATEPARTITIONS_RESULT
|
40
|
+
process_create_partitions(event_ptr)
|
39
41
|
end
|
40
42
|
end
|
41
43
|
|
@@ -74,6 +76,23 @@ module Rdkafka
|
|
74
76
|
delete_topic_handle[:pending] = false
|
75
77
|
end
|
76
78
|
end
|
79
|
+
|
80
|
+
def self.process_create_partitions(event_ptr)
|
81
|
+
create_partitionss_result = Rdkafka::Bindings.rd_kafka_event_CreatePartitions_result(event_ptr)
|
82
|
+
|
83
|
+
# Get the number of create topic results
|
84
|
+
pointer_to_size_t = FFI::MemoryPointer.new(:int32)
|
85
|
+
create_partitions_result_array = Rdkafka::Bindings.rd_kafka_CreatePartitions_result_topics(create_partitionss_result, pointer_to_size_t)
|
86
|
+
create_partitions_results = TopicResult.create_topic_results_from_array(pointer_to_size_t.read_int, create_partitions_result_array)
|
87
|
+
create_partitions_handle_ptr = Rdkafka::Bindings.rd_kafka_event_opaque(event_ptr)
|
88
|
+
|
89
|
+
if create_partitions_handle = Rdkafka::Admin::CreatePartitionsHandle.remove(create_partitions_handle_ptr.address)
|
90
|
+
create_partitions_handle[:response] = create_partitions_results[0].result_error
|
91
|
+
create_partitions_handle[:error_string] = create_partitions_results[0].error_string
|
92
|
+
create_partitions_handle[:result_name] = create_partitions_results[0].result_name
|
93
|
+
create_partitions_handle[:pending] = false
|
94
|
+
end
|
95
|
+
end
|
77
96
|
end
|
78
97
|
|
79
98
|
# FFI Function used for Message Delivery callbacks
|
data/lib/rdkafka/version.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
module Rdkafka
|
2
|
-
VERSION = "0.12.
|
3
|
-
LIBRDKAFKA_VERSION = "
|
4
|
-
LIBRDKAFKA_SOURCE_SHA256 = "
|
2
|
+
VERSION = "0.12.1.beta1"
|
3
|
+
LIBRDKAFKA_VERSION = "2.0.2"
|
4
|
+
LIBRDKAFKA_SOURCE_SHA256 = "f321bcb1e015a34114c83cf1aa7b99ee260236aab096b85c003170c90a47ca9d"
|
5
5
|
end
|
data/lib/rdkafka.rb
CHANGED
@@ -6,6 +6,8 @@ require "rdkafka/admin/create_topic_handle"
|
|
6
6
|
require "rdkafka/admin/create_topic_report"
|
7
7
|
require "rdkafka/admin/delete_topic_handle"
|
8
8
|
require "rdkafka/admin/delete_topic_report"
|
9
|
+
require "rdkafka/admin/create_partitions_handle"
|
10
|
+
require "rdkafka/admin/create_partitions_report"
|
9
11
|
require "rdkafka/bindings"
|
10
12
|
require "rdkafka/callbacks"
|
11
13
|
require "rdkafka/config"
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: karafka-rdkafka
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.12.
|
4
|
+
version: 0.12.1.beta1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thijs Cadier
|
@@ -35,7 +35,7 @@ cert_chain:
|
|
35
35
|
Qf04B9ceLUaC4fPVEz10FyobjaFoY4i32xRto3XnrzeAgfEe4swLq8bQsR3w/EF3
|
36
36
|
MGU0FeSV2Yj7Xc2x/7BzLK8xQn5l7Yy75iPF+KP3vVmDHnNl
|
37
37
|
-----END CERTIFICATE-----
|
38
|
-
date: 2023-
|
38
|
+
date: 2023-02-12 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: ffi
|
@@ -172,9 +172,9 @@ extensions:
|
|
172
172
|
- ext/Rakefile
|
173
173
|
extra_rdoc_files: []
|
174
174
|
files:
|
175
|
+
- ".github/workflows/ci.yml"
|
175
176
|
- ".gitignore"
|
176
177
|
- ".rspec"
|
177
|
-
- ".semaphore/semaphore.yml"
|
178
178
|
- ".yardopts"
|
179
179
|
- CHANGELOG.md
|
180
180
|
- Gemfile
|
@@ -183,12 +183,17 @@ files:
|
|
183
183
|
- README.md
|
184
184
|
- Rakefile
|
185
185
|
- bin/console
|
186
|
+
- certs/cert_chain.pem
|
187
|
+
- certs/karafka-pro.pem
|
186
188
|
- docker-compose.yml
|
187
189
|
- ext/README.md
|
188
190
|
- ext/Rakefile
|
191
|
+
- karafka-rdkafka.gemspec
|
189
192
|
- lib/rdkafka.rb
|
190
193
|
- lib/rdkafka/abstract_handle.rb
|
191
194
|
- lib/rdkafka/admin.rb
|
195
|
+
- lib/rdkafka/admin/create_partitions_handle.rb
|
196
|
+
- lib/rdkafka/admin/create_partitions_report.rb
|
192
197
|
- lib/rdkafka/admin/create_topic_handle.rb
|
193
198
|
- lib/rdkafka/admin/create_topic_report.rb
|
194
199
|
- lib/rdkafka/admin/delete_topic_handle.rb
|
@@ -208,7 +213,6 @@ files:
|
|
208
213
|
- lib/rdkafka/producer/delivery_handle.rb
|
209
214
|
- lib/rdkafka/producer/delivery_report.rb
|
210
215
|
- lib/rdkafka/version.rb
|
211
|
-
- rdkafka.gemspec
|
212
216
|
- spec/rdkafka/abstract_handle_spec.rb
|
213
217
|
- spec/rdkafka/admin/create_topic_handle_spec.rb
|
214
218
|
- spec/rdkafka/admin/create_topic_report_spec.rb
|
@@ -229,10 +233,17 @@ files:
|
|
229
233
|
- spec/rdkafka/producer/delivery_report_spec.rb
|
230
234
|
- spec/rdkafka/producer_spec.rb
|
231
235
|
- spec/spec_helper.rb
|
232
|
-
homepage:
|
236
|
+
homepage:
|
233
237
|
licenses:
|
234
238
|
- MIT
|
235
|
-
metadata:
|
239
|
+
metadata:
|
240
|
+
funding_uri: https://karafka.io/#become-pro
|
241
|
+
homepage_uri: https://karafka.io
|
242
|
+
changelog_uri: https://github.com/karafka/karafka-rdkafka/blob/master/CHANGELOG.md
|
243
|
+
bug_tracker_uri: https://github.com/karafka/karafka-rdkafka/issues
|
244
|
+
source_code_uri: https://github.com/karafka/karafka-rdkafka
|
245
|
+
documentation_uri: https://karafka.io/docs
|
246
|
+
rubygems_mfa_required: 'true'
|
236
247
|
post_install_message:
|
237
248
|
rdoc_options: []
|
238
249
|
require_paths:
|
@@ -244,11 +255,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
244
255
|
version: '2.6'
|
245
256
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
246
257
|
requirements:
|
247
|
-
- - "
|
258
|
+
- - ">"
|
248
259
|
- !ruby/object:Gem::Version
|
249
|
-
version:
|
260
|
+
version: 1.3.1
|
250
261
|
requirements: []
|
251
|
-
rubygems_version: 3.
|
262
|
+
rubygems_version: 3.3.7
|
252
263
|
signing_key:
|
253
264
|
specification_version: 4
|
254
265
|
summary: The rdkafka gem is a modern Kafka client library for Ruby based on librdkafka.
|
metadata.gz.sig
CHANGED
Binary file
|
data/.semaphore/semaphore.yml
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
version: v1.0
|
2
|
-
name: Rdkafka Ruby
|
3
|
-
|
4
|
-
agent:
|
5
|
-
machine:
|
6
|
-
type: e1-standard-4
|
7
|
-
os_image: ubuntu1804
|
8
|
-
|
9
|
-
blocks:
|
10
|
-
- name: Run specs
|
11
|
-
task:
|
12
|
-
jobs:
|
13
|
-
- name: bundle exec rspec
|
14
|
-
matrix:
|
15
|
-
- env_var: RUBY_VERSION
|
16
|
-
values: [ "2.6.8", "2.7.4", "3.0.2", "jruby-9.3.1.0"]
|
17
|
-
commands:
|
18
|
-
- sem-version ruby $RUBY_VERSION
|
19
|
-
- checkout
|
20
|
-
- bundle install --path vendor/bundle
|
21
|
-
- cd ext && bundle exec rake && cd ..
|
22
|
-
- docker-compose up -d --no-recreate
|
23
|
-
- bundle exec rspec
|