karafka-rdkafka 0.21.0 → 0.22.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 (72) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +1 -0
  4. data/dist/{librdkafka-2.11.0.tar.gz → librdkafka-2.11.1.tar.gz} +0 -0
  5. data/karafka-rdkafka.gemspec +33 -6
  6. data/lib/rdkafka/version.rb +3 -3
  7. data/renovate.json +5 -17
  8. metadata +3 -67
  9. data/.github/CODEOWNERS +0 -3
  10. data/.github/FUNDING.yml +0 -1
  11. data/.github/workflows/ci_linux_alpine_x86_64_musl.yml +0 -197
  12. data/.github/workflows/ci_linux_alpine_x86_64_musl_complementary.yml +0 -264
  13. data/.github/workflows/ci_linux_debian_x86_64_gnu.yml +0 -271
  14. data/.github/workflows/ci_linux_debian_x86_64_gnu_complementary.yml +0 -334
  15. data/.github/workflows/ci_linux_ubuntu_aarch64_gnu.yml +0 -271
  16. data/.github/workflows/ci_linux_ubuntu_aarch64_gnu_complementary.yml +0 -295
  17. data/.github/workflows/ci_linux_ubuntu_x86_64_gnu.yml +0 -281
  18. data/.github/workflows/ci_linux_ubuntu_x86_64_gnu_complementary.yml +0 -294
  19. data/.github/workflows/ci_macos_arm64.yml +0 -284
  20. data/.github/workflows/push_linux_aarch64_gnu.yml +0 -65
  21. data/.github/workflows/push_linux_x86_64_gnu.yml +0 -65
  22. data/.github/workflows/push_linux_x86_64_musl.yml +0 -79
  23. data/.github/workflows/push_macos_arm64.yml +0 -54
  24. data/.github/workflows/push_ruby.yml +0 -37
  25. data/.github/workflows/trigger-wiki-refresh.yml +0 -30
  26. data/.github/workflows/verify-action-pins.yml +0 -16
  27. data/.gitignore +0 -16
  28. data/.rspec +0 -3
  29. data/.ruby-gemset +0 -1
  30. data/.ruby-version +0 -1
  31. data/.yardopts +0 -2
  32. data/dist/cyrus-sasl-2.1.28.tar.gz +0 -0
  33. data/dist/krb5-1.21.3.tar.gz +0 -0
  34. data/dist/openssl-3.0.16.tar.gz +0 -0
  35. data/dist/zlib-1.3.1.tar.gz +0 -0
  36. data/dist/zstd-1.5.7.tar.gz +0 -0
  37. data/ext/README.md +0 -19
  38. data/ext/build_common.sh +0 -376
  39. data/ext/build_linux_aarch64_gnu.sh +0 -326
  40. data/ext/build_linux_x86_64_gnu.sh +0 -317
  41. data/ext/build_linux_x86_64_musl.sh +0 -773
  42. data/ext/build_macos_arm64.sh +0 -557
  43. data/ext/generate-ssl-certs.sh +0 -109
  44. data/spec/integrations/ssl_stress_spec.rb +0 -121
  45. data/spec/lib/rdkafka/abstract_handle_spec.rb +0 -117
  46. data/spec/lib/rdkafka/admin/create_acl_handle_spec.rb +0 -56
  47. data/spec/lib/rdkafka/admin/create_acl_report_spec.rb +0 -18
  48. data/spec/lib/rdkafka/admin/create_topic_handle_spec.rb +0 -54
  49. data/spec/lib/rdkafka/admin/create_topic_report_spec.rb +0 -16
  50. data/spec/lib/rdkafka/admin/delete_acl_handle_spec.rb +0 -85
  51. data/spec/lib/rdkafka/admin/delete_acl_report_spec.rb +0 -72
  52. data/spec/lib/rdkafka/admin/delete_topic_handle_spec.rb +0 -54
  53. data/spec/lib/rdkafka/admin/delete_topic_report_spec.rb +0 -16
  54. data/spec/lib/rdkafka/admin/describe_acl_handle_spec.rb +0 -85
  55. data/spec/lib/rdkafka/admin/describe_acl_report_spec.rb +0 -73
  56. data/spec/lib/rdkafka/admin_spec.rb +0 -982
  57. data/spec/lib/rdkafka/bindings_spec.rb +0 -198
  58. data/spec/lib/rdkafka/callbacks_spec.rb +0 -20
  59. data/spec/lib/rdkafka/config_spec.rb +0 -258
  60. data/spec/lib/rdkafka/consumer/headers_spec.rb +0 -73
  61. data/spec/lib/rdkafka/consumer/message_spec.rb +0 -139
  62. data/spec/lib/rdkafka/consumer/partition_spec.rb +0 -57
  63. data/spec/lib/rdkafka/consumer/topic_partition_list_spec.rb +0 -248
  64. data/spec/lib/rdkafka/consumer_spec.rb +0 -1343
  65. data/spec/lib/rdkafka/error_spec.rb +0 -95
  66. data/spec/lib/rdkafka/metadata_spec.rb +0 -79
  67. data/spec/lib/rdkafka/native_kafka_spec.rb +0 -130
  68. data/spec/lib/rdkafka/producer/delivery_handle_spec.rb +0 -60
  69. data/spec/lib/rdkafka/producer/delivery_report_spec.rb +0 -25
  70. data/spec/lib/rdkafka/producer/partitions_count_cache_spec.rb +0 -359
  71. data/spec/lib/rdkafka/producer_spec.rb +0 -1527
  72. data/spec/spec_helper.rb +0 -230
@@ -1,85 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "spec_helper"
4
-
5
- describe Rdkafka::Admin::DescribeAclHandle do
6
- let(:response) { Rdkafka::Bindings::RD_KAFKA_RESP_ERR_NO_ERROR }
7
- let(:resource_name) {"acl-test-topic"}
8
- let(:resource_type) {Rdkafka::Bindings::RD_KAFKA_RESOURCE_TOPIC}
9
- let(:resource_pattern_type) {Rdkafka::Bindings::RD_KAFKA_RESOURCE_PATTERN_LITERAL}
10
- let(:principal) {"User:anonymous"}
11
- let(:host) {"*"}
12
- let(:operation) {Rdkafka::Bindings::RD_KAFKA_ACL_OPERATION_READ}
13
- let(:permission_type) {Rdkafka::Bindings::RD_KAFKA_ACL_PERMISSION_TYPE_ALLOW}
14
- let(:describe_acl_ptr) {FFI::Pointer::NULL}
15
-
16
- subject do
17
- error_buffer = FFI::MemoryPointer.from_string(" " * 256)
18
- describe_acl_ptr = Rdkafka::Bindings.rd_kafka_AclBinding_new(
19
- resource_type,
20
- FFI::MemoryPointer.from_string(resource_name),
21
- resource_pattern_type,
22
- FFI::MemoryPointer.from_string(principal),
23
- FFI::MemoryPointer.from_string(host),
24
- operation,
25
- permission_type,
26
- error_buffer,
27
- 256
28
- )
29
- if describe_acl_ptr.null?
30
- raise Rdkafka::Config::ConfigError.new(error_buffer.read_string)
31
- end
32
- pointer_array = [describe_acl_ptr]
33
- describe_acls_array_ptr = FFI::MemoryPointer.new(:pointer)
34
- describe_acls_array_ptr.write_array_of_pointer(pointer_array)
35
- Rdkafka::Admin::DescribeAclHandle.new.tap do |handle|
36
- handle[:pending] = pending_handle
37
- handle[:response] = response
38
- handle[:response_string] = FFI::MemoryPointer.from_string("")
39
- handle[:acls] = describe_acls_array_ptr
40
- handle[:acls_count] = 1
41
- end
42
- end
43
-
44
- after do
45
- if describe_acl_ptr != FFI::Pointer::NULL
46
- Rdkafka::Bindings.rd_kafka_AclBinding_destroy(describe_acl_ptr)
47
- end
48
- end
49
-
50
- describe "#wait" do
51
- let(:pending_handle) { true }
52
-
53
- it "should wait until the timeout and then raise an error" do
54
- expect {
55
- subject.wait(max_wait_timeout: 0.1)
56
- }.to raise_error Rdkafka::Admin::DescribeAclHandle::WaitTimeoutError, /describe acl/
57
- end
58
-
59
- context "when not pending anymore and no error" do
60
- let(:pending_handle) { false }
61
-
62
- it "should return a describe acl report" do
63
- report = subject.wait
64
-
65
- expect(report.acls.length).to eq(1)
66
- end
67
-
68
- it "should wait without a timeout" do
69
- report = subject.wait(max_wait_timeout: nil)
70
-
71
- expect(report.acls[0].matching_acl_resource_name).to eq("acl-test-topic")
72
- end
73
- end
74
- end
75
-
76
- describe "#raise_error" do
77
- let(:pending_handle) { false }
78
-
79
- it "should raise the appropriate error" do
80
- expect {
81
- subject.raise_error
82
- }.to raise_exception(Rdkafka::RdkafkaError, /Success \(no_error\)/)
83
- end
84
- end
85
- end
@@ -1,73 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "spec_helper"
4
-
5
- describe Rdkafka::Admin::DescribeAclReport do
6
-
7
- let(:resource_name) {"acl-test-topic"}
8
- let(:resource_type) {Rdkafka::Bindings::RD_KAFKA_RESOURCE_TOPIC}
9
- let(:resource_pattern_type) {Rdkafka::Bindings::RD_KAFKA_RESOURCE_PATTERN_LITERAL}
10
- let(:principal) {"User:anonymous"}
11
- let(:host) {"*"}
12
- let(:operation) {Rdkafka::Bindings::RD_KAFKA_ACL_OPERATION_READ}
13
- let(:permission_type) {Rdkafka::Bindings::RD_KAFKA_ACL_PERMISSION_TYPE_ALLOW}
14
- let(:describe_acl_ptr) {FFI::Pointer::NULL}
15
-
16
- subject do
17
- error_buffer = FFI::MemoryPointer.from_string(" " * 256)
18
- describe_acl_ptr = Rdkafka::Bindings.rd_kafka_AclBinding_new(
19
- resource_type,
20
- FFI::MemoryPointer.from_string(resource_name),
21
- resource_pattern_type,
22
- FFI::MemoryPointer.from_string(principal),
23
- FFI::MemoryPointer.from_string(host),
24
- operation,
25
- permission_type,
26
- error_buffer,
27
- 256
28
- )
29
- if describe_acl_ptr.null?
30
- raise Rdkafka::Config::ConfigError.new(error_buffer.read_string)
31
- end
32
- pointer_array = [describe_acl_ptr]
33
- describe_acls_array_ptr = FFI::MemoryPointer.new(:pointer)
34
- describe_acls_array_ptr.write_array_of_pointer(pointer_array)
35
- Rdkafka::Admin::DescribeAclReport.new(acls: describe_acls_array_ptr, acls_count: 1)
36
- end
37
-
38
- after do
39
- if describe_acl_ptr != FFI::Pointer::NULL
40
- Rdkafka::Bindings.rd_kafka_AclBinding_destroy(describe_acl_ptr)
41
- end
42
- end
43
-
44
-
45
- it "should get matching acl resource type as Rdkafka::Bindings::RD_KAFKA_RESOURCE_TOPIC" do
46
- expect(subject.acls[0].matching_acl_resource_type).to eq(Rdkafka::Bindings::RD_KAFKA_RESOURCE_TOPIC)
47
- end
48
-
49
- it "should get matching acl resource name as acl-test-topic" do
50
- expect(subject.acls[0].matching_acl_resource_name).to eq(resource_name)
51
- end
52
-
53
- it "should get matching acl resource pattern type as Rdkafka::Bindings::RD_KAFKA_RESOURCE_PATTERN_LITERAL" do
54
- expect(subject.acls[0].matching_acl_resource_pattern_type).to eq(Rdkafka::Bindings::RD_KAFKA_RESOURCE_PATTERN_LITERAL)
55
- expect(subject.acls[0].matching_acl_pattern_type).to eq(Rdkafka::Bindings::RD_KAFKA_RESOURCE_PATTERN_LITERAL)
56
- end
57
-
58
- it "should get matching acl principal as User:anonymous" do
59
- expect(subject.acls[0].matching_acl_principal).to eq("User:anonymous")
60
- end
61
-
62
- it "should get matching acl host as * " do
63
- expect(subject.acls[0].matching_acl_host).to eq("*")
64
- end
65
-
66
- it "should get matching acl operation as Rdkafka::Bindings::RD_KAFKA_ACL_OPERATION_READ" do
67
- expect(subject.acls[0].matching_acl_operation).to eq(Rdkafka::Bindings::RD_KAFKA_ACL_OPERATION_READ)
68
- end
69
-
70
- it "should get matching acl permission_type as Rdkafka::Bindings::RD_KAFKA_ACL_PERMISSION_TYPE_ALLOW" do
71
- expect(subject.acls[0].matching_acl_permission_type).to eq(Rdkafka::Bindings::RD_KAFKA_ACL_PERMISSION_TYPE_ALLOW)
72
- end
73
- end