karafka-rdkafka 0.20.1-arm64-darwin → 0.21.0-arm64-darwin
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
- data/.github/workflows/{ci_linux_x86_64_musl.yml → ci_linux_alpine_x86_64_musl.yml} +12 -9
- data/.github/workflows/ci_linux_alpine_x86_64_musl_complementary.yml +264 -0
- data/.github/workflows/ci_linux_debian_x86_64_gnu.yml +271 -0
- data/.github/workflows/ci_linux_debian_x86_64_gnu_complementary.yml +334 -0
- data/.github/workflows/{ci_linux_x86_64_gnu.yml → ci_linux_ubuntu_aarch64_gnu.yml} +15 -15
- data/.github/workflows/ci_linux_ubuntu_aarch64_gnu_complementary.yml +295 -0
- data/.github/workflows/ci_linux_ubuntu_x86_64_gnu.yml +281 -0
- data/.github/workflows/ci_linux_ubuntu_x86_64_gnu_complementary.yml +294 -0
- data/.github/workflows/ci_macos_arm64.yml +5 -5
- data/.github/workflows/push_linux_aarch64_gnu.yml +65 -0
- data/.github/workflows/push_linux_x86_64_gnu.yml +2 -2
- data/.github/workflows/push_linux_x86_64_musl.yml +3 -3
- data/.github/workflows/push_macos_arm64.yml +2 -2
- data/.github/workflows/push_ruby.yml +1 -1
- data/.github/workflows/trigger-wiki-refresh.yml +30 -0
- data/.github/workflows/verify-action-pins.yml +1 -1
- data/.gitignore +1 -0
- data/.rspec +1 -0
- data/CHANGELOG.md +9 -0
- data/README.md +48 -147
- data/dist/cyrus-sasl-2.1.28.tar.gz +0 -0
- data/dist/krb5-1.21.3.tar.gz +0 -0
- data/dist/openssl-3.0.16.tar.gz +0 -0
- data/dist/zlib-1.3.1.tar.gz +0 -0
- data/dist/zstd-1.5.7.tar.gz +0 -0
- data/docker-compose-ssl.yml +35 -0
- data/ext/build_common.sh +18 -3
- data/ext/build_linux_aarch64_gnu.sh +326 -0
- data/ext/build_linux_x86_64_gnu.sh +12 -1
- data/ext/build_linux_x86_64_musl.sh +18 -8
- data/ext/build_macos_arm64.sh +7 -0
- data/ext/generate-ssl-certs.sh +109 -0
- data/ext/librdkafka.dylib +0 -0
- data/karafka-rdkafka.gemspec +2 -0
- data/lib/rdkafka/bindings.rb +0 -1
- data/lib/rdkafka/config.rb +1 -4
- data/lib/rdkafka/consumer.rb +1 -1
- data/lib/rdkafka/version.rb +3 -3
- data/spec/integrations/ssl_stress_spec.rb +121 -0
- data/spec/{rdkafka → lib/rdkafka}/admin_spec.rb +17 -5
- data/spec/{rdkafka → lib/rdkafka}/config_spec.rb +1 -1
- data/spec/{rdkafka → lib/rdkafka}/consumer_spec.rb +50 -3
- data/spec/{rdkafka → lib/rdkafka}/metadata_spec.rb +2 -2
- data/spec/{rdkafka → lib/rdkafka}/producer/delivery_report_spec.rb +1 -1
- data/spec/{rdkafka → lib/rdkafka}/producer_spec.rb +6 -7
- data/spec/spec_helper.rb +45 -10
- metadata +76 -31
- /data/spec/{rdkafka → lib/rdkafka}/abstract_handle_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/admin/create_acl_handle_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/admin/create_acl_report_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/admin/create_topic_handle_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/admin/create_topic_report_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/admin/delete_acl_handle_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/admin/delete_acl_report_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/admin/delete_topic_handle_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/admin/delete_topic_report_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/admin/describe_acl_handle_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/admin/describe_acl_report_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/bindings_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/callbacks_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/consumer/headers_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/consumer/message_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/consumer/partition_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/consumer/topic_partition_list_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/error_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/native_kafka_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/producer/delivery_handle_spec.rb +0 -0
- /data/spec/{rdkafka → lib/rdkafka}/producer/partitions_count_cache_spec.rb +0 -0
data/spec/spec_helper.rb
CHANGED
@@ -1,5 +1,19 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
Warning[:performance] = true if RUBY_VERSION >= '3.3'
|
4
|
+
Warning[:deprecated] = true
|
5
|
+
$VERBOSE = true
|
6
|
+
|
7
|
+
require 'warning'
|
8
|
+
|
9
|
+
Warning.process do |warning|
|
10
|
+
next unless warning.include?(Dir.pwd)
|
11
|
+
# Allow OpenStruct usage only in specs
|
12
|
+
next if warning.include?('OpenStruct use') && warning.include?('_spec')
|
13
|
+
|
14
|
+
raise "Warning in your code: #{warning}"
|
15
|
+
end
|
16
|
+
|
3
17
|
unless ENV["CI"] == "true"
|
4
18
|
require "simplecov"
|
5
19
|
SimpleCov.start do
|
@@ -14,14 +28,25 @@ require "timeout"
|
|
14
28
|
require "securerandom"
|
15
29
|
|
16
30
|
def rdkafka_base_config
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
31
|
+
if ENV['KAFKA_SSL_ENABLED'] == 'true'
|
32
|
+
{
|
33
|
+
:"bootstrap.servers" => "localhost:9093",
|
34
|
+
# Display statistics and refresh often just to cover those in specs
|
35
|
+
:'statistics.interval.ms' => 1_000,
|
36
|
+
:'topic.metadata.refresh.interval.ms' => 1_000,
|
37
|
+
# SSL Configuration
|
38
|
+
:'security.protocol' => 'SSL',
|
39
|
+
:'ssl.ca.location' => './ssl/ca-cert',
|
40
|
+
:'ssl.endpoint.identification.algorithm' => 'none'
|
41
|
+
}
|
42
|
+
else
|
43
|
+
{
|
44
|
+
:"bootstrap.servers" => "localhost:9092",
|
45
|
+
# Display statistics and refresh often just to cover those in specs
|
46
|
+
:'statistics.interval.ms' => 1_000,
|
47
|
+
:'topic.metadata.refresh.interval.ms' => 1_000
|
48
|
+
}
|
49
|
+
end
|
25
50
|
end
|
26
51
|
|
27
52
|
def rdkafka_config(config_overrides={})
|
@@ -124,6 +149,16 @@ def wait_for_unassignment(consumer)
|
|
124
149
|
end
|
125
150
|
end
|
126
151
|
|
152
|
+
def wait_for_topic(admin, topic)
|
153
|
+
admin.metadata(topic)
|
154
|
+
rescue Rdkafka::RdkafkaError => e
|
155
|
+
raise unless e.code == :unknown_topic_or_part
|
156
|
+
|
157
|
+
sleep(0.5)
|
158
|
+
|
159
|
+
retry
|
160
|
+
end
|
161
|
+
|
127
162
|
def notify_listener(listener, &block)
|
128
163
|
# 1. subscribe and poll
|
129
164
|
consumer.subscribe("consume_test_topic")
|
@@ -171,9 +206,9 @@ RSpec.configure do |config|
|
|
171
206
|
end
|
172
207
|
|
173
208
|
config.around(:each) do |example|
|
174
|
-
# Timeout specs after
|
209
|
+
# Timeout specs after 1.5 minute. If they take longer
|
175
210
|
# they are probably stuck
|
176
|
-
Timeout::timeout(
|
211
|
+
Timeout::timeout(90) do
|
177
212
|
example.run
|
178
213
|
end
|
179
214
|
end
|
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.
|
4
|
+
version: 0.21.0
|
5
5
|
platform: arm64-darwin
|
6
6
|
authors:
|
7
7
|
- Thijs Cadier
|
@@ -24,6 +24,20 @@ dependencies:
|
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.15'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: json
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '2.0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '2.0'
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: logger
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -136,6 +150,20 @@ dependencies:
|
|
136
150
|
- - ">="
|
137
151
|
- !ruby/object:Gem::Version
|
138
152
|
version: '0'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: warning
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - ">="
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '0'
|
160
|
+
type: :development
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - ">="
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0'
|
139
167
|
description: Modern Kafka client library for Ruby based on librdkafka
|
140
168
|
email:
|
141
169
|
- contact@karafka.io
|
@@ -145,13 +173,21 @@ extra_rdoc_files: []
|
|
145
173
|
files:
|
146
174
|
- ".github/CODEOWNERS"
|
147
175
|
- ".github/FUNDING.yml"
|
148
|
-
- ".github/workflows/
|
149
|
-
- ".github/workflows/
|
176
|
+
- ".github/workflows/ci_linux_alpine_x86_64_musl.yml"
|
177
|
+
- ".github/workflows/ci_linux_alpine_x86_64_musl_complementary.yml"
|
178
|
+
- ".github/workflows/ci_linux_debian_x86_64_gnu.yml"
|
179
|
+
- ".github/workflows/ci_linux_debian_x86_64_gnu_complementary.yml"
|
180
|
+
- ".github/workflows/ci_linux_ubuntu_aarch64_gnu.yml"
|
181
|
+
- ".github/workflows/ci_linux_ubuntu_aarch64_gnu_complementary.yml"
|
182
|
+
- ".github/workflows/ci_linux_ubuntu_x86_64_gnu.yml"
|
183
|
+
- ".github/workflows/ci_linux_ubuntu_x86_64_gnu_complementary.yml"
|
150
184
|
- ".github/workflows/ci_macos_arm64.yml"
|
185
|
+
- ".github/workflows/push_linux_aarch64_gnu.yml"
|
151
186
|
- ".github/workflows/push_linux_x86_64_gnu.yml"
|
152
187
|
- ".github/workflows/push_linux_x86_64_musl.yml"
|
153
188
|
- ".github/workflows/push_macos_arm64.yml"
|
154
189
|
- ".github/workflows/push_ruby.yml"
|
190
|
+
- ".github/workflows/trigger-wiki-refresh.yml"
|
155
191
|
- ".github/workflows/verify-action-pins.yml"
|
156
192
|
- ".gitignore"
|
157
193
|
- ".rspec"
|
@@ -163,13 +199,21 @@ files:
|
|
163
199
|
- MIT-LICENSE
|
164
200
|
- README.md
|
165
201
|
- Rakefile
|
202
|
+
- dist/cyrus-sasl-2.1.28.tar.gz
|
203
|
+
- dist/krb5-1.21.3.tar.gz
|
204
|
+
- dist/openssl-3.0.16.tar.gz
|
205
|
+
- dist/zlib-1.3.1.tar.gz
|
206
|
+
- dist/zstd-1.5.7.tar.gz
|
207
|
+
- docker-compose-ssl.yml
|
166
208
|
- docker-compose.yml
|
167
209
|
- ext/README.md
|
168
210
|
- ext/Rakefile
|
169
211
|
- ext/build_common.sh
|
212
|
+
- ext/build_linux_aarch64_gnu.sh
|
170
213
|
- ext/build_linux_x86_64_gnu.sh
|
171
214
|
- ext/build_linux_x86_64_musl.sh
|
172
215
|
- ext/build_macos_arm64.sh
|
216
|
+
- ext/generate-ssl-certs.sh
|
173
217
|
- ext/librdkafka.dylib
|
174
218
|
- karafka-rdkafka.gemspec
|
175
219
|
- lib/rdkafka.rb
|
@@ -215,33 +259,34 @@ files:
|
|
215
259
|
- lib/rdkafka/producer/partitions_count_cache.rb
|
216
260
|
- lib/rdkafka/version.rb
|
217
261
|
- renovate.json
|
218
|
-
- spec/
|
219
|
-
- spec/rdkafka/
|
220
|
-
- spec/rdkafka/admin/
|
221
|
-
- spec/rdkafka/admin/
|
222
|
-
- spec/rdkafka/admin/
|
223
|
-
- spec/rdkafka/admin/
|
224
|
-
- spec/rdkafka/admin/
|
225
|
-
- spec/rdkafka/admin/
|
226
|
-
- spec/rdkafka/admin/
|
227
|
-
- spec/rdkafka/admin/
|
228
|
-
- spec/rdkafka/admin/
|
229
|
-
- spec/rdkafka/
|
230
|
-
- spec/rdkafka/
|
231
|
-
- spec/rdkafka/
|
232
|
-
- spec/rdkafka/
|
233
|
-
- spec/rdkafka/
|
234
|
-
- spec/rdkafka/consumer/
|
235
|
-
- spec/rdkafka/consumer/
|
236
|
-
- spec/rdkafka/consumer/
|
237
|
-
- spec/rdkafka/
|
238
|
-
- spec/rdkafka/
|
239
|
-
- spec/rdkafka/
|
240
|
-
- spec/rdkafka/
|
241
|
-
- spec/rdkafka/
|
242
|
-
- spec/rdkafka/producer/
|
243
|
-
- spec/rdkafka/producer/
|
244
|
-
- spec/rdkafka/
|
262
|
+
- spec/integrations/ssl_stress_spec.rb
|
263
|
+
- spec/lib/rdkafka/abstract_handle_spec.rb
|
264
|
+
- spec/lib/rdkafka/admin/create_acl_handle_spec.rb
|
265
|
+
- spec/lib/rdkafka/admin/create_acl_report_spec.rb
|
266
|
+
- spec/lib/rdkafka/admin/create_topic_handle_spec.rb
|
267
|
+
- spec/lib/rdkafka/admin/create_topic_report_spec.rb
|
268
|
+
- spec/lib/rdkafka/admin/delete_acl_handle_spec.rb
|
269
|
+
- spec/lib/rdkafka/admin/delete_acl_report_spec.rb
|
270
|
+
- spec/lib/rdkafka/admin/delete_topic_handle_spec.rb
|
271
|
+
- spec/lib/rdkafka/admin/delete_topic_report_spec.rb
|
272
|
+
- spec/lib/rdkafka/admin/describe_acl_handle_spec.rb
|
273
|
+
- spec/lib/rdkafka/admin/describe_acl_report_spec.rb
|
274
|
+
- spec/lib/rdkafka/admin_spec.rb
|
275
|
+
- spec/lib/rdkafka/bindings_spec.rb
|
276
|
+
- spec/lib/rdkafka/callbacks_spec.rb
|
277
|
+
- spec/lib/rdkafka/config_spec.rb
|
278
|
+
- spec/lib/rdkafka/consumer/headers_spec.rb
|
279
|
+
- spec/lib/rdkafka/consumer/message_spec.rb
|
280
|
+
- spec/lib/rdkafka/consumer/partition_spec.rb
|
281
|
+
- spec/lib/rdkafka/consumer/topic_partition_list_spec.rb
|
282
|
+
- spec/lib/rdkafka/consumer_spec.rb
|
283
|
+
- spec/lib/rdkafka/error_spec.rb
|
284
|
+
- spec/lib/rdkafka/metadata_spec.rb
|
285
|
+
- spec/lib/rdkafka/native_kafka_spec.rb
|
286
|
+
- spec/lib/rdkafka/producer/delivery_handle_spec.rb
|
287
|
+
- spec/lib/rdkafka/producer/delivery_report_spec.rb
|
288
|
+
- spec/lib/rdkafka/producer/partitions_count_cache_spec.rb
|
289
|
+
- spec/lib/rdkafka/producer_spec.rb
|
245
290
|
- spec/spec_helper.rb
|
246
291
|
licenses:
|
247
292
|
- MIT
|
@@ -267,7 +312,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
267
312
|
- !ruby/object:Gem::Version
|
268
313
|
version: '0'
|
269
314
|
requirements: []
|
270
|
-
rubygems_version: 3.6.
|
315
|
+
rubygems_version: 3.6.9
|
271
316
|
specification_version: 4
|
272
317
|
summary: The rdkafka gem is a modern Kafka client library for Ruby based on librdkafka.
|
273
318
|
It wraps the production-ready C client using the ffi gem and targets Kafka 1.0+
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|