Skip to content

Releases: tomasfabian/ksqlDB.RestApi.Client-DotNet

v6.4.0

16 Oct 19:25
b06b438
Compare
Choose a tag to compare

🚀 New Features

  • IgnoreInDML: Added to the Fluent API to exclude fields from INSERT statements. See #90 proposed by @mrt181.
  • IgnoreAttribute: Introduced to prevent properties or fields from being included in both DDL and DML statements.

🐛 Bug Fixes

  • IgnoreByInsertsAttribute no longer excludes fields or properties from DDL statements. Use the new IgnoreAttribute instead.
  • The Record type’s fields:
    • RowOffset and RowPartition are now decorated with IgnoreAttribute (previously used IgnoreByInsertsAttribute).
    • RowTime is now decorated with an internal IgnoreInDDLAttribute instead of IgnoreByInsertsAttribute.
  • Fixed an issue where multiple mappings were not working on the same property in the model builder.

⚠️ Deprecations

  • The Headers property in the Record type is now marked as obsolete.

v6.3.0

13 Oct 06:44
Compare
Choose a tag to compare
  • added AsStruct function to the Fluent API for marking fields as ksqldb STRUCT types #89 (proposed by @mrt181)

v6.2.0

03 Aug 15:34
Compare
Choose a tag to compare
  1. KSqlDbRestApiClient Constructor Update:

    • The KSqlDbRestApiClient class constructor now includes a parameter for KSqlDBRestApiClientOptions.
  2. EntityCreationMetadata Update:

    • The EntityCreationMetadata.ShouldPluralizeEntityName property was modified to be a nullable boolean (bool?), and the default value of true was removed.
  3. Method Behavior Update in KSqlDbRestApiClient:

    • Methods within the KSqlDbRestApiClient class now check if the ShouldPluralizeEntityName field of the following types is null:
      • TypeProperties
      • DropTypeProperties
      • InsertProperties
      • DropFromItemProperties
    • If ShouldPluralizeEntityName is null, the methods will set it using the value from the KSqlDBRestApiClientOptions.

BugFix

  • removed !NETSTANDARD pragma from KSqlDBContextOnDisposeAsync

v6.1.0

07 Jun 14:45
61d6f60
Compare
Choose a tag to compare

Features

  • added HasColumnName to the Fluent API to allow overriding property names during JSON deserialization and code generation.

BugFix

  • fixed missing usage/evaluation of the JsonPropertyNameAttribute during the creation of types.

v6.0.0

30 Apr 13:43
861f5d7
Compare
Choose a tag to compare
  • added SetEndpointType to KSqlDbContextOptionsBuilder for configuring to use either "/query" or "/query-stream" endpoint
  • CreateQuery and CreateQueryStream were merged. CreatePullQuery by default uses http/2 now. Subsequently CreateQueryStream was renamed to CreatePushQuery to align with the nomenclature of CreatePullQuery.
  • removed SetupQuery from KSqlDbContextOptionsBuilder, it was unified with SetupQueryStream. Subsequently SetupQueryStream was renamed to SetupPushQuery to align with the nomenclature of SetupPullQuery.
  • introduced distinct parameters specifically tailored for pull queries. This modification results in a breaking change. Before this update, the parameters sent to both the 'query' and 'query-stream' endpoints were shared between pull and push queries. #77
  • see also breakingchanges.md

v5.1.0

24 Apr 16:14
Compare
Choose a tag to compare
  • added InsertIntoAsync Qbservable extension for executing INSERT INTO <stream-name> SELECT statements.
  • added FieldTypeBuilderExtensions WithHeader for configuring byte[] types as HEADER
  • added model builder function WithHeaders for configuring columns as HEADERS

v5.0.0

15 Apr 16:44
Compare
Choose a tag to compare
  • added ModelBuilder to configure the model, allowing the customization of keys and ignoring properties during code generation
  • added FieldTypeBuilderExtensions for configuring decimal types #66 (requested by @mrt181)
  • added IFromItemTypeConfiguration to apply model-related configurations using the provided ModelBuilder
  • added IConventionConfiguration to apply model-related conventions. DecimalTypeConvention represents a decimal type convention for configuring precision and scale.
  • see also breakingchanges.md

v4.0.0

19 Mar 16:38
Compare
Choose a tag to compare
  • introduced new overloads for dropping entities: DropTableAsync, DropTypeAsync, and DropStreamAsync in KSqlDbRestApiClient. These overloads now accept an argument DropFromItemProperties, providing more flexibility in configuring the drop operations.
  • extracted IKSqlDbDropRestApiClient and IKSqlDbCreateRestApiClient interfaces from IKSqlDbRestApiClient
  • see also breakingchanges.md
  • enabled nullable reference types in ksqlDb.RestApi.Client project #64

ksqlDB.RestApi.Client v2.7.0

14 Jan 09:42
92ce5a2
Compare
Choose a tag to compare
  • insert values with KSQL functions
  • JsonArrayParser fixed deserialization of values with brackets #43 fix

ksqlDB.RestApi.Client v3.6.0

01 Mar 15:18
Compare
Choose a tag to compare

3.6.0

  • added escaping options using backticks for Identifiers in statements #57 (contributed by @mrt181)
  • added TypeProperties class to configure type creation #58 (contributed by @mrt181)
  • added .NET Enums to VARCHAR mapping #55. JsonStringEnumConverter was added to KSqlDbJsonSerializerOptions.