Skip to content

Commit 026d320

Browse files
committed
Merge branch '1.0.x'
2 parents cfbdea4 + 006c7b5 commit 026d320

File tree

95 files changed

+1489
-674
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

95 files changed

+1489
-674
lines changed

CHANGELOG.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,22 @@
1+
# 1.0.0-RC6
2+
3+
## New Features
4+
5+
- Added DependentAdminClientBuilder class.
6+
7+
8+
## Changes
9+
10+
- Reverted RC4 changes.
11+
- Renamed AvroSerializer to AsyncAvroSerializer and AvroDeserializer to AsyncAvroDeserializer
12+
- Added SyncOverAsyncSerializer and SyncOverAsyncDeserializer adapter classes.
13+
- Added AsSyncOverAsync factory method to AsyncAvroSerializer and AsyncAvroDeserializer.
14+
- Removed IAsyncDeserializer setter overloads from the ConsumerBuilder class.
15+
- Renamed Producer.BeginProduce to Producer.Produce.
16+
- Produce throws an exception if used when async serializers are configured.
17+
- Made AdminClient, Producer, and Consumer classes internal.
18+
19+
120
# 1.0.0-RC4
221

322
## Changes

Confluent.Kafka.sln

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConfigGen", "src\ConfigGen\
4949
EndProject
5050
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Protobuf", "examples\Protobuf\Protobuf.csproj", "{DBAE4CDC-7775-4D51-B457-ACEE5D1D9275}"
5151
EndProject
52+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Confluent.Kafka.SyncOverAsync", "test\Confluent.Kafka.SyncOverAsync\Confluent.Kafka.SyncOverAsync.csproj", "{07E3455B-9CDF-4124-854E-8AC9B8950B1A}"
53+
EndProject
5254
Global
5355
GlobalSection(SolutionConfigurationPlatforms) = preSolution
5456
Debug|Any CPU = Debug|Any CPU
@@ -302,6 +304,18 @@ Global
302304
{DBAE4CDC-7775-4D51-B457-ACEE5D1D9275}.Release|x64.Build.0 = Release|Any CPU
303305
{DBAE4CDC-7775-4D51-B457-ACEE5D1D9275}.Release|x86.ActiveCfg = Release|Any CPU
304306
{DBAE4CDC-7775-4D51-B457-ACEE5D1D9275}.Release|x86.Build.0 = Release|Any CPU
307+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
308+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A}.Debug|Any CPU.Build.0 = Debug|Any CPU
309+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A}.Debug|x64.ActiveCfg = Debug|Any CPU
310+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A}.Debug|x64.Build.0 = Debug|Any CPU
311+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A}.Debug|x86.ActiveCfg = Debug|Any CPU
312+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A}.Debug|x86.Build.0 = Debug|Any CPU
313+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A}.Release|Any CPU.ActiveCfg = Release|Any CPU
314+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A}.Release|Any CPU.Build.0 = Release|Any CPU
315+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A}.Release|x64.ActiveCfg = Release|Any CPU
316+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A}.Release|x64.Build.0 = Release|Any CPU
317+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A}.Release|x86.ActiveCfg = Release|Any CPU
318+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A}.Release|x86.Build.0 = Release|Any CPU
305319
EndGlobalSection
306320
GlobalSection(NestedProjects) = preSolution
307321
{09C3255B-1972-4EB8-91D0-FB9F5CD82BCB} = {1EFCD839-0726-4BCE-B745-1E829991B1BC}
@@ -324,5 +338,6 @@ Global
324338
{C5114860-FBED-491E-8DB5-E8B51F2A2E6C} = {9CE4B5F7-9251-4340-BACB-207066A5DBE8}
325339
{5642B638-F4AA-4C77-BE6E-C0FFF7CC103F} = {1EFCD839-0726-4BCE-B745-1E829991B1BC}
326340
{DBAE4CDC-7775-4D51-B457-ACEE5D1D9275} = {9CE4B5F7-9251-4340-BACB-207066A5DBE8}
341+
{07E3455B-9CDF-4124-854E-8AC9B8950B1A} = {90058283-1F8F-465D-89E4-D4374A27E612}
327342
EndGlobalSection
328343
EndGlobal

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,16 +42,16 @@ confluent-kafka-dotnet is distributed via NuGet. We provide three packages:
4242
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:
4343

4444
```
45-
Install-Package Confluent.Kafka -Version 1.0.0-RC4
45+
Install-Package Confluent.Kafka -Version 1.0.0-RC6
4646
```
4747

4848
To add a reference to a dotnet core project, execute the following at the command line:
4949

5050
```
51-
dotnet add package -v 1.0.0-RC4 Confluent.Kafka
51+
dotnet add package -v 1.0.0-RC6 Confluent.Kafka
5252
```
5353

54-
**Note:** We recommend using the `1.0.0-RC4` version of Confluent.Kafka for new projects in preference to the most recent stable release (0.11.6).
54+
**Note:** We recommend using the `1.0.0-RC6` version of Confluent.Kafka for new projects in preference to the most recent stable release (0.11.6).
5555
The 1.0 API provides more features, is considerably improved and is more performant than 0.11.x releases.
5656

5757
### Branch builds
@@ -110,7 +110,7 @@ Note that a server round-trip is slow (3ms at a minimum; actual latency depends
110110
In highly concurrent scenarios you will achieve high overall throughput out of the producer using
111111
the above approach, but there will be a delay on each `await` call. In stream processing
112112
applications, where you would like to process many messages in rapid succession, you would typically
113-
make use the `BeginProduce` method instead:
113+
make use the `Produce` method instead:
114114

115115
```csharp
116116
using System;
@@ -131,7 +131,7 @@ class Program
131131
{
132132
for (int i=0; i<100; ++i)
133133
{
134-
p.BeginProduce("my-topic", new Message<Null, string> { Value = i.ToString() }, handler);
134+
p.Produce("my-topic", new Message<Null, string> { Value = i.ToString() }, handler);
135135
}
136136

137137
// wait for up to 10 seconds for any inflight messages to be delivered.
@@ -234,7 +234,7 @@ this scenario there.
234234

235235
#### Producer
236236

237-
When using `BeginProduce`, to determine whether a particular message has been successfully delivered to a cluster,
237+
When using `Produce`, to determine whether a particular message has been successfully delivered to a cluster,
238238
check the `Error` field of the `DeliveryReport` during the delivery handler callback.
239239

240240
When using `ProduceAsync`, any delivery result other than `NoError` will cause the returned `Task` to be in the

examples/AdminClient/AdminClient.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
</PropertyGroup>
1010

1111
<ItemGroup>
12-
<!-- nuget package reference: <PackageReference Include="Confluent.Kafka" Version="1.0.0-RC4" /> -->
12+
<!-- nuget package reference: <PackageReference Include="Confluent.Kafka" Version="1.0.0-RC6" /> -->
1313
<ProjectReference Include="../../src/Confluent.Kafka/Confluent.Kafka.csproj" />
1414
</ItemGroup>
1515

examples/AvroBlogExamples/AvroBlogExamples.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
</PropertyGroup>
99

1010
<ItemGroup>
11-
<!-- nuget package reference: <PackageReference Include="Confluent.SchemaRegistry.Serdes" Version="1.0.0-RC4" /> -->
11+
<!-- nuget package reference: <PackageReference Include="Confluent.SchemaRegistry.Serdes" Version="1.0.0-RC6" /> -->
1212
<ProjectReference Include="../../src/Confluent.SchemaRegistry.Serdes/Confluent.SchemaRegistry.Serdes.csproj" />
1313
</ItemGroup>
1414

examples/AvroBlogExamples/Program.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ async static Task ProduceGeneric(string bootstrapServers, string schemaRegistryU
3939
using (var schemaRegistry = new CachedSchemaRegistryClient(new SchemaRegistryConfig { SchemaRegistryUrl = schemaRegistryUrl }))
4040
using (var producer =
4141
new ProducerBuilder<Null, GenericRecord>(new ProducerConfig { BootstrapServers = bootstrapServers })
42-
.SetValueSerializer(new AvroSerializer<GenericRecord>(schemaRegistry))
42+
.SetValueSerializer(new AsyncAvroSerializer<GenericRecord>(schemaRegistry))
4343
.Build())
4444
{
4545
var logLevelSchema = (Avro.EnumSchema)Avro.Schema.Parse(
@@ -71,7 +71,7 @@ async static Task ProduceSpecific(string bootstrapServers, string schemaRegistry
7171
using (var schemaRegistry = new CachedSchemaRegistryClient(new SchemaRegistryConfig { SchemaRegistryUrl = schemaRegistryUrl }))
7272
using (var producer =
7373
new ProducerBuilder<Null, MessageTypes.LogMessage>(new ProducerConfig { BootstrapServers = bootstrapServers })
74-
.SetValueSerializer(new AvroSerializer<MessageTypes.LogMessage>(schemaRegistry))
74+
.SetValueSerializer(new AsyncAvroSerializer<MessageTypes.LogMessage>(schemaRegistry))
7575
.Build())
7676
{
7777
await producer.ProduceAsync("log-messages",
@@ -105,10 +105,10 @@ static void ConsumeSpecific(string bootstrapServers, string schemaRegistryUrl)
105105
AutoOffsetReset = AutoOffsetReset.Earliest
106106
};
107107

108-
using (var schemaRegistry = new CachedSchemaRegistryClient( new SchemaRegistryConfig { SchemaRegistryUrl = schemaRegistryUrl }))
108+
using (var schemaRegistry = new CachedSchemaRegistryClient(new SchemaRegistryConfig { SchemaRegistryUrl = schemaRegistryUrl }))
109109
using (var consumer =
110110
new ConsumerBuilder<Null, MessageTypes.LogMessage>(consumerConfig)
111-
.SetValueDeserializer(new AvroDeserializer<MessageTypes.LogMessage>(schemaRegistry))
111+
.SetValueDeserializer(new AsyncAvroDeserializer<MessageTypes.LogMessage>(schemaRegistry).AsSyncOverAsync())
112112
.Build())
113113
{
114114
consumer.Subscribe("log-messages");

examples/AvroGeneric/AvroGeneric.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
</PropertyGroup>
1010

1111
<ItemGroup>
12-
<!-- nuget package reference: <PackageReference Include="Confluent.SchemaRegistry.Serdes" Version="1.0.0-RC4" /> -->
12+
<!-- nuget package reference: <PackageReference Include="Confluent.SchemaRegistry.Serdes" Version="1.0.0-RC6" /> -->
1313
<ProjectReference Include="../../src/Confluent.SchemaRegistry.Serdes/Confluent.SchemaRegistry.Serdes.csproj" />
1414
</ItemGroup>
1515

examples/AvroGeneric/Program.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,8 @@ static async Task Main(string[] args)
6161
using (var schemaRegistry = new CachedSchemaRegistryClient(new SchemaRegistryConfig { SchemaRegistryUrl = schemaRegistryUrl }))
6262
using (var consumer =
6363
new ConsumerBuilder<string, GenericRecord>(new ConsumerConfig { BootstrapServers = bootstrapServers, GroupId = groupName })
64-
.SetKeyDeserializer(new AvroDeserializer<string>(schemaRegistry))
65-
.SetValueDeserializer(new AvroDeserializer<GenericRecord>(schemaRegistry))
64+
.SetKeyDeserializer(new AsyncAvroDeserializer<string>(schemaRegistry).AsSyncOverAsync())
65+
.SetValueDeserializer(new AsyncAvroDeserializer<GenericRecord>(schemaRegistry).AsSyncOverAsync())
6666
.SetErrorHandler((_, e) => Console.WriteLine($"Error: {e.Reason}"))
6767
.Build())
6868
{
@@ -95,8 +95,8 @@ static async Task Main(string[] args)
9595
using (var schemaRegistry = new CachedSchemaRegistryClient(new SchemaRegistryConfig { SchemaRegistryUrl = schemaRegistryUrl }))
9696
using (var producer =
9797
new ProducerBuilder<string, GenericRecord>(new ProducerConfig { BootstrapServers = bootstrapServers })
98-
.SetKeySerializer(new AvroSerializer<string>(schemaRegistry))
99-
.SetValueSerializer(new AvroSerializer<GenericRecord>(schemaRegistry))
98+
.SetKeySerializer(new AsyncAvroSerializer<string>(schemaRegistry))
99+
.SetValueSerializer(new AsyncAvroSerializer<GenericRecord>(schemaRegistry))
100100
.Build())
101101
{
102102
Console.WriteLine($"{producer.Name} producing on {topicName}. Enter user names, q to exit.");

examples/AvroSpecific/AvroSpecific.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
</PropertyGroup>
1010

1111
<ItemGroup>
12-
<!-- nuget package reference: <PackageReference Include="Confluent.SchemaRegistry.Serdes" Version="1.0.0-RC4" /> -->
12+
<!-- nuget package reference: <PackageReference Include="Confluent.SchemaRegistry.Serdes" Version="1.0.0-RC6" /> -->
1313
<ProjectReference Include="../../src/Confluent.SchemaRegistry.Serdes/Confluent.SchemaRegistry.Serdes.csproj" />
1414
</ItemGroup>
1515

examples/AvroSpecific/Program.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@ static async Task Main(string[] args)
8080
using (var schemaRegistry = new CachedSchemaRegistryClient(schemaRegistryConfig))
8181
using (var consumer =
8282
new ConsumerBuilder<string, User>(consumerConfig)
83-
.SetKeyDeserializer(new AvroDeserializer<string>(schemaRegistry))
84-
.SetValueDeserializer(new AvroDeserializer<User>(schemaRegistry))
83+
.SetKeyDeserializer(new AsyncAvroDeserializer<string>(schemaRegistry).AsSyncOverAsync())
84+
.SetValueDeserializer(new AsyncAvroDeserializer<User>(schemaRegistry).AsSyncOverAsync())
8585
.SetErrorHandler((_, e) => Console.WriteLine($"Error: {e.Reason}"))
8686
.Build())
8787
{
@@ -113,8 +113,8 @@ static async Task Main(string[] args)
113113
using (var schemaRegistry = new CachedSchemaRegistryClient(schemaRegistryConfig))
114114
using (var producer =
115115
new ProducerBuilder<string, User>(producerConfig)
116-
.SetKeySerializer(new AvroSerializer<string>(schemaRegistry))
117-
.SetValueSerializer(new AvroSerializer<User>(schemaRegistry))
116+
.SetKeySerializer(new AsyncAvroSerializer<string>(schemaRegistry))
117+
.SetValueSerializer(new AsyncAvroSerializer<User>(schemaRegistry))
118118
.Build())
119119
{
120120
Console.WriteLine($"{producer.Name} producing on {topicName}. Enter user names, q to exit.");

0 commit comments

Comments
 (0)