From b6c6a27de83bd720aa866dc2332e21f2816ea972 Mon Sep 17 00:00:00 2001 From: Jeff Widman Date: Thu, 23 May 2019 23:14:37 -0700 Subject: [PATCH] Remove string support in `api_version` A long time ago, `api_version` supported strings. That has been deprecated for years in favor of tuples. Time to remove support for the strings. --- kafka/consumer/group.py | 10 ---------- kafka/producer/kafka.py | 10 ---------- test/test_producer.py | 4 ++-- 3 files changed, 2 insertions(+), 22 deletions(-) diff --git a/kafka/consumer/group.py b/kafka/consumer/group.py index d504c09d5..da559cbc3 100644 --- a/kafka/consumer/group.py +++ b/kafka/consumer/group.py @@ -340,16 +340,6 @@ def __init__(self, *topics, **configs): self._metrics = Metrics(metric_config, reporters) # TODO _metrics likely needs to be passed to KafkaClient, etc. - # api_version was previously a str. Accept old format for now - if isinstance(self.config['api_version'], str): - str_version = self.config['api_version'] - if str_version == 'auto': - self.config['api_version'] = None - else: - self.config['api_version'] = tuple(map(int, str_version.split('.'))) - log.warning('use api_version=%s [tuple] -- "%s" as str is deprecated', - str(self.config['api_version']), str_version) - self._client = KafkaClient(metrics=self._metrics, **self.config) # Get auto-discovered version from client if necessary diff --git a/kafka/producer/kafka.py b/kafka/producer/kafka.py index f6a060334..8a4a4e3a2 100644 --- a/kafka/producer/kafka.py +++ b/kafka/producer/kafka.py @@ -358,16 +358,6 @@ def __init__(self, **configs): if self.config['acks'] == 'all': self.config['acks'] = -1 - # api_version was previously a str. accept old format for now - if isinstance(self.config['api_version'], str): - deprecated = self.config['api_version'] - if deprecated == 'auto': - self.config['api_version'] = None - else: - self.config['api_version'] = tuple(map(int, deprecated.split('.'))) - log.warning('use api_version=%s [tuple] -- "%s" as str is deprecated', - str(self.config['api_version']), deprecated) - # Configure metrics metrics_tags = {'client-id': self.config['client_id']} metric_config = MetricConfig(samples=self.config['metrics_num_samples'], diff --git a/test/test_producer.py b/test/test_producer.py index 60b19bfb9..b33b257e9 100644 --- a/test/test_producer.py +++ b/test/test_producer.py @@ -73,9 +73,9 @@ def test_end_to_end(kafka_broker, compression): def test_kafka_producer_gc_cleanup(): gc.collect() threads = threading.active_count() - producer = KafkaProducer(api_version='0.9') # set api_version explicitly to avoid auto-detection + producer = KafkaProducer(api_version=(0, 9)) # set api_version explicitly to avoid auto-detection assert threading.active_count() == threads + 1 - del(producer) + del producer gc.collect() assert threading.active_count() == threads