You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+17-11Lines changed: 17 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,21 +3,23 @@
3
3
## New Features
4
4
5
5
- Revamped producer and consumer serialization functionality.
6
-
- All producer functionality except the public methods used to produce messages is now provided by `ProducerBase`.
7
-
- There are two producer classes deriving from `ProducerBase`: `Producer` and `Producer<TKey, TValue>`.
8
-
-`Producer` is specialized for the case of producing messages with `byte[]` keys and values.
9
-
-`Producer<TKey, TValue>` provides flexible integration with serialization functionality.
10
-
- On the consumer side, there are analogous classes: `ConsumerBase`, `Consumer` and `Consumer<TKey, TValue>`.
11
-
- There are two types of serializer and deserializer: `ISerializer<T>` / `IAsyncSerializer<T>` and `IDeserializer<T>` / `IAsyncDeserializer<T>`.
6
+
- There are now two types of serializer and deserializer: `ISerializer<T>` / `IAsyncSerializer<T>` and `IDeserializer<T>` / `IAsyncDeserializer<T>`.
12
7
-`ISerializer<T>`/`IDeserializer<T>` are appropriate for most use cases.
13
-
-`IAsyncSerializer<T>`/`IAsyncDeserializer<T>` are more general, but less performant (they return `Task`s).
14
-
- The generic producer and consumer can be used with both types of serializer.
8
+
-`IAsyncSerializer<T>`/`IAsyncDeserializer<T>` are async friendly, but less performant (they return `Task`s).
15
9
- Changed the name of `Confluent.Kafka.Avro` to `Confluent.SchemaRegistry.Serdes` (Schema Registry may support other serialization formats in the future).
16
-
- Added a example demonstrating working with protobuf serialized data.
10
+
- Added an example demonstrating working with protobuf serialized data.
11
+
-`Consumer`s, `Producer`s and `AdminClient`s are now constructed using builder classes.
12
+
- This is more verbose, but provides a sufficiently flexible and future proof API for specifying serdes and other configuration information.
13
+
- All `event`s on the client classes have been replaced with corresponding `Set...Handler` methods on the builder classes.
14
+
- This allows (enforces) handlers are set on librdkafka initialization (which is important for some handlers, particularly the log handler).
15
+
-`event`s allow for more than one handler to be set, but this is often not appropriate (e.g. `OnPartitionsAssigned`), and never necessary. This is no longer possible.
16
+
-`event`s are also not async friendly (handlers can't return `Task`). The Set...Handler appropach can be extend in such a way that it is.
17
17
- Avro serdes no longer make blocking calls to `ICachedSchemaRegistryClient` - everything is `await`ed.
Copy file name to clipboardExpand all lines: README.md
+24-18Lines changed: 24 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -42,16 +42,16 @@ confluent-kafka-dotnet is distributed via NuGet. We provide three packages:
42
42
To install Confluent.Kafka from within Visual Studio, search for Confluent.Kafka in the NuGet Package Manager UI, or run the following command in the Package Manager Console:
0 commit comments