Releases: tomasfabian/ksqlDB.RestApi.Client-DotNet
ksqlDB.RestApi.Client v1.6.0
- Pull query Take extension method (Limit)
- Stream and table properties KEY_SCHEMA_ID and VALUE_SCHEMA_ID
- Access record header data
Scalar functions:
- IsJsonString, JsonArrayLength, JsonConcat, JsonKeys, JsonRecords, ToJsonString
ksqlDB.RestApi.Client v1.5.0
-
improved invocation function extensions
-
TimeSpanToStringConverter
-
added support for Time types DATE, TIME AND TIMESTAMP (ksqldb 0.20.0)
-
operator (Not) Between for Time type values
ksqlDB.RestApi.Client v1.4.0
IKSqlDBContextFactory
A factory for creating derived KSqlDBContext instances.
KSqlDbServiceCollectionExtensions.AddDbContext
Registers the given ksqldb context as a service in the IServiceCollection
KSqlDbServiceCollectionExtensions.AddDbContextFactory
Registers the given ksqldb context factory as a service in the IServiceCollection
KSqlDbRestApiClient
- CreateTypeAsync - added overload without type name argument
- CreateSourceStreamAsync - creates a read-only stream
- CreateSourceTableAsync - creates a read-only table
EntityCreationMetadata
- IncludeReadOnlyProperties - Include read-only properties during entity generation.
KSqlDbContextOptionsBuilder and KSqlDbContextOptions
- SetJsonSerializerOptions - a way to configure the JsonSerializerOptions for the materialization of the incoming values.
Bug fix:
- SubscribeAsync - error propagation fix
- CreateTypeAsync - applied type name fix
ksqlDB.RestApi.Client v1.3.1
InsertProperties IncludeReadOnlyProperties
- #12 include readonly properties in Inserts config
KSqlDBContext.SaveChangesAsync
- added CancellationToken argument
ksqlDB.RestApi.Client v1.3.0
Join Within
- specify a time window for stream-stream joins
KSqlDbRestApiClient
- CreateTypeAsync added optional type name argument
Operator LIKE - String.StartsWith, String.EndsWith, String.Contains
Match a string with a specified pattern
IKSqlDBContext Add and SaveChangesAsync
Saving multiple entities with one request
Fixes:
- KSqlDbContext services collection - injected ILoggerFactory instance is registered as Singleton
ksqlDB.RestApi.Client v1.2.0
KSqlDbServiceCollectionExtensions.ConfigureKSqlDb
- registers the following dependencies: IKSqlDBContext, KSqlDbRestApiClient, IHttpClientFactory, KSqlDBContextOptions
Logging
- LogInformation about received data, executed commands and queries
- added package reference - Microsoft.Extensions.Logging.Abstractions
ksqlDB.RestApi.Client v1.1.0
- multiple joins with query comprehension syntax (GroupJoin, SelectMany, DefaultIfEmpty)
ksqlDB.RestApi.Client v1.0.0
Package was renamed to ksqlDB.RestApi.Client v1.0.0.
Breaking changes: namespaces were changed accordingly
Kafka.DotNet.ksqlDB v2.0.0
ProcessingGuarantee enum
-
KSqlDbContextOptionsBuilder and KSqlDbContextOption SetProcessingGuarantee
-
ProcessingGuaranteeExtensions, AutoOffsetResetExtensions
Basic authentication
- added IKSqlDbProvider.SetCredentials
- added IKSqlDbRestApiClient.SetCredentials
- BasicAuthCredentials
- KSqlDbContextOptionsBuilder and KSqlDbContextOption SetBasicAuthCredentials
- BasicAuthHandler, HttpClientFactoryWithBasicAuth
KSqlDbRestApiClient.InsertIntoAsync
- added support for deeply nested types - Maps, Structs and Arrays
Qbservable.Select
- generation of values from captured variables
Breaking changes:
ISetupParameters changed from
ISetupParameters SetupQuery(Action<IQueryOptions> configure);
ISetupParameters SetupQueryStream(Action<IQueryOptions> configure);
to
ISetupParameters SetupQuery(Action<IKSqlDbParameters> configure);
ISetupParameters SetupQueryStream(Action<IKSqlDbParameters> configure);
IPullable
public ValueTask<TEntity> GetAsync(CancellationToken cancellationToken = default)
was renamed to:
public ValueTask<TEntity> FirstOrDefaultAsync(CancellationToken cancellationToken = default)
KSqlDBContextOptions
⚠ KSqlDBContextOptions created with a constructor or by KSqlDbContextOptionsBuilder are setting the auto.offset.reset to earliest by default. This version removes this default configuration. It will not be opinionated in this way from now.
This will affect your subscriptions to streams.
Bug fix:
- deserialization of stream exceptions (KSqlDbQueryProvider and KSqlDbQueryStreamProvider)
Kafka.DotNet.ksqlDB v1.10.0
Invocation (lambda) functions
- Transform, Reduce and Filter for Maps (dictionaries)
- requirements: ksqldb 0.17.0
Select and Where destructuring properties
- first level
Scalar functions
- Instr, IfNull
IKSqlGrouping.Source
- grouping by nested properies (one level)
Bug fixes:
- KSqlDbRestApiClient.CreateTypeAsync - Entity name from generic types fix
- KsqlDbContext.CreateQueryStream - From item name - generic types fix