rdkafka 0.23.0 → 0.24.1
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/CHANGELOG.md +11 -0
- data/README.md +1 -0
- data/bin/verify_kafka_warnings +37 -0
- data/dist/{librdkafka-2.11.0.tar.gz → librdkafka-2.11.1.tar.gz} +0 -0
- data/docker-compose-ssl.yml +1 -1
- data/docker-compose.yml +1 -1
- data/lib/rdkafka/bindings.rb +14 -1
- data/lib/rdkafka/producer/delivery_report.rb +2 -2
- data/lib/rdkafka/version.rb +3 -3
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bf34fd0a321b2959bcd104964ae0190e9ec1fef93da9ffe23413bf3c7629a075
|
4
|
+
data.tar.gz: c892e8018d5af535a44b2dd31fb4d62ca11961b85b8dbf3f746e5a3687fa89c2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c530255e19804794568df6c1aaec81da86d65825e2e235dfabfffcde52d84d232593e1a51533c0d60d5e1697c0e107fdf6f6b88917b9058ac1e5dba5c6b936c2
|
7
|
+
data.tar.gz: 01cadafb8bd0a1a97fd28267b5f8c4d668538db8bda2793d3d6e9b12af206f9647d9ba2eb92266a9ff8900014e47e1c0ac720e9e539687c02d587c58b6975e8e
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,16 @@
|
|
1
1
|
# Rdkafka Changelog
|
2
2
|
|
3
|
+
## 0.24.1 (2025-10-10)
|
4
|
+
- [Fix] Fix Github Action Ruby reference preventing non-compiled releases.
|
5
|
+
|
6
|
+
## 0.24.0 (2025-10-10)
|
7
|
+
- [Enhancement] Bump librdkafka to `2.11.1`
|
8
|
+
|
9
|
+
## 0.23.1 (2025-09-25)
|
10
|
+
- [Enhancement] Improve sigstore attestation for precompiled releases.
|
11
|
+
- [Fix] Fix incorrectly set default SSL certs dir.
|
12
|
+
- [Fix] Disable OpenSSL Heartbeats during compilation.
|
13
|
+
|
3
14
|
## 0.23.0 (2025-09-04)
|
4
15
|
- **[Breaking]** Drop support for Ruby 3.1 to move forward with the fiber scheduler work.
|
5
16
|
- [Enhancement] Bump librdkafka to `2.11.0`
|
data/README.md
CHANGED
@@ -163,6 +163,7 @@ bundle exec rake produce_messages
|
|
163
163
|
|
164
164
|
| rdkafka-ruby | librdkafka | patches |
|
165
165
|
|-|-|-|
|
166
|
+
| 0.24.x (Unreleased) | 2.11.1 (2025-08-08) | yes |
|
166
167
|
| 0.23.x (2025-09-04) | 2.11.0 (2025-07-03) | yes |
|
167
168
|
| 0.22.x (2025-07-17) | 2.8.0 (2025-01-07) | yes |
|
168
169
|
| 0.21.x (2025-02-13) | 2.8.0 (2025-01-07) | yes |
|
@@ -0,0 +1,37 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
# Checks Kafka logs for unsupported warning patterns
|
4
|
+
# Only specified warnings are allowed, all others should trigger failure
|
5
|
+
|
6
|
+
allowed_patterns=(
|
7
|
+
"Performing controller activation"
|
8
|
+
"registered with feature metadata.version"
|
9
|
+
"Replayed TopicRecord for"
|
10
|
+
"Replayed PartitionRecord for"
|
11
|
+
"Previous leader None and previous leader epoch"
|
12
|
+
"Creating new"
|
13
|
+
"Unloaded transaction metadata"
|
14
|
+
"closing connection"
|
15
|
+
)
|
16
|
+
|
17
|
+
# Get all warnings
|
18
|
+
warnings=$(docker logs --since=0 kafka | grep "] WARN ")
|
19
|
+
exit_code=0
|
20
|
+
|
21
|
+
while IFS= read -r line; do
|
22
|
+
allowed=0
|
23
|
+
for pattern in "${allowed_patterns[@]}"; do
|
24
|
+
if echo "$line" | grep -q "$pattern"; then
|
25
|
+
allowed=1
|
26
|
+
break
|
27
|
+
fi
|
28
|
+
done
|
29
|
+
|
30
|
+
if [ $allowed -eq 0 ]; then
|
31
|
+
echo "Unexpected warning found:"
|
32
|
+
echo "$line"
|
33
|
+
exit_code=1
|
34
|
+
fi
|
35
|
+
done <<< "$warnings"
|
36
|
+
|
37
|
+
exit $exit_code
|
Binary file
|
data/docker-compose-ssl.yml
CHANGED
data/docker-compose.yml
CHANGED
data/lib/rdkafka/bindings.rb
CHANGED
@@ -2,6 +2,15 @@
|
|
2
2
|
|
3
3
|
module Rdkafka
|
4
4
|
# @private
|
5
|
+
#
|
6
|
+
# @note
|
7
|
+
# There are two types of responses related to errors:
|
8
|
+
# - rd_kafka_error_t - a C object that we need to remap into an error or null when no error
|
9
|
+
# - rd_kafka_resp_err_t - response error code (numeric) that we can use directly
|
10
|
+
#
|
11
|
+
# It is critical to ensure, that we handle them correctly. The result type should be:
|
12
|
+
# - rd_kafka_error_t - :pointer
|
13
|
+
# - rd_kafka_resp_err_t - :int
|
5
14
|
module Bindings
|
6
15
|
extend FFI::Library
|
7
16
|
|
@@ -91,7 +100,7 @@ module Rdkafka
|
|
91
100
|
end
|
92
101
|
|
93
102
|
attach_function :rd_kafka_topic_partition_list_new, [:int32], :pointer
|
94
|
-
attach_function :rd_kafka_topic_partition_list_add, [:pointer, :string, :int32], :
|
103
|
+
attach_function :rd_kafka_topic_partition_list_add, [:pointer, :string, :int32], :pointer
|
95
104
|
attach_function :rd_kafka_topic_partition_list_set_offset, [:pointer, :string, :int32, :int64], :void
|
96
105
|
attach_function :rd_kafka_topic_partition_list_destroy, [:pointer], :void
|
97
106
|
attach_function :rd_kafka_topic_partition_list_copy, [:pointer], :pointer
|
@@ -147,6 +156,10 @@ module Rdkafka
|
|
147
156
|
|
148
157
|
attach_function :rd_kafka_err2name, [:int], :string
|
149
158
|
attach_function :rd_kafka_err2str, [:int], :string
|
159
|
+
attach_function :rd_kafka_error_is_fatal, [:pointer], :int
|
160
|
+
attach_function :rd_kafka_error_is_retriable, [:pointer], :int
|
161
|
+
attach_function :rd_kafka_error_txn_requires_abort, [:pointer], :int
|
162
|
+
attach_function :rd_kafka_error_destroy, [:pointer], :void
|
150
163
|
attach_function :rd_kafka_get_err_descs, [:pointer, :pointer], :void
|
151
164
|
|
152
165
|
# Configuration
|
@@ -12,8 +12,8 @@ module Rdkafka
|
|
12
12
|
# @return [Integer]
|
13
13
|
attr_reader :offset
|
14
14
|
|
15
|
-
# The name of the topic this message was produced to or nil in case
|
16
|
-
#
|
15
|
+
# The name of the topic this message was produced to or nil in case delivery failed and we
|
16
|
+
# we not able to get the topic reference
|
17
17
|
#
|
18
18
|
# @return [String, nil]
|
19
19
|
attr_reader :topic_name
|
data/lib/rdkafka/version.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module Rdkafka
|
4
|
-
VERSION = "0.
|
5
|
-
LIBRDKAFKA_VERSION = "2.11.
|
6
|
-
LIBRDKAFKA_SOURCE_SHA256 = "
|
4
|
+
VERSION = "0.24.1"
|
5
|
+
LIBRDKAFKA_VERSION = "2.11.1"
|
6
|
+
LIBRDKAFKA_SOURCE_SHA256 = "a2c87186b081e2705bb7d5338d5a01bc88d43273619b372ccb7bb0d264d0ca9f"
|
7
7
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rdkafka
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.24.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thijs Cadier
|
@@ -177,7 +177,8 @@ files:
|
|
177
177
|
- MIT-LICENSE
|
178
178
|
- README.md
|
179
179
|
- Rakefile
|
180
|
-
-
|
180
|
+
- bin/verify_kafka_warnings
|
181
|
+
- dist/librdkafka-2.11.1.tar.gz
|
181
182
|
- dist/patches/rdkafka_global_init.patch
|
182
183
|
- docker-compose-ssl.yml
|
183
184
|
- docker-compose.yml
|