kafka-python 2.2.9__tar.gz → 2.2.10__tar.gz

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 (168) hide show
  1. {kafka_python-2.2.9 → kafka_python-2.2.10}/CHANGES.md +6 -0
  2. {kafka_python-2.2.9 → kafka_python-2.2.10}/PKG-INFO +1 -1
  3. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/conn.py +1 -1
  4. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/sasl/gssapi.py +12 -5
  5. kafka_python-2.2.10/kafka/version.py +1 -0
  6. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka_python.egg-info/PKG-INFO +1 -1
  7. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_conn.py +10 -0
  8. kafka_python-2.2.9/kafka/version.py +0 -1
  9. {kafka_python-2.2.9 → kafka_python-2.2.10}/AUTHORS.md +0 -0
  10. {kafka_python-2.2.9 → kafka_python-2.2.10}/LICENSE +0 -0
  11. {kafka_python-2.2.9 → kafka_python-2.2.10}/MANIFEST.in +0 -0
  12. {kafka_python-2.2.9 → kafka_python-2.2.10}/README.rst +0 -0
  13. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/__init__.py +0 -0
  14. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/admin/__init__.py +0 -0
  15. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/admin/acl_resource.py +0 -0
  16. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/admin/client.py +0 -0
  17. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/admin/config_resource.py +0 -0
  18. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/admin/new_partitions.py +0 -0
  19. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/admin/new_topic.py +0 -0
  20. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/benchmarks/__init__.py +0 -0
  21. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/benchmarks/consumer_performance.py +0 -0
  22. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/benchmarks/load_example.py +0 -0
  23. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/benchmarks/producer_performance.py +0 -0
  24. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/benchmarks/record_batch_compose.py +0 -0
  25. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/benchmarks/record_batch_read.py +0 -0
  26. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/benchmarks/varint_speed.py +0 -0
  27. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/client_async.py +0 -0
  28. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/cluster.py +0 -0
  29. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/codec.py +0 -0
  30. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/consumer/__init__.py +0 -0
  31. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/consumer/fetcher.py +0 -0
  32. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/consumer/group.py +0 -0
  33. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/consumer/subscription_state.py +0 -0
  34. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/__init__.py +0 -0
  35. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/assignors/__init__.py +0 -0
  36. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/assignors/abstract.py +0 -0
  37. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/assignors/range.py +0 -0
  38. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/assignors/roundrobin.py +0 -0
  39. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/assignors/sticky/__init__.py +0 -0
  40. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/assignors/sticky/partition_movements.py +0 -0
  41. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/assignors/sticky/sorted_set.py +0 -0
  42. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/assignors/sticky/sticky_assignor.py +0 -0
  43. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/base.py +0 -0
  44. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/consumer.py +0 -0
  45. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/heartbeat.py +0 -0
  46. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/coordinator/protocol.py +0 -0
  47. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/errors.py +0 -0
  48. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/future.py +0 -0
  49. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/__init__.py +0 -0
  50. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/compound_stat.py +0 -0
  51. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/dict_reporter.py +0 -0
  52. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/kafka_metric.py +0 -0
  53. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/measurable.py +0 -0
  54. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/measurable_stat.py +0 -0
  55. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/metric_config.py +0 -0
  56. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/metric_name.py +0 -0
  57. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/metrics.py +0 -0
  58. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/metrics_reporter.py +0 -0
  59. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/quota.py +0 -0
  60. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stat.py +0 -0
  61. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stats/__init__.py +0 -0
  62. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stats/avg.py +0 -0
  63. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stats/count.py +0 -0
  64. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stats/histogram.py +0 -0
  65. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stats/max_stat.py +0 -0
  66. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stats/min_stat.py +0 -0
  67. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stats/percentile.py +0 -0
  68. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stats/percentiles.py +0 -0
  69. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stats/rate.py +0 -0
  70. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stats/sampled_stat.py +0 -0
  71. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stats/sensor.py +0 -0
  72. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/metrics/stats/total.py +0 -0
  73. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/partitioner/__init__.py +0 -0
  74. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/partitioner/default.py +0 -0
  75. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/producer/__init__.py +0 -0
  76. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/producer/future.py +0 -0
  77. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/producer/kafka.py +0 -0
  78. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/producer/record_accumulator.py +0 -0
  79. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/producer/sender.py +0 -0
  80. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/producer/transaction_manager.py +0 -0
  81. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/__init__.py +0 -0
  82. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/abstract.py +0 -0
  83. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/add_offsets_to_txn.py +0 -0
  84. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/add_partitions_to_txn.py +0 -0
  85. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/admin.py +0 -0
  86. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/api.py +0 -0
  87. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/api_versions.py +0 -0
  88. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/broker_api_versions.py +0 -0
  89. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/commit.py +0 -0
  90. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/end_txn.py +0 -0
  91. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/fetch.py +0 -0
  92. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/find_coordinator.py +0 -0
  93. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/frame.py +0 -0
  94. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/group.py +0 -0
  95. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/init_producer_id.py +0 -0
  96. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/list_offsets.py +0 -0
  97. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/message.py +0 -0
  98. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/metadata.py +0 -0
  99. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/offset_for_leader_epoch.py +0 -0
  100. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/parser.py +0 -0
  101. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/pickle.py +0 -0
  102. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/produce.py +0 -0
  103. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/sasl_authenticate.py +0 -0
  104. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/sasl_handshake.py +0 -0
  105. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/struct.py +0 -0
  106. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/txn_offset_commit.py +0 -0
  107. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/protocol/types.py +0 -0
  108. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/record/__init__.py +0 -0
  109. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/record/_crc32c.py +0 -0
  110. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/record/abc.py +0 -0
  111. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/record/default_records.py +0 -0
  112. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/record/legacy_records.py +0 -0
  113. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/record/memory_records.py +0 -0
  114. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/record/util.py +0 -0
  115. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/sasl/__init__.py +0 -0
  116. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/sasl/abc.py +0 -0
  117. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/sasl/msk.py +0 -0
  118. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/sasl/oauth.py +0 -0
  119. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/sasl/plain.py +0 -0
  120. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/sasl/scram.py +0 -0
  121. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/sasl/sspi.py +0 -0
  122. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/serializer/__init__.py +0 -0
  123. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/serializer/abstract.py +0 -0
  124. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/socks5_wrapper.py +0 -0
  125. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/structs.py +0 -0
  126. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/util.py +0 -0
  127. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/vendor/__init__.py +0 -0
  128. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/vendor/enum34.py +0 -0
  129. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/vendor/selectors34.py +0 -0
  130. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/vendor/six.py +0 -0
  131. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka/vendor/socketpair.py +0 -0
  132. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka_python.egg-info/SOURCES.txt +0 -0
  133. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka_python.egg-info/dependency_links.txt +0 -0
  134. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka_python.egg-info/requires.txt +0 -0
  135. {kafka_python-2.2.9 → kafka_python-2.2.10}/kafka_python.egg-info/top_level.txt +0 -0
  136. {kafka_python-2.2.9 → kafka_python-2.2.10}/pyproject.toml +0 -0
  137. {kafka_python-2.2.9 → kafka_python-2.2.10}/setup.cfg +0 -0
  138. {kafka_python-2.2.9 → kafka_python-2.2.10}/setup.py +0 -0
  139. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/integration/__init__.py +0 -0
  140. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/integration/conftest.py +0 -0
  141. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/integration/fixtures.py +0 -0
  142. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/integration/test_admin_integration.py +0 -0
  143. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/integration/test_consumer_group.py +0 -0
  144. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/integration/test_consumer_integration.py +0 -0
  145. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/integration/test_producer_integration.py +0 -0
  146. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/integration/test_sasl_integration.py +0 -0
  147. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_acl_comparisons.py +0 -0
  148. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_admin.py +0 -0
  149. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_api_object_implementation.py +0 -0
  150. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_assignors.py +0 -0
  151. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_client_async.py +0 -0
  152. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_cluster.py +0 -0
  153. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_codec.py +0 -0
  154. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_consumer.py +0 -0
  155. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_coordinator.py +0 -0
  156. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_fetcher.py +0 -0
  157. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_metrics.py +0 -0
  158. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_object_conversion.py +0 -0
  159. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_package.py +0 -0
  160. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_partition_movements.py +0 -0
  161. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_partitioner.py +0 -0
  162. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_producer.py +0 -0
  163. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_protocol.py +0 -0
  164. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_record_accumulator.py +0 -0
  165. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_sender.py +0 -0
  166. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_subscription_state.py +0 -0
  167. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/test_util.py +0 -0
  168. {kafka_python-2.2.9 → kafka_python-2.2.10}/test/testutil.py +0 -0
@@ -1,3 +1,9 @@
1
+ # 2.2.10 (May 22, 2025)
2
+
3
+ Fixes
4
+ * Set the current host in the SASL configs (#2633)
5
+ * Fix sasl gssapi plugin: do not rely on `client_ctx.complete` in `auth_bytes()` (#2631)
6
+
1
7
  # 2.2.9 (May 21, 2025)
2
8
 
3
9
  Fixes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: kafka-python
3
- Version: 2.2.9
3
+ Version: 2.2.10
4
4
  Summary: Pure Python client for Apache Kafka
5
5
  Author-email: Dana Powers <dana.powers@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/dpkp/kafka-python
@@ -313,7 +313,7 @@ class BrokerConnection(object):
313
313
 
314
314
  def _init_sasl_mechanism(self):
315
315
  if self.config['security_protocol'] in ('SASL_PLAINTEXT', 'SASL_SSL'):
316
- self._sasl_mechanism = get_sasl_mechanism(self.config['sasl_mechanism'])(**self.config)
316
+ self._sasl_mechanism = get_sasl_mechanism(self.config['sasl_mechanism'])(host=self.host, **self.config)
317
317
  else:
318
318
  self._sasl_mechanism = None
319
319
 
@@ -26,14 +26,15 @@ class SaslMechanismGSSAPI(SaslMechanism):
26
26
  raise ValueError('sasl_kerberos_service_name or sasl_kerberos_name required for GSSAPI sasl configuration')
27
27
  self._is_done = False
28
28
  self._is_authenticated = False
29
+ self.gssapi_name = None
29
30
  if config.get('sasl_kerberos_name', None) is not None:
30
31
  self.auth_id = str(config['sasl_kerberos_name'])
32
+ if isinstance(config['sasl_kerberos_name'], gssapi.Name):
33
+ self.gssapi_name = config['sasl_kerberos_name']
31
34
  else:
32
35
  kerberos_domain_name = config.get('sasl_kerberos_domain_name', '') or config.get('host', '')
33
36
  self.auth_id = config['sasl_kerberos_service_name'] + '@' + kerberos_domain_name
34
- if isinstance(config.get('sasl_kerberos_name', None), gssapi.Name):
35
- self.gssapi_name = config['sasl_kerberos_name']
36
- else:
37
+ if self.gssapi_name is None:
37
38
  self.gssapi_name = gssapi.Name(self.auth_id, name_type=gssapi.NameType.hostbased_service).canonicalize(gssapi.MechType.kerberos)
38
39
  self._client_ctx = gssapi.SecurityContext(name=self.gssapi_name, usage='initiate')
39
40
  self._next_token = self._client_ctx.step(None)
@@ -43,9 +44,8 @@ class SaslMechanismGSSAPI(SaslMechanism):
43
44
  # so mark is_done after the final auth_bytes are provided
44
45
  # in practice we'll still receive a response when using SaslAuthenticate
45
46
  # but not when using the prior unframed approach.
46
- if self._client_ctx.complete:
47
+ if self._is_authenticated:
47
48
  self._is_done = True
48
- self._is_authenticated = True
49
49
  return self._next_token or b''
50
50
 
51
51
  def receive(self, auth_bytes):
@@ -74,6 +74,13 @@ class SaslMechanismGSSAPI(SaslMechanism):
74
74
  ]
75
75
  # add authorization identity to the response, and GSS-wrap
76
76
  self._next_token = self._client_ctx.wrap(b''.join(message_parts), False).message
77
+ # We need to identify the last token in auth_bytes();
78
+ # we can't rely on client_ctx.complete because it becomes True after generating
79
+ # the second-to-last token (after calling .step(auth_bytes) for the final time)
80
+ # We could introduce an additional state variable (i.e., self._final_token),
81
+ # but instead we just set _is_authenticated. Since the plugin interface does
82
+ # not read is_authenticated() until after is_done() is True, this should be fine.
83
+ self._is_authenticated = True
77
84
 
78
85
  def is_done(self):
79
86
  return self._is_done
@@ -0,0 +1 @@
1
+ __version__ = '2.2.10'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: kafka-python
3
- Version: 2.2.9
3
+ Version: 2.2.10
4
4
  Summary: Pure Python client for Apache Kafka
5
5
  Author-email: Dana Powers <dana.powers@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/dpkp/kafka-python
@@ -386,3 +386,13 @@ def test_maybe_throttle(conn):
386
386
 
387
387
  time.return_value = 3000
388
388
  assert not conn.throttled()
389
+
390
+
391
+ def test_host_in_sasl_config():
392
+ hostname = 'example.org'
393
+ port = 9092
394
+ for security_protocol in ('SASL_PLAINTEXT', 'SASL_SSL'):
395
+ with mock.patch("kafka.conn.get_sasl_mechanism") as get_sasl_mechanism:
396
+ BrokerConnection(hostname, port, socket.AF_UNSPEC, security_protocol=security_protocol)
397
+ call_config = get_sasl_mechanism.mock_calls[1].kwargs
398
+ assert call_config['host'] == hostname
@@ -1 +0,0 @@
1
- __version__ = '2.2.9'
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes