From 1882872d3fdf58fb05dbc5fef615346a342b16fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Gabriel=20Gruber?= Date: Thu, 13 May 2021 10:32:00 -0300 Subject: [PATCH 1/2] Implemented the return type of the send function; It would be nice to have an accessible and easy way to know the returns of the send functions, as the Documentation doesn't have a index for RecordMetadata; --- kafka/producer/kafka.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kafka/producer/kafka.py b/kafka/producer/kafka.py index 1f64536b6..ecaf4bc28 100644 --- a/kafka/producer/kafka.py +++ b/kafka/producer/kafka.py @@ -15,7 +15,7 @@ from kafka.codec import has_gzip, has_snappy, has_lz4, has_zstd from kafka.metrics import MetricConfig, Metrics from kafka.partitioner.default import DefaultPartitioner -from kafka.producer.future import FutureRecordMetadata, FutureProduceResult +from kafka.producer.future import FutureRecordMetadata, FutureProduceResult, RecordMetadata from kafka.producer.record_accumulator import AtomicInteger, RecordAccumulator from kafka.producer.sender import Sender from kafka.record.default_records import DefaultRecordBatchBuilder @@ -538,7 +538,7 @@ def _estimate_size_in_bytes(self, key, value, headers=[]): return LegacyRecordBatchBuilder.estimate_size_in_bytes( magic, self.config['compression_type'], key, value) - def send(self, topic, value=None, key=None, headers=None, partition=None, timestamp_ms=None): + def send(self, topic, value=None, key=None, headers=None, partition=None, timestamp_ms=None) -> RecordMetadata: """Publish a message to a topic. Arguments: From 0c64bc727d69af956060ffddceec7a5dc2efefdb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Gabriel=20Gruber?= Date: Thu, 22 Sep 2022 13:02:11 -0300 Subject: [PATCH 2/2] Fixed type annotations to support Python 2.7 --- kafka/producer/kafka.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kafka/producer/kafka.py b/kafka/producer/kafka.py index ecaf4bc28..0c9a7e589 100644 --- a/kafka/producer/kafka.py +++ b/kafka/producer/kafka.py @@ -538,7 +538,8 @@ def _estimate_size_in_bytes(self, key, value, headers=[]): return LegacyRecordBatchBuilder.estimate_size_in_bytes( magic, self.config['compression_type'], key, value) - def send(self, topic, value=None, key=None, headers=None, partition=None, timestamp_ms=None) -> RecordMetadata: + def send(self, topic, value=None, key=None, headers=None, partition=None, timestamp_ms=None): + # type: (str, bytes, bytes, list, int, int) -> RecordMetadata """Publish a message to a topic. Arguments: