# What changed in confluent-kafka

> 142 changes in confluent-kafka 1 to 2 from its official release notes, upgrade guides and advisories: 20 breaking, 6 deprecations, 1 security, 58 new APIs and options. Each one cited. Sources checked 2026-11-12. HTML: https://unstale.sh/pypi/confluent-kafka/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## confluent-kafka 2

### Breaking changes

- The Schema Registry client requires certifi>=2026.10.19 when no custom CA location or SSL_CERT_FILE or SSL_CERT_DIR is set, avoiding trust in the compromised eMudhra root. (2.16.1) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.1)
- Closing a producer now aborts any open transaction. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Unicode encoding and decoding failures now raise SerializationError. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Uses get_running_loop() to avoid creating a new event loop and raises an error when no loop is available. (2.15.1) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.1)
- Deserializes the message key before the value; when both fail, surfaces the key error. (2.15.1) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.1)
- Type hinting is enforced for all interfaces. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- The request header changed from Accept-Version to Confluent-Accept-Unknown-Properties. (2.12.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.12.2)
- Now returns a string/integer tuple for variants on version; use version for a string-only response. (2.12.1) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.12.1)
- Adds Python 3.14 support and drops Python 3.7 support; free-threaded capabilities are not fully supported yet. (2.12.1) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.12.1)

### Security

- Uses TLS certification verification with Hashicorp Vault. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)

### Deprecations

- Schema Registry now prefers httpx2 over httpx to avoid Authlib deprecation warnings. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)

### New APIs and options

- Returns the id of the cluster the admin client is connected to; this API is experimental. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Returns the id of the cluster the async consumer is connected to; this API is experimental. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Returns the id of the cluster the async producer is connected to; this API is experimental. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- A new experimental asyncio consumer counterpart accepts asyncio Schema Registry serdes and their builders. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- A new experimental asyncio producer counterpart accepts asyncio Schema Registry serdes and their builders. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Support is added for saving the Azure key version with a DEK. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Returns the id of the cluster the consumer is connected to; this API is experimental. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- The CEL function set now includes Decimal. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Setting this option enables durability for DLQ handling with the default global RuleRegistry. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Schema Registry supports the DLQ rule action, which tees a record to a configured DLQ topic when a rule fails while the original call still raises. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Support is added for inline validation rules. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- DeserializingConsumer can accept a serde builder instead of a ready-made key serde; the client owns and closes serdes built this way. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- SerializingProducer can accept a serde builder instead of a ready-made key serde; the client owns and closes serdes built this way. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Returns the same object as key(), typed with the deserialized key type on a DeserializingConsumer; this API is experimental. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Returns the same object as value(), typed with the deserialized value type on a DeserializingConsumer; this API is experimental. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Returns the id of the cluster the producer is connected to; this API is experimental. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- A new experimental serde close hook is available. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- A new experimental serde hook supports resolving the cluster id for associated subject lookups. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- This option supplies the Kafka cluster id explicitly when an associated subject lookup occurs before a broker has been reached. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- The CEL function set now includes Timestamp. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- DeserializingConsumer can accept a serde builder instead of a ready-made value serde; the client owns and closes serdes built this way. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- SerializingProducer can accept a serde builder instead of a ready-made value serde; the client owns and closes serdes built this way. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- The CEL function set now includes Variant. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Adds an acknowledgement-commit callback for share consumers. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds ACCEPT, RELEASE, and REJECT acknowledgement types for share consumers. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds auto pool mapping support for Schema Registry. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds asynchronous commit support for share consumers. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds synchronous commit support for share consumers. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds the ConcurrentModificationException exception. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds an optional install for AWS IAM-based OAUTHBEARER authentication via AWS STS GetWebIdentityToken. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds a Preview deserializing share consumer; the share consumer is single-threaded, not thread-safe, and should not be used in production. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds the IllegalStateException exception. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds a method to obtain a message's delivery count. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Configure the AWS IAM OAUTHBEARER region and audience with this option. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Set this option to aws_iam to activate AWS IAM-based OAUTHBEARER authentication. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Set this option to oidc to activate AWS IAM-based OAUTHBEARER authentication. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds runtime SASL credential updates. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds implicit (default) and explicit acknowledgement modes for share consumers. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds a Preview share consumer with subscribe, batch poll, close, and context-manager support; it is single-threaded, not thread-safe, and should not be used in production. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Adds Schema Registry support for union-of-pools. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- AIOConsumer implements the async context manager protocol. (2.14.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.14.0)
- AIOProducer implements the async context manager protocol. (2.14.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.14.0)
- Adds AssociatedNameStrategy. (2.14.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.14.0)
- Adds enableAt to RuleSet. (2.14.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.14.0)
- UAMI OAuth changes were added. (2.13.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.2)
- Producer now has a close() method. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Partitioner functions are now exposed for deterministic partitioning. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- AIOProducer now implements __len__. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- librdkafka classes can be used as context managers for scope cleanup. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Message objects can now be created directly. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Message gains serialisation support and rich comparison. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Avro Serializers now support Strict Validation Flags. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)

### Behavior and default changes

- The default worker pool size has increased from 2 to 100. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- confluent_kafka now declares itself GIL-safe, enabling real multi-core parallelism on free-threaded CPython builds. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Clients now pass context when making KEK calls to the DEK Registry. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Both classes are now generic in their key and value types. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Makes orjson optional in JSON serdes and falls back to the standard-library json module. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Requests to Schema Registry now include the Confluent-Client-Version header. (2.13.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.2)
- Schema requests now include an Accept-Version header. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Async classes are no longer designated experimental. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- The manager now flushes the librdkafka queue. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Admin, Producer, and Consumer clients handle OAuth token refreshes using a background thread. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)

### Tooling

- Wheels are now available for Python 3.14t. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)

### Fixes and other changes

- Fixes __hash__ raising TypeError on unhashable list values so schemas with metadata.tags can be cached. (2.16.1) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.1)
- A crash involving nullable arrays of $ref items is fixed. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Error strings no longer raise or become garbled on non-UTF-8 locales. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Wheels are now available for Linux s390x, including Python 3.14t. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Concurrency safety issues in these classes are fixed. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- On big-endian platforms such as s390x, purge no longer ignores in_queue, in_flight, and blocking when set to False. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Concurrent access to one Consumer instance is now serialized across threads instead of being undefined behavior. (2.16.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.0)
- Fixes a segmentation fault on Python 3.14 when another Admin API call follows delete_records(). (2.15.1) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.1)
- Fixes a minor issue with the subjectPrefix parameter in the subjects API. (2.15.1) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.1)
- Fixes encryption failures when expanded union types have two references to the same record. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- Handles non-HTTP errors during retries. (2.15.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.15.0)
- JSON transforms now handle anyOf/allOf. (2.14.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.14.2)
- Redefining a named Avro type in a diamond dependency pattern is fixed. (2.14.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.14.2)
- Encryption no longer fails when referencing self-defined types. (2.14.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.14.2)
- Import errors on Python 3.12 are fixed. (2.14.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.14.2)
- URL joining in the Python client is fixed. (2.14.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.14.2)
- Corrects type annotations for context manager hooks so they work for subclasses. (2.14.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.14.0)
- Ensures the normalize.schemas config is passed during Protobuf reference lookup. (2.14.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.14.0)
- Fixes OAuth callback handling for Async IO clients to prevent initialization failures. (2.14.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.14.0)
- Type hinting for Consumer.__init__ was fixed. (2.13.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.2)
- Type hinting for Consumer.commit was fixed. (2.13.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.2)
- A JSON schema resolver bug was fixed. (2.13.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.2)
- Type hinting for KafkaError was fixed. (2.13.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.2)
- Type hinting for Producer.__init__ was fixed. (2.13.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.2)
- Type hinting for Producer.produce was fixed. (2.13.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.2)
- Fixes a memory leak when produce is called with headers and raises BufferError or RuntimeError. (2.13.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.2)
- The token expiration logic in Schema Registry OAuth was fixed. (2.13.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.2)
- A null group name no longer causes a segfault. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Consumer.poll(), Consumer.consume(), Producer.poll(), and Producer.flush() can now be interrupted with Ctrl+C instead of blocking indefinitely. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Calls against objects with closed internal objects no longer cause segfault exceptions. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- commit() now checks for Py_None in msg and offset parameters. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- The return type hint now matches the type of the object that called __enter__. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Schema evolution is now handled during field transformation. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- NewTopic is no longer left partially initialized when an error occurs. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Schema Registry delete behavior is fixed when client-side caching is enabled. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- schemaId initialization is now thread-safe. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- store_offsets() now checks for Py_None in msg and offset parameters. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Fixes string formatting on Windows to show the partition number instead of `%I32d`. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.16.1), [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Support for wrapped Avro unions is fixed. (2.13.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.13.0)
- Evolution is handled during field transformation. (2.12.2) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.12.2)
- Restored compatibility of macOS binaries with macOS 13. (2.12.1) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.12.1)
- Fixes invalid argument errors on repeated schema lookup requests. (2.12.1) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.12.1)
- Fixes use.schema.id handling in schema lookups. (2.12.1) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v2.12.1)

## confluent-kafka 1

### Breaking changes

- Defaults to all, waiting for all in-sync replica brokers to acknowledge; this emphasizes durability at a slight cost to latency. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- Defaults to 0.10 instead of 0.9; users on Apache Kafka <0.10 must configure it to their broker version. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- The url configuration changes from a string to a configuration dictionary containing all application config properties. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- Fixes a crash when called without group.id, which is now required. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- Defaults to false; applications that require partition-end events must explicitly set it to true. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- Sparse connections are on by default; setting this property to false restores connecting to all brokers in the cluster. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- A group.id is now required for Python consumers. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- This property is no longer used; offsets are always reported. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- This property is no longer used; see reconnect.backoff.ms and reconnect.backoff.max.ms. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- This property is no longer used. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- This property is no longer used. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)

### Deprecations

- This configuration property is deprecated and will be removed in a future release. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- The file value is deprecated; using a deprecated configuration property produces a warning when the client instance is created. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- This configuration property is deprecated and will be removed in a future release. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- This configuration property is deprecated and will be removed in a future release. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- This experimental property is deprecated and will be removed in a future release. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)

### New APIs and options

- Supports encoding with fastavro. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- Configuration is simplified by accepting a configuration dictionary for application configs. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- Supports HTTP Basic Auth. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- CachedSchemaRegistryClient adds Delete Schema support. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- Setting this property to true enables idempotent producing, providing exactly-once producing and guaranteed message ordering. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- Supports specifying a reader schema. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)

### Behavior and default changes

- Defaults to 0. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
- Defaults to 5 minutes. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)

### Fixes and other changes

- Handles get_compatibility properly. (1.0.0) — [release notes](https://github.com/confluentinc/confluent-kafka-python/releases/tag/v1.0.0)
